GeometryValidator

Détecte des anomalies sélectionnées dans les entités d'entrée et, en option, répare les anomalies détectées. Chaque entité d'entrée est traitée individuellement.

Détection d'anomalies et Réparer

Pour plus d'information sur la façon dont les anomalies sont détectées et/ou réparées, consulter la section Table des anomalies GeometryValidator.

La détection des anomalies ne se produit qu'au sein des géométries des entités (ce qui inclut ses propriétés géométriques comme par exemple la rotation du texte ou l'angle de courbure des arcs d’ellipse). Cela signifie que les attributs, les traits, les noms de géométrie et les autres propriétés non géométriques ne sont pas traités.

Les entités avec une géométrie inadaptée au test (telles que des entités linéaires pour un test évaluant l'orientation de polygones) transitent via le Transformer et aucune réparation n'est effectuée.

En général, les types de géométrie en entrée sont préservés, sauf en cas d'impossibilité.

Par exemple, un arc qui dégénère en un point ne peut pas rester un arc et être en même temps non dégénéré. Ainsi, lorsque la question Géométries dégénérées et corrompues est sélectionnée et que l'option Tenter de réparer est définie sur Oui, l'arc doit être réparé en un point.

En revanche, un polygone troué contenant une enveloppe non dégénérée, un trou dégénéré et un trou non dégénéré peut rester un polygone à trou après réparation (s'il perd son trou dégénéré). Le polygone troué laisse simplement tomber le trou dégénéré et reste un beignet.

Si une géométrie d'entrée contient plusieurs anomalies, mais que seul un sous-ensemble d'entre elles est détecté et réparé, attendez-vous à un comportement non défini. Par exemple, si un arc contenant un NaN (Not a Number) est réparé uniquement pour la dégénérescence et la corruption, le nombre de NaN dans cet arc pourrait augmenter. Autre exemple, si vous tentez de réparer des auto-intersections dans une géométrie dégénérée, celle-ci peut ressortir avec un type de géométrie différent et perdre ses coordonnées.

En général, la détection et la réparation de certaines anomalies dépendent de l'absence d'autres anomalies. De plus, pendant la réparation d'une anomalie particulière, d'autres anomalies peuvent être créées. Si les dépendances des problèmes en entrée sont respectées, on peut s'attendre à ce que la sortie d'une opération de réparation d'une anomalie ne contienne plus ce problème.

Dépendances d'entrée des anomalies

La détection et réparation des anomalies suivantes dépend de l’absence d’autres anomalies :

Géométries dégénérées ou corrompues pas de NaN ou de valeurs infinies en entrée

Auto-intersections en 2D

Astuce : pour éviter un comportement indéfini, sélectionner Géométries dégénérées ou corrompues et Contient des NaN ou infini avant de sélectionner Auto-Intersection en 2D.

pas de NaN ou de valeurs infinies, de données dégénérées ou corrompues en entrée
Surfaces non planes pas de NaN ou de valeurs infinies en entrée
Bordures de solide invalides ou Vides dans solide invalides pas de NaN ou de valeurs infinies, de doublons, de données dégénérées, corrompues ou d'auto-intersections dans les faces individuelles en entrée.
Vides dans solides invalides pas de bordures de solide invalides

Dépendances de sortie des anomalies, en supposant que les dépendances d'entrée sont respectées

Réparer les anomalies suivantes peut produire d’autres anomalies :

Contient des -0, NaN ou des valeurs infinies peut produire en sortie une donnée dégénérée
Géométries dégénérées ou corrompues peut produire en sortie une donnée auto-intersectée
Contient des parties géométriques nulles peut produire en sortie une donnée dégénérée
Points consécutifs dupliqués (doublons) peut produire en sortie une donnée dégénérée
Auto-intersections en 2D peut produire en sortie une donnée dégénérée
Bordures de solide invalides peut produire des faces dégénérées en bordure du solide

L'ordre recommandé des anomalies à détecter est intégré dans la colonne des anomalies. Si vous souhaitez un ordre différent, mettez une anomalie en surbrillance, puis cliquez sur les flèches vers le haut et vers le bas en bas du tableau des anomalies.

Astuce : L'ordre de détection et de réparation des anomalies peut modifier les géométries en sortie.

Configuration

Ports d'entrée

Ports de sortie

Paramètres

Éditer les paramètres des Transformers

À l'aide d'un ensemble d'options de menu, les paramètres du Transformer peuvent être attribués en faisant référence à d'autres éléments de traitement. Des fonctions plus avancées, telles qu'un éditeur avancé et un éditeur arithmétique, sont également disponibles dans certains Transformers. Pour accéder à un menu de ces options, cliquez sur à côté du paramètre applicable. Pour plus d'informations, voir Options de menus et paramètres de Transformer.

Définir les valeurs

Il existe plusieurs façons de définir une valeur à utiliser dans un Transformer. La plus simple est de simplement taper une valeur ou une chaîne de caractères, qui peut inclure des fonctions de différents types comme des références d'attributs, des fonctions mathématiques et de chaînes de caractères, et des paramètres de traitement. Il existe un certain nombre d'outils et de raccourcis qui peuvent aider à construire des valeurs, généralement disponibles dans le menu contextuel déroulant adjacent au champ de valeur.

Options - Tables

Les Transformers avec des paramètres de style table possèdent des outils additionnels pour remplir et manipuler des valeurs.

FME Community

FME Community est l'endroit où trouver des démos, des tutoriaux, des articles, des FAQ et bien plus encore. Obtenez des réponses à vos questions, apprenez des autres utilisateurs et suggérez, votez et commentez de nouvelles entités.

Voir tous les résultats à propos de ce Transformer sur FME Community.

Mots clefs : GeometryRepairer GeometryCleaner Mender Fixer NaNRemover InfinityRemover NullRemover IFMENullRemover GeometryTypeRepairer DegenerateGeometryRepairer CorruptGeometryRepairer MeshNormalRepairer FeatureValidator FeatureRepairer FeatureCleaner OGC-simple OGC-valid Duplicated Corrupted self intersected damaged erroneous error data repair fix bad data