RasterExpressionEvaluator
Évalue les expressions dans chaque cellule d'un raster ou d'une paire de rasters, dont les opérations algébriques et déclarations conditionnelles.
Utilisations typiques
- Effectuer des calculs sur des rasters ou paires de rasters
- Manipuler des images
- Combiner des rasters
- Classifier des rasters
Comment fonctionne-t-il ?
RasterExpressionEvaluator reçoit des entités et évalue les expressions définies en utilisant les valeurs des cellules, puis génère de nouvelles entités rasters avec les valeurs calculées.
Méthode - Un ou Deux rasters
Ce Transformers a deux modes : Un raster et Deux rasters.
Le mode Un Raster fournit un seul port d'entrée - le port A. Dans ce mode, les expressions seront évaluées entièrement dans un seul raster.
Le mode Deux Rasters fournit deux ports d'entrée - A et B. Dans ce mode, les expressions peuvent utiliser les valeurs de cellules de deux rasters de mêmes dimensions (même nombre de lignes et de colonnes). Les informations de position des rasters géoréférencés ne sont pas prises en compte. Le nombre d'entités raster d'entrée peut être :
- Si Un raster (A) - un raster A ou plus, aucun raster B.
- Si Deux rasters (A et B) - un raster A, un ou plusieurs rasters B. L'unique entrée A sera couplée à chaque entrée B.
Toutes les bandes utilisées dans la même expression doivent avoir la même valeur de Nodata, ou ne pas avoir de valeur de Nodata du tout. Aucune bande ne peut avoir de palette.
Dans le mode Deux rasters, si une expression référence à la fois les entités raster en entrée A et B, le raster en sortie aura tous les attributs des deux entités A et B. Si le même attribut existe sur les deux entités, alors la valeur d'attribut depuis l'entité B sera préférée.
Quand l'opération n'est effectuée que sur une entrée (par exemple, si la méthode est Un raster ou si l'expression référence seulement l'entrée A), les attributs de l'entité et les propriétés du raster restent inchangées.
Expressions
Les expressions sont définies dans la table Expression(s) de bande. Chaque ligne de la table correspond à une bande du raster en sortie, dans l'ordre séquentiel - c'est-à-dire que la première ligne produit la bande 0, la deuxième ligne la bande 1, et ainsi de suite. Le Type d'interprétation pour chaque bande de sortie est également spécifié ici.
Les expressions peuvent être aussi simples qu'une valeur constante ou une simple opération arithmétique. L'éditeur arithmétique - Expression raster est disponible via le bouton Ellipse (...) pour aider à la construction d'expressions.
Les expressions sont sensibles à la casse.
Notez que lors de la conversion entre différents types de données, un Transtypage majoré est utilisé. Par conséquent, lorsqu'une valeur calculée ne tient pas dans l'interprétation de destination spécifiée, la valeur de destination correspondante sera fixée à la valeur minimale ou maximale possible dans le type de données de destination. Par exemple, une valeur de 300, si elle est convertie en une bande d'entiers non signés de 8 bits, deviendra 255 (la valeur maximale disponible pour ce type d'interprétation).
Nodata et valeurs nulles (0) : L'évaluation d'une expression implique souvent la modification des types d'interprétation des valeurs, et peut parfois donner lieu à un comportement imprévisible, notamment dans le cas de zéro (0). Lors de la définition de votre expression, la meilleure pratique consiste à spécifier le zéro sous forme décimale comme 0,0 pour éviter qu'il ne soit mal interprété comme Nodata.
Exemples
Syntaxe de l'expression
|
Signifie... |
---|---|
|| | Ou |
&& | Et |
== | Egal |
!= | Différent |
< | Inférieur à |
> | Supérieur à |
A[x] | Bande x de l'entité raster A |
B[x] | Bande x de l'entité raster B |
Les bandes se comptent à partir de 0 (donc un raster tri-bandes sera A[0], A[1] et A[2]).
Une déclaration peut être aussi simple que :
255 | Définit la valeur de la cellule actuelle à 255. |
A[0]+1 | Définit la valeur de la cellule actuelle pour être Raster A, bande 0, plus 1. |
La déclaration "si"
if (A[0] < 255, 200, 255) | Si dans le Raster A, la bande zéro est inférieure à 255, alors définir la cellule actuelle sur 200, sinon la laisser telle quelle. |
if (A[0]<50 || A[1]<50 || A[2]<50, 0, 255) | Si dans le Raster A, la bande zéro est inférieure à 50 OU que la bande une est inférieure à 50 OU que la bande deux est inférieure à 50, alors définir la cellule actuelle sur 0, autrement la définir sur 255. |
Les bandes dans deux entités rasters peuvent être référencées dans cette déclaration :
if (A[0]!=B[0] && A[0]<255, 0, A[0]) | Si dans la bande zéro du Raster A n'est pas égale à la bande zéro du Raster B ET que la bande zéro du Raster A est inférieure à 255, alors définir la cellule courante sur 0, autre la définir selon la valeur de la bande zéro du Raster A. |
Les opérateurs mathématiques standards sont permis :
if (A[0] - B[0] == 255, 0, A[0]/5) | Si la bande zéro du Raster A moins la bande zéro du Raster B est égal à 255, alors définir la cellule actuelle à 0, sinon diviser la valeur de la bande zéro du Raster A par cinq. |
Les attributs peuvent être référencés en utilisant @Value et soit A: soit B: pour référer le nom d'attribut :
A[0]*@Value(A:myattr) | Multiplier la bande zéro du Raster A par l'attribut monAttr du raster A. |
Exemples
Expression |
Resultat |
---|---|
255-A[0] | Inverse une bande de 8 bits. Pour une image RVB 24 bits, répétez pour A[1] et A[2] pour inverser l'image complète. Répétez également pour A[3] s'il s'agit d'une image RVBA 32 bits. |
if ((A[0]+A[1]+A[2])==0, 255, A[0]) | Convertit les valeurs noires en blanc dans une image RVB. Répétez l'opération pour A[1] et A[2] afin d'inverser le noir et le blanc pour l'image complète. |
A[0]*1.5 | Augmente la luminosité de la bande rouge d'une image RVB. Répétez l'opération pour A[1] et A[2] afin d'éclaircir l'ensemble de l'image. |
@sqrt((A[0]*A[0]) + (B[0]*B[0])) | Combine deux cellules raster ensemble. Une alternative serait de faire la moyenne des valeurs : (A[0]+B[0])/2) |
if(A[0]==0,0,A[0]/@Value(A:_height+1)) | Classifier les cellules raster MNT en groupes dont la taille est définie par l'attribut _height. |
Dans cet exemple, nous allons convertir un raster couleur en niveaux de gris. Notez que le raster original a trois bandes - Rouge, Vert et Bleu. Les valeurs de toutes les bandes seront utilisées pour calculer une seule valeur de sortie.
Les valeurs pour chaque bande sur chaque cellule peut être utilisée pour calculs.
Le raster est dirigé vers RasterExpressionEvaluator.
Dans les paramètres, nous définissons une seule expression à calculer et à stocker dans une seule bande de gris. L'interprétation est définie sur Gray8, et l'expression fait référence aux valeurs des cellules des trois bandes entrantes. (Cette formule utilise des valeurs couramment recommandées pour la conversion de la couleur en échelle de gris).
La numérotation des bandes commence à zéro, ainsi A[0] fait référence à la première bande (rouge), A[1] à la seconde (vert) et A[2] à la troisième (bleu).
L'entité raster en sortie contient seulement une bande, la bande Gray8 spécifiée dans les paramètres.
Les résultats de l'évaluation d'expressions ressortent en tant que valeurs de cellules.
Dans cet exemple, nous allons utiliser RasterExpressionEvaluator pour isoler une zone de terrain isolée se situant sous 150 mètres de distance des principaux axes routiers.
Nous commençons avec deux rasters numériques. Le premier représente le zonage, avec des valeurs entières de 1 à 10, où chaque valeur représente arbitrairement un type de zone. Ce sera notre raster "A".
Nous sommes intéressés dans une zone de type 3.
Le second raster représente des zones tampons de 150 mètres le long des routes artérielles. Les cellules ont une valeur de 0 ou 1, où 1 représente les pixels à l'intérieur des zones tampons, et 0 à l'extérieur des zones tampons. C'est notre raster "B".
La paire de rasters est dirigée dans RasterExpressionEvaluator - notez que Méthode : Deux rasters doit être sélectionné dans les paramètres avant de pouvoir connecter le second raster, ceci activant (et affichant) le port d'entrée B.
Dans la boîte de dialogue des paramètres, nous créons une seule expression. Cela se traduira par la sortie d'un raster numérique à bande unique. Un type d'interprétation doit être spécifié - Int32 (entier de 32 bits) est choisi, comme type d'interprétation approprié pour ces valeurs.
L'expression référence les cellules depuis les rasters A et B et est utilisant sous cette forme :
if (conditions, pass value, fail value)
Si la valeur de cellule du raster A (zones) est égale à 3, ET que la valeur de cellule du raster B (tampons d'artères) est égale à 1, alors la valeur de cellule 3 est émise. Sinon, définissez la valeur de la cellule sur 0.
Notez que zéro est spécifié sous sa forme décimale 0.0 (évitant une mauvaise interprétation en tant que nodata).
Toute cellule tombant dans la zone 3 et la zone tampon d'un axe routier est mise en sortie avec une valeur de 3, et les autres avec 0.
Notes
- Pour effectuer des calculs basiques entre deux rasters (Cellule 1 <opérateur> Cellule 2), considérez utiliser RasterCellValueCalculator.
- Pour effectuer des calculs basiques entre une cellule de raster et une valeur numérique, considérez utiliser RasterSingularCellValueCalculator
- Pour combiner des raster, fondre des contours de superpositions partielles, considérez utiliser RasterMosaicker.
- Les valeurs Nodata peuvent être réglées avec RasterBandNodataSetter ou supprimés avec RasterBandNodataRemover.
- Les Palettes peuvent être déterminées via RasterPaletteResolver ou supprimées via RasterPaletteRemoverRasterPaletteRemover.
Choisir un Transformer raster
FME dispose d'une vaste sélection de Transformers pour travailler avec des données rasters. On peut généralement les classer en deux catégories : ceux qui permettent de travailler avec des rasters entiers, des bandes, des cellules ou des palettes, et ceux qui sont conçus pour le contrôle du flux de travail ou la combinaison de données raster et vectorielles.
Pour plus d'informations sur les géométries et propriétés rasters, voir Rasters (IFMERaster).
Travailler avec des rasters
RasterCellOriginSetter | Définit le point d'origine de la cellule dans les cellules d'un raster. |
RasterConvolver |
Applique un filtre de convolution (des fois appelé kernel ou lentille) aux entités rasters et met en sortie les résultats. |
RasterExpressionEvaluator | Évalue les expressions dans chaque cellule d'un raster ou d'une paire de rasters, dont les opérations algébriques et déclarations conditionnelles. |
RasterExtentsCoercer | Remplace la géométrie des entités raster en entrée avec un polygone couvrant soit l'étendue d'un raster soit l'étendue des données dans un raster. |
RasterGCPExtractor | Extrait le système de coordonnées du point de contrôle (ou GCP pour Ground Control Point) et fait pointer vers ces valeurs depuis une entité raster pour les exposer ensuite en tant qu'attribut. |
RasterGCPSetter | Définit les points de contrôle (Ground Control Points - GCP) sur un raster, appariant les positions des cellules avec les coordonnées connues. |
RasterGeoreferencer | Géoréférence un raster soit en fonction des coordonnées ou origines connues d'angles, taille de cellule et rotation. |
RasterHillshader | Génère une représentation en relief et en nuances de gris du terrain selon les valeurs d'élévation. |
RasterInterpretationCoercer |
Altère de type d'interprétation des rasters, incluant toutes les bandes et convertit les valeurs de cellules si nécessaire. |
RasterMosaicker | Fusionne plusieurs entités raster en une seule entité. |
RasterPropertyExtractor | Extrait les propriétés géométriques de l'entité raster et les stocke sous forme d'attributs. |
RasterPyramider | Rééchantillonne des rasters avec plusieurs résolutions selon le nombre de niveaux ou de dimensions du plus petit raster en sortie. |
RasterRegisterer | Transforme une image pour minimiser ses différences avec une autre. |
RasterResampler | Rééchantillonne les rasters selon les dimensions de sortie spécifiées, de la taille de cellule en unités terrain ou du pourcentage de l’original, puis interpole les nouvelles valeurs de cellules. |
RasterRotationApplier |
Pivote une entité raster selon sa propriété d'angle de rotation, interpolant les nouvelles valeurs de cellules, mettant à jour toutes les autres propriétés rasters affectées et produisant en sortie une entité raster avec un angle de rotation de zéro. |
RasterSharpener | Améliore les entités d'une image raster. RasterSharpener améliore les bords, les lignes et les courbes tout en réduisant le bruit dans les zones plates de l'image raster. |
RasterSubsetter | Découpe les entités rasters en utilisant une marge intérieure plutôt que les coordonnées terrain, et ajoute optionnellement des cellules autour du périmètre. |
RasterTiler | Découpe chaque entité raster en entrée en une série de tuiles en spécifiant soit la taille des tuiles en cellules/pixels soit un nombre de tuiles. |
RasterToPolygonCoercer | Crée des polygones à partir d'entités raster d'entrée. Un polygone est créé pour chaque zone contiguë de pixels ayant la même valeur dans l'image raster d'entrée. |
WebMapTiler | Crée une série de tuiles d'images qui peuvent être utilisées par des applications dewebmapping telles que Bing™ Maps, Google Maps™ ou Web Map Tile Service. Pour ce faire, on rééchantillonne les rasters à diverses résolutions différentes, puis on les divise en tuiles. |
Travailler avec les bandes
RasterBandAdder | Ajoute une nouvelle bande à une entité raster. |
RasterBandCombiner | Fusionne les entités raster coïncidant en une seule entité raster en sortie, conservant et ajoutant toutes les bandes. |
RasterBandInterpretationCoercer |
Altère le type d'interprétation pour les bandes rasters individuelles, convertissant les valeurs de cellules si nécessaire. |
RasterBandKeeper |
Supprime toutes les bandes non-sélectionnées d'une entité raster. |
RasterBandMinMaxExtractor | Extrait les valeurs de bandes minimum et maximum, les clés de palettes et valeurs de palettes depuis une entité raster et les ajoute à un attribut de liste. |
RasterBandNameSetter | Définit le nom de bande des bandes sélectionnées dans un raster, rendant le contenu raster plus simple à comprendre comparés à des numéros de bandes. |
RasterBandNodataRemover | Supprime l'identifiant Nodata existant des bandes sélectionnées d'une entité raster. Toutes les valeurs précédemment égales à la valeur Nodata sont considérées comme des données valides. |
RasterBandNodataSetter | Définit une valeur nodata sur les bandes sélectionnées d'une entité raster. |
RasterBandOrderer | Spécifie l'ordre requis des bandes dans un raster. Les bandes sont réorganisées à partir de l'index des bandes en entrée. |
RasterBandPropertyExtractor | Extrait les propriétés des bandes et des palettes de l'entité raster et les stocke sous forme d'attributs. |
RasterBandRemover | Supprime toute bande sélectionnée d'une entité raster. |
RasterBandSeparator | Sépare les bandes ou bandes uniques et combinaisons de palettes, puis génère soit des entités raster individuelles soit une seule entité raster contenant toutes les combinaisons. |
RasterStatisticsCalculator | Calcule les statistiques sur des bandes rasters et ajoute les résultats sous forme d'attributs. |
Travailler avec les cellules
RasterAspectCalculator |
Calcule l'aspect (direction de la pente) pour chaque cellule d'un raster. L'aspect est mesuré en degrés de 0 à 360, dans le sens des aiguilles d'une montre à partir du nord. |
RasterCellCoercer | Crée des points ou polygones individuels pour chaque cellule dans un raster, en extrayant optionnellement les valeurs de bandes en tant que coordonnées z ou attributs. |
RasterCellValueCalculator | Evalue des opérations d'arithmétique basique, minimum, maximum ou moyenne sur les valeurs de cellules d'une paire de rasters. |
RasterCellValueReplacer | Remplace une plage de valeurs de bandes dans un raster avec une nouvelle valeur unique. |
RasterCellValueRounder | Arrondit les valeurs des cellules raster. |
RasterSegmenter | Partitionne une image raster en groupes de cellules tailles arbitraires depuis l'image en entrée selon l'intensité des différences dans les cellules de l'image raster en entrée. |
RasterSingularCellValueCalculator | Effectue des opérations arithmétiques sur les valeurs de cellules d'un raster comparées à une valeur numérique. |
RasterSlopeCalculator | Calcule la pente (différence maximale en z) pour chaque cellule d'un raster. |
Travailler avec les palettes
RasterPaletteAdder |
Crée une palette à partir d'un attribut, et ajoute cette palette à toutes les bandes sélectionnées du raster. |
RasterPaletteExtractor | Créer une représentation sous forme de chaîne de caractères d'une palette existante et l'enregistre dans un attribut. |
RasterPaletteGenerator | Generates a palette out of the selected band(s) of a raster. The output raster will have the selected band(s) replaced by a new band with a palette. |
RasterPaletteInterpretationCoercer |
Altère l'interprétation du type de palettes rasters. |
RasterPaletteNodataSetter |
Identifie la clé de palette qui correspond à la valeur Nodata d'une bande d'un raster et y définit une valeur. |
RasterPaletteRemover | Supprime les palettes sélectionnées d'entités rasters. |
RasterPaletteResolver | Résout la ou les palettes sur une trame en remplaçant les valeurs des cellules par leurs valeurs de palette correspondantes. Les valeurs de palette à composantes multiples, telles que RGB, sont décomposées et les valeurs individuelles sont affectées à plusieurs bandes nouvellement ajoutées. |
Contrôle de l'exécution
RasterCheckpointer | Force des opérations accumulées de rasters à être traitées, sauvegarde l'état sur le disque puis libère les ressources pour améliorer les performances et aider avec les limitations de mémoire. |
RasterConsumer | Lit les entités rasters à des fins de test, y compris toutes les opérations rasters accumulées. Aucune opération supplémentaire n'est effectuée, et rien n'est fait avec les entités. |
RasterExtractor | Sérialise la géométrie d'une entité raster dans un attribut Blob, encodant le contenu selon un choix de formats rasters binaires classiques. |
RasterNumericCreator | Crée un raster numérique de la taille et résolution spécifiées avec des valeurs de cellules par défaut. |
RasterReplacer | Décode un attribut binaire contenant des rasters encodés stockés en tant que blobs, puis remplace la géométrie de l’entité avec le raster décodé. |
RasterRGBCreator | Crée une entité raster couleur de la taille, résolution et type d'interprétation spécifiés avec des valeurs de cellules par défaut. |
RasterSelector |
Sélectionne des bandes et des palettes d'une entité raster pour traitement ultérieur par des Transformers spécifiques. |
Vectoriels et rasters
ImageRasterizer | Crée une représentation raster d'une entité vectorielle ou nuage de point en utilisant l'attribut fme_color sur une fond plein rempli pour les entités vectorielles. Les nuages de points peuvent être rendus en utilisant leurs composantes de couleur ou d'intensité. |
NumericRasterizer | Crée une représentation sous forme de raster numérique d'entités entrantes vectorielles ou nuages de points, où les valeurs des cellules sont prises depuis les coordonnées z des entités en entrée et superposées sur une fond uniforme. |
MapnikRasterizer | Génère un raster depuis des entités rasters ou vectorielles en entrée, avec un contrôle laissé sur la symbolisation et l’étiquetage en utilisant la boîte à outils Mapnik. |
PointCloudOnRasterComponentSetter | Définit les valeurs des composantes du nuage de points en superposant un nuage de points sur une trame. Les valeurs des composantes de chaque point sont interpolées à partir des valeurs de la bande à l'emplacement du point. |
PointOnRasterValueExtractor | Extrait les valeurs de bandes et palettes d'un raster à l'emplacement d'un ou plusieurs des points en entrée et les définit en tant qu'attribut sur l'entité. |
RasterDEMGenerator | Produit un modèle numérique d'élévation (MNE) en effectuant de manière uniforme une triangulation de Delaunay générée depuis des points d'entrée et des lignes de rupture. |
VectorOnRasterOverlayer | Rasterise des entités vectorielles ou des nuages de points sur une image raster existante. Pour les entités vectorielles, l'attribut fme_color définit la couleur des pixels, et les nuages de points peuvent être rendus en utilisant leurs composantes de couleur ou d'intensité. |
Configuration
Ports en entrée
Entités raster pour évaluer les expressions. Les palettes ne sont pas prises en charge.
Le port d'entrée B est seulement exposé quand la Méthode : Deux rasters est sélectionnée.
Ports de sortie
Entités raster où les bandes sont définies et les valeurs calculées en fonction des sélections de paramètres. Un raster est produit pour chaque raster d'entrée en mode Un Raster, et pour chaque paire A/B en mode Deux Rasters.
Les entités non-raster seront dirigées vers le port <Rejected>, tout comme les rasters invalides.
Les entités rejetées ont un attribut fme_rejection_code avec l'une des valeurs suivantes :
INVALID_GEOMETRY_TYPE
INVALID_A_RASTER_NO_BANDS
INVALID_B_RASTER_NO_BANDS
INVALID_A_RASTER_MISSING_BAND
INVALID_B_RASTER_MISSING_BAND
MISSING_A_RASTER_MISSING_ATTRIBUTES
MISSING_B_RASTER_MISSING_ATTRIBUTES
EXTRA_A_RASTER_HAS_PALETTE
EXTRA_B_RASTER_HAS_PALETTE
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
Mode |
Ce paramètre spécifie combien de types d'entités entrants sont autorisé. Un raster : Seulement les entités entrantes A sont autorisées. Deux rasters : les entités entrantes A et B sont autorisées. |
Regrouper par | Si des attributs Regrouper par sont donnés, alors chaque groupe sera traité indépendamment. Cela permet à un seul Transformer d'opérer sur plusieurs paires de A et B. Notez que ce paramètre n'est pas applicable lorsque la méthode est Un Raster ; dans ce cas, chaque raster est considéré individuellement et il n'y a pas de groupements. |
Traitement des regroupements |
Lorsque toutes les entités sont reçues : comportement par défaut. Le traitement n'aura lieu qu'une fois que toutes les entités en entrée seront présente. Quand le groupe change (avancé) : ce Transformer traitera les groupes en entrée dans l'ordre. Les changements de la valeur du paramètre Regrouper par sur le flux d'entrée déclencheront le traitement du groupe en cours de regroupement. Cela peut améliorer la vitesse globale (en particulier avec plusieurs groupes de taille égale), mais peut provoquer un comportement indésirable si les groupes en entrée ne sont pas ordonnés. Considérations sur l'utilisation de Regrouper par
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 projet avec vos données est le seul moyen sûr d'identifier le gain de performance. |
Cette table est utilisée pour spécifier la façon dont calculer et interpréter un ou plusieurs bandes dans le raster généré.
Chaque ligne de la table représente une bande différente dans le raster en sortie, dans un ordre séquentiel.
Interprétation |
Défini le type d'interprétation de chaque bande en sortie. Conserver: Si toutes les bandes d'entrée partagent la même interprétation, la bande de sortie préservera cette interprétation. Si les bandes d'entrée ne partagent pas la même interprétation, Conserver est identique à Auto. Auto : l'interprétation en sortie sera automatiquement déterminée selon les types de données utilisées pour effectuer les calculs. Alternativement, l'interprétation peut être spécifié comme suit :
|
Expression |
Définir une expression à évaluer. L'éditeur arithmétique - Expression raster est accessible via le bouton ellipse (...) pour faciliter la création d'expressions. Le résultat de cette expression est stockée dans la bande correspondante du raster en sortie. |
É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 du 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 d'espace de travail. 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.
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 projet peuvent être utilisés. | |
Créer et modifier un paramètre publié | Créer ses propres paramètres éditables. |
Options - Tables
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.
Références
Comportement |
|
Stockage des entités |
Oui |
Dépendances | Aucun |
Alias | |
Historique |
FME Community
FME Community iest 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.
Rechercher tous les résultats sur ce Transformer sur FME Community.
Les exemples peuvent contenir des informations sous licence Open Government - Vancouver et/ou Open Government - Canada.