Transformers FME: 2025.0
Transformers FME: 2025.0
AreaGapAndOverlapCleaner
Répare les topologies de surfaces en résolvant les trous et superpositions entre surfaces adjacentes.
Cas d'utilisation courants
- Nettoie les erreurs de topologie dans un ensemble de polygones pour créer une seule surface continue.
Comment fonctionne-t-il ?
AreaGapAndOverlapCleaner reçoit des entités avec une géométrie de surface valide et nettoie les limites partagées en dissolvant les superpositions et en remplissant les espaces entre les polygones.
La géométrie des agrégats d'entrée peut être désagrégée ou rejetée.
Les valeurs Z et mesures sont supportées.
Réparer des superpositions et trous
Les superpositions et les lacunes sont traitées de manière légèrement différente.
Tous deux utilisent les paramètres Tolérance et Méthode de réparation pour déterminer la manière dont ils sont résolus. Les lacunes sont traitées en fonction du paramètre Remplir tous les trous.
Les superpositions sont toutes traitées, tout le temps. Si la superposition se situe à l'intérieur de la distance de tolérance, la réparation est effectuée automatiquement. Si la superposition est supérieure à la tolérance, la méthode de réparation choisie est utilisée.
Les lacunes situées à l'intérieur de la distance de tolérance sont réparées automatiquement. Si l'option Remplir tous les trous est Oui, les trous supérieurs à la tolérance sont réparées en fonction de la méthode de réparation choisie. Si la valeur Remplir tous les trous est Non, les trous ne sont pas réparés.
|
Remplir tous les trous |
A l'intérieur de la distance de tolérance |
Plus grand que la tolérance |
---|---|---|---|
Superpositions |
|
Automatique |
Par Méthode de réparation |
Trous |
Non |
Automatique |
Untouched |
Trous |
Oui |
Automatique |
Par Méthode de réparation |
Tolérance
La tolérance est une distance dans les unités de base du système de coordonnées des entités. Il est possible de saisir une valeur ou de choisir Automatique.
Pour la plupart des Transformers dotés d'un paramètre de tolérance, il est recommandé d'utiliser la fonction automatique, mais ce n'est souvent pas le bon choix dans le cas présent. Automatique calcule une valeur qui tient compte des différences minimes introduites par les limitations binaires, les erreurs d'arrondi et autres (voir Concepts de géométrie > Tolérance). La valeur calculée est écrite dans le fichier journal.
La tolérance est toujours supérieure à zéro.
Tolérance > Automatique ne tient pas compte de la taille des trous et superpositions présents dans les données. Pour de nombreux cas d'utilisation, cette valeur est trop faible et une valeur explicite doit être saisie. La valeur doit être guidée par la nature de la géométrie d'entrée (taille des trous et des polygones) et par le fait que vous souhaitez que les réparations soient gérées automatiquement ou déterminées par une méthode de réparation spécifique .
Méthode de réparation
Les trous et superpositions supérieurs à la valeur de tolérance sont réparés conformément à la méthode de réparation :
- Limite la plus longue : les trous et superpositions sont attribués à la surface dont la limite est la plus longue.
- Aléatoire : les trous et superpositions sont attribués à des surfaces sélectionnées au hasard.
- Priorité (préservation des arêtes) : Les trous et superpositions sont attribués en fonction d'un attribut de priorité numérique :
- Les superpositions vont au domaine le plus prioritaire.
- Les trous sont affectés au domaine de moindre priorité.
- La limite de la surface prioritaire est préservée.
- Priorité (élargissement de la surface) : Les trous et superpositions sont attribués en fonction d'un attribut de priorité numérique :
- Les superpositions et les trous sont affectés au domaine le plus prioritaire.
- La surface la plus prioritaire peut être élargie.
Lors de l'utilisation des méthodes de priorité, zéro (0) est la priorité la plus élevée. En cas de conflit lorsque plusieurs surfaces ont la même priorité, l'une d'entre elles est sélectionnée arbitrairement.
Exemples

Dans cet exemple, nous avons un ensemble d'entités parcellaires, séparées par endroits par des routes et des voies.
Un examen approfondi montre que les données ne sont pas propres et qu'elles doivent être réparées. Il y a des superpositions et des trous aléatoires.
Notez que ce couloir a une largeur d'environ 6 mètres. Il s'agit d'un trou valable qu'il convient de préserver.
Tolérance : Trop grand
Les entités sont acheminées vers un AreaGapAndOverlapCleaner.
Dans la boîte de dialogue des paramètres, la tolérance est fixée à 20 (mètres, en unités terrestres). La valeur Remplir tous les trous est Non, de sorte que seuls les trous situés dans la tolérance seront réparés.
Les résultats ne sont pas bons. La tolérance étant plus large que le trou valide, le couloir a été comblé de travers.
Lorsque la tolérance est trop grande, des résultats imprévisibles apparaissent, notamment des pics, des formes déformées et des surfaces valides remplies.
Tolérance : Juste
Les entités sont acheminées vers un AreaGapAndOverlapCleaner.
Dans la boîte de dialogue des paramètres, la tolérance est fixée à 2,5 - une valeur inférieure à la largeur des trous valides, mais suffisamment importante pour capturer les erreurs.
Les trous et superpositions sont réparés.
Les trous valides sont préservés et les formes des entités sont intactes.

