J'utilise le testeur de FME pour sélectionner des objets de plus de 1 mètre.
Mes données sont en EPSG: 4326.
Combien coûte 1 mètre en degrés décimaux?
J'utilise le testeur de FME pour sélectionner des objets de plus de 1 mètre.
Mes données sont en EPSG: 4326.
Combien coûte 1 mètre en degrés décimaux?
Réponses:
Bien que j'aime la réponse d'Alex - il vaut mieux reprojeter que simplement convertir des degrés décimaux en mètres avec un multiplicateur fixe - je n'aime jamais vraiment avoir à reprojeter des données d'avant en arrière si ce n'est pas nécessaire. Je suppose que vous perdrez certainement un certain degré d'exactitude / précision.
Ce que j'essaierais, c'est le transformateur ReprojectLengthCalculator . Avec cela, vous pouvez mesurer la longueur en degrés décimaux et reprojeter cette valeur d'attribut. Vous n'auriez pas besoin de reprojeter la fonction en mètres et vice-versa.
L'inconvénient ici est que je pense que cela ne fonctionnera vraiment qu'avec des lignes à 2 points et - pour une raison quelconque - vous devrez calculer l'angle de cette ligne dans le cadre de l'entrée.
Si vous reprojetez comme le suggère Alex, je vous encourage à le faire en tant que flux séparé et à fusionner la distance résultante sur les données d'origine. De cette façon, vous conservez une bonne copie (non reprojetée) de la géométrie.
Je suggère également de reprojeter vers un système de coordonnées dynamiques;
_AZMED_
pour mesurer des distances et_AZMEA_
pour mesurer des zones. Chaque entité est effectivement convertie en son propre système de coordonnées à distance égale (surface égale), ce qui donne les meilleurs résultats.Je pense que cela ressemblerait à quelque chose comme ceci:
Vous pouvez mettre le testeur après le FeatureMerger, mais je pense que cette configuration est plus efficace. Le FeatureMerger aura besoin d'un ID unique sur les fonctionnalités pour fonctionner.
la source
_AZMED_
/_AZMEA_
)! Où est-il possible d'en savoir plus à ce sujet?Reprojector_2
transformateur ..._AZMED_
ou_AZMEA_
entraîne un système de coordonnées centré sur votre entité en cours de génération. Détails généraux sur ces projections: en.wikipedia.org/wiki/Lambert_azimuthal_equal-area_projection en.wikipedia.org/wiki/Azimuthal_equidistant_projectionJe peux vous proposer de faire les prochaines étapes afin d'obtenir des résultats avec une précision appropriée:
Cette partie du modèle devrait ressembler à:
EDIT1:
Il est également possible d'utiliser les transformateurs GeometryExtractor et GeometryReplacer. Dans ce cas, nous ne modifierons pas du tout la géométrie de l'entité et nous pouvons nous débarrasser de
Reprojector_2
:la source