Transformers FME: 2025.0
Transformers FME: 2025.0
AreaAmalgamator
Généraliser la géométrie de la zone en reliant et en combinant les entités voisines et/ou en remplissant les trous et les détails.
Cas d'utilisations typiques
- Réduire la complexité
- Créer des entités amalgamées pour étiquetage
- Optimiser la géométrie pour différentes échelles
Comment fonctionne-t-il ?
AreaAmalgamator reçoit des entités avec une géométrie de surface et les généralise, en réduisant la complexité et en connectant les entités proches.
Les surface peuvent être fusionnées avec d'autres surface, avec elles-mêmes (généralisation des zones de forme irrégulière), ou les deux. Les entités sont généralement dissoutes avant le traitement, ce qui peut être modifié.
Les connexions sont créées en triangulant dans l'espace de connexion possible (l'intérieur d'une coque convexe) et en utilisant ces triangles pour construire une géométrie de connexion. Les triangles sont contrôlés par deux paramètres :
- La largeur maximale des triangles contrôle la densité des triangles créés le long des entités, ce qui influe sur le niveau de détail par rapport à la grossièreté de la géométrie de connexion. La largeur est mesurée sur le côté du triangle qui se trouve le long de la limite de l'entité.
- La largeur maximale inférieure à la distance entre les coordonnées sur l'entité augmentera le nombre de triangles, ce qui peut produire des détails plus fins dans certains cas mais peut augmenter le temps de traitement.
- Une largeur maximale qui est plus grande que la distance entre coordonnées n'aura aucun effet.
- Longueur maximale des triangles : contrôle les triangles conservés pour créer une géométrie de connexion, qui détermine si les entités sont connectées ou non en fonction de leur proximité. La longueur est mesurée sur le côté le plus long du triangle.
Les polygones troués sont pris en charge et les trous dans les amalgames de sortie peuvent être conservés ou supprimés en fonction de leur surface.
Des identifiants uniques peuvent être générés pour les amalgames qui identifient également les trous et les triangles associés. Les attributs des entités d'entrée peuvent être accumulés dans un attribut de liste.
Les entités qui se chevauchent ou partagent des limites sont, par défaut, dissoutes avant la fusion, ce qui peut être modifié. Si Dissoudre les données en entrée vaut Non, les surfaces superposées résultantes ne seront pas fusionnées. Il peut s'agir de surfaces qui partageaient une limite avant la triangulation.
Bases de l'amalgamation
L'amalgamation basique s'effectue comme ceci :
Input
|
Entités surfaciques en entrée. |
![]() |
Enveloppe convexe
|
L'enveloppe convexe qui contient toutes les entités est calculée. |
|
Surface à trianguler
|
La surface dans l'enveloppe mais excluant les entités en entrée est déterminée. |
|
Triangulation
|
Cette surface est triangulée. La largeur des triangles peut être ajustée à l'aide du paramètre Largeur maximale des triangles. La largeur est le côté qui se trouve le long de la limite de l'entité d'entrée. |
|
Connexion
|
La longueur des triangles est évaluée et les triangles dont la longueur est inférieure à la valeur du paramètre Longueur maximale des triangles sont utilisés pour créer des connexions. La longuer est le côté le plus long du triangle. |
|
Output
|
Les entités ressortent par les ports Amalgamated et Untouched . |
|
Mode d'amalgamation
Les entités peuvent être amalgamées à elles-mêmes, les unes aux autres, ou aux deux.
Entités en entrée |
Deux îlots sont en entrée. Notez les bras de mer et le niveau de détail le long des côtes. |
![]() |
Auto-amalgamation |
Les entités sont traitées individuellement et les entités voisines ne sont pas connectées. Les triangles de connexion comblent le long bras de mer de l'île supérieure et généralisent le littoral de l'île inférieure. |
|
Amalgamation binaire |
Les entités sont traitées par rapport à d'autres entités, mais pas elles-mêmes. Les îlots sont connectés entre eux. Les criques et les détails du littoral d'origine sont restés intacts parce qu'il n'y a pas eu d'auto-amalgamation. |
|
Auto-amalgamation et amalgamation binaire |
les deux types d'amalgamation sont effectués. L'amalgame binaire relie les îles entre elles, et l'auto-amalgame généralise le littoral et remplit le long bras de mer. |
|
Holes
Les trous de polygones troués sont présents dans les entités en entrée ou produits durant l'amalgamation.
Dans les deux cas, la surface minimale des trous détermine s'ils sont conservés ou dissous. Les trous dont la taille est inférieure à la valeur minimale sont dissous.
Entités en entrée |
les deux types d'amalgamation sont effectués. Le Mode d'amalgamation est Auto-amalgamation et amalgamation binaire |
|
Surface minimum de trou = 100000 |
Des trous apparaissent lorsque les résultats de la triangulation dépassent la longueur maximale du triangle spécifiée de 1000 mètres. Les trous de 100 000 mètres carrés ou plus sont conservés en tant que trous de beigne dans la zone fusionnée. L'amalgame est représenté sous la forme d'un polygone en forme de polygone troué et les trous sont représentés séparément sous la forme de polygones individuels. |
Amalgamated
Holes
|
Surface minimum de trou = 10000000 |
Le minimum est supérieur à la surface des trous. Tous les trous sont dissous. |
Amalgamated
|
Attributs
Les attributs sont supprimés des entités de sortie du port Amalgamated.
Une liste d'attributs peut être créée pour conserver les attributs de toutes les entités d'entrée contribuant à un amalgame, et des identifiants uniques peuvent être générés et ajoutés en tant qu'attribut.
Lorsque des entités sont dissoutes ( Dissoudre les entrées > Oui ), les valeurs des attributs sont conservées à partir de l'une des entités dissoutes, qui est sélectionnée arbitrairement. La dissolution est effectuée à la fois sur les zones qui se chevauchent et sur les zones dont les limites sont partagées.
Les entités Untouched gardent leurs attributs.
Notes
- La dissolution des entités en entrée peut entraîner la perte de valeurs d'attributs. L'utilisation d'un Dissolver avant l'AreaAmalgamator permet un contrôle plus fin et la génération de listes d'attributs.
- Si la longueur maximum des triangles est plus petite que la largeur maximum des triangles, les résultats pourront être imprévisibles.
Créer des modifier des entités surfaciques
Ces Transformers fonctionnent avec les polygones de différentes manières.

