Syntax FACTORY_DEF * TilerFactory [FACTORY_NAME ] [INPUT FEATURE_TYPE [ ]* []*]* [GROUP_BY []+]* [FLUSH_WHEN_GROUPS_CHANGE [(yes|no)]] [TILING_TYPE (TILE_SIZE|)] [TILE_WIDTH ] [TILE_HEIGHT ] [NUM_HORIZONTAL_TILES ] [NUM_VERTICAL_TILES ] [TILE_SEED_X ] [TILE_SEED_Y ] [CLEANING_TOLERANCE (AUTO|)] [GRID_ORIGIN (BOTTOM_LEFT|TOP_LEFT|BOTTOM_RIGHT|TOP_RIGHT)] [DUPLICATE_ON_TILE_BORDERS (NO|YES)] [INVALID_PART_HANDLING (REJECT_PARTS_ONLY|REJECT_WHOLE_FEATURE)] [MISSING_Z_VALUES (PLANAR_INTERPOLATION|LINEAR_INTERPOLATION|DROP_VALUES|)] [MISSING_MEASURE_VALUES (LINEAR_INTERPOLATION|NEAREST_VERTEX|DROP_VALUES|)] [COLUMN_ATTR ] [ROW_ATTR ] [OUTPUT (OUTPUT|REMNANTS|) FEATURE_TYPE [ ]* []*]* Overview This factory is used to perform a geometric tiling operation on input features. It chops features with a conceptual rectangular grid. Where features span multiple tiles, separate features will be output. Features that lie on the boundary between tiles will be output once in each tile. Clauses If the GROUP_BY clause is given, then each INPUT will only be Tiled together with other INPUTs that contain the same values as itself in the attributes specified by this clause. If FLUSH_WHEN_GROUPS_CHANGE is set to YES, tiling results will be flushed whenever a feature from a different group is encountered. TILING_TYPE TILE_SIZE: This option enables the TILE_WIDTH and TILE_HEIGHT parameters, which allow you to specify the width and height of each tile in ground units. NUM_TILES: This option enables the NUM_HORIZONTAL_TILES and NUM_VERTICAL_TILES parameters, which allow you to specify the number of tiles that will be produced. TILE_WIDTH and TILE_HEIGHT These parameters are required when the TILING_TYPE is TILE_SIZE, and allow you to specify the size of each tile in ground units (for example, 100m x 100m). Note: If the source is a raster, does not have a coordinate system and is not georeferenced, then the raster extents and spacing are adjusted to default values. The horizontal and vertical spacing are set to one column and one row, respectively, and the origin is set to (0,0). Note: IMPORTANT: If attributes are used for the TILE_WIDTH or TILE_HEIGHT parameters, the value will be taken from the first feature to enter the transformer. An error will occur if this feature does not have these attributes. NUM_HORIZONTAL_TILES and NUM_VERTICAL_TILES These parameters are required when the TILING_TYPE is NUM_TILES, and allow you to specify how to tile the input data (for example, 5 horizontal tiles and 5 vertical tiles). TILE_SEED_X and TILE_SEED_Y These optional parameters specify a "seed point" from which tiles will be generated. Note that it is permissible to specify a value for only one of these parameters - not necessarily both. CLEANING_TOLERANCE If the 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. GRID_ORIGIN (BOTTOM_LEFT|TOP_LEFT|BOTTOM_RIGHT|TOP_RIGHT) Chooses a starting corner for the purposes of numbering rows and columns. Also, when TILING_TYPE is TILE_SIZE, the last row and/or the last column may extend beyond the bounds of the input features; here the 'last' row or column is the one opposite the Starting Corner. DUPLICATE_ON_TILE_BORDERS This parameter allows elements entirely along the border of more than one tile to be duplicated and added to each tile that they touch. INVALID_PART_HANDLING REJECT_PARTS_ONLY Only parts in a multi/aggregate feature that are invalid as input will be rejected. The rest of the feature will remain aggregated. Feature hierarchy will be maintained as much as possible. REJECT_WHOLE_FEATURE When a feature contains parts that are invalid as input, the whole feature will be rejected. MISSING_Z_VALUES PLANAR_INTERPOLATION Areas are temporarily interpreted as surfaces, and Z values on new vertices are determined by interpolation using that temporary surface. LINEAR_INTERPOLATION Use the Z values from adjacent vertices to perform an linear interpolation to determine the missing Z value DROP_VALUES If an output feature has missing Z values on any vertices, all Z values are dropped. If an output feature has Z values on all vertices, all Z values are preserved. Use the value specified in this parameter on any vertices with a missing Z value. MISSING_MEASURE_VALUES LINEAR_INTERPOLATION Use the measure values from adjacent vertices to perform an linear interpolation to determine the missing measure value. NEAREST_VERTEX Use measure value from the nearest neighbouring vertex to determine the missing measure value. DROP_VALUES If an output feature has missing measure values on any vertices, all measure values are dropped. If an output feature has measure values on all vertices, all measure values are preserved. Use the value specified in this parameter on any vertices with a missing measure value. COLUMN_ATTR and ROW_ATTR Each feature output from the Tiler will have a row and a column attribute added, specifying the zero-based row and column that the feature fell into. Row 0, Column 0 corresponds to the tile in the bottom-left corner. Output Tags OUTPUT Features output as a result of the tiling operation. Features falling entirely within a tile are usually output unchanged. Where features span multiple tiles, separate features will be output. REMNANTS During the tiling operation, sometimes resulting pieces of geometry are produced that cannot be integrated into the output geometry being built. For example, when tiling a Donut, one of the holes may collapse down to a line or a point. This cannot be put back onto the Donut as a valid hole. These unused parts produced by intermediate processing are output from the Remnants port. Features that are cannot be tiled (eg. IFMENull etc.) or features that we do not currently support (eg. Voxels) will be rejected by the factory. Output features from the port should be unmodified original input features, unless the "Invalid Parts Handling" setting is used. (In that case, the invalid parts are split off from the original feature and rejected.) Output should have fme_rejection_code, and fme_rejection_message and follow all other port guidelines.