Pages: 1
- Sujet précédent - Boucle sous FME : comment filtrer une couche et répéter un traitement - Sujet suivant
#1 Fri 23 March 2012 14:53
- grdfred
- Participant actif
- Lieu: nantes
- Date d'inscription: 17 Jul 2007
- Messages: 56
Boucle sous FME : comment filtrer une couche et répéter un traitement
Bonjour,
J'ai 2 couches une en polygone (SITE) et une en point (RELEVE). Dans ma couche RELEVE j'ai un attribut ESPECE et dans ma couche site un idetifiant ID_SITE.
Je cherche à obtenir pour chaque site (d'où la boucle)
- les RELEVE présents dans le site grâce au transformer SpatialRelator
- pour chaque ESPECE le relevé le plus proche du site mais à l'extérieur du site, en combinant AttributeFilter et NeighborFinder on y arrive
J'arrive à faire le traitement pour l'ensemble des sites mais pas pour chaque site individuellement.
Pour être plus clair si c'est possible
Je cherche pour le site A tous les relevés grenouille dans mon site (relevé 1,3,6) et le relevé le plus proche mais à l'extérieur (relévé 7)
Le relevé 7 peut être situé dans le site B, d'où un travail site par site !
Merci de votre soutien car là je suis coincé !
Frédéric
Hors ligne
#2 Fri 23 March 2012 15:22
Re: Boucle sous FME : comment filtrer une couche et répéter un traitement
Bonjour,
Avec le SpatialRelator, il est possible de créer une liste (relation 1,N). De cette manière on peut récupérer les N RELEVE qui touchent un objet.
Dernière modification par heretik25 (Fri 23 March 2012 15:23)
Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com
Hors ligne
#3 Fri 23 March 2012 15:44
- Pierre
- DesCartesPourUnMondeMeilleur
- Date d'inscription: 22 Sep 2005
- Messages: 1643
Re: Boucle sous FME : comment filtrer une couche et répéter un traitement
Bonjour,
Je me permet de compléter le premier message insuffisant à mon sens.
Pour exploiter les listes, vous pouvez utiliser le list_histogrammer, qui vous permettra de compter le nombre de relevés par espèces dans un site.
La difficulté réside dans l'obtention pour chacun des sites d'une liste des relevés pour chacune des espèces, au besoin en passant par la recherche du site le plus proche ayant un relevé d'une espèce X.
Je pense qu'il faut utiliser les outils de recherche par voisinage sur les relevés pour leur affecter le site le plus proche. Mais je ne suis pas satisfait du résultat.
Peut-être qu'un jeu test nous permettrait de mieux vous aider.
Cordialement,
art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.
Hors ligne
#4 Fri 23 March 2012 15:48
- grdfred
- Participant actif
- Lieu: nantes
- Date d'inscription: 17 Jul 2007
- Messages: 56
Re: Boucle sous FME : comment filtrer une couche et répéter un traitement
Bonjour,
Comment passe-t-on d'une liste à une base? Je n'arrive pas à récupérer l’information des 2 à N RELEVE
Hors ligne
#5 Fri 23 March 2012 15:51
Re: Boucle sous FME : comment filtrer une couche et répéter un traitement
Pour trouver le voisin le plus proche, j'utilise NeighborFinder qui renvoi une distance. Je sélectionne ensuite la plus petite distance.
Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com
Hors ligne
#6 Fri 23 March 2012 16:00
- grdfred
- Participant actif
- Lieu: nantes
- Date d'inscription: 17 Jul 2007
- Messages: 56
Re: Boucle sous FME : comment filtrer une couche et répéter un traitement
Bonjour
Voici un exemple de données. Ce n'est qu'une extraction le nombre d'espèces et de sites et beaucoup plus important. Le traitement doit se faire sous FME car il s'agit d'une partie d'un ensemble de traitement il y a de nouveaux relevés tous les jours et de nouveau sites toutes les semaines en fonction de nos inventaires !
Merci pour vos réponses.
Fred
Hors ligne
#7 Fri 23 March 2012 16:22
- Pierre
- DesCartesPourUnMondeMeilleur
- Date d'inscription: 22 Sep 2005
- Messages: 1643
Re: Boucle sous FME : comment filtrer une couche et répéter un traitement
Humm vous disiez que les sites étaient des polygones. Et là dans le jeu test j'ai des points...
art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.
Hors ligne
#8 Fri 23 March 2012 17:31
- Pierre
- DesCartesPourUnMondeMeilleur
- Date d'inscription: 22 Sep 2005
- Messages: 1643
Re: Boucle sous FME : comment filtrer une couche et répéter un traitement
Est-ce que quelque chose comme cela répondrait à votre besoin ?
art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.
Hors ligne
#9 Mon 26 March 2012 09:15
- grdfred
- Participant actif
- Lieu: nantes
- Date d'inscription: 17 Jul 2007
- Messages: 56
Re: Boucle sous FME : comment filtrer une couche et répéter un traitement
Bonjour
Effectivement je me suis trompé j'ai posté les centroïdes et non les sites. Les voici donc.
Pierre je n'arrive pas à ouvrir ton script, FME ne connait pas le transformer "Inspector". Ce transformer n'est pas détaillé sur le site de http://www.veremes.com
Bonne journée et merci de votre soutien et de votre réactivité.
Frédéric
Hors ligne
#10 Mon 26 March 2012 10:13
Re: Boucle sous FME : comment filtrer une couche et répéter un traitement
Inspector est le nouveau nom de Visualizer (ou comment créer des problèmes inutilement...) dans FME 2012.
La doc des Transformers en ligne sur http://www.veremes.com est celle de FME 2011. Elle sera mise à jour pour 2012 après la conférence utilisateurs.
Hors ligne
#11 Mon 26 March 2012 14:05
- grdfred
- Participant actif
- Lieu: nantes
- Date d'inscription: 17 Jul 2007
- Messages: 56
Re: Boucle sous FME : comment filtrer une couche et répéter un traitement
Bonjour,
A force de chercher, et grâce à vos remarques j'ai fini par trouver ma solution . En ayant compris comment fonctionnait les listes j'ai créer plusieurs listes que je compare.
A toute fin utile voici mon script.
Encore merci
Fred
Dernière modification par grdfred (Tue 27 March 2012 09:07)
Hors ligne
Pages: 1
- Sujet précédent - Boucle sous FME : comment filtrer une couche et répéter un traitement - Sujet suivant