Transformer |
Utilisez ceci pour... |
Description du Transformer |
---|---|---|
Créer une ou plusieurs nouvelles entités avec une géométrie surfaciques (lorsque Objet géométrique est Polygone). |
Crée une entité à partir des paramètres spécifiés et l'envoie dans l'espace de travail pour traitement. |
|
Créer des surfaces à partir de lignes topologiquement connectées lorsqu'elles forment des formes fermées. |
Crée des polygones à partir d'entités linéaires topologiquement correctes. |
|
Crée des polygones à partir d'entités linéaires topologiquement correctes. |
Convertit une entité linéaire en surface en reliant le point d'arrivée au point de départ. |
|
Combinez des surfaces qui se touchent ou se superposent pour créer des surfaces plus grandes. |
Combine des surfaces superposées et/ou adjacentes en de plus grandes surfaces contiguës en supprimant les bords partagés et intérieurs. |
|
Calculer des surfaces |
Calcule la surface plane ou inclinée des géométries polygonales et ajoute les résultats en tant qu'attributs. |
|
Nettoyer les superpositions et les trous pour créer une surface contiguë. |
Répare les topologies de surfaces en résolvant les trous et superpositions entre surfaces adjacentes. |
|
Généraliser des surfaces. |
Généraliser la géométrie de la surface en reliant et en combinant les entités voisines et/ou en remplissant les trous et les détails. |
|
Convertir les surfaces de polygone troué en surfaces non trouées. |
Ajoute des arêtes internes pour relier les trous du polygone troué à l'enveloppe extérieure, produisant ainsi un polygone sans trou. |
|
Convertir les surfaces à l'intérieur des surfaces en polygones troués. |
Découpe des trous dans les entités de la surface lorsqu'elles entourent entièrement une autre surface, créant ainsi des polygones troués. |
|
Séparer les surfaces de polygone troué en leurs parties. |
Séparer les polygones troués en polygones d'enveloppe externe et de trou. |
|
Comptez le nombre de trous dans un polygone troué. |
Récupère le nombre de trous dans les polygones troués, en stockant le résultat sous forme d'attribut. |
|
Trouver les superpositions de polygones et les extraire dans une nouvelle géométrie. |
Effectue une superposition polygone/polygone (intersection de polygones) afin que toutes les entités surfaciques en entrée soient croisées les unes avec les autres pour produire en sortie des polygones. Les polygones résultants peuvent accumuler les attributs des polygones ayant servi à leur construction. |
|
Trouver les intersections entre les lignes et les polygones, en divisant l'un ou l'autre à l'endroit où ils se croisent. |
Effectue une superposition ligne-sur-surface. Chaque ligne d'entrée est divisée à toutes les limites de surface qu'elle croise ou les surfaces sont fractionnées là où elles sont superposées à des lignes. Les attributs peuvent être partagés entre les lignes et les surfaces liées (jointure spatiale). |
|
Identifier les points situés à l'intérieur des polygones et partager les attributs entre eux. |
Effectue une superposition de points dans un polygone. Les points peuvent recevoir des attributs de surface contenant, et les surfaces peuvent recevoir des attributs de point contenant (jointure spatiale). |
Configuration
Ports d'entrée

