Supported Geometries

All FME features have an attribute called fme_geometry, which indicates the coordinates of the feature, and an attribute called fme_type, which defines how those coordinates are interpreted.

The FME Geometry Model supports the following types of features:

Points

Point geometries are features represented by a single coordinate.

A simple point feature has just an x/y coordinate; but there are other point geometry subtypes.

Ellipses are basically circle or oval features; like an arc but closing on themselves, so don’t require a start angle or sweep angle.

A Point Cloud is comprised of a large number of unconnected point features.

Arc features are often defined by an x/y coordinate at their center point, plus a mathematical definition of arc radius and sweep angles.

An alternate arc definition is the center point, plus the two end point X/Y coordinates

A further arc definition is the two end points, plus the mid-point of the arc ‘line’.

Text

Text features represent the position of an annotation.

Text features’ definition optionally includes size, rotation, and justification. Although text features are traditionally thought of as a single x/y coordinate, they can have a line or other geometry.

       North Road

Lines

A line is a series of points strung together to form a chain.

The simplest form of line geometry is a two-point line; that is, it has a start coordinate and an end coordinate but no intermediate points.

A polyline feature is a multi-point line; that is, it has a start coordinate and an end coordinate plus a number of intermediate points.

Polygons

A polygon feature is a series of points strung together, whose first and last points coincide to form a closed shape.

A simple polygon forms a single closed shape.

A donut is made up of an outer boundary to define a perimeter and an inner boundary to represent a hole within it.

   

Note  Usually donut boundaries are polygons, but FME can support an ellipse used as either the inner or outer boundary (or both)!

Aggregates

An aggregate is a defined set of any of the above features. It is also sometimes known as a ‘collection’ or ‘group’.

A homogeneous aggregate is made up of features of the same geometry type.

A non-homogeneous aggregate is made up of features with differing geometry types.

Raster

A raster geometry feature is a set of pixels or cells in a grid.

A Raster feature is a set of cells, not an individual cell. Cells do not generally have attributes, but may possess a single value or color.

Paths

A path (also called chain) is a linear object made up of a number of features connected together.

A path can be made up of features of the same geometry type or, more commonly, of different geometry types; for example, line-arc-line.

Surfaces

Surfaces are three-dimensional planar features. There are many types of surfaces supported in FME, including faces (see illustration below), meshes, triangle strips, and triangle fans.

A face is one example of a surface feature. It’s a planar polygon or donut stored as a true 3D feature.

A surface may contain holes, in much the same way as a donut polygon.

Solids

Solids are three-dimensional entities. There are many types of solids supported in FME. These include boxes (see illustration below), extrusions, b-rep solids, and CSGs (see illustration). Although similar, these different types of solids are required for compatibility with the full range of FME-supported formats.

A Box is one example of a solid feature. Like a hole or donut, it can contain a void within it.

A CSG (Constructive Solid Geometry) is a complex object made up of a set of solids upon which a Boolean operation has been carried out. Boolean operations that can be carried out are Union (right), Difference, and Intersection.

3D Multiples

Multiples are the 3D equivalent of aggregates. They are always homogeneous, which means that they are made up of the same type.

Multi-surfaces are one example of this type of geometry. They are multiple surface features related as a collection. A Composite Surface is a multi-surface where all items are connected topologically.

Named Geometries

All features can be given a name to their geometry. This is achieved with the transformers GeometryPropertySetter, GeometryPropertyExtractor, and GeometryPropertyRemover.

Naming can be recursive; for example, this feature is an aggregate named 'AsBuilt', whereas its components are named Road.