Dans cet exemple, nous avons deux ensembles de données avec une géométrie de surface - des polygones de surface et des rivières à deux lignes. Notez que le polygone de surface sélectionné a une valeur de PRIORITÉ de 1.
Nous voulons une couverture contiguë, avec des surfaces qui se rejoignent au bord de la rivière.
En y regardant de plus près, on s'aperçoit que les deux ensembles de données ne se rejoignent pas parfaitement. Il y a des trous et des superpositions. Notez que le polygone de la rivière a une valeur de PRIORITÉ de 0.
Nous voulons nettoyer les données et préserver la forme des polygones de la rivière - et non pas adapter la rivière à la forme des surfaces.
Les deux ensembles de données sont acheminés vers des AttributeCreator pour ajouter leur valeur PRIORITE, puis vers AreaGapAndOverlapCleaner.
Dans la boîte de dialogue des paramètres, la tolérance est réglée sur Automatique. Cela permet de calculer un nombre de tolérances extrêmement faible (voir Tolérance ci-dessus).
Toutes les erreurs visibles seront beaucoup plus importantes que cette tolérance, et les paramètres de tolérance extérieure seront donc appliqués - Remplir tous les trous, Méthode de réparation et Attribut de priorité.
La méthode de réparation est définie sur Priorité (préservation des arêtes), avec l'attribut PRIORITÉ sélectionné.
Zéro (0) est le niveau de priorité le plus haut.
Les superpositions sont absorbées dans la rivière et les trous sont ajoutés aux surfaces. La forme de la rivière est préservée et la couverture est contiguë.
Notes
- Lorsque des résultats inattendus sont obtenus, il est souvent possible de les corriger en ajustant la valeur de la tolérance.
- Pour réparer uniquement les superpositions (et non les trous), pensez à utiliser un Dissolver.
- Les géométries de surface non valides, telles que les polygones auto-intersectés ou dégénérés, ne seront pas rejetées, mais ne seront pas réparées correctement.
- Les polygones troués sont des trous et peuvent être traités en conséquence.
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 géométrie de la surface.
Ports de sortie

Les entités dont les trous et superpositions ont été résolus sont produites ici, y compris les entités d'entrée non modifiées.

Les géométries qui se sont effondrées dans les limites de la tolérance sont éditées ici, ainsi que toutes les entités dont la géométrie est restée nulle après la résolution des superpositions.

Les entités avec des géométries invalides sont rejetées et ressortent par ce port.
Lorsque la méthode de réparation est Priorité (préservation des bords) ou Priorité (agrandissement de la surface), les entités dont les attributs de priorité ne sont pas valides sont également rejetées via ce port.
Les entités rejetées ont un attribut fme_rejection_code avec l'une des valeurs suivantes :
INVALID_GEOMETRY_TYPE
INVALID_PARAMETER_PRIORITY_ATTRIBUTE
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 |
Le comportement par défaut consiste à utiliser l'ensemble des entités comme groupe. Cette option vous permet de sélectionner les attributs qui définissent les groupes à former. |
||||
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. |

Tolérance |
Spécifiez la distance maximale (en unités terrestres) entre les géométries en 2D pour les entités à réparer automatiquement. Si Automatique, la tolérance est calculée sur la base des entités saisies et ne tient compte que des variations extrêmement faibles. La valeur est écrite dans le fichier journal. Voir Tolérance ci-dessus, ainsi que Concepts de géométrie > Tolérance. |
Gestion des agrégats |
Choisir comment les agrégats de géométries doivent être gérées. Désagréger : Décompose les agrégats en leurs composants individuels. Avec ce paramètre, le Transformer peut produire plus d'entités que celles qui ont été données en entrée. Rejeter : ne pas traiter les agrégats et les sortir via le port <Rejected>. |

Méthode de connexion du Z |
Si applicable, sélectionner une méthode pour la gestion des valeurs z. ![]() En le visualisant en 2D (en ignorant le Z), un chemin (qui peut définir le bord d'un polygone) peut apparaître fermé tel que montré ci-dessous. Ce même chemin, vu en 3D, peut apparaître ouvert comme le montre la figure de droite ci-dessous.
Pour spécifier la façon (et si) dont le chemin doit être fermé en 3D, sélectionner une des méthodes suivantes.
|
||||||||||||||||||
Méthode de gestion des conflits Mesures/Z |
Sélectionnez une méthode pour traiter les géométries qui ont une mesure, mais dont il manque au moins une valeur, ou qui ont des valeurs z, mais dont il manque au moins une valeur.
|
||||||||||||||||||
Traiter les mesures comme |
Quand la méthode de gestion des valeurs manquantes est Calcul, les mesures peuvent être considérées comme Continues, et linéairement interpolées à partir de leurs voisins, ou elles peuvent être Discrètes, et prendre exactement la valeur à partir du plus proche voisin. |

Remplir tous les trous |
Sélectionnez une option pour la réparation des trous :
|
||||||||
Méthode de réparation |
Sélectionnez une méthode pour réparer les trous et superpositions dont la taille est supérieure à la valeur de tolérance.
|
||||||||
Attribut de priorité |
Lorsque la méthode de réparation est priorité (préservation des bords) ou priorité (agrandissement des surfaces), indiquez l'attribut contenant la valeur de priorité. Lorsque la méthode de réparation est prioritaire (préservation des bords) ou prioritaire (agrandissement de la surface), indiquez l'attribut contenant la valeur de priorité. Zéro (0) est le niveau de priorité le plus haut. |
É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 | |
Alias | SliverRemover |
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.