Entités avec une géométrie surfacique valide, dont les polygones torués.
Ports de sortie

Les surfaces fusionnées comme spécifié dans les paramètres. Les attributs sont supprimés. Des attributs de liste peuvent être ajoutés.

Les surfaces entrantes qui ne sont pas touchées par des triangles dans la limite de la longueur maximale des triangles.

Trous dans les amalgames dont la surface dépasse la surface minimale de trou.

Triangles qui forment les connecteurs valides reliant les surfaces en entrée.

Les entités rejetées auront un attribut fme_rejection_code avec l'une des valeurs suivantes :
INVALID_GEOMETRY
INVALID_GEOMETRY_MISSING_TRIANGLES
Gestion des entités rejetées : ce paramètre permet d'interrompre la traduction ou de la poursuivre lorsqu'elle rencontre une entité rejetée. Ce paramètre est disponible à la fois comme option par défaut de FME et comme paramètre de traitement.
Paramètres

Regrouper par |
En spécifiant un ou plusieurs attributs de regroupement, les entités polygonales d'entrée seront divisées en groupes et le processus de fusion sera exécuté séparément sur chaque groupe. Au sein de chaque groupe, toutes les entités auront les mêmes valeurs pour les attributs de groupe sélectionnés. Si aucun attribut de regroupement est sélectionné, un seul groupe est formé contenant toutes les entités. Par défaut, aucun groupe n'est spécifié. |
||||
Traitement des regroupements
|
Sélectionnez le moment du traitement où les groupes sont traités :
![]() Il y a deux raisons typiques d'utiliser Quand le groupe change (avancé). La première concerne les données entrantes qui sont destinées à être traitées en groupes (et qui sont déjà classées ainsi). Dans ce cas, c'est la structure qui dicte l'utilisation de Regrouper par - et non des considérations de performance. La seconde raison possible est le potentiel gain de performances. Les gains de performance sont plus visibles quand les données sont déjà triées (ou lues en utilisant une déclaration SQL ORDER BY) puisque moins de travail est requis de la part de FME. Si les données doivent être ordonnées, elles peuvent être triées dans le traitement (bien que la surcharge de traitement supplémentaire puisse annuler tout gain). Le tri devient plus difficile en fonction du nombre de flux de données. Il peut être quasiment impossible de trier des flux de données multiples dans l'ordre correct, car toutes les entités correspondant à une valeur Regrouper par doivent arriver avant toute entité (de tout type d'entité ou jeu de données) appartenant au groupe suivant. Dans ce cas, l'utilisation de Regrouper par avec Lorsque toutes les entités sont reçues peut être une approche équivalente et plus simple. Note De multiples types d'entités et entités de multiples jeux de données ne vont généralement pas arriver dans l'ordre correct.
Comme pour beaucoup de scénarios, tester différentes approches dans votre traitement avec vos données est le seul moyen sûr d'identifier le gain de performance. |

Mode d'amalgamation |
Sélectionner une méthode d'amalgamation :
|
Dissoudre les entités en entrée |
Sélectionnez une option pour la dissolution des surfaces avant l'amalgamation :
|
Largeur maximum des triangles |
Indiquer la largeur maximale des triangles, en unités de base. La largeur est mesurée sur le côté du triangle qui se trouve le long de la limite de l'entité. Cette valeur augmentera le nombre de triangles si elle est inférieure à la distance entre les nœuds de l'entité. |
Hauteur maximum des triangles |
Spécifiez la longueur maximale des triangles à utiliser pour créer des connecteurs. La longueur est déterminée par le côté le plus long du triangle, quelle que soit sa position par rapport à la limite de l'entité. Les triangles plus longs sont rejetés. |
Superficie minimum des trous |
Spécifier la taille minimale des zones, en unités de surface carrées, pour qu'elles puissent être conservées et créer des trous en forme de beignet dans l'amalgame. Les trous plus petits sont dissous dans l'amalgame. |
Attribut ID (option) |
(Facultatif) Nommez l'attribut pour qu'il contienne un identifiant unique généré pour chaque amalgame et ses triangles et trous associés. Les entités Untouched ont l'attribut ajouté mais les valeurs sont vides. |

Quand activé, ajoute un attribut de liste aux amalgames générés.
Liste |
Entrer un Nom de liste à créer pour chaque entité en sortie, contenant un élément pour chaque entité entrante qui contribue à cette géométrie. Ce paramètre peut être utilisé pour conserver les attributs des entités en entrée. Note Les attributs de liste ne sont pas accessibles à partir du schéma de sortie dans FME Workbench, sauf s'ils sont d'abord traités à l'aide d'un Transformer qui opère sur eux, comme ListExploder ou ListConcatenator. Il est également possible d'utiliser AttributeExposer.
|
Ajouter à la liste |
Tous les attributs : tous les attributs des entités entrantes ayant généré des entités en sortie seront ajoutés à la liste spécifiée dans le paramètre Liste. Attributs sélectionnés : seuls les attributs spécifiés dans le paramètre Attributs sélectionnés seront ajoutés à la liste spécifiée dans le paramètre Liste. |
Attributs sélectionnés |
Les attributs à ajouter à la liste lorsque le paramètre Ajouter à la liste vaut Attributs sélectionné. |
Éditer les paramètres des Transformers
Les paramètres du Transformer peuvent être définis en saisissant directement des valeurs, en utilisant des expressions ou en faisant référence à d'autres éléments de l'espace de travail tels que des valeurs d'attributs ou des paramètres utilisateur. Divers éditeurs et menus contextuels sont disponibles pour vous aider. Pour voir ce qui est disponible, cliquez sur à côté du paramètre concerné.

Définir les valeurs
Il existe plusieurs façons de définir une valeur à utiliser dans un Transformer. La plus simple consiste à saisir simplement une valeur ou une chaîne de caractères, qui peut inclure des fonctions de différents types telles que des références d'attributs, des fonctions mathématiques et de chaînes de caractères, et des paramètres traitement.
Utilisation de l'éditeur de texte
L'éditeur de texte fournit un moyen efficace de construire des chaînes de textes (dont les expressions régulières) à partir de données source diverses, telles que des attributs, des paramètres et des constantes, et le résultat est directement utilisé dans le paramètre.
Utilisation de l'éditeur arithmétique
L'éditeur arithmétique fournit un moyen simple de construire des expressions mathématiques à partir de plusieurs données source, telles que des attributs et des fonctions, et le résultat est directement utilisé dans un paramètre.
Valeur conditionnelle
Définit des valeurs selon un ou plusieurs tests.
Fenêtre de définition de conditions
Contenu
Les expressions et chaînes de caractères peuvent inclure des fonctions, caractères, paramètres et plus.
Lors du paramétrage des valeurs - qu'elles soient entrées directement dans un paramètre ou construites en utilisant l'un des éditeurs - les chaînes de caractères et les expressions contenant des fonctions Chaîne de caractères, Math, Date et heure ou Entité FME auront ces fonctions évaluées. Par conséquent, les noms de ces fonctions (sous la forme @<nom_de_fonction>) ne doivent pas être utilisés comme valeurs littérales de chaîne de caractères.

Ces fonctions manipulent les chaînes de caractères. | |
Caractères spéciaux |
Un ensemble de caractères de contrôle est disponible dans l'éditeur de texte. |
Plusieurs fonctions sont disponibles dans les deux éditeurs. | |
Fonctions Date/heure | Les fonctions de dates et heures sont disponibles dans l'Editeur texte. |
Ces opérateur sont disponibles dans l'éditeur arithmétique. | |
Elles retournent des valeurs spécifiques aux entités. | |
Les paramètres FME et spécifiques au traitement peuvent être utilisés. | |
Créer et modifier un paramètre publié | Créer ses propres paramètres éditables. |

Outils de tableau
Les Transformers avec des paramètres de style table possèdent des outils additionnels pour remplir et manipuler des valeurs.
Réordonner
|
Activé une fois que vous avez cliqué sur un élément de ligne. Les choix comprennent :
|
Couper, Copier et Coller
|
Activé une fois que vous avez cliqué sur un élément de ligne. Les choix comprennent :
Copier, copier et coller peuvent être utilisés au sein d'un Transformer ou entre Transfromers. |
Filtre
|
Commencez à taper une chaîne de caractères, et la matrice n'affichera que les lignes correspondant à ces caractères. Recherche dans toutes les colonnes. Cela n'affecte que l'affichage des attributs dans le Transformer - cela ne change pas les attributs qui sont sortis. |
Importer
|
Le bouton d'import remplit la table avec un jeu de nouveaux attributs lus depuis un jeu de données. L'application spécifique varie selon les Transformers. |
Réinitialiser/Rafraîchir
|
Réinitialise la table à son état initial, et peut fournir des options additionnelles pour supprimer des entrées invalides. Le comportement varie d'un Transformer à l'autre. |
Note : Tous les outils ne sont pas disponibles dans tous les Transformers.
Pour plus d'information, consulter la section Options des Transformers.
Références
Comportement |
|
Stockage des entités |
Oui |
Dépendances | Aucun |
Alias | Amalgamator |
Historique |
FME Community
FME Community dispose d'une mine de connaissances sur FME, avec plus de 20 000 membres actifs dans le monde entier. Obtenez de l'aide sur FME, partagez vos connaissances et entrez en contact avec des utilisateurs du monde entier.
Voir tous les résultats à propos de ce Transformer sur FME Community.
Examples may contain information licensed under the Open Government Licence – Vancouver, Open Government Licence - British Columbia, and/or Open Government Licence – Canada.