Syntax FACTORY_DEF PolygonDissolveFactory [FACTORY_NAME ] [INPUT FEATURE_TYPE [ ]* []*]* [REJECT_INVALID_GEOM (yes|no)] [GROUP_BY []+]* [FLUSH_WHEN_GROUPS_CHANGE [(yes|no)]] [DEAGGREGATE_INPUT [(yes|no)]] [PRE_BUFFER buffer_amount interp_angle cap_style [join_style miter_limit [OFFSET_UNITS units] [PRECISION mode]]] [DISSOLVE_MODE [(GEOS|FME)]] [MODE (QUICK|COMPLETE)] [NON_OVERLAPPING_INPUT [(yes|no)]] [PROPERLY_NODED_INPUT [(yes|no)]] [CONNECT_Z_MODE (IGNORE_AND_MAKE_PATH|EXTEND|AVERAGE|FIRST_WINS|LAST_WINS)] [CLEANING_TOLERANCE (NONE|AUTO|)] [ACCUM_INPUT_ATTRS [(yes|no)]] [SUM_FIELDS []+] [AVERAGE_FIELDS []+] [WEIGHTED_AVERAGE_FIELDS []+] [DISSOLVE_COUNT_ATTRIBUTE ] [LIST_NAME ] [LIST_ATTRS_TO_INCLUDE []*] [LIST_ATTRS_TO_INCLUDE_MODE (ALL|SELECTED)] [OUTPUT_REMNANTS [(yes|no)]] [OUTPUT (POLYGON|INTERIOR_LINE|NON_POLYGON|REMNANTS|REJECTED) FEATURE_TYPE [ ]* []*]* Overview This factory accepts two-dimensional polygonal features, including donuts, and outputs dissolved polygons. Dissolved polygons are formed when shared edges and interior edges between adjacent polygons are removed. When REJECT_INVALID_GEOM is Yes, the factory will output invalid features to Rejected port. Dissolved polygons are output via the AREA output tag. Non-polygonal input features are output untouched via the REJECTED feature output tag. If the OUTPUT INTERIOR_LINE clause is specified and DISSOLVE_MODE is set to FME, then line segments from input polygons that are not part of the output polygons will be output via the INTERIOR_LINE output tag. Computing interior lines is an expensive operation and should only be specified if these lines are necessary. Note: The INTERIOR_LINE keyword has non-standard behaviour within FME: the keyword is only respected when DISSOLVE_MODE is set to FME. The input polygons may be partitioned into groups for dissolving by using the GROUP_BY clause. If the GROUP_BY clause is not specified, then all input features are processed together. The GROUP_BY clause enables a single factory to dissolve several sets of potentially overlapping polygons. The GROUP_BY attributes are carried across from the input features to the output features. If the GROUP_BY clause is specified, and FLUSH_WHEN_GROUPS_CHANGE is set to Yes, the factory will flush the current group whenever a feature from a different group is encountered. If DEAGGREGATE_INPUT keyword is specified and set to yes, than all the input features with collection geometries will be deaggregated. Composites will not be split and shared geometries will not be instantiated. The PRE_BUFFER clause allows the factory to buffer before the dissolution step. If a positive (negative) buffer_amount is specified, the input feature is expanded (shrunk). The interp_angle controls the smoothness of round caps and corners. The smaller the angle, the better the corners will approximate a circular corner. The value is in degrees and must be in the range (0,90]. When buffering both sides of a line, there is the additional concept of end caps. Think of end caps as 180 degree corners on the two ends of a buffered line. Possible values for cap_style are CAP_ARC (circular arcs), CAP_ROUND (interpolated lines), CAP_PROJECTING (square), or CAP_BUTT (none). The corner style of the buffer is specified through the join_style parameter. Valid options are JOIN_ARC, JOIN_ROUND, JOIN_MITER, and JOIN_BEVEL. The miter_limit specifies a limit that is only used in the JOIN_MITER style. If the pointed corner would extend more than the buffer_amount times the miter_limit, it will instead of truncated at that distance. The units parameter specifices the units of buffer_amount. Valid options are FEET, METERS, MILES, KM, or NONE to use ground units (this is the default). The mode parameter controls whether input geometries are simplified before buffering. A value of APPROX will allow inputs to be generalized by up to 1% of the buffer_amount which can greatly improve performance. A value of EXACT will require that inputs are buffered as is. The DISSOLVE_MODE clause specifies the mode in which the dissolver operates. GEOS mode can be expected to be orders of magnitude faster than FME mode, but does not output interior lines, drops measures, and strokes arcs. FME mode, on the other hand, outputs interior lines, and preserves measures and arcs. On large input datasets, GEOS mode is recommended, as it can be orders of magnitude faster than FME mode. The NON_OVERLAPPING_INPUT clause specifies whether the input data is known to be non-overlapping. Unless DISSOLVE_MODE is set to FME and NON_OVERLAPPING_INPUT is specified with a value of no, it will be assumed that there is no overlap between the input areas, although their boundaries may touch. If the argument to this clause contradicts the input, the factory will have undefined behaviour. Note: This keyword has non-standard behaviour within FME: if DISSOLVE_MODE is not set to FME, then it is ignored. Otherwise, if it is not specified in the factory definition, then its default value is yes. The PROPERLY_NODED_INPUT clause specifies whether the input data is known to have nodes at every intersection point between the input boundaries. If DISSOLVE_MODE is set to FME and PROPERLY_NODED_INPUT is specified with a value of yes, it will be assumed all intersections between input boundaries occur at nodes on those boundaries. If the argument to this clause contradicts the input, the factory will have undefined behaviour. Note: This keyword has non-standard behaviour within FME: if DISSOLVE_MODE is not set to FME, then it is ignored. If the CLEANING_TOLERANCE keyword does not exist or has the value "NONE", no cleaning will be performed. If the PROPERLY_NODED_INPUT is set to no and CLEANING_TOLERANCE directive specifies a non-negative number, geometries within this tolerance will be merged. If the CLEANING_TOLERANCE is AUTO, a cleaning tolerance will be automatically generated based on the input geometries. Note: This keyword has non-standard behaviour within FME: if PROPERLY_NODED_INPUT is set to yes, then it is ignored. The ACCUM_INPUT_ATTRS clause specifies how attributes on input features are to be handled. If set to "no", no attributes from input polygons will be preserved, except those specified explicitly through the transformer parameters e.g. Group By, Attribute(s) to Sum, etc. If set to "yes", all attributes from input polygons would be merged onto the resulting dissolved polygon. When there are conflicts, one of the input polygons with the largest area will win. If unset, the factory will enter backwards compatibility mode, and accumulate attributes from input features only when one or more of the following parameters have been set: LIST_NAME, DISSOLVE_COUNT_ATTRIBUTE, AVERAGE_FIELDS, SUM_FIELDS, or WEIGHTED_AVERAGE_FIELDS. Note: This keyword has non-standard behaviour within FME: if ACCUM_INPUT_ATTRS is unset, it defaults to backwards compatible behaviour as described above. The SUM_FIELDS clause identifies attributes whose values are to be summed together when constituent polygons are dissolved and then assigned to the output polygons. The AVERAGE_FIELDS clause identifies attributes whose values are averaged during the dissolve operation. The WEIGHTED_AVERAGE_FIELDS clause identifies attributes whose values are averaged during the dissolve, weighted according to the area of the input polygon that they belonged to. The DISSOLVE_COUNT_ATTRIBUTE clause specifies the name of an attribute that stores the number of input polygons dissolved into an output polygon. The LIST_NAME clause specifies the name of a list into which the attributes of the input features are stored. Attributes from a feature with the largest area are stored at the head of the list, and no order is defined for the remaining elements. For example, if 3 input polygons are dissolved into 1 polygon, then that 1 polygon would have a list with 3 entries, each containing a set of attributes from one of the 3 input polygons. The optional LIST_ATTRS_TO_INCLUDE_MODE will specify if ALL attributes should be added to a list, or if only the SELECTED attributes (specified with the LIST_ATTRS_TO_INCLUDE clause) should be added to the list. If this value is not specified, it defaults to ALL. If the OUTPUT_REMNANTS keyword is specified, remnants will be output via the REMNANTS output tag. Output Tags The PolygonDissolveFactory supports the following output tags. POLYGON Dissolved Polygon features with attributes specified by GROUP_BY, SUM_FIELDS, AVERAGE_FIELDS, and WEIGHTED_AVERAGE_FIELDS clauses set appropriately. REJECTED Non-polygonal features that entered the factory exit the factory here untouched. INTERIOR_LINE If DISSOLVE_MODE is set to FME, this tag will produce line segments equivalent to the difference between the input polygons and the output polygons. REMNANTS If OUTPUT_REMNANTS is specified, remnants will be output via this tag. TO BE RESOLVED FLUSH_WHEN_GROUPS_CHANGE clause, MODE clause, CONNECT_Z_MODE clause, and NON_POLYGON output tag added to Syntax section above, but not documented.