Qu'advient-il de la classe d'entités lors de l'importation dans un jeu de données d'entités?


11

Je crée un modèle qui doit garantir que tous les jeux de données d'entrée se retrouvent dans le même système de coordonnées (entre autres). À l'origine, j'allais projeter par lots tous les ensembles de données, qu'ils devaient être projetés ou non, mais il y a ensuite la question de l'attribution de la transformation géographique correcte. Ensuite, je me suis souvenu que toutes les données entrées dans un jeu de données d'entité devaient être le même système de coordonnées, j'ai donc décidé de regrouper toutes les données en un.

Ma question est la suivante: lorsqu'une classe d'entités est importée dans un jeu de données d'entités d'un système de coordonnées différent, projette-t-elle automatiquement les données? Ce qui se produit?

J'ai testé cela moi-même sur les données routières et cela semblait projeter les données, car elles s'accordaient bien avec mes autres données. Le truc, c'est qu'aucune transformation n'était nécessaire (et une méthode de transformation était nécessaire si je l'avais projetée), donc il semble louche que les données soient projetées automatiquement. Peut-être que cela fait une meilleure supposition?

Réponses:


6

Dans l'aide sur À propos de l'importation des classes d'entités :

Supposons que vous souhaitiez importer une classe d'entités qui se trouve dans un autre système de coordonnées. Par exemple, vous pouvez importer une classe d'entités qui utilise le système de coordonnées NAD (North American Datum 1927) dans un jeu de données d'entité qui utilise le système de coordonnées NAD 1983. Pour importer la classe d'entités, utilisez l'outil Projet pour importer simultanément les données et les convertir dans le nouveau système de coordonnées.

Si la classe d'entités que vous importez se trouve déjà dans le système de coordonnées dans lequel vous souhaitez qu'elle se trouve pour la géodatabase, utilisez les outils Classe d'entités vers classe d'entités ou Classe d'entités vers géodatabase pour importer les données. La classe d'entités que vous créez avec ces outils peut être autonome ou importée dans un jeu de données d'entité existant.

Lorsque vous créez une classe d'entités autonome, la nouvelle classe d'entités est créée avec la même référence spatiale que la classe d'entités que vous importez.

Si vous créez une classe d'entités dans un jeu de données d'entité existant, la nouvelle classe d'entités prendra automatiquement la même référence spatiale que le jeu de données d'entité.

Cela suggère donc qu'il fait une "meilleure estimation". Je recommande fortement de spécifier manuellement la méthode de transformation de la projection si vous souhaitez éviter les erreurs de projection. Voir "Revenge of the Shift" pour un excellent aperçu des erreurs introduites par des transformations de projection incorrectes!


3

Lorsque la FeatureClass est importée dans un FeatureDataset, elle est projetée dans le système de coordonnées car toutes les FeatureClasses à l'intérieur d'un FeatureDataset doivent avoir la même référence spatiale.

Si vous êtes curieux quant au processus exact en termes de code, le processus d'importation saisit l'objet ISpatialReference du Destination FeatureDataset et, en parcourant chaque géométrie unique dans la FeatureClass source, il appelle IGeometry :: Project et transmet cela Objet ISpatialReference comme paramètre.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.