FME Transformers: 2024.1
FME Transformers: 2024.1
ArcPropertyExtractor
Extracts the properties of arc geometry, storing the resulting values as attributes.
Typical Uses
-
Making arc geometry properties accessible
-
Storing arc geometry properties for use elsewhere in a workspace
How does it work?
The ArcPropertyExtractor receives features with arc geometry and extracts their geometry properties into attributes.
Extracted properties include:
-
Primary Radius
-
Secondary Radius
-
Rotation
-
Start and Sweep Angle
-
Start X, Y and Z coordinates
-
End X, Y and Z coordinates
-
Center X, Y and Z coordinates
Values are calculated and extracted for all requested properties, regardless of the input arc geometry type.
To exclude an attribute, leave the parameter blank and it will not be added to the output features.
Feature geometry is unchanged.
Features without valid arc geometry are rejected, including ellipses.
For more information on arc geometry and types, see Arc.
Examples
Example: Extracting arc properties into attributes
In this example, we have a set of features with various arc geometries and want to extract the properties into attributes for use elsewhere.
Note that the input features have no attributes, but do have geometry properties.
The features are routed into an ArcPropertyExtractor.
In the parameters dialog, we keep the defaults given for all Output Attribute Names.
The output features have new attributes added, containing the geometry properties.
Usage Notes
-
Paths with arc segments (such as the output of the Curvefitter) must be split into their components before using the ArcPropertyExtractor. See PathSplitter.
Creating and Modifying Arcs, Circles, and Ellipses
These transformers work with arcs in a variety of ways.
Arc Transformers Comparison
|
Function |
Geometry Out |
Z Coordinates |
---|---|---|---|
Creates one or more new features with arc geometry (when Geometry Object is an arc type). |
Arc by center point Arc by center point with ends Arc by 3 points Arc by bulge Ellipse (Arc by center point) |
Supported |
|
Replaces any existing feature’s geometry with a 2D arc. |
Arc by center point |
No |
|
Replaces any existing feature’s geometry with a 3D arc. |
Arc by center point |
Yes, at center point |
|
Replaces an existing feature’s geometry with a 2D ellipse or circle (closed arc). |
Ellipse (Arc by center point) |
No |
|
Modifies an existing arc or converts a point to an arc. |
Arc by center point Arc by center point with ends Arc by 3 points |
Supported, at center and/or ends |
|
Modifies an existing ellipse (closed arc) or converts a point to an ellipse. |
Ellipse (Arc by center point) |
Supported, at center point |
|
Extracts the property values that describe an arc’s geometry and stores them as attributes. |
Arc by center point Arc by center point with ends Arc by 3 points Arc by bulge |
Supported |
|
Extracts the property values that describe an ellipse’s geometry and stores them as attributes. |
Ellipse (Arc by center point) |
Supported |
|
Converts arcs and ellipses to lines or polygons by interpolating points along the arc. |
Path Line Area |
Supported |
|
Replaces geometry with an arc described by the first, middle, and last vertices of the input feature. |
Arc by 3 points |
Supported |
|
Replaces lines or polygons with an optimal combination of line and arc segments, creating smooth curving lines. |
Path Area Arc by bulge Line |
Supported |
|
Reduces point density on lines or polygons, fitting arcs where possible (When using Algorithm > Douglas With Arc Fitting (Generalize) ). |
Path Area Arc by 3 points Line |
Supported |
|
Either replaces an existing feature’s geometry with circle that contains all of its vertices or extracts the circle property values into attributes. |
Ellipse (Arc by center point) |
No |
Configuration
Input Ports
Input
Features with arc geometry.
Output Ports
Output
Features with attributes containing geometry property values.
<Rejected>
Features without valid arc geometry are output via this port.
Rejected features will have an fme_rejection_code attribute with the following value:
INVALID_GEOMETRY_TYPE
Rejected Feature Handling: can be set to either terminate the translation or continue running when it encounters a rejected feature. This setting is available both as a default FME option and as a workspace parameter.
Note Feature order may change in relation to other output ports. Feature order per port is maintained.
Parameters
Output Attribute Names
Primary Radius |
Name the attribute to contain the length of the primary radius in ground units of the feature’s coordinate system. |
Secondary Radius |
Name the attribute to contain the length of the secondary radius in ground units of the feature’s coordinate system. |
Rotation |
Name the attribute to contain the rotation angle. Rotation is measured in degrees from the horizontal axis to the primary axis in a counterclockwise direction. |
Start Angle |
Name the attribute to contain the starting angle of the arc, in degrees counterclockwise from the primary axis (horizontal plus or minus rotation). |
Sweep Angle |
Name the attribute to contain the sweep angle in degrees, which controls the duration of the arc. Positive sweep angles run counterclockwise beginning at the start angle and ending at the sum of the start and sweep angles. Negative sweep angles run clockwise. |
Start X |
Name the attribute to contain the x coordinate of the arc’s start point. |
Start Y |
Name the attribute to contain the y coordinate of the arc’s start point. |
Start Z |
Name the attribute to contain the z coordinate of the arc’s start point. |
End X |
Name the attribute to contain the x coordinate of the arc’s end point. |
End Y |
Name the attribute to contain the y coordinate of the arc’s end point. |
End Z |
Name the attribute to contain the z coordinate of the arc’s end point. |
Center X |
Name the attribute to contain the x coordinate of the arc’s center point. |
Center Y |
Name the attribute to contain the y coordinate of the arc’s center point. |
Center Z |
Name the attribute to contain the z coordinate of the arc’s center point. |
Editing Transformer Parameters
Transformer parameters can be set by directly entering values, using expressions, or referencing other elements in the workspace such as attribute values or user parameters. Various editors and context menus are available to assist. To see what is available, click beside the applicable parameter.
How to Set Parameter Values
Defining Values
There are several ways to define a value for use in a Transformer. The simplest is to simply type in a value or string, which can include functions of various types such as attribute references, math and string functions, and workspace parameters.
Using the Text Editor
The Text Editor provides a convenient way to construct text strings (including regular expressions) from various data sources, such as attributes, parameters, and constants, where the result is used directly inside a parameter.
Using the Arithmetic Editor
The Arithmetic Editor provides a convenient way to construct math expressions from various data sources, such as attributes, parameters, and feature functions, where the result is used directly inside a parameter.
Conditional Values
Set values depending on one or more test conditions that either pass or fail.
Parameter Condition Definition Dialog
Content
Expressions and strings can include a number of functions, characters, parameters, and more.
When setting values - whether entered directly in a parameter or constructed using one of the editors - strings and expressions containing String, Math, Date/Time or FME Feature Functions will have those functions evaluated. Therefore, the names of these functions (in the form @<function_name>) should not be used as literal string values.
Content Types
These functions manipulate and format strings. | |
Special Characters |
A set of control characters is available in the Text Editor. |
Math functions are available in both editors. | |
Date/Time Functions | Date and time functions are available in the Text Editor. |
These operators are available in the Arithmetic Editor. | |
These return primarily feature-specific values. | |
FME and workspace-specific parameters may be used. | |
Creating and Modifying User Parameters | Create your own editable parameters. |
Dialog Options - Tables
Table Tools
Transformers with table-style parameters have additional tools for populating and manipulating values.
Row Reordering
|
Enabled once you have clicked on a row item. Choices include:
|
Cut, Copy, and Paste
|
Enabled once you have clicked on a row item. Choices include:
Cut, copy, and paste may be used within a transformer, or between transformers. |
Filter
|
Start typing a string, and the matrix will only display rows matching those characters. Searches all columns. This only affects the display of attributes within the transformer - it does not alter which attributes are output. |
Import
|
Import populates the table with a set of new attributes read from a dataset. Specific application varies between transformers. |
Reset/Refresh
|
Generally resets the table to its initial state, and may provide additional options to remove invalid entries. Behavior varies between transformers. |
Note: Not all tools are available in all transformers.
For more information, see Transformer Parameter Menu Options.
Reference
Processing Behavior |
|
Feature Holding |
No |
Dependencies | None |
Aliases | |
History |
FME Community
The FME Community is the place for demos, how-tos, articles, FAQs, and more. Get answers to your questions, learn from other users, and suggest, vote, and comment on new features.
Search for all results about the ArcPropertyExtractor on the FME Community.
Examples may contain information licensed under the Open Government Licence – Vancouver, Open Government Licence - British Columbia, and/or Open Government Licence – Canada.