Maybe the two sets of data have different precision? Try the AttributeRounder transformer.
Bonjour
Vous pouvez essayer de mettre un AnchoredSnapper avant le Matcher, avec un Group By sur le même identifiant que vous utilisez dans le Matcher. Je propose d'envoyer les données mise à jour sur le port Anchor, et les anciennes données sur Candidates. Ceci pour éviter de changer la géométrie des nouvelles données. La tolérance saisie dans l'AnchoredSnapper va décider si le Matcher détecte un changement ou pas.
David
Bonjour
Vous pouvez essayer de mettre un AnchoredSnapper avant le Matcher, avec un Group By sur le même identifiant que vous utilisez dans le Matcher. Je propose d'envoyer les données mise à jour sur le port Anchor, et les anciennes données sur Candidates. Ceci pour éviter de changer la géométrie des nouvelles données. La tolérance saisie dans l'AnchoredSnapper va décider si le Matcher détecte un changement ou pas.
David
Je vais essayer cette methode dès mon retour au bureau, cependant etes vous sur que l'anchoredSnapper n'associe à chaque Candidate qu'un seul Anchor ?
Je vais essayer cette methode dès mon retour au bureau, cependant etes vous sur que l'anchoredSnapper n'associe à chaque Candidate qu'un seul Anchor ?
C'est l'attribut spécifié dans le Group By du AnchoredSnapper qui va assurer cela, donc bien choisir la bonne clé primaire qui les associent.
C'est l'attribut spécifié dans le Group By du AnchoredSnapper qui va assurer cela, donc bien choisir la bonne clé primaire qui les associent.
Donc voici mon schema actuel, si je vous ai bien suivi:
Ce qui sous entends que j'ai 269 objets qui sont proches, mais pas identiques entre mes deux sources (mais je dois les faire passer comme objets similaires), et 7124 qui sont soit identiques, soit trop loins. Parmis ces 7124 j'en ai donc 6639 qui sont identique exactement (ajouté au 269 qui sont approximatif j'obtiens donc 6908 objets "stables"), et 485 qui sont créés entre mes deux instants.
Au final, 6639+269+485 = 7393, le compte est bon, on passe aux lettres.
Cette methode vous semble-t-elle cohérente ? J'entends par la que si je compare mes résultats avec la fonction d'appariement d'OpenJump, j'ai un resultat legerement différent (a 1 ou 2 objets pret), surement lié au fait que le changedetector accepte les points ayant une distance égale a X alors que OpenJump ne prends que le spoints ayant une distance strictement inférieure à X.
EDIT: Je viens de comprendre que vous vouliez utiliser un matcher a la place d'un changedetector, ce que je comprends, mais je ne suis deja pas tres à l'aise avec les transformers que je connais, nul besoin d'aller plus loin
Bonjour
Vous pouvez essayer de mettre un AnchoredSnapper avant le Matcher, avec un Group By sur le même identifiant que vous utilisez dans le Matcher. Je propose d'envoyer les données mise à jour sur le port Anchor, et les anciennes données sur Candidates. Ceci pour éviter de changer la géométrie des nouvelles données. La tolérance saisie dans l'AnchoredSnapper va décider si le Matcher détecte un changement ou pas.
David
Je post un screenshot de la solution mise en place, merci à david_r pour son aide inestimable ! Je vais construire un autel a son honneur dans mon bureau.
fin.png
Donc voici mon schema actuel, si je vous ai bien suivi:
Ce qui sous entends que j'ai 269 objets qui sont proches, mais pas identiques entre mes deux sources (mais je dois les faire passer comme objets similaires), et 7124 qui sont soit identiques, soit trop loins. Parmis ces 7124 j'en ai donc 6639 qui sont identique exactement (ajouté au 269 qui sont approximatif j'obtiens donc 6908 objets "stables"), et 485 qui sont créés entre mes deux instants.
Au final, 6639+269+485 = 7393, le compte est bon, on passe aux lettres.
Cette methode vous semble-t-elle cohérente ? J'entends par la que si je compare mes résultats avec la fonction d'appariement d'OpenJump, j'ai un resultat legerement différent (a 1 ou 2 objets pret), surement lié au fait que le changedetector accepte les points ayant une distance égale a X alors que OpenJump ne prends que le spoints ayant une distance strictement inférieure à X.
EDIT: Je viens de comprendre que vous vouliez utiliser un matcher a la place d'un changedetector, ce que je comprends, mais je ne suis deja pas tres à l'aise avec les transformers que je connais, nul besoin d'aller plus loin
Mon seul commentaire est que nous n'avez probablement pas besoin de mettre un Matcher ET encore un ChangeDetector, je pense que l'un ou l'autre devrait suffir.
Donc tous les objets sortant du AnchoredSnapper sont à traiter du même manière