Determines the density of a group of Candidate features.

How does it work?

Density is a measurement of Candidate values per unit area. It is calculated as a numeric value; the greater the value, the more dense are the Candidate features.

The density equation is Total Candidates/Area of Interest.

Total Candidates is defined by either:

  • The total NUMBER of Candidate features
  • The sum LENGTH of Candidate features
  • The sum Area of Candidate features

Area of Interest is defined by the size of the first polygon feature that enters the Area input port.


It’s VERY important to note that ALL Candidate features count towards the density calculation, even if they fall outside the Area feature.

In other words, this transformer does not test whether or not candidate objects are inside the Area feature. If you wish to use only Candidate features that lie within, or overlap, the Area feature, you should pre-process the data using either a SpatialFilter or SpatialRelator transformer.

Usage Notes

  • The geometry type of Candidate features may be points, lines, or polygons. However, Area features must be polygons.
  • If excess Area features are supplied – that is, there is more than one Area feature for a particular group – then they are excluded from the calculation of density for Candidates. However, they will still receive their own density calculation. In other words, each Area receives the density of Candidate features for their own size; but Candidate features only receive their density in relation to the size of the first Area feature.
  • If you need to find the density of Candidate features against the total area of a number of polygon features, use an Aggregator to aggregate the polygons and input the resulting aggregate to the Area port of this transformer.


Input Ports

Output Ports


Editing Transformer Parameters

Using a set of menu options, transformer parameters can be assigned by referencing other elements in the workspace. More advanced functions, such as an advanced editor and an arithmetic editor, are also available in some transformers. To access a menu of these options, click beside the applicable parameter. For more information, see Transformer Parameter Menu Options.

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. There are a number of tools and shortcuts that can assist in constructing values, generally available from the drop-down context menu adjacent to the value field.

Dialog Options - Tables

Transformers with table-style parameters have additional tools for populating and manipulating values.

Related Transformers


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 DensityCalculator on the FME Community.