Quelle est la différence entre coordonnéeDimension et spatialDimension?

8

Le standard OpenGIS mentionne trois méthodes pour interroger les dimensions d'une géométrie:

  • dimension(): la dimension inhérente de la géométrie:
    • 0 pour Point
    • 1 pour Curve
    • 2 pour Surface
  • coordinateDimension(): le nombre de coordonnées de la géométrie:
    • 2 pour X,Y
    • 3pour X,Y,ZouX,Y,M
    • 4 pour X,Y,Z,M
  • spatialDimension(): celui-ci n'a pas de description dans ce document.

Ce document RDF sur le site opengis.net décrit en outre coordinateDimension:

Le nombre de mesures ou d'axes nécessaires pour décrire la position de cette géométrie dans un système de coordonnées.

Et décrit spatialDimensioncomme:

Le nombre de mesures ou d'axes nécessaires pour décrire la position spatiale de cette géométrie dans un système de coordonnées.

Ce dernier fait donc référence à la "position spatiale" par opposition à la "position", ce qui ne m'aide pas beaucoup à comprendre la différence entre eux.

Quelle est la difference entre coordinateDimension()et spatialDimension()?

Benjamin
la source
Mon hypothèse serait qu'il spatialDimensionrepose sur un système de coordonnées géographiques (ou projetées), tout en coordinateDimensionpouvant également inclure tout système de coordonnées arbitraire ou local.
Erica
@Erica je me suis demandé si elle était la même que coordinateDimension, mais comprenant seulement les coordonnées « spatiales » X, Y, Zet ignorant M; d'où des valeurs possibles: 2pour 2D, 3pour 3D. Serait-ce logique?
Benjamin
Je parierais sur le document et la norme est incohérente. coordinateDimensionpeut faire référence à une dimension inhérente, tandis qu’une spatialDimensiondimension absolue (avec Zet / ou M). Mon hypothèse provient de la dimensionpropriété du document RDF , qui fait référence à la dimension topologique.
Gabor Farkas
J'ai lu ce document comme décrivant spatialDimension comme une version beaucoup plus spécifique de coordonnéeDimension .. par exemple renvoyant [0, 1, 2], [1,0,2], [0,0,2] pour un triangle 2D au lieu de [ 0,1] [1,0] [0,0] .. que se passe-t-il lorsque vous l'interrogez? comme les collections de références documentaires peuvent être constituées d'objets géométriques avec différentes dimensions, il pourrait s'agir simplement d'une version conviviale pour ordinateur de coordonnerDimension
ryansstack

Réponses:

5
  • dimension (): fait référence à la dimension topologique (c.-à-d. point / ligne / aire)
  • coordonneDimension (): retourne la dimension du tuple telle qu'elle est donnée (comme statet dans l'OP)
  • spatialDimension (): renvoie la dimension du tuple sans la partie mesure (avec "M" étant la mesure dans un système de référence linéaire )

Comme il est assez évident pour un littéral 2D ou "4D", vous avez essentiellement besoin qu'il diffère entre les deux alternatives "3D".

Le document de l'OGC sur GeoSPARQL est (légèrement) plus précis avec:

Propriété: geo: spatialDimension
La dimension spatiale est la dimension de la portion spatiale des positions directes
(tuples de coordonnées) utilisés dans la définition de cet objet géométrique. Si les positions directes
ne portent pas de coordonnée de mesure, celle-ci sera égale à la cote de coordonnée.
ymirsson
la source
2

Des trois opinions exprimées jusqu'à présent, la vôtre, Benjamin, a le plus de sens pour moi:

X, Yet Zsont des dimensions spatiales et Mconstituent une autre coordonnée / dimension.

Avertissement: je n'ai jamais entendu parler de ces noms de fonction ( coordinateDimensionet spatialDimension) auparavant, donc je n'ai aucune autorité. Et je ne suis pas sûr de pouvoir réclamer une prime si jamais je me trompe!

Martin F
la source
1

En géométrie ordinaire, nous avons l'espace et le temps. L'espace est représenté par trois coordonnées et le temps en est une autre. Les choses liées à la position de l'espace sont spatiales et celles liées au temps sont temporelles. Ainsi, les «coordonnées spatiales» se réfèrent à celles liées à l'espace et sont les mêmes que les «dimensions spatiales». En revanche, les dimensions des coordonnées peuvent être quelconques, spatiales, temporelles ou autres.

Maintenant, qu'est-ce qu'une dimension et quelle est la différence avec une variable. Prenez la pression atmosphérique «p» par exemple. Si p est fixé partout, alors c'est une fonction de dimension nulle. S'il varie à mesure que vous montez dans la direction «z», alors c'est une fonction d'une dimension «1D», et p = p (z). Si cela varie avec la hauteur ainsi que lorsque vous allez latéralement dans n'importe quelle direction, alors c'est une fonction de 2 variables p = p (r, z), où r est la séparation de l'endroit où vous vous situez, et nous avons un problème 2D.

Si la variation à mesure que vous avancez est différente de celle lorsque vous avancez latéralement, alors vous êtes fonction des trois dimensions spatiales, et p = p (x, y, z). Si p varie également avec le temps 't', alors vous avez une fonction de 4D, trois spatiales et une temporelle, et vous avez p = p (x, y, z, t). Supposons que cela se réfère à une ville et que vous vouliez que p soit général pour toutes les villes environnantes, alors vous avez 5D et ainsi de suite. Ici, où nous devons utiliser des coordonnées, car il existe un mélange de différents types de dépendances.

Enfin pour être qualifiée de dimension ou de coordonnée, il doit être possible de faire varier une fonction (p dans ce cas) le long de cette dimension, les autres restant fixes. C'est pourquoi nous utilisons des lignes perpendiculaires pour les dimensions .. car il est possible de varier vers le haut (z dans notre cas) en gardant l'avant et les côtés fixes. La même chose peut être dite pour les autres. Le temps est également une dimension, car vous pouvez changer le temps en étant assis au même point (x, y, z). Par exemple, si vous allez à 45 degrés vers l'avant ou sur le côté, ce n'est pas une nouvelle dimension puisque les deux x, y changeront au cours du processus. Dans ce cas, nous décomposons le chemin en deux composants, un avant et un latéral, pour atteindre la marche à 45 degrés.

Riad
la source