diff --git a/datasource/00_perimeter/Perimeter.qgz b/datasource/00_perimeter/Perimeter.qgz new file mode 100644 index 0000000..974b87d Binary files /dev/null and b/datasource/00_perimeter/Perimeter.qgz differ diff --git a/datasource/00_perimeter/perimeter.dbf b/datasource/00_perimeter/perimeter.dbf new file mode 100644 index 0000000..9e03ac3 Binary files /dev/null and b/datasource/00_perimeter/perimeter.dbf differ diff --git a/datasource/00_perimeter/secteurs.prj b/datasource/00_perimeter/perimeter.prj similarity index 100% rename from datasource/00_perimeter/secteurs.prj rename to datasource/00_perimeter/perimeter.prj diff --git a/datasource/00_perimeter/perimeter.shp b/datasource/00_perimeter/perimeter.shp new file mode 100644 index 0000000..6c14cf4 Binary files /dev/null and b/datasource/00_perimeter/perimeter.shp differ diff --git a/datasource/00_perimeter/perimeter.shx b/datasource/00_perimeter/perimeter.shx new file mode 100644 index 0000000..17e553f Binary files /dev/null and b/datasource/00_perimeter/perimeter.shx differ diff --git a/datasource/00_perimeter/secteurs.dbf b/datasource/00_perimeter/secteurs.dbf deleted file mode 100644 index bb6b04f..0000000 Binary files a/datasource/00_perimeter/secteurs.dbf and /dev/null differ diff --git a/datasource/00_perimeter/secteurs.shp b/datasource/00_perimeter/secteurs.shp deleted file mode 100644 index f1b7f6e..0000000 Binary files a/datasource/00_perimeter/secteurs.shp and /dev/null differ diff --git a/datasource/00_perimeter/secteurs.shx b/datasource/00_perimeter/secteurs.shx deleted file mode 100644 index 45e4c06..0000000 Binary files a/datasource/00_perimeter/secteurs.shx and /dev/null differ diff --git a/datasource/01_terrain/00_MNT_Clipper.fmw b/datasource/01_terrain/00_MNT_Clipper.fmw index c250413..6b4570a 100644 --- a/datasource/01_terrain/00_MNT_Clipper.fmw +++ b/datasource/01_terrain/00_MNT_Clipper.fmw @@ -1,8 +1,8 @@ #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! -#! -#! #! #! #! #! #! #! #! #! #! -#! #! -#! -#! -#! -#! -#! #! #! #! #! #! #! #! #! #! #! #! #! #! +#! +#! #! #! #! #! #! #! #! #! #! #! +#! +#! +#! +#! +#! +#! #! #! -#! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! +#! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! @@ -1158,7 +1158,7 @@ #! FOLLOW_ANCHOR="true" #! INFO_NODE="false" #! CUSTOM_USER_COLOR="false" -#! COLOUR="0.28627450980392155,0.29803921568627451,0.0078431372549019607,0.78431372549019607" +#! COLOUR="1,1,0.95686274509803926,0.78431372549019607" #! SIZE_POLICY="10" #! ANCHORED_NODE="16" #! /> @@ -1172,8 +1172,8 @@ #! IDENTIFIER="7" #! TYPE="Clipper" #! VERSION="13" -#! POSITION="-203.26231400842147 -278.41187502784118" -#! BOUNDING_RECT="-203.26231400842147 -278.41187502784118 430 71" +#! POSITION="-760.41074263556482 -281.32045495779624" +#! BOUNDING_RECT="-760.41074263556482 -281.32045495779624 430 71" #! ORDER="500000000000001" #! PARMS_EDITED="true" #! ENABLED="true" @@ -1216,39 +1216,14 @@ #! #! #! -#! -#! -#! -#! -#! -#! -#! -#! -#! -#! -#! -#! -#! -#! -#! #! #! #! #! #! @@ -1299,8 +1263,8 @@ #! FME_PYTHON_VERSION 37 -GUI IGNORE SourceDataset_ESRISHAPE_1,ESRISHAPE_IN_READER_PARAMETERS_ESRISHAPE_1,ESRISHAPE_IN_ENCODING_ESRISHAPE_1,ESRISHAPE_IN_USE_SEARCH_ENVELOPE_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MINX_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_1,ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_1,ESRISHAPE_IN_ADVANCED_ESRISHAPE_1,ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_1,ESRISHAPE_IN_GEOMETRY_ESRISHAPE_1,ESRISHAPE_IN_SIMPLE_DONUT_GEOMETRY_ESRISHAPE_1,ESRISHAPE_IN_MEASURES_AS_Z_ESRISHAPE_1,ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_1,ESRISHAPE_IN_REPORT_BAD_GEOMETRY_ESRISHAPE_1,ESRISHAPE_IN_NETWORK_AUTHENTICATION_ESRISHAPE_1,SourceDataset_GEOTIFF_2,GEOTIFF_IN_APPLY_GCPS_GEOTIFF_2,GEOTIFF_IN_GCP_INTERPOLATION_METHOD_GEOTIFF_2,GEOTIFF_IN_USE_SEARCH_ENVELOPE_GEOTIFF_2,GEOTIFF_IN_SEARCH_ENVELOPE_MINX_GEOTIFF_2,GEOTIFF_IN_SEARCH_ENVELOPE_MINY_GEOTIFF_2,GEOTIFF_IN_SEARCH_ENVELOPE_MAXX_GEOTIFF_2,GEOTIFF_IN_SEARCH_ENVELOPE_MAXY_GEOTIFF_2,GEOTIFF_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEOTIFF_2,GEOTIFF_IN_CLIP_TO_ENVELOPE_GEOTIFF_2,GEOTIFF_IN_GEOTIFF_RDR_ADV_PARM_GROUP_GEOTIFF_2,GEOTIFF_IN_PYRAMID_LEVEL_GEOTIFF_2,GEOTIFF_IN_PREFER_FILE_CS_UNITS_GEOTIFF_2,GEOTIFF_IN_READ_OFFSETS_IN_CS_UNITS_GEOTIFF_2,GEOTIFF_IN_IGNORE_RASTER_TYPE_KEY_GEOTIFF_2,GEOTIFF_IN_NETWORK_AUTHENTICATION_GEOTIFF_2,DestDataset_GEOTIFF_3,GEOTIFF_OUT_GEOTIFF_WRT_ADV_PARM_GROUP_GEOTIFF_3,GEOTIFF_OUT_WRITE_OFFSETS_IN_CS_UNITS_GEOTIFF_3,GEOTIFF_OUT_WRITE_PROJECTED_COORDSYS_AS_EPSG_CODE_GEOTIFF_3,GEOTIFF_OUT_WRITE_GEOGRAPHIC_COORDSYS_AS_EPSG_CODE_GEOTIFF_3,GEOTIFF_OUT_WRITE_GEOGRAPHIC_KEYS_FOR_PROJECTED_COORDSYS_GEOTIFF_3,GEOTIFF_OUT_WRITE_ESRI_COMPATIBLE_COORDSYS_GEOTIFF_3,GEOTIFF_OUT_IGNORE_RASTER_TYPE_KEY_GEOTIFF_3 -DEFAULT_MACRO DestDataset_GEOTIFF C:\Users\maltas\Desktop\MAS_DATA\lidar2016\MNT +GUI IGNORE SourceDataset_ESRISHAPE_1,ESRISHAPE_IN_READER_PARAMETERS_ESRISHAPE_1,ESRISHAPE_IN_ENCODING_ESRISHAPE_1,ESRISHAPE_IN_USE_SEARCH_ENVELOPE_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MINX_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_1,ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_1,ESRISHAPE_IN_ADVANCED_ESRISHAPE_1,ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_1,ESRISHAPE_IN_GEOMETRY_ESRISHAPE_1,ESRISHAPE_IN_SIMPLE_DONUT_GEOMETRY_ESRISHAPE_1,ESRISHAPE_IN_MEASURES_AS_Z_ESRISHAPE_1,ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_1,ESRISHAPE_IN_REPORT_BAD_GEOMETRY_ESRISHAPE_1,ESRISHAPE_IN_NETWORK_AUTHENTICATION_ESRISHAPE_1,SourceDataset_GEOTIFF_1,GEOTIFF_IN_APPLY_GCPS_GEOTIFF_1,GEOTIFF_IN_GCP_INTERPOLATION_METHOD_GEOTIFF_1,GEOTIFF_IN_USE_SEARCH_ENVELOPE_GEOTIFF_1,GEOTIFF_IN_SEARCH_ENVELOPE_MINX_GEOTIFF_1,GEOTIFF_IN_SEARCH_ENVELOPE_MINY_GEOTIFF_1,GEOTIFF_IN_SEARCH_ENVELOPE_MAXX_GEOTIFF_1,GEOTIFF_IN_SEARCH_ENVELOPE_MAXY_GEOTIFF_1,GEOTIFF_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEOTIFF_1,GEOTIFF_IN_CLIP_TO_ENVELOPE_GEOTIFF_1,GEOTIFF_IN_GEOTIFF_RDR_ADV_PARM_GROUP_GEOTIFF_1,GEOTIFF_IN_PYRAMID_LEVEL_GEOTIFF_1,GEOTIFF_IN_PREFER_FILE_CS_UNITS_GEOTIFF_1,GEOTIFF_IN_READ_OFFSETS_IN_CS_UNITS_GEOTIFF_1,GEOTIFF_IN_IGNORE_RASTER_TYPE_KEY_GEOTIFF_1,GEOTIFF_IN_NETWORK_AUTHENTICATION_GEOTIFF_1,DestDataset_GEOTIFF_2,GEOTIFF_OUT_GEOTIFF_WRT_ADV_PARM_GROUP_GEOTIFF_2,GEOTIFF_OUT_WRITE_OFFSETS_IN_CS_UNITS_GEOTIFF_2,GEOTIFF_OUT_WRITE_PROJECTED_COORDSYS_AS_EPSG_CODE_GEOTIFF_2,GEOTIFF_OUT_WRITE_GEOGRAPHIC_COORDSYS_AS_EPSG_CODE_GEOTIFF_2,GEOTIFF_OUT_WRITE_GEOGRAPHIC_KEYS_FOR_PROJECTED_COORDSYS_GEOTIFF_2,GEOTIFF_OUT_WRITE_ESRI_COMPATIBLE_COORDSYS_GEOTIFF_2,GEOTIFF_OUT_IGNORE_RASTER_TYPE_KEY_GEOTIFF_2 +DEFAULT_MACRO DestDataset_GEOTIFF . GUI DIRNAME DestDataset_GEOTIFF Destination GeoTIFF Folder: DEFAULT_MACRO SourceDataset_ESRISHAPE ..\..\datasource\00_perimeter\secteurs.shp GUI MULTIFILE SourceDataset_ESRISHAPE Shapefiles(*.shp)|*.shp|Compressed_Shapefiles(*.shz)|*.shz|Compressed_Files(*.bz2;*.gz)|*.bz2;*.gz|Archive_Files(*.7z;*.7zip;*.rar;*.rvz;*.tar;*.tar.bz2;*.tar.gz;*.tgz;*.zip;*.zipx)|*.7z;*.7zip;*.rar;*.rvz;*.tar;*.tar.bz2;*.tar.gz;*.tgz;*.zip;*.zipx|All_Files(*)|* Source Esri Shapefile(s): @@ -1365,13 +1329,13 @@ MULTI_READER_TYPE{0} ESRISHAPE MULTI_READER_KEYWORD{0} ESRISHAPE_1 MULTI_READER_GEN_DIRECTIVES{0} ADVANCED,,TRIM_PRECEDING_SPACES,yes,ENCODING,fme-source-encoding,GEOMETRY,,USE_SEARCH_ENVELOPE,NO,SEARCH_ENVELOPE_MAXY,0,MEASURES_AS_Z,no,SIMPLE_DONUT_GEOMETRY,simple,EXPOSE_ATTRS_GROUP,,SEARCH_ENVELOPE_COORDINATE_SYSTEM,,ESRISHAPE_EXPOSE_FORMAT_ATTRS,,CHECK_NUMERIC_FIELDS,yes,REPORT_BAD_GEOMETRY,no,_MERGE_SCHEMAS,YES,NUMERIC_TYPE_ATTRIBUTE_HANDLING,STANDARD_TYPES,SEARCH_ENVELOPE_MINX,0,UPPER_CASE_ATTR_NAMES,No,SEARCH_ENVELOPE_MINY,0,SEARCH_ENVELOPE_MAXX,0,CLIP_TO_ENVELOPE,NO,DISSOLVE_HOLES,no MULTI_READER_TYPE{1} GEOTIFF -MULTI_READER_KEYWORD{1} GEOTIFF_2 +MULTI_READER_KEYWORD{1} GEOTIFF_1 MULTI_READER_GEN_DIRECTIVES{1} FEATURE_TYPE_NAME,FORMAT_NAME,GEOTIFF_RDR_ADV_PARM_GROUP,,PREFER_FILE_CS_UNITS,Yes,SEARCH_ENVELOPE_COORDINATE_SYSTEM,,SEARCH_ENVELOPE_MAXX,0,CLIP_TO_ENVELOPE,NO,READ_OFFSETS_IN_CS_UNITS,No,USE_SEARCH_ENVELOPE,NO,SEARCH_ENVELOPE_MINX,0,EXPOSE_ATTRS_GROUP,,SEARCH_ENVELOPE_MINY,0,SEARCH_ENVELOPE_MAXY,0,GEOTIFF_EXPOSE_FORMAT_ATTRS,,READER_META_ATTRIBUTES,fme_datasetfme_basename,_MERGE_SCHEMAS,YES,GCP_INTERPOLATION_METHOD,NearestNeighbor,APPLY_GCPS,NO,PYRAMID_LEVEL,,IGNORE_RASTER_TYPE_KEY,No WRITER_TYPE MULTI_WRITER MULTI_WRITER_DATASET_ORDER BY_ID MULTI_WRITER_FIRST_WRITER_ID 0 MULTI_WRITER_TYPE{0} GEOTIFF -MULTI_WRITER_KEYWORD{0} GEOTIFF_3 +MULTI_WRITER_KEYWORD{0} GEOTIFF_2 #! END_WB_HEADER #! START_WB_HEADER MACRO WB_KEYWORD "ESRISHAPE_1" @@ -1501,9 +1465,9 @@ ESRISHAPE_1_GENERATE_FME_BUILD_NUM 19226 ESRISHAPE_1_DATASET "$(SourceDataset_ESRISHAPE_1)" #! END_SOURCE_HEADER #! START_WB_HEADER -MACRO WB_KEYWORD "GEOTIFF_2" +MACRO WB_KEYWORD "GEOTIFF_1" #! END_WB_HEADER -#! START_SOURCE_HEADER GEOTIFF GEOTIFF_2 +#! START_SOURCE_HEADER GEOTIFF GEOTIFF_1 # ======================================================================= # The following GUI line prompts for a file to be used as the source GEOTIFF file. # The user input is stored in a macro, which is then used to define @@ -1513,92 +1477,92 @@ MACRO WB_KEYWORD "GEOTIFF_2" #! START_WB_HEADER DEFAULT_MACRO SourceDataset INCLUDE [ if {{$(SourceDataset)} != ""} { \ - puts {DEFAULT_MACRO SourceDataset_GEOTIFF_2 $(SourceDataset)} \ + puts {DEFAULT_MACRO SourceDataset_GEOTIFF_1 $(SourceDataset)} \ } ] #! END_WB_HEADER -#! START_SOURCE_HEADER GEOTIFF GEOTIFF_2 -DEFAULT_MACRO SourceDataset_GEOTIFF_2 $(SourceDataset_GEOTIFF_3) -GUI MULTIFILE SourceDataset_GEOTIFF_2 GeoTIFF_Files(*.tif;*.tiff;*.itiff;*.ovr)|*.tif;*.tiff;*.itiff;*.ovr|All_Files(*)|* Source GeoTIFF File(s): -DEFAULT_MACRO GEOTIFF_IN_READER_META_ATTRIBUTES_GEOTIFF_2 fme_dataset fme_basename -GEOTIFF_2_READER_META_ATTRIBUTES "$(GEOTIFF_IN_READER_META_ATTRIBUTES_GEOTIFF_2)" -DEFAULT_MACRO GEOTIFF_IN_FEATURE_TYPE_NAME_GEOTIFF_2 FORMAT_NAME -GEOTIFF_2_FEATURE_TYPE_NAME "$(GEOTIFF_IN_FEATURE_TYPE_NAME_GEOTIFF_2)" -DEFAULT_MACRO GEOTIFF_IN_APPLY_GCPS_GEOTIFF_2 NO -GEOTIFF_2_APPLY_GCPS "$(GEOTIFF_IN_APPLY_GCPS_GEOTIFF_2)" -GUI ACTIVEDISCLOSUREGROUP GEOTIFF_IN_APPLY_GCPS_GEOTIFF_2 GEOTIFF_IN_GCP_INTERPOLATION_METHOD_GEOTIFF_2 Apply GCP's -DEFAULT_MACRO GEOTIFF_IN_GCP_INTERPOLATION_METHOD_GEOTIFF_2 NearestNeighbor -GEOTIFF_2_GCP_INTERPOLATION_METHOD "$(GEOTIFF_IN_GCP_INTERPOLATION_METHOD_GEOTIFF_2)" -GUI LOOKUP_CHOICE GEOTIFF_IN_GCP_INTERPOLATION_METHOD_GEOTIFF_2 NearestNeighbor,NearestNeighbor%Bilinear,Bilinear%Bicubic,Bicubic GCP Interpolation Method -GUI LOOKUP GEOTIFF_IN_GCP_INTERPOLATION_METHOD_GEOTIFF_2 ,NearestNeighbor -DEFAULT_MACRO GEOTIFF_IN_EXPOSE_ATTRS_GROUP_GEOTIFF_2 -GEOTIFF_2_EXPOSE_ATTRS_GROUP "$(GEOTIFF_IN_EXPOSE_ATTRS_GROUP_GEOTIFF_2)" +#! START_SOURCE_HEADER GEOTIFF GEOTIFF_1 +DEFAULT_MACRO SourceDataset_GEOTIFF_1 $(SourceDataset_GEOTIFF_3) +GUI MULTIFILE SourceDataset_GEOTIFF_1 GeoTIFF_Files(*.tif;*.tiff;*.itiff;*.ovr)|*.tif;*.tiff;*.itiff;*.ovr|All_Files(*)|* Source GeoTIFF File(s): +DEFAULT_MACRO GEOTIFF_IN_READER_META_ATTRIBUTES_GEOTIFF_1 fme_dataset fme_basename +GEOTIFF_1_READER_META_ATTRIBUTES "$(GEOTIFF_IN_READER_META_ATTRIBUTES_GEOTIFF_1)" +DEFAULT_MACRO GEOTIFF_IN_FEATURE_TYPE_NAME_GEOTIFF_1 FORMAT_NAME +GEOTIFF_1_FEATURE_TYPE_NAME "$(GEOTIFF_IN_FEATURE_TYPE_NAME_GEOTIFF_1)" +DEFAULT_MACRO GEOTIFF_IN_APPLY_GCPS_GEOTIFF_1 NO +GEOTIFF_1_APPLY_GCPS "$(GEOTIFF_IN_APPLY_GCPS_GEOTIFF_1)" +GUI ACTIVEDISCLOSUREGROUP GEOTIFF_IN_APPLY_GCPS_GEOTIFF_1 GEOTIFF_IN_GCP_INTERPOLATION_METHOD_GEOTIFF_1 Apply GCP's +DEFAULT_MACRO GEOTIFF_IN_GCP_INTERPOLATION_METHOD_GEOTIFF_1 NearestNeighbor +GEOTIFF_1_GCP_INTERPOLATION_METHOD "$(GEOTIFF_IN_GCP_INTERPOLATION_METHOD_GEOTIFF_1)" +GUI LOOKUP_CHOICE GEOTIFF_IN_GCP_INTERPOLATION_METHOD_GEOTIFF_1 NearestNeighbor,NearestNeighbor%Bilinear,Bilinear%Bicubic,Bicubic GCP Interpolation Method +GUI LOOKUP GEOTIFF_IN_GCP_INTERPOLATION_METHOD_GEOTIFF_1 ,NearestNeighbor +DEFAULT_MACRO GEOTIFF_IN_EXPOSE_ATTRS_GROUP_GEOTIFF_1 +GEOTIFF_1_EXPOSE_ATTRS_GROUP "$(GEOTIFF_IN_EXPOSE_ATTRS_GROUP_GEOTIFF_1)" # Include this file in source setting section to add external search envelope processing # Zero as a default means we don't do any search -- this makes workbench happier -DEFAULT_MACRO GEOTIFF_IN_USE_SEARCH_ENVELOPE_GEOTIFF_2 NO -GEOTIFF_2_USE_SEARCH_ENVELOPE "$(GEOTIFF_IN_USE_SEARCH_ENVELOPE_GEOTIFF_2)" -GUI ACTIVEDISCLOSUREGROUP GEOTIFF_IN_USE_SEARCH_ENVELOPE_GEOTIFF_2 GEOTIFF_IN_SEARCH_ENVELOPE_MINX_GEOTIFF_2%GEOTIFF_IN_SEARCH_ENVELOPE_MINY_GEOTIFF_2%GEOTIFF_IN_SEARCH_ENVELOPE_MAXX_GEOTIFF_2%GEOTIFF_IN_SEARCH_ENVELOPE_MAXY_GEOTIFF_2%GEOTIFF_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEOTIFF_2%GEOTIFF_IN_CLIP_TO_ENVELOPE_GEOTIFF_2%GEOTIFF_IN_SEARCH_METHOD%GEOTIFF_IN_SEARCH_METHOD_FILTER%GEOTIFF_IN_SEARCH_ORDER%GEOTIFF_IN_SEARCH_FEATURE%GEOTIFF_IN_DUMMY_SEARCH_ENVELOPE_PARAMETER Use Search Envelope +DEFAULT_MACRO GEOTIFF_IN_USE_SEARCH_ENVELOPE_GEOTIFF_1 NO +GEOTIFF_1_USE_SEARCH_ENVELOPE "$(GEOTIFF_IN_USE_SEARCH_ENVELOPE_GEOTIFF_1)" +GUI ACTIVEDISCLOSUREGROUP GEOTIFF_IN_USE_SEARCH_ENVELOPE_GEOTIFF_1 GEOTIFF_IN_SEARCH_ENVELOPE_MINX_GEOTIFF_1%GEOTIFF_IN_SEARCH_ENVELOPE_MINY_GEOTIFF_1%GEOTIFF_IN_SEARCH_ENVELOPE_MAXX_GEOTIFF_1%GEOTIFF_IN_SEARCH_ENVELOPE_MAXY_GEOTIFF_1%GEOTIFF_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEOTIFF_1%GEOTIFF_IN_CLIP_TO_ENVELOPE_GEOTIFF_1%GEOTIFF_IN_SEARCH_METHOD%GEOTIFF_IN_SEARCH_METHOD_FILTER%GEOTIFF_IN_SEARCH_ORDER%GEOTIFF_IN_SEARCH_FEATURE%GEOTIFF_IN_DUMMY_SEARCH_ENVELOPE_PARAMETER Use Search Envelope # =========================================================================== -GUI LOOKUP GEOTIFF_IN_SEARCH_ENVELOPE_MINX_GEOTIFF_2 ,0 -DEFAULT_MACRO GEOTIFF_IN_SEARCH_ENVELOPE_MINX_GEOTIFF_2 0 -GEOTIFF_2_SEARCH_ENVELOPE "$(GEOTIFF_IN_SEARCH_ENVELOPE_MINX_GEOTIFF_2)" -GUI OPTIONAL FLOAT GEOTIFF_IN_SEARCH_ENVELOPE_MINX_GEOTIFF_2 Minimum X: +GUI LOOKUP GEOTIFF_IN_SEARCH_ENVELOPE_MINX_GEOTIFF_1 ,0 +DEFAULT_MACRO GEOTIFF_IN_SEARCH_ENVELOPE_MINX_GEOTIFF_1 0 +GEOTIFF_1_SEARCH_ENVELOPE "$(GEOTIFF_IN_SEARCH_ENVELOPE_MINX_GEOTIFF_1)" +GUI OPTIONAL FLOAT GEOTIFF_IN_SEARCH_ENVELOPE_MINX_GEOTIFF_1 Minimum X: # =========================================================================== -GUI LOOKUP GEOTIFF_IN_SEARCH_ENVELOPE_MINY_GEOTIFF_2 ,0 -DEFAULT_MACRO GEOTIFF_IN_SEARCH_ENVELOPE_MINY_GEOTIFF_2 0 -GEOTIFF_2_SEARCH_ENVELOPE "$(GEOTIFF_IN_SEARCH_ENVELOPE_MINY_GEOTIFF_2)" -GUI OPTIONAL FLOAT GEOTIFF_IN_SEARCH_ENVELOPE_MINY_GEOTIFF_2 Minimum Y: +GUI LOOKUP GEOTIFF_IN_SEARCH_ENVELOPE_MINY_GEOTIFF_1 ,0 +DEFAULT_MACRO GEOTIFF_IN_SEARCH_ENVELOPE_MINY_GEOTIFF_1 0 +GEOTIFF_1_SEARCH_ENVELOPE "$(GEOTIFF_IN_SEARCH_ENVELOPE_MINY_GEOTIFF_1)" +GUI OPTIONAL FLOAT GEOTIFF_IN_SEARCH_ENVELOPE_MINY_GEOTIFF_1 Minimum Y: # =========================================================================== -GUI LOOKUP GEOTIFF_IN_SEARCH_ENVELOPE_MAXX_GEOTIFF_2 ,0 -DEFAULT_MACRO GEOTIFF_IN_SEARCH_ENVELOPE_MAXX_GEOTIFF_2 0 -GEOTIFF_2_SEARCH_ENVELOPE "$(GEOTIFF_IN_SEARCH_ENVELOPE_MAXX_GEOTIFF_2)" -GUI OPTIONAL FLOAT GEOTIFF_IN_SEARCH_ENVELOPE_MAXX_GEOTIFF_2 Maximum X: +GUI LOOKUP GEOTIFF_IN_SEARCH_ENVELOPE_MAXX_GEOTIFF_1 ,0 +DEFAULT_MACRO GEOTIFF_IN_SEARCH_ENVELOPE_MAXX_GEOTIFF_1 0 +GEOTIFF_1_SEARCH_ENVELOPE "$(GEOTIFF_IN_SEARCH_ENVELOPE_MAXX_GEOTIFF_1)" +GUI OPTIONAL FLOAT GEOTIFF_IN_SEARCH_ENVELOPE_MAXX_GEOTIFF_1 Maximum X: # =========================================================================== -GUI LOOKUP GEOTIFF_IN_SEARCH_ENVELOPE_MAXY_GEOTIFF_2 ,0 -DEFAULT_MACRO GEOTIFF_IN_SEARCH_ENVELOPE_MAXY_GEOTIFF_2 0 -GEOTIFF_2_SEARCH_ENVELOPE "$(GEOTIFF_IN_SEARCH_ENVELOPE_MAXY_GEOTIFF_2)" -GUI OPTIONAL FLOAT GEOTIFF_IN_SEARCH_ENVELOPE_MAXY_GEOTIFF_2 Maximum Y: +GUI LOOKUP GEOTIFF_IN_SEARCH_ENVELOPE_MAXY_GEOTIFF_1 ,0 +DEFAULT_MACRO GEOTIFF_IN_SEARCH_ENVELOPE_MAXY_GEOTIFF_1 0 +GEOTIFF_1_SEARCH_ENVELOPE "$(GEOTIFF_IN_SEARCH_ENVELOPE_MAXY_GEOTIFF_1)" +GUI OPTIONAL FLOAT GEOTIFF_IN_SEARCH_ENVELOPE_MAXY_GEOTIFF_1 Maximum Y: # =========================================================================== -GUI LOOKUP GEOTIFF_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEOTIFF_2 , -DEFAULT_MACRO GEOTIFF_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEOTIFF_2 -GEOTIFF_2_SEARCH_ENVELOPE "$(GEOTIFF_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEOTIFF_2)" -GUI OPTIONAL COORDSYS GEOTIFF_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEOTIFF_2 Search Envelope Coordinate System: +GUI LOOKUP GEOTIFF_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEOTIFF_1 , +DEFAULT_MACRO GEOTIFF_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEOTIFF_1 +GEOTIFF_1_SEARCH_ENVELOPE "$(GEOTIFF_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEOTIFF_1)" +GUI OPTIONAL COORDSYS GEOTIFF_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEOTIFF_1 Search Envelope Coordinate System: # =========================================================================== # BUG18999: We now have a soft clip to fall back on like native spatial index # thus we are reintroducing the clip to envelop as an option for users. # Defualt to soft clip as per the existing database readers we are emulating -GUI LOOKUP GEOTIFF_IN_CLIP_TO_ENVELOPE_GEOTIFF_2 ,NO -DEFAULT_MACRO GEOTIFF_IN_CLIP_TO_ENVELOPE_GEOTIFF_2 NO -GEOTIFF_2_CLIP_TO_ENVELOPE "$(GEOTIFF_IN_CLIP_TO_ENVELOPE_GEOTIFF_2)" -GUI OPTIONAL CHECKBOX GEOTIFF_IN_CLIP_TO_ENVELOPE_GEOTIFF_2 YES%NO Clip to Search Envelope -DEFAULT_MACRO GEOTIFF_IN_GEOTIFF_RDR_ADV_PARM_GROUP_GEOTIFF_2 -GUI OPTIONAL DISCLOSUREGROUP GEOTIFF_IN_GEOTIFF_RDR_ADV_PARM_GROUP_GEOTIFF_2 GEOTIFF_IN_PYRAMID_LEVEL_GEOTIFF_2%GEOTIFF_IN_PREFER_FILE_CS_UNITS_GEOTIFF_2%GEOTIFF_IN_READ_OFFSETS_IN_CS_UNITS_GEOTIFF_2%GEOTIFF_IN_IGNORE_RASTER_TYPE_KEY_GEOTIFF_2 Advanced -DEFAULT_MACRO GEOTIFF_IN_PYRAMID_LEVEL_GEOTIFF_2 -GEOTIFF_2_PYRAMID_LEVEL "$(GEOTIFF_IN_PYRAMID_LEVEL_GEOTIFF_2)" -GUI OPTIONAL INTEGER GEOTIFF_IN_PYRAMID_LEVEL_GEOTIFF_2 Pyramid Level to Read: -DEFAULT_MACRO GEOTIFF_IN_PREFER_FILE_CS_UNITS_GEOTIFF_2 Yes -GEOTIFF_2_PREFER_FILE_CS_UNITS "$(GEOTIFF_IN_PREFER_FILE_CS_UNITS_GEOTIFF_2)" -GUI CHOICE GEOTIFF_IN_PREFER_FILE_CS_UNITS_GEOTIFF_2 Yes%No Prefer File Coordinate System Units: -DEFAULT_MACRO GEOTIFF_IN_READ_OFFSETS_IN_CS_UNITS_GEOTIFF_2 No -GEOTIFF_2_READ_OFFSETS_IN_CS_UNITS "$(GEOTIFF_IN_READ_OFFSETS_IN_CS_UNITS_GEOTIFF_2)" -GUI CHOICE GEOTIFF_IN_READ_OFFSETS_IN_CS_UNITS_GEOTIFF_2 Yes%No Offsets in Coordinate System Units: -DEFAULT_MACRO GEOTIFF_IN_IGNORE_RASTER_TYPE_KEY_GEOTIFF_2 No -GEOTIFF_2_IGNORE_RASTER_TYPE_KEY "$(GEOTIFF_IN_IGNORE_RASTER_TYPE_KEY_GEOTIFF_2)" -GUI CHOICE GEOTIFF_IN_IGNORE_RASTER_TYPE_KEY_GEOTIFF_2 Yes%No Ignore Raster Type Key: +GUI LOOKUP GEOTIFF_IN_CLIP_TO_ENVELOPE_GEOTIFF_1 ,NO +DEFAULT_MACRO GEOTIFF_IN_CLIP_TO_ENVELOPE_GEOTIFF_1 NO +GEOTIFF_1_CLIP_TO_ENVELOPE "$(GEOTIFF_IN_CLIP_TO_ENVELOPE_GEOTIFF_1)" +GUI OPTIONAL CHECKBOX GEOTIFF_IN_CLIP_TO_ENVELOPE_GEOTIFF_1 YES%NO Clip to Search Envelope +DEFAULT_MACRO GEOTIFF_IN_GEOTIFF_RDR_ADV_PARM_GROUP_GEOTIFF_1 +GUI OPTIONAL DISCLOSUREGROUP GEOTIFF_IN_GEOTIFF_RDR_ADV_PARM_GROUP_GEOTIFF_1 GEOTIFF_IN_PYRAMID_LEVEL_GEOTIFF_1%GEOTIFF_IN_PREFER_FILE_CS_UNITS_GEOTIFF_1%GEOTIFF_IN_READ_OFFSETS_IN_CS_UNITS_GEOTIFF_1%GEOTIFF_IN_IGNORE_RASTER_TYPE_KEY_GEOTIFF_1 Advanced +DEFAULT_MACRO GEOTIFF_IN_PYRAMID_LEVEL_GEOTIFF_1 +GEOTIFF_1_PYRAMID_LEVEL "$(GEOTIFF_IN_PYRAMID_LEVEL_GEOTIFF_1)" +GUI OPTIONAL INTEGER GEOTIFF_IN_PYRAMID_LEVEL_GEOTIFF_1 Pyramid Level to Read: +DEFAULT_MACRO GEOTIFF_IN_PREFER_FILE_CS_UNITS_GEOTIFF_1 Yes +GEOTIFF_1_PREFER_FILE_CS_UNITS "$(GEOTIFF_IN_PREFER_FILE_CS_UNITS_GEOTIFF_1)" +GUI CHOICE GEOTIFF_IN_PREFER_FILE_CS_UNITS_GEOTIFF_1 Yes%No Prefer File Coordinate System Units: +DEFAULT_MACRO GEOTIFF_IN_READ_OFFSETS_IN_CS_UNITS_GEOTIFF_1 No +GEOTIFF_1_READ_OFFSETS_IN_CS_UNITS "$(GEOTIFF_IN_READ_OFFSETS_IN_CS_UNITS_GEOTIFF_1)" +GUI CHOICE GEOTIFF_IN_READ_OFFSETS_IN_CS_UNITS_GEOTIFF_1 Yes%No Offsets in Coordinate System Units: +DEFAULT_MACRO GEOTIFF_IN_IGNORE_RASTER_TYPE_KEY_GEOTIFF_1 No +GEOTIFF_1_IGNORE_RASTER_TYPE_KEY "$(GEOTIFF_IN_IGNORE_RASTER_TYPE_KEY_GEOTIFF_1)" +GUI CHOICE GEOTIFF_IN_IGNORE_RASTER_TYPE_KEY_GEOTIFF_1 Yes%No Ignore Raster Type Key: # =========================================================================== -DEFAULT_MACRO GEOTIFF_IN_NETWORK_AUTHENTICATION_GEOTIFF_2 -GEOTIFF_2_NETWORK_AUTHENTICATION "$(GEOTIFF_IN_NETWORK_AUTHENTICATION_GEOTIFF_2)" -GUI OPTIONAL AUTHENTICATOR GEOTIFF_IN_NETWORK_AUTHENTICATION_GEOTIFF_2 CONTAINER%GROUP%CONTAINER_TITLE%"Network Authentication"%PROMPT_TYPE%NETWORK Network Authentication +DEFAULT_MACRO GEOTIFF_IN_NETWORK_AUTHENTICATION_GEOTIFF_1 +GEOTIFF_1_NETWORK_AUTHENTICATION "$(GEOTIFF_IN_NETWORK_AUTHENTICATION_GEOTIFF_1)" +GUI OPTIONAL AUTHENTICATOR GEOTIFF_IN_NETWORK_AUTHENTICATION_GEOTIFF_1 CONTAINER%GROUP%CONTAINER_TITLE%"Network Authentication"%PROMPT_TYPE%NETWORK Network Authentication # ============================================================================ -DEFAULT_MACRO GEOTIFF_IN_ATTRIBUTE_READING_GEOTIFF_2 ALL -GEOTIFF_2_ATTRIBUTE_READING "$(GEOTIFF_IN_ATTRIBUTE_READING_GEOTIFF_2)" +DEFAULT_MACRO GEOTIFF_IN_ATTRIBUTE_READING_GEOTIFF_1 ALL +GEOTIFF_1_ATTRIBUTE_READING "$(GEOTIFF_IN_ATTRIBUTE_READING_GEOTIFF_1)" # ============================================================================ -GEOTIFF_2_GENERATE_FME_BUILD_NUM 19228 -GEOTIFF_2_DATASET "$(SourceDataset_GEOTIFF_2)" +GEOTIFF_1_GENERATE_FME_BUILD_NUM 19228 +GEOTIFF_1_DATASET "$(SourceDataset_GEOTIFF_1)" #! END_SOURCE_HEADER #! START_WB_HEADER -MACRO WB_KEYWORD "GEOTIFF_3" +MACRO WB_KEYWORD "GEOTIFF_2" #! END_WB_HEADER -#! START_DEST_HEADER GEOTIFF GEOTIFF_3 +#! START_DEST_HEADER GEOTIFF GEOTIFF_2 # The following GUI lines prompt for a GEOTIFF file to be used as the # the destination of the data. # The user input is stored in a macro, which is then used to define @@ -1608,60 +1572,60 @@ MACRO WB_KEYWORD "GEOTIFF_3" #! START_WB_HEADER DEFAULT_MACRO DestDataset INCLUDE [ if {"$(DestDataset)" != ""} { \ - puts {DEFAULT_MACRO DestDataset_GEOTIFF_3 $(DestDataset)} \ + puts {DEFAULT_MACRO DestDataset_GEOTIFF_2 $(DestDataset)} \ } ] #! END_WB_HEADER -#! START_DEST_HEADER GEOTIFF GEOTIFF_3 -DEFAULT_MACRO DestDataset_GEOTIFF_3 $(DestDataset_GEOTIFF) -GUI DIRNAME DestDataset_GEOTIFF_3 Destination GeoTIFF Folder: -DEFAULT_MACRO _GEOTIFF_WRITER_WORLD_FILE_GENERATION_GEOTIFF_3 no -DEFAULT_MACRO _GEOTIFF_WRITER_CREATE_TILED_FILES_GEOTIFF_3 no -DEFAULT_MACRO _GEOTIFF_WRITER_TILE_SIZE_X_GEOTIFF_3 -DEFAULT_MACRO _GEOTIFF_WRITER_TILE_SIZE_Y_GEOTIFF_3 -DEFAULT_MACRO _GEOTIFF_WRITER_COMPRESSION_METHOD_GEOTIFF_3 none -DEFAULT_MACRO _GEOTIFF_WRITER_JPEG_COMPRESSION_LEVEL_GEOTIFF_3 25 -DEFAULT_MACRO _GEOTIFF_WRITER_DEFLATE_COMPRESSION_LEVEL_GEOTIFF_3 6 -DEFAULT_MACRO _GEOTIFF_WRITER_ZSTD_COMPRESSION_LEVEL_GEOTIFF_3 9 -DEFAULT_MACRO _GEOTIFF_WRITER_TAB_FILE_GENERATION_GEOTIFF_3 no -DEFAULT_MACRO _GEOTIFF_WRITER_NUMBER_OF_BITS_PER_CELL_GEOTIFF_3 -DEFAULT_MACRO _GEOTIFF_WRITER_ENABLE_BIGTIFF_GEOTIFF_3 no -DEFAULT_MACRO _GEOTIFF_WRITER_INTERLEAVING_TYPE_GEOTIFF_3 BSQ -DEFAULT_MACRO _GEOTIFF_WRITER_PHOTOMETRIC_INTERPRETATION_GEOTIFF_3 Auto -DEFAULT_MACRO _GEOTIFF_WRITER_BYTE_ORDER_GEOTIFF_3 machine -DEFAULT_MACRO _GEOTIFF_WRITER_CALCULATE_MINMAX_TIFFTAGS_GEOTIFF_3 no -DEFAULT_MACRO _GEOTIFF_WRITER_GENERATE_PYRAMIDS_GEOTIFF_3 no -DEFAULT_MACRO _GEOTIFF_WRITER_PYRAMID_NUM_LEVELS_GEOTIFF_3 -DEFAULT_MACRO _GEOTIFF_WRITER_PYRAMID_INTERPOLATION_TYPE_GEOTIFF_3 NearestNeighbor -DEFAULT_MACRO _GEOTIFF_WRITER_PYRAMID_TILE_SIZE_GEOTIFF_3 128 -DEFAULT_MACRO GEOTIFF_OUT_GEOTIFF_WRT_ADV_PARM_GROUP_GEOTIFF_3 -GUI OPTIONAL DISCLOSUREGROUP GEOTIFF_OUT_GEOTIFF_WRT_ADV_PARM_GROUP_GEOTIFF_3 GEOTIFF_OUT_WRITE_OFFSETS_IN_CS_UNITS_GEOTIFF_3%GEOTIFF_OUT_WRITE_PROJECTED_COORDSYS_AS_EPSG_CODE_GEOTIFF_3%GEOTIFF_OUT_WRITE_GEOGRAPHIC_COORDSYS_AS_EPSG_CODE_GEOTIFF_3%GEOTIFF_OUT_WRITE_GEOGRAPHIC_KEYS_FOR_PROJECTED_COORDSYS_GEOTIFF_3%GEOTIFF_OUT_WRITE_ESRI_COMPATIBLE_COORDSYS_GEOTIFF_3%GEOTIFF_OUT_IGNORE_RASTER_TYPE_KEY_GEOTIFF_3 Advanced -DEFAULT_MACRO GEOTIFF_OUT_WRITE_OFFSETS_IN_CS_UNITS_GEOTIFF_3 Yes -GEOTIFF_3_WRITE_OFFSETS_IN_CS_UNITS "$(GEOTIFF_OUT_WRITE_OFFSETS_IN_CS_UNITS_GEOTIFF_3)" -GUI CHOICE GEOTIFF_OUT_WRITE_OFFSETS_IN_CS_UNITS_GEOTIFF_3 Yes%No Offsets in Coordinate System Units: -DEFAULT_MACRO GEOTIFF_OUT_WRITE_PROJECTED_COORDSYS_AS_EPSG_CODE_GEOTIFF_3 Yes -GEOTIFF_3_WRITE_PROJECTED_COORDSYS_AS_EPSG_CODE "$(GEOTIFF_OUT_WRITE_PROJECTED_COORDSYS_AS_EPSG_CODE_GEOTIFF_3)" -GUI CHOICE GEOTIFF_OUT_WRITE_PROJECTED_COORDSYS_AS_EPSG_CODE_GEOTIFF_3 Yes%No Write Projected Coordinate System as EPSG Code: -DEFAULT_MACRO GEOTIFF_OUT_WRITE_GEOGRAPHIC_COORDSYS_AS_EPSG_CODE_GEOTIFF_3 Yes -GEOTIFF_3_WRITE_GEOGRAPHIC_COORDSYS_AS_EPSG_CODE "$(GEOTIFF_OUT_WRITE_GEOGRAPHIC_COORDSYS_AS_EPSG_CODE_GEOTIFF_3)" -GUI CHOICE GEOTIFF_OUT_WRITE_GEOGRAPHIC_COORDSYS_AS_EPSG_CODE_GEOTIFF_3 Yes%No Write Geographic Coordinate System as EPSG Code: -DEFAULT_MACRO GEOTIFF_OUT_WRITE_GEOGRAPHIC_KEYS_FOR_PROJECTED_COORDSYS_GEOTIFF_3 Yes -GEOTIFF_3_WRITE_GEOGRAPHIC_KEYS_FOR_PROJECTED_COORDSYS "$(GEOTIFF_OUT_WRITE_GEOGRAPHIC_KEYS_FOR_PROJECTED_COORDSYS_GEOTIFF_3)" -GUI CHOICE GEOTIFF_OUT_WRITE_GEOGRAPHIC_KEYS_FOR_PROJECTED_COORDSYS_GEOTIFF_3 Yes%No Write Geographic Keys for Projected Coordinate Systems: -DEFAULT_MACRO GEOTIFF_OUT_WRITE_ESRI_COMPATIBLE_COORDSYS_GEOTIFF_3 No -GEOTIFF_3_WRITE_ESRI_COMPATIBLE_COORDSYS "$(GEOTIFF_OUT_WRITE_ESRI_COMPATIBLE_COORDSYS_GEOTIFF_3)" -GUI CHOICE GEOTIFF_OUT_WRITE_ESRI_COMPATIBLE_COORDSYS_GEOTIFF_3 Yes%No Write Esri-Compatible Coordinate System: -DEFAULT_MACRO GEOTIFF_OUT_IGNORE_RASTER_TYPE_KEY_GEOTIFF_3 No -GEOTIFF_3_IGNORE_RASTER_TYPE_KEY "$(GEOTIFF_OUT_IGNORE_RASTER_TYPE_KEY_GEOTIFF_3)" -GUI CHOICE GEOTIFF_OUT_IGNORE_RASTER_TYPE_KEY_GEOTIFF_3 Yes%No Ignore Raster Type Key: +#! START_DEST_HEADER GEOTIFF GEOTIFF_2 +DEFAULT_MACRO DestDataset_GEOTIFF_2 $(DestDataset_GEOTIFF) +GUI DIRNAME DestDataset_GEOTIFF_2 Destination GeoTIFF Folder: +DEFAULT_MACRO _GEOTIFF_WRITER_WORLD_FILE_GENERATION_GEOTIFF_2 no +DEFAULT_MACRO _GEOTIFF_WRITER_CREATE_TILED_FILES_GEOTIFF_2 no +DEFAULT_MACRO _GEOTIFF_WRITER_TILE_SIZE_X_GEOTIFF_2 +DEFAULT_MACRO _GEOTIFF_WRITER_TILE_SIZE_Y_GEOTIFF_2 +DEFAULT_MACRO _GEOTIFF_WRITER_COMPRESSION_METHOD_GEOTIFF_2 none +DEFAULT_MACRO _GEOTIFF_WRITER_JPEG_COMPRESSION_LEVEL_GEOTIFF_2 25 +DEFAULT_MACRO _GEOTIFF_WRITER_DEFLATE_COMPRESSION_LEVEL_GEOTIFF_2 6 +DEFAULT_MACRO _GEOTIFF_WRITER_ZSTD_COMPRESSION_LEVEL_GEOTIFF_2 9 +DEFAULT_MACRO _GEOTIFF_WRITER_TAB_FILE_GENERATION_GEOTIFF_2 no +DEFAULT_MACRO _GEOTIFF_WRITER_NUMBER_OF_BITS_PER_CELL_GEOTIFF_2 +DEFAULT_MACRO _GEOTIFF_WRITER_ENABLE_BIGTIFF_GEOTIFF_2 no +DEFAULT_MACRO _GEOTIFF_WRITER_INTERLEAVING_TYPE_GEOTIFF_2 BSQ +DEFAULT_MACRO _GEOTIFF_WRITER_PHOTOMETRIC_INTERPRETATION_GEOTIFF_2 Auto +DEFAULT_MACRO _GEOTIFF_WRITER_BYTE_ORDER_GEOTIFF_2 machine +DEFAULT_MACRO _GEOTIFF_WRITER_CALCULATE_MINMAX_TIFFTAGS_GEOTIFF_2 no +DEFAULT_MACRO _GEOTIFF_WRITER_GENERATE_PYRAMIDS_GEOTIFF_2 no +DEFAULT_MACRO _GEOTIFF_WRITER_PYRAMID_NUM_LEVELS_GEOTIFF_2 +DEFAULT_MACRO _GEOTIFF_WRITER_PYRAMID_INTERPOLATION_TYPE_GEOTIFF_2 NearestNeighbor +DEFAULT_MACRO _GEOTIFF_WRITER_PYRAMID_TILE_SIZE_GEOTIFF_2 128 +DEFAULT_MACRO GEOTIFF_OUT_GEOTIFF_WRT_ADV_PARM_GROUP_GEOTIFF_2 +GUI OPTIONAL DISCLOSUREGROUP GEOTIFF_OUT_GEOTIFF_WRT_ADV_PARM_GROUP_GEOTIFF_2 GEOTIFF_OUT_WRITE_OFFSETS_IN_CS_UNITS_GEOTIFF_2%GEOTIFF_OUT_WRITE_PROJECTED_COORDSYS_AS_EPSG_CODE_GEOTIFF_2%GEOTIFF_OUT_WRITE_GEOGRAPHIC_COORDSYS_AS_EPSG_CODE_GEOTIFF_2%GEOTIFF_OUT_WRITE_GEOGRAPHIC_KEYS_FOR_PROJECTED_COORDSYS_GEOTIFF_2%GEOTIFF_OUT_WRITE_ESRI_COMPATIBLE_COORDSYS_GEOTIFF_2%GEOTIFF_OUT_IGNORE_RASTER_TYPE_KEY_GEOTIFF_2 Advanced +DEFAULT_MACRO GEOTIFF_OUT_WRITE_OFFSETS_IN_CS_UNITS_GEOTIFF_2 Yes +GEOTIFF_2_WRITE_OFFSETS_IN_CS_UNITS "$(GEOTIFF_OUT_WRITE_OFFSETS_IN_CS_UNITS_GEOTIFF_2)" +GUI CHOICE GEOTIFF_OUT_WRITE_OFFSETS_IN_CS_UNITS_GEOTIFF_2 Yes%No Offsets in Coordinate System Units: +DEFAULT_MACRO GEOTIFF_OUT_WRITE_PROJECTED_COORDSYS_AS_EPSG_CODE_GEOTIFF_2 Yes +GEOTIFF_2_WRITE_PROJECTED_COORDSYS_AS_EPSG_CODE "$(GEOTIFF_OUT_WRITE_PROJECTED_COORDSYS_AS_EPSG_CODE_GEOTIFF_2)" +GUI CHOICE GEOTIFF_OUT_WRITE_PROJECTED_COORDSYS_AS_EPSG_CODE_GEOTIFF_2 Yes%No Write Projected Coordinate System as EPSG Code: +DEFAULT_MACRO GEOTIFF_OUT_WRITE_GEOGRAPHIC_COORDSYS_AS_EPSG_CODE_GEOTIFF_2 Yes +GEOTIFF_2_WRITE_GEOGRAPHIC_COORDSYS_AS_EPSG_CODE "$(GEOTIFF_OUT_WRITE_GEOGRAPHIC_COORDSYS_AS_EPSG_CODE_GEOTIFF_2)" +GUI CHOICE GEOTIFF_OUT_WRITE_GEOGRAPHIC_COORDSYS_AS_EPSG_CODE_GEOTIFF_2 Yes%No Write Geographic Coordinate System as EPSG Code: +DEFAULT_MACRO GEOTIFF_OUT_WRITE_GEOGRAPHIC_KEYS_FOR_PROJECTED_COORDSYS_GEOTIFF_2 Yes +GEOTIFF_2_WRITE_GEOGRAPHIC_KEYS_FOR_PROJECTED_COORDSYS "$(GEOTIFF_OUT_WRITE_GEOGRAPHIC_KEYS_FOR_PROJECTED_COORDSYS_GEOTIFF_2)" +GUI CHOICE GEOTIFF_OUT_WRITE_GEOGRAPHIC_KEYS_FOR_PROJECTED_COORDSYS_GEOTIFF_2 Yes%No Write Geographic Keys for Projected Coordinate Systems: +DEFAULT_MACRO GEOTIFF_OUT_WRITE_ESRI_COMPATIBLE_COORDSYS_GEOTIFF_2 No +GEOTIFF_2_WRITE_ESRI_COMPATIBLE_COORDSYS "$(GEOTIFF_OUT_WRITE_ESRI_COMPATIBLE_COORDSYS_GEOTIFF_2)" +GUI CHOICE GEOTIFF_OUT_WRITE_ESRI_COMPATIBLE_COORDSYS_GEOTIFF_2 Yes%No Write Esri-Compatible Coordinate System: +DEFAULT_MACRO GEOTIFF_OUT_IGNORE_RASTER_TYPE_KEY_GEOTIFF_2 No +GEOTIFF_2_IGNORE_RASTER_TYPE_KEY "$(GEOTIFF_OUT_IGNORE_RASTER_TYPE_KEY_GEOTIFF_2)" +GUI CHOICE GEOTIFF_OUT_IGNORE_RASTER_TYPE_KEY_GEOTIFF_2 Yes%No Ignore Raster Type Key: # ============================================================================ # Opt in for destination dataset type vs format type validation -DEFAULT_MACRO GEOTIFF_OUT_DESTINATION_DATASETTYPE_VALIDATION_GEOTIFF_3 Yes -GEOTIFF_3_DESTINATION_DATASETTYPE_VALIDATION "$(GEOTIFF_OUT_DESTINATION_DATASETTYPE_VALIDATION_GEOTIFF_3)" -DEFAULT_MACRO GEOTIFF_OUT_COORDINATE_SYSTEM_GRANULARITY_GEOTIFF_3 FEATURE -GEOTIFF_3_COORDINATE_SYSTEM_GRANULARITY "$(GEOTIFF_OUT_COORDINATE_SYSTEM_GRANULARITY_GEOTIFF_3)" +DEFAULT_MACRO GEOTIFF_OUT_DESTINATION_DATASETTYPE_VALIDATION_GEOTIFF_2 Yes +GEOTIFF_2_DESTINATION_DATASETTYPE_VALIDATION "$(GEOTIFF_OUT_DESTINATION_DATASETTYPE_VALIDATION_GEOTIFF_2)" +DEFAULT_MACRO GEOTIFF_OUT_COORDINATE_SYSTEM_GRANULARITY_GEOTIFF_2 FEATURE +GEOTIFF_2_COORDINATE_SYSTEM_GRANULARITY "$(GEOTIFF_OUT_COORDINATE_SYSTEM_GRANULARITY_GEOTIFF_2)" # ============================================================================ -GEOTIFF_3_GENERATE_FME_BUILD_NUM 19226 -GEOTIFF_3_DATASET "$(DestDataset_GEOTIFF_3)" +GEOTIFF_2_GENERATE_FME_BUILD_NUM 19226 +GEOTIFF_2_DATASET "$(DestDataset_GEOTIFF_2)" #! END_DEST_HEADER #! START_WB_HEADER #! END_WB_HEADER @@ -1677,19 +1641,19 @@ FME_IMPLICIT_CSMAP_REPROJECTION_MODE Auto FME_GEOMETRY_HANDLING Enhanced FME_STROKE_MAX_DEVIATION 0 DEFAULT_MACRO DATASET_KEYWORD_ESRISHAPE_1 ESRISHAPE_1 +DEFAULT_MACRO DATASET_KEYWORD_GEOTIFF_1 GEOTIFF_1 DEFAULT_MACRO DATASET_KEYWORD_GEOTIFF_2 GEOTIFF_2 -DEFAULT_MACRO DATASET_KEYWORD_GEOTIFF_3 GEOTIFF_3 # ------------------------------------------------------------------------- ESRISHAPE_1_READER_META_ATTRIBUTES fme_feature_type # ------------------------------------------------------------------------- -GEOTIFF_2_READER_META_ATTRIBUTES fme_feature_type fme_basename +GEOTIFF_1_READER_META_ATTRIBUTES fme_feature_type fme_basename # ------------------------------------------------------------------------- -GEOTIFF_3_COORDINATE_SYSTEM EPSG:2056 +GEOTIFF_2_COORDINATE_SYSTEM EPSG:2056 MULTI_READER_CONTINUE_ON_READER_FAILURE No # ------------------------------------------------------------------------- @@ -1699,32 +1663,30 @@ MACRO FME_VIEWER_APP fmedatainspector # ------------------------------------------------------------------------- ESRISHAPE_1_DEF secteurs SHAPE_GEOMETRY shape_polygon secteur_ID long # ------------------------------------------------------------------------- -GEOTIFF_2_DEF GEOTIFF +GEOTIFF_1_DEF GEOTIFF # ------------------------------------------------------------------------- -FACTORY_DEF * RoutingFactory FACTORY_NAME "Router and Unexpected Input Remover" COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE * ROUTE ESRISHAPE ESRISHAPE_1::secteurs multi_reader_keyword,$(DATASET_KEYWORD_ESRISHAPE_1) TO FME_GENERIC ::secteurs ALIAS_GEOMETRY ROUTE GEOTIFF GEOTIFF_2::GEOTIFF multi_reader_keyword,$(DATASET_KEYWORD_GEOTIFF_2) TO FME_GENERIC ::GEOTIFF ALIAS_GEOMETRY MERGE_INPUT Yes OUTPUT ROUTED FEATURE_TYPE * +FACTORY_DEF * RoutingFactory FACTORY_NAME "Router and Unexpected Input Remover" COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE * ROUTE ESRISHAPE ESRISHAPE_1::secteurs multi_reader_keyword,$(DATASET_KEYWORD_ESRISHAPE_1) TO FME_GENERIC ::secteurs ALIAS_GEOMETRY ROUTE GEOTIFF GEOTIFF_1::GEOTIFF multi_reader_keyword,$(DATASET_KEYWORD_GEOTIFF_1) TO FME_GENERIC ::GEOTIFF ALIAS_GEOMETRY MERGE_INPUT Yes OUTPUT ROUTED FEATURE_TYPE * ESRISHAPE_1_MERGE_DEF ESRISHAPE_1::secteurs EXACT secteurs -GEOTIFF_2_MERGE_DEF GEOTIFF_2::GEOTIFF EXACT GEOTIFF +GEOTIFF_1_MERGE_DEF GEOTIFF_1::GEOTIFF EXACT GEOTIFF # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME "secteurs (ESRISHAPE_1) Splitter" INPUT FEATURE_TYPE secteurs OUTPUT FEATURE_TYPE secteurs_ESRISHAPE_1 # ------------------------------------------------------------------------- -FACTORY_DEF * TeeFactory FACTORY_NAME "GEOTIFF (GEOTIFF_2) Splitter" INPUT FEATURE_TYPE GEOTIFF OUTPUT FEATURE_TYPE GEOTIFF_GEOTIFF_2 +FACTORY_DEF * TeeFactory FACTORY_NAME "GEOTIFF (GEOTIFF_1) Splitter" INPUT FEATURE_TYPE GEOTIFF OUTPUT FEATURE_TYPE GEOTIFF_GEOTIFF_1 DEFAULT_MACRO WB_CURRENT_CONTEXT # ------------------------------------------------------------------------- -FACTORY_DEF * TestFactory FACTORY_NAME Tester INPUT FEATURE_TYPE secteurs_ESRISHAPE_1 TEST @EvaluateExpression(FDIV,STRING_ENCODED,Valuesecteur_ID,Tester) = 13 ENCODED BOOLEAN_OPERATOR OR COMPOSITE_TEST_EXPR "1" OUTPUT PASSED FEATURE_TYPE Tester_PASSED -# ------------------------------------------------------------------------- INCLUDE [ if {($(FME_BUILD_NUM) < 5669) || [FME_ComponentIsLicensed -factory RasterClippingFactory]} { puts "MACRO RASTER_CLIPPER_IN *"; } else { puts "MACRO RASTER_CLIPPER_IN NOT_THIS_TIME"; } ] # The dummy input feature type Clipper___ClipperMakeSureWeDontGetAllFeatures___ -# makes sure that if INPUT FEATURE_TYPE Tester_PASSED is emtpy, we don't get every feature +# makes sure that if INPUT FEATURE_TYPE secteurs_ESRISHAPE_1 is emtpy, we don't get every feature # sent into this factory. -FACTORY_DEF * TeeFactory FACTORY_NAME Clipper_ClipperCloner INPUT FEATURE_TYPE Tester_PASSED INPUT FEATURE_TYPE Clipper___ClipperMakeSureWeDontGetAllFeatures___ OUTPUT FEATURE_TYPE Clipper___ClippersForSolidOrVector___ OUTPUT FEATURE_TYPE Clipper___ClippersForRaster___ +FACTORY_DEF * TeeFactory FACTORY_NAME Clipper_ClipperCloner INPUT FEATURE_TYPE secteurs_ESRISHAPE_1 INPUT FEATURE_TYPE Clipper___ClipperMakeSureWeDontGetAllFeatures___ OUTPUT FEATURE_TYPE Clipper___ClippersForSolidOrVector___ OUTPUT FEATURE_TYPE Clipper___ClippersForRaster___ FACTORY_DEF * TestFactory FACTORY_NAME Clipper_SolidClipperFilter INPUT FEATURE_TYPE Clipper___ClippersForSolidOrVector___ TEST &fme_type == "fme_solid" OUTPUT FAILED FEATURE_TYPE Clipper___ClippersForVector___ OUTPUT PASSED FEATURE_TYPE Clipper___ClippersForSolid___ # The dummy input feature type Clipper___ClippeeMakeSureWeDontGetAllFeatures___ -# makes sure that if INPUT FEATURE_TYPE GEOTIFF_GEOTIFF_2 is emtpy, we don't get every feature +# makes sure that if INPUT FEATURE_TYPE GEOTIFF_GEOTIFF_1 is emtpy, we don't get every feature # sent into this factory. -FACTORY_DEF * TestFactory FACTORY_NAME Clipper_ClippeeFilter INPUT FEATURE_TYPE GEOTIFF_GEOTIFF_2 INPUT FEATURE_TYPE Clipper___ClippeeMakeSureWeDontGetAllFeatures___ TEST &fme_type == "fme_raster" OUTPUT FAILED FEATURE_TYPE Clipper___VectorOrSolidClippees___ OUTPUT PASSED FEATURE_TYPE Clipper___RasterClippees___ +FACTORY_DEF * TestFactory FACTORY_NAME Clipper_ClippeeFilter INPUT FEATURE_TYPE GEOTIFF_GEOTIFF_1 INPUT FEATURE_TYPE Clipper___ClippeeMakeSureWeDontGetAllFeatures___ TEST &fme_type == "fme_raster" OUTPUT FAILED FEATURE_TYPE Clipper___VectorOrSolidClippees___ OUTPUT PASSED FEATURE_TYPE Clipper___RasterClippees___ FACTORY_DEF {$(RASTER_CLIPPER_IN)} RasterClippingFactory FACTORY_NAME Clipper_Raster INPUT CLIPPER FEATURE_TYPE Clipper___ClippersForRaster___ INPUT CLIPPEE FEATURE_TYPE Clipper___RasterClippees___ MULTICLIP YES MERGE_CLIPPER_ATTRIBUTES NO ATTR_ACCUM_MODE "HANDLE_CONFLICT" ATTR_CONFLICT_RES "CLIPPEE_IF_CONFLICT" CLIPPER_PREFIX "" PRESERVE_CLIPPEE_EXTENTS NO FLUSH_WHEN_GROUPS_CHANGE No OUTPUT_NO_CLIPPERS_AS_OUTSIDE OUTSIDE_NO_CLIPPERS_ATTR _fme_no_clipper OUTPUT INSIDE FEATURE_TYPE Clipper_INSIDE "_clipped" no OUTPUT CLIPPED_INSIDE FEATURE_TYPE Clipper_INSIDE "_clipped" yes OUTPUT EXTRA_CLIPPER FEATURE_TYPE Clipper__delete__ @Tcl2("FME_LogMessage fme_warn 917351 Clipper") OUTPUT REJECTED FEATURE_TYPE Clipper_ FACTORY_DEF {*} ClippingFactory FACTORY_NAME Clipper_Vector INPUT CLIPPER FEATURE_TYPE Clipper___ClippersForVector___ INPUT CLIPPEE FEATURE_TYPE Clipper___VectorOrSolidClippees___ INPUT CLIPPEE FEATURE_TYPE Clipper___RasterClippees___ MULTICLIP YES CONNECT_Z_MODE FIRST_WINS MISSING_VAL_MODE COMPUTE_NANS COMPUTE_MEASURES_MODE CONTINUOUS MEASURES_AND_Z_FROM CLIPPEE CLIPPEE_ON_BOUNDARY INSIDE MERGE_CLIPPER_ATTRIBUTES NO ATTR_ACCUM_MODE "HANDLE_CONFLICT" ATTR_CONFLICT_RES "CLIPPEE_IF_CONFLICT" CLIPPER_PREFIX "" OUTPUT_NO_CLIPPERS_AS_OUTSIDE OUTSIDE_NO_CLIPPERS_ATTR _fme_no_clipper LINES_AS_SEGMENTS NO FLUSH_WHEN_GROUPS_CHANGE No MODE COMPLETE CLEANING_TOLERANCE AUTO OUTPUT INSIDE FEATURE_TYPE Clipper_INSIDE "_clipped" no OUTPUT CLIPPED_INSIDE FEATURE_TYPE Clipper_INSIDE "_clipped" yes OUTPUT OUTSIDE_NO_CLIPPER FEATURE_TYPE Clipper___ClippeeForSolid___ OUTPUT EXTRA_CLIPPER FEATURE_TYPE Clipper__delete__ @Tcl2("FME_LogMessage fme_warn 917351 Clipper") OUTPUT NONPOLY_CLIPPER FEATURE_TYPE Clipper__delete__ @Tcl2("FME_LogMessage fme_warn 917352 Clipper") OUTPUT REJECTED FEATURE_TYPE Clipper_ FACTORY_DEF * SolidIntersectionFactory FACTORY_NAME Clipper_Solid INPUT CLIPPER FEATURE_TYPE Clipper___ClippersForSolid___ INPUT CLIPPEE FEATURE_TYPE Clipper___ClippeeForSolid___ MULTICLIP YES CLIPPEE_ON_BOUNDARY INSIDE MERGE_CLIPPER_ATTRIBUTES NO ATTR_ACCUM_MODE "HANDLE_CONFLICT" ATTR_CONFLICT_RES "CLIPPEE_IF_CONFLICT" CLIPPER_PREFIX "" OUTPUT_NO_CLIPPERS_AS_OUTSIDE OUTSIDE_NO_CLIPPERS_ATTR _fme_no_clipper FLUSH_WHEN_GROUPS_CHANGE No OUTPUT INSIDE FEATURE_TYPE Clipper_INSIDE "_clipped" no OUTPUT CLIPPED_INSIDE FEATURE_TYPE Clipper_INSIDE "_clipped" yes OUTPUT EXTRA_CLIPPER FEATURE_TYPE Clipper__delete__ @Tcl2("FME_LogMessage fme_warn 917351 Clipper") OUTPUT REJECTED FEATURE_TYPE Clipper_ @@ -1739,4 +1701,4 @@ FACTORY_DEF * RoutingFactory FACTORY_NAME "Destination Feature Type Routing Corr FACTORY_DEF * TeeFactory FACTORY_NAME "Final Output Nuker" INPUT FEATURE_TYPE __nuke_me__ # ------------------------------------------------------------------------- -GEOTIFF_3_DEF GEOTIFF geotiff_world_file_generation no geotiff_create_tiled_files no geotiff_tile_size_x "" geotiff_tile_size_y "" geotiff_compression_method none geotiff_jpeg_compression_level 25 geotiff_deflate_compression_level 6 geotiff_zstd_compression_level 9 geotiff_tab_file_generation no geotiff_number_of_bits_per_cell "" geotiff_enable_bigtiff no geotiff_interleaving_type BSQ geotiff_photometric_interpretation Auto geotiff_byte_order machine geotiff_calculate_minmax_tifftags no geotiff_generate_pyramids NO +GEOTIFF_2_DEF GEOTIFF geotiff_world_file_generation no geotiff_create_tiled_files no geotiff_tile_size_x "" geotiff_tile_size_y "" geotiff_compression_method none geotiff_jpeg_compression_level 25 geotiff_deflate_compression_level 6 geotiff_zstd_compression_level 9 geotiff_tab_file_generation no geotiff_number_of_bits_per_cell "" geotiff_enable_bigtiff no geotiff_interleaving_type BSQ geotiff_photometric_interpretation Auto geotiff_byte_order machine geotiff_calculate_minmax_tifftags no geotiff_generate_pyramids NO diff --git a/datasource/01_terrain/mnt2016_25cm_250m.tif b/datasource/01_terrain/mnt2016_25cm_250m.tif new file mode 100644 index 0000000..a9476a7 --- /dev/null +++ b/datasource/01_terrain/mnt2016_25cm_250m.tif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b524c89b6229400f9a9e665551f7479522570fc1c98545833090582fd2b5715 +size 4000641 diff --git a/import/01_terrain/10_GEOTIFF2RAW.fmw b/import/01_terrain/10_GEOTIFF2RAW.fmw index b5224ac..8aef375 100644 --- a/import/01_terrain/10_GEOTIFF2RAW.fmw +++ b/import/01_terrain/10_GEOTIFF2RAW.fmw @@ -2,7 +2,7 @@ #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! +#! +#! #! #! #! #! -#! #! #! #! #! -#! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! +#! #! #! #! #! #! #! #! #! #! #! #! #! -#! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! #! +#! #! #! #! @@ -1230,42 +1245,42 @@ #! IDENTIFIER="50" #! NAME="DEBUG - lets you control what value has the raster cell before and after calculation" #! DESCRIPTION="" -#! TOP_LEFT="915.00915009150083 -1115.6361563615633" +#! TOP_LEFT="1672.4852248522466 -602.5330253302526" #! ORDER="500000000000043" -#! PALETTE_COLOR="Color1" -#! BOTTOM_RIGHT="2580.0258002580022 -2412.524125241252" -#! BOUNDING_RECT="915.00915009150083 -1115.6361563615633 1665.0166501665012 1296.8879688796887" +#! PALETTE_COLOR="Disabled" +#! BOTTOM_RIGHT="3337.5018750187478 -1891.9209192091903" +#! BOUNDING_RECT="1672.4852248522466 -602.5330253302526 1665.0166501665012 1289.3878938789376" #! STICKY="true" -#! COLOUR="0.59999999999999998,0.80000000000000004,0.80000000000000004,1" -#! CONTENTS="37 39 43 33 42 41 38 40 26 48 49 " +#! COLOUR="0.66666666666666663,0.69803921568627447,0.70980392156862748,1" +#! CONTENTS="49 40 33 48 41 38 37 26 39 42 43 " #! > #! #! #! #! #! #! @@ -1274,8 +1289,8 @@ #! IDENTIFIER="9" #! TYPE="RasterExpressionEvaluator" #! VERSION="3" -#! POSITION="1009.8178486760278 726.88226882268827" -#! BOUNDING_RECT="1009.8178486760278 726.88226882268827 552.00106825772946 71" +#! POSITION="1750.5093568465215 311.86011860118629" +#! BOUNDING_RECT="1750.5093568465215 311.86011860118629 552.00106825772946 71" #! ORDER="500000000000007" #! PARMS_EDITED="true" #! ENABLED="true" @@ -1303,8 +1318,8 @@ #! IDENTIFIER="18" #! TYPE="RasterResampler" #! VERSION="3" -#! POSITION="1009.8178486760278 1006.8850688506885" -#! BOUNDING_RECT="1009.8178486760278 1006.8850688506885 454 71" +#! POSITION="1750.5093568465215 591.86291862918654" +#! BOUNDING_RECT="1750.5093568465215 591.86291862918654 454 71" #! ORDER="500000000000010" #! PARMS_EDITED="true" #! ENABLED="true" @@ -1336,8 +1351,8 @@ #! IDENTIFIER="10" #! TYPE="FeatureWriter" #! VERSION="0" -#! POSITION="1009.8178486760278 91.875918759187812" -#! BOUNDING_RECT="1009.8178486760278 91.875918759187812 430 71" +#! POSITION="2588.0177319302716 716.86356863568653" +#! BOUNDING_RECT="2588.0177319302716 716.86356863568653 430 71" #! ORDER="500000000000011" #! PARMS_EDITED="true" #! ENABLED="true" @@ -1378,8 +1393,8 @@ #! IDENTIFIER="12" #! TYPE="SystemCaller" #! VERSION="3" -#! POSITION="1012.8179986775277 -815.38356883568929" -#! BOUNDING_RECT="1012.8179986775277 -815.38356883568929 430 71" +#! POSITION="2625.9892321428147 -132.89474394744036" +#! BOUNDING_RECT="2625.9892321428147 -132.89474394744036 430 71" #! ORDER="500000000000012" #! PARMS_EDITED="true" #! ENABLED="true" @@ -1403,8 +1418,8 @@ #! IDENTIFIER="15" #! TYPE="AttributeCreator" #! VERSION="9" -#! POSITION="1000.8179986775277 -442.87656876568735" -#! BOUNDING_RECT="1000.8179986775277 -442.87656876568735 454 71" +#! POSITION="2613.9892321428147 239.61225612256166" +#! BOUNDING_RECT="2613.9892321428147 239.61225612256166 454 71" #! ORDER="500000000000035" #! PARMS_EDITED="true" #! ENABLED="true" @@ -1433,8 +1448,8 @@ #! IDENTIFIER="26" #! TYPE="Inspector" #! VERSION="5" -#! POSITION="1694.0177675702539 -2232.2727377273773" -#! BOUNDING_RECT="1694.0177675702539 -2232.2727377273773 783.00106825772946 71" +#! POSITION="2451.4938423310005 -1711.6695316953153" +#! BOUNDING_RECT="2451.4938423310005 -1711.6695316953153 783.00106825772946 71" #! ORDER="500000000000039" #! PARMS_EDITED="true" #! ENABLED="false" @@ -1461,8 +1476,8 @@ #! IDENTIFIER="33" #! TYPE="Creator" #! VERSION="5" -#! POSITION="1006.3849120961671 -1214.7625626256261" -#! BOUNDING_RECT="1006.3849120961671 -1214.7625626256261 430 71" +#! POSITION="1763.8609868569138 -694.15935659356387" +#! BOUNDING_RECT="1763.8609868569138 -694.15935659356387 430 71" #! ORDER="500000000000041" #! PARMS_EDITED="true" #! ENABLED="false" @@ -1485,22 +1500,23 @@ #! #! #! +#! +#! #! #! #! -#! -#! #! +#! #! #! #! @@ -1509,13 +1525,13 @@ #! #! #! @@ -1524,9 +1540,8 @@ #! #! #! -#! -#! #! +#! #! #! #! @@ -1536,8 +1551,8 @@ #! IDENTIFIER="2" #! TYPE="RasterBandInterpretationCoercer" #! VERSION="1" -#! POSITION="1009.8178486760278 376.8787687876881" -#! BOUNDING_RECT="1009.8178486760278 376.8787687876881 665.00106825772946 71" +#! POSITION="2588.0177319302716 1000" +#! BOUNDING_RECT="2588.0177319302716 1000 665.00106825772946 71" #! ORDER="500000000000002" #! PARMS_EDITED="true" #! ENABLED="true" @@ -1568,8 +1583,8 @@ #! IDENTIFIER="44" #! TYPE="SystemCaller" #! VERSION="3" -#! POSITION="1012.8179986775277 -627.88169381693876" -#! BOUNDING_RECT="1012.8179986775277 -627.88169381693876 430 71" +#! POSITION="2625.9892321428147 54.607131071309936" +#! BOUNDING_RECT="2625.9892321428147 54.607131071309936 430 71" #! ORDER="500000000000012" #! PARMS_EDITED="true" #! ENABLED="true" @@ -1592,13 +1607,13 @@ #! #! #! @@ -1607,9 +1622,8 @@ #! #! #! -#! -#! #! +#! #! #! #! @@ -1619,8 +1633,8 @@ #! IDENTIFIER="53" #! TYPE="Clipper" #! VERSION="13" -#! POSITION="1009.8178486760278 1464.0595525826657" -#! BOUNDING_RECT="1009.8178486760278 1464.0595525826657 430 71" +#! POSITION="1750.5093568465215 1049.0374023611637" +#! BOUNDING_RECT="1750.5093568465215 1049.0374023611637 430 71" #! ORDER="500000000000001" #! PARMS_EDITED="true" #! ENABLED="true" @@ -1667,8 +1681,8 @@ #! IDENTIFIER="58" #! TYPE="AttributeCreator" #! VERSION="9" -#! POSITION="1034.3501417484654 2010.5652026391667" -#! BOUNDING_RECT="1034.3501417484654 2010.5652026391667 454 71" +#! POSITION="1775.0416499189591 1595.5430524176647" +#! BOUNDING_RECT="1775.0416499189591 1595.5430524176647 454 71" #! ORDER="500000000000045" #! PARMS_EDITED="true" #! ENABLED="true" @@ -1697,8 +1711,8 @@ #! IDENTIFIER="61" #! TYPE="BoundsExtractor" #! VERSION="2" -#! POSITION="1034.3501417484654 2206.5669776569171" -#! BOUNDING_RECT="1034.3501417484654 2206.5669776569171 454 71" +#! POSITION="1775.0416499189591 1791.5448274354151" +#! BOUNDING_RECT="1775.0416499189591 1791.5448274354151 454 71" #! ORDER="500000000000046" #! PARMS_EDITED="true" #! ENABLED="true" @@ -1740,7 +1754,7 @@ #! TARGET_NODE="38" #! SOURCE_PORT_DESC="fo 0 CREATED" #! TARGET_PORT_DESC="fi 1 POINT" -#! ENABLED="true" +#! ENABLED="false" #! EXECUTION_IDX="0" #! HIDDEN="false" #! EXTRA_POINTS="" @@ -1751,7 +1765,7 @@ #! TARGET_NODE="37" #! SOURCE_PORT_DESC="fo 0 CREATED" #! TARGET_PORT_DESC="fi 1 POINT" -#! ENABLED="true" +#! ENABLED="false" #! EXECUTION_IDX="1" #! HIDDEN="false" #! EXTRA_POINTS="" @@ -1762,7 +1776,7 @@ #! TARGET_NODE="43" #! SOURCE_PORT_DESC="fo 0 CREATED" #! TARGET_PORT_DESC="fi 1 POINT" -#! ENABLED="true" +#! ENABLED="false" #! EXECUTION_IDX="2" #! HIDDEN="false" #! EXTRA_POINTS="" @@ -1825,7 +1839,7 @@ #! #! #! -#! -#! -#! -#! -#! -#! -#! -#! -#! -#! -#! -#! -#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! +#! #! +#! #! -#! +#! +#! #! #! #! #! FME_PYTHON_VERSION 37 -GUI IGNORE SourceDataset_ESRISHAPE_1,ESRISHAPE_IN_READER_PARAMETERS_ESRISHAPE_1,ESRISHAPE_IN_ENCODING_ESRISHAPE_1,ESRISHAPE_IN_USE_SEARCH_ENVELOPE_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MINX_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_1,ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_1,ESRISHAPE_IN_ADVANCED_ESRISHAPE_1,ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_1,ESRISHAPE_IN_GEOMETRY_ESRISHAPE_1,ESRISHAPE_IN_SIMPLE_DONUT_GEOMETRY_ESRISHAPE_1,ESRISHAPE_IN_MEASURES_AS_Z_ESRISHAPE_1,ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_1,ESRISHAPE_IN_REPORT_BAD_GEOMETRY_ESRISHAPE_1,ESRISHAPE_IN_NETWORK_AUTHENTICATION_ESRISHAPE_1,DestDataset_SGI_1 +GUI IGNORE SourceDataset_ESRISHAPE_1,ESRISHAPE_IN_READER_PARAMETERS_ESRISHAPE_1,ESRISHAPE_IN_ENCODING_ESRISHAPE_1,ESRISHAPE_IN_USE_SEARCH_ENVELOPE_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MINX_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_1,ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_1,ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_1,ESRISHAPE_IN_ADVANCED_ESRISHAPE_1,ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_1,ESRISHAPE_IN_GEOMETRY_ESRISHAPE_1,ESRISHAPE_IN_SIMPLE_DONUT_GEOMETRY_ESRISHAPE_1,ESRISHAPE_IN_MEASURES_AS_Z_ESRISHAPE_1,ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_1,ESRISHAPE_IN_REPORT_BAD_GEOMETRY_ESRISHAPE_1,ESRISHAPE_IN_NETWORK_AUTHENTICATION_ESRISHAPE_1,SourceDataset_ESRISHAPE_2,ESRISHAPE_IN_READER_PARAMETERS_ESRISHAPE_2,ESRISHAPE_IN_ENCODING_ESRISHAPE_2,ESRISHAPE_IN_USE_SEARCH_ENVELOPE_ESRISHAPE_2,ESRISHAPE_IN_SEARCH_ENVELOPE_MINX_ESRISHAPE_2,ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_2,ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_2,ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_2,ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_2,ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_2,ESRISHAPE_IN_ADVANCED_ESRISHAPE_2,ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_2,ESRISHAPE_IN_GEOMETRY_ESRISHAPE_2,ESRISHAPE_IN_SIMPLE_DONUT_GEOMETRY_ESRISHAPE_2,ESRISHAPE_IN_MEASURES_AS_Z_ESRISHAPE_2,ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_2,ESRISHAPE_IN_REPORT_BAD_GEOMETRY_ESRISHAPE_2,ESRISHAPE_IN_NETWORK_AUTHENTICATION_ESRISHAPE_2,DestDataset_SGI_1 DEFAULT_MACRO DestDataset_SGI . GUI DIRNAME DestDataset_SGI Destination SGI Image Folder: DEFAULT_MACRO SourceDataset_ESRISHAPE_3 ..\..\datasource\01_terrain\landcover.shp GUI MULTIFILE SourceDataset_ESRISHAPE_3 Shapefiles(*.shp)|*.shp|Compressed_Shapefiles(*.shz)|*.shz|Compressed_Files(*.bz2;*.gz)|*.bz2;*.gz|Archive_Files(*.7z;*.7zip;*.rar;*.rvz;*.tar;*.tar.bz2;*.tar.gz;*.tgz;*.zip;*.zipx)|*.7z;*.7zip;*.rar;*.rvz;*.tar;*.tar.bz2;*.tar.gz;*.tgz;*.zip;*.zipx|All_Files(*)|* Source Esri Shapefile(s): +DEFAULT_MACRO SourceDataset_ESRISHAPE ..\..\datasource\00_perimeter\perimeter.shp +GUI MULTIFILE SourceDataset_ESRISHAPE Shapefiles(*.shp)|*.shp|Compressed_Shapefiles(*.shz)|*.shz|Compressed_Files(*.bz2;*.gz)|*.bz2;*.gz|Archive_Files(*.7z;*.7zip;*.rar;*.rvz;*.tar;*.tar.bz2;*.tar.gz;*.tgz;*.zip;*.zipx)|*.7z;*.7zip;*.rar;*.rvz;*.tar;*.tar.bz2;*.tar.gz;*.tgz;*.zip;*.zipx|All_Files(*)|* Source Esri Shapefile(s): INCLUDE [ if {{$(DestDataset_SGI)} == {}} { puts_real {Parameter 'DestDataset_SGI' must be given a value.}; exit 1; }; ] INCLUDE [ if {{$(SourceDataset_ESRISHAPE_3)} == {}} { puts_real {Parameter 'SourceDataset_ESRISHAPE_3' must be given a value.}; exit 1; }; ] +INCLUDE [ if {{$(SourceDataset_ESRISHAPE)} == {}} { puts_real {Parameter 'SourceDataset_ESRISHAPE' must be given a value.}; exit 1; }; ] #! START_HEADER #! START_WB_HEADER READER_TYPE MULTI_READER MULTI_READER_TYPE{0} ESRISHAPE MULTI_READER_KEYWORD{0} ESRISHAPE_1 MULTI_READER_GEN_DIRECTIVES{0} ESRISHAPE_EXPOSE_FORMAT_ATTRS,,_MERGE_SCHEMAS,YES,SEARCH_ENVELOPE_MINY,0,USE_SEARCH_ENVELOPE,NO,REPORT_BAD_GEOMETRY,no,ADVANCED,,SEARCH_ENVELOPE_COORDINATE_SYSTEM,,NUMERIC_TYPE_ATTRIBUTE_HANDLING,STANDARD_TYPES,CHECK_NUMERIC_FIELDS,yes,SEARCH_ENVELOPE_MINX,0,TRIM_PRECEDING_SPACES,yes,EXPOSE_ATTRS_GROUP,,SEARCH_ENVELOPE_MAXY,0,UPPER_CASE_ATTR_NAMES,No,SIMPLE_DONUT_GEOMETRY,simple,DISSOLVE_HOLES,no,ENCODING,fme-source-encoding,GEOMETRY,,SEARCH_ENVELOPE_MAXX,0,CLIP_TO_ENVELOPE,NO,MEASURES_AS_Z,no +MULTI_READER_TYPE{1} ESRISHAPE +MULTI_READER_KEYWORD{1} ESRISHAPE_2 +MULTI_READER_GEN_DIRECTIVES{1} REPORT_BAD_GEOMETRY,no,SEARCH_ENVELOPE_MAXX,0,USE_SEARCH_ENVELOPE,NO,DISSOLVE_HOLES,no,CHECK_NUMERIC_FIELDS,yes,NUMERIC_TYPE_ATTRIBUTE_HANDLING,STANDARD_TYPES,ADVANCED,,MEASURES_AS_Z,no,SEARCH_ENVELOPE_MAXY,0,CLIP_TO_ENVELOPE,NO,_MERGE_SCHEMAS,YES,UPPER_CASE_ATTR_NAMES,No,TRIM_PRECEDING_SPACES,yes,SEARCH_ENVELOPE_MINX,0,SEARCH_ENVELOPE_MINY,0,EXPOSE_ATTRS_GROUP,,SIMPLE_DONUT_GEOMETRY,simple,GEOMETRY,,ESRISHAPE_EXPOSE_FORMAT_ATTRS,,SEARCH_ENVELOPE_COORDINATE_SYSTEM,,ENCODING,fme-source-encoding WRITER_TYPE MULTI_WRITER MULTI_WRITER_DATASET_ORDER BY_ID MULTI_WRITER_FIRST_WRITER_ID 0 @@ -2939,6 +3292,133 @@ ESRISHAPE_1_GENERATE_FME_BUILD_NUM 19253 ESRISHAPE_1_DATASET "$(SourceDataset_ESRISHAPE_1)" #! END_SOURCE_HEADER #! START_WB_HEADER +MACRO WB_KEYWORD "ESRISHAPE_2" +#! END_WB_HEADER +#! START_SOURCE_HEADER ESRISHAPE ESRISHAPE_2 +# ============================================================================ +# The following GUI line prompts for the source shapefiles +# The dataset this mapping file was generated from was: +#! END_SOURCE_HEADER +#! START_WB_HEADER +DEFAULT_MACRO SourceDataset +INCLUDE [ if {{$(SourceDataset)} != ""} { \ + puts {DEFAULT_MACRO SourceDataset_ESRISHAPE_2 $(SourceDataset)} \ + } ] +#! END_WB_HEADER +#! START_SOURCE_HEADER ESRISHAPE ESRISHAPE_2 +DEFAULT_MACRO SourceDataset_ESRISHAPE_2 $(SourceDataset_ESRISHAPE) +GUI MULTIFILE SourceDataset_ESRISHAPE_2 Shapefiles(*.shp)|*.shp|Compressed_Shapefiles(*.shz)|*.shz|All_Files(*)|* Source Esri Shapefile(s): +# ===================================================================== +# Provide some control over what attributes have the user-selected +# encoding applied. Normally all attributes are updated after being +# read, but the following lines exclude from this treatment all +# attributes whose names start with fme_ or shape_. +ESRISHAPE_2_UNENCODED_ATTR_PREFIX fme_ shape_ +#Added default value for dissolve holes so that default for DI is consistent with workbench +DEFAULT_MACRO ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_2 no +ESRISHAPE_2_DISSOLVE_HOLES "$(ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_2)" +DEFAULT_MACRO ESRISHAPE_IN_READER_PARAMETERS_ESRISHAPE_2 +GUI OPTIONAL DISCLOSUREGROUP ESRISHAPE_IN_READER_PARAMETERS_ESRISHAPE_2 ESRISHAPE_IN_UPPER_CASE_ATTR_NAMES%ESRISHAPE_IN_ENCODING_ESRISHAPE_2%ESRISHAPE_IN_NUMERIC_TYPE_ATTRIBUTE_HANDLING Reader Parameters +# ============================================================================ +# Determines whether the attribute names should be uppercased, or whether they +# should stay as specified in the shapefile. Once the mapping file/workspace +# has been generated, the value for this keyword should not be changed. +DEFAULT_MACRO ESRISHAPE_IN_UPPER_CASE_ATTR_NAMES_ESRISHAPE_2 No +ESRISHAPE_2_UPPER_CASE_ATTR_NAMES "$(ESRISHAPE_IN_UPPER_CASE_ATTR_NAMES_ESRISHAPE_2)" +# ============================================================================ +# The following keyword allows the user to choose what encoding to +# use for reading the shapefile, overrides dbf file LDID or .cpg +# file if present. +DEFAULT_MACRO ESRISHAPE_IN_ENCODING_ESRISHAPE_2 fme-source-encoding +ESRISHAPE_2_ENCODING "$(ESRISHAPE_IN_ENCODING_ESRISHAPE_2)" +GUI STRING_OR_ENCODING ESRISHAPE_IN_ENCODING_ESRISHAPE_2 fme-source-encoding%* Character Encoding +# ============================================================================ +# Determines whether numeric attributes should be interpreted as binary or as +# bound number fields (ActualDBFrepresentation) +DEFAULT_MACRO ESRISHAPE_IN_NUMERIC_TYPE_ATTRIBUTE_HANDLING_ESRISHAPE_2 STANDARD_TYPES +ESRISHAPE_2_NUMERIC_TYPE_ATTRIBUTE_HANDLING "$(ESRISHAPE_IN_NUMERIC_TYPE_ATTRIBUTE_HANDLING_ESRISHAPE_2)" +#Note: Using the search envelope requires the shape index files (.sbnand.sbx) +DEFAULT_MACRO ESRISHAPE_IN_EXPOSE_ATTRS_GROUP_ESRISHAPE_2 +ESRISHAPE_2_EXPOSE_ATTRS_GROUP "$(ESRISHAPE_IN_EXPOSE_ATTRS_GROUP_ESRISHAPE_2)" +# Include this file in source setting section to add native search envelope processing +# Zero as a default means we don't do any search -- this makes workbench happier +DEFAULT_MACRO ESRISHAPE_IN_USE_SEARCH_ENVELOPE_ESRISHAPE_2 NO +ESRISHAPE_2_USE_SEARCH_ENVELOPE "$(ESRISHAPE_IN_USE_SEARCH_ENVELOPE_ESRISHAPE_2)" +GUI ACTIVEDISCLOSUREGROUP ESRISHAPE_IN_USE_SEARCH_ENVELOPE_ESRISHAPE_2 ESRISHAPE_IN_SEARCH_ENVELOPE_MINX_ESRISHAPE_2%ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_2%ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_2%ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_2%ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_2%ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_2%ESRISHAPE_IN_SEARCH_METHOD%ESRISHAPE_IN_SEARCH_METHOD_FILTER%ESRISHAPE_IN_SEARCH_ORDER%ESRISHAPE_IN_SEARCH_FEATURE%ESRISHAPE_IN_DUMMY_SEARCH_ENVELOPE_PARAMETER Use Search Envelope +# =========================================================================== +GUI LOOKUP ESRISHAPE_IN_SEARCH_ENVELOPE_MINX_ESRISHAPE_2 ,0 +DEFAULT_MACRO ESRISHAPE_IN_SEARCH_ENVELOPE_MINX_ESRISHAPE_2 0 +ESRISHAPE_2_SEARCH_ENVELOPE "$(ESRISHAPE_IN_SEARCH_ENVELOPE_MINX_ESRISHAPE_2)" +GUI OPTIONAL FLOAT ESRISHAPE_IN_SEARCH_ENVELOPE_MINX_ESRISHAPE_2 Minimum X: +# =========================================================================== +GUI LOOKUP ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_2 ,0 +DEFAULT_MACRO ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_2 0 +ESRISHAPE_2_SEARCH_ENVELOPE "$(ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_2)" +GUI OPTIONAL FLOAT ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_2 Minimum Y: +# =========================================================================== +GUI LOOKUP ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_2 ,0 +DEFAULT_MACRO ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_2 0 +ESRISHAPE_2_SEARCH_ENVELOPE "$(ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_2)" +GUI OPTIONAL FLOAT ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_2 Maximum X: +# =========================================================================== +GUI LOOKUP ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_2 ,0 +DEFAULT_MACRO ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_2 0 +ESRISHAPE_2_SEARCH_ENVELOPE "$(ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_2)" +GUI OPTIONAL FLOAT ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_2 Maximum Y: +# =========================================================================== +GUI LOOKUP ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_2 , +DEFAULT_MACRO ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_2 +ESRISHAPE_2_SEARCH_ENVELOPE "$(ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_2)" +GUI OPTIONAL COORDSYS ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_2 Search Envelope Coordinate System: +# =========================================================================== +GUI LOOKUP ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_2 ,NO +DEFAULT_MACRO ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_2 NO +ESRISHAPE_2_CLIP_TO_ENVELOPE "$(ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_2)" +GUI OPTIONAL CHECKBOX ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_2 YES%NO Clip to Search Envelope +DEFAULT_MACRO ESRISHAPE_IN_CHECK_NUMERIC_FIELDS_ESRISHAPE_2 yes +ESRISHAPE_2_CHECK_NUMERIC_FIELDS "$(ESRISHAPE_IN_CHECK_NUMERIC_FIELDS_ESRISHAPE_2)" +DEFAULT_MACRO ESRISHAPE_IN_ADVANCED_ESRISHAPE_2 +GUI OPTIONAL DISCLOSUREGROUP ESRISHAPE_IN_ADVANCED_ESRISHAPE_2 ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_2%ESRISHAPE_IN_GEOMETRY_ESRISHAPE_2 Advanced +DEFAULT_MACRO ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_2 yes +ESRISHAPE_2_TRIM_PRECEDING_SPACES "$(ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_2)" +GUI CHOICE ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_2 yes%no Trim Preceding Spaces +DEFAULT_MACRO ESRISHAPE_IN_GEOMETRY_ESRISHAPE_2 +GUI OPTIONAL DISCLOSUREGROUP ESRISHAPE_IN_GEOMETRY_ESRISHAPE_2 ESRISHAPE_IN_SIMPLE_DONUT_GEOMETRY_ESRISHAPE_2%ESRISHAPE_IN_MEASURES_AS_Z_ESRISHAPE_2%ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_2%ESRISHAPE_IN_REPORT_BAD_GEOMETRY_ESRISHAPE_2 Geometry +# ============================================================================ +# Option to use simple donut geometry creation, which is faster than the +# original creation method, but less meticulous at detecting and correcting +# geometric anomalies (i.e.holeswithinholes) +DEFAULT_MACRO ESRISHAPE_IN_SIMPLE_DONUT_GEOMETRY_ESRISHAPE_2 simple +ESRISHAPE_2_SIMPLE_DONUT_GEOMETRY "$(ESRISHAPE_IN_SIMPLE_DONUT_GEOMETRY_ESRISHAPE_2)" +GUI LOOKUP_CHOICE ESRISHAPE_IN_SIMPLE_DONUT_GEOMETRY_ESRISHAPE_2 "\"Orientation Only\",simple"%"\"Orientation and Spatial Relationship\",complex" Donut Geometry Detection +# ============================================================================ +# The following GUI line sets whether measure values in the shapefiles should +# be treated as elevations. +DEFAULT_MACRO ESRISHAPE_IN_MEASURES_AS_Z_ESRISHAPE_2 no +ESRISHAPE_2_MEASURES_AS_Z "$(ESRISHAPE_IN_MEASURES_AS_Z_ESRISHAPE_2)" +GUI CHOICE ESRISHAPE_IN_MEASURES_AS_Z_ESRISHAPE_2 yes%no Treat Measures as Elevation +# ============================================================================ +# The following keyword sets whether the reader dissolves holes in donuts. +ESRISHAPE_2_DISSOLVE_HOLES "$(ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_2)" +GUI CHOICE ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_2 yes%no Dissolve Adjacent Holes +# ============================================================================ +# The following keyword sets whether bad geometry should be reported via +# the shape_geometry_error{} list attribute. +DEFAULT_MACRO ESRISHAPE_IN_REPORT_BAD_GEOMETRY_ESRISHAPE_2 no +ESRISHAPE_2_REPORT_BAD_GEOMETRY "$(ESRISHAPE_IN_REPORT_BAD_GEOMETRY_ESRISHAPE_2)" +GUI CHOICE ESRISHAPE_IN_REPORT_BAD_GEOMETRY_ESRISHAPE_2 yes%no Report Geometry Anomalies +# =========================================================================== +DEFAULT_MACRO ESRISHAPE_IN_NETWORK_AUTHENTICATION_ESRISHAPE_2 +ESRISHAPE_2_NETWORK_AUTHENTICATION "$(ESRISHAPE_IN_NETWORK_AUTHENTICATION_ESRISHAPE_2)" +GUI OPTIONAL AUTHENTICATOR ESRISHAPE_IN_NETWORK_AUTHENTICATION_ESRISHAPE_2 CONTAINER%GROUP%CONTAINER_TITLE%"Network Authentication"%PROMPT_TYPE%NETWORK Network Authentication +# ============================================================================ +DEFAULT_MACRO ESRISHAPE_IN_ATTRIBUTE_READING_ESRISHAPE_2 ALL +ESRISHAPE_2_ATTRIBUTE_READING "$(ESRISHAPE_IN_ATTRIBUTE_READING_ESRISHAPE_2)" +# ============================================================================ +ESRISHAPE_2_GENERATE_FME_BUILD_NUM 19617 +ESRISHAPE_2_DATASET "$(SourceDataset_ESRISHAPE_2)" +#! END_SOURCE_HEADER +#! START_WB_HEADER MACRO WB_KEYWORD "SGI_1" #! END_WB_HEADER #! START_DEST_HEADER SGI SGI_1 @@ -2973,7 +3453,6 @@ SGI_1_DATASET "$(DestDataset_SGI_1)" LOG_FILENAME "$(FME_MF_DIR)11_Splatmap.log" LOG_APPEND NO -LOG_TIMINGS YES LOG_FILTER_MASK -1 LOG_MAX_FEATURES 200 LOG_MAX_RECORDED_FEATURES 200 @@ -2982,6 +3461,7 @@ FME_IMPLICIT_CSMAP_REPROJECTION_MODE Auto FME_GEOMETRY_HANDLING Enhanced FME_STROKE_MAX_DEVIATION 0 DEFAULT_MACRO DATASET_KEYWORD_ESRISHAPE_1 ESRISHAPE_1 +DEFAULT_MACRO DATASET_KEYWORD_ESRISHAPE_2 ESRISHAPE_2 DEFAULT_MACRO DATASET_KEYWORD_SGI_1 SGI_1 # ------------------------------------------------------------------------- @@ -2989,6 +3469,10 @@ ESRISHAPE_1_READER_META_ATTRIBUTES fme_feature_type # ------------------------------------------------------------------------- +ESRISHAPE_2_READER_META_ATTRIBUTES fme_feature_type + +# ------------------------------------------------------------------------- + MULTI_READER_CONTINUE_ON_READER_FAILURE No # ------------------------------------------------------------------------- @@ -2996,49 +3480,69 @@ MULTI_READER_CONTINUE_ON_READER_FAILURE No MACRO WORKSPACE_NAME 11_Splatmap MACRO FME_VIEWER_APP fmedatainspector # ------------------------------------------------------------------------- - -INCLUDE [ if {[info exists env(FME_TEMP)] && [file isdirectory $env(FME_TEMP)]} {set gVisualizerTemp $env(FME_TEMP)} elseif {[info exists env(TEMP)] && [file isdirectory $env(TEMP)]} {set gVisualizerTemp $env(TEMP)} elseif { $tcl_platform(platform) == "unix" } {set gVisualizerTemp "/tmp"} else {set gVisualizerTemp c:}; regsub -all {[ ,&]} {$(WORKSPACE_NAME)} {_} wsname; set gVisualizerTemp $gVisualizerTemp/${wsname}_[clock format [clock seconds] -format %H%M%S]; puts "MACRO WORKSPACE_TEMP_DIR $gVisualizerTemp"; -MACRO VISUALIZER_FEATURE_FILE $(WORKSPACE_TEMP_DIR)/inspector.ffs -MACRO VISUALIZER_SCHEMA_FILE $(WORKSPACE_TEMP_DIR)/inspector.fsc -MACRO VISUALIZER_CREATE_SPATIAL_INDEX YES -# ------------------------------------------------------------------------- ESRISHAPE_1_DEF landcover SHAPE_GEOMETRY shape_polygon covertype char(200) id char(200) # ------------------------------------------------------------------------- +ESRISHAPE_2_DEF perimeter SHAPE_GEOMETRY shape_polygon secteur_ID long +# ------------------------------------------------------------------------- -FACTORY_DEF * RoutingFactory FACTORY_NAME "Router and Unexpected Input Remover" COMMAND_PARM_EVALUATION SINGLE_PASS MULTI_READER_KEYWORD $(DATASET_KEYWORD_ESRISHAPE_1) INPUT FEATURE_TYPE * ROUTE ESRISHAPE ESRISHAPE_1::landcover multi_reader_keyword,$(DATASET_KEYWORD_ESRISHAPE_1) TO FME_GENERIC ::landcover ALIAS_GEOMETRY MERGE_INPUT Yes OUTPUT ROUTED FEATURE_TYPE * +FACTORY_DEF * RoutingFactory FACTORY_NAME "Router and Unexpected Input Remover" COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE * ROUTE ESRISHAPE ESRISHAPE_1::landcover multi_reader_keyword,$(DATASET_KEYWORD_ESRISHAPE_1) TO FME_GENERIC ::landcover ALIAS_GEOMETRY ROUTE ESRISHAPE ESRISHAPE_2::perimeter multi_reader_keyword,$(DATASET_KEYWORD_ESRISHAPE_2) TO FME_GENERIC ::perimeter ALIAS_GEOMETRY MERGE_INPUT Yes OUTPUT ROUTED FEATURE_TYPE * ESRISHAPE_1_MERGE_DEF ESRISHAPE_1::landcover EXACT landcover +ESRISHAPE_2_MERGE_DEF ESRISHAPE_2::perimeter EXACT perimeter # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME "landcover (ESRISHAPE_1) Splitter" INPUT FEATURE_TYPE landcover OUTPUT FEATURE_TYPE landcover_ESRISHAPE_1 +# ------------------------------------------------------------------------- + +FACTORY_DEF * TeeFactory FACTORY_NAME "perimeter (ESRISHAPE_2) Splitter" INPUT FEATURE_TYPE perimeter OUTPUT FEATURE_TYPE perimeter_ESRISHAPE_2 DEFAULT_MACRO WB_CURRENT_CONTEXT # ------------------------------------------------------------------------- -FACTORY_DEF * TeeFactory FACTORY_NAME AttributeFilter INPUT FEATURE_TYPE landcover_ESRISHAPE_1 OUTPUT FEATURE_TYPE AttributeFilter_FILTER +INCLUDE [ if {($(FME_BUILD_NUM) < 5669) || [FME_ComponentIsLicensed -factory RasterClippingFactory]} { puts "MACRO RASTER_CLIPPER_IN *"; } else { puts "MACRO RASTER_CLIPPER_IN NOT_THIS_TIME"; } ] +# The dummy input feature type Clipper_2___ClipperMakeSureWeDontGetAllFeatures___ +# makes sure that if INPUT FEATURE_TYPE perimeter_ESRISHAPE_2 is emtpy, we don't get every feature +# sent into this factory. +FACTORY_DEF * TeeFactory FACTORY_NAME Clipper_2_ClipperCloner INPUT FEATURE_TYPE perimeter_ESRISHAPE_2 INPUT FEATURE_TYPE Clipper_2___ClipperMakeSureWeDontGetAllFeatures___ OUTPUT FEATURE_TYPE Clipper_2___ClippersForSolidOrVector___ OUTPUT FEATURE_TYPE Clipper_2___ClippersForRaster___ +FACTORY_DEF * TestFactory FACTORY_NAME Clipper_2_SolidClipperFilter INPUT FEATURE_TYPE Clipper_2___ClippersForSolidOrVector___ TEST &fme_type == "fme_solid" OUTPUT FAILED FEATURE_TYPE Clipper_2___ClippersForVector___ OUTPUT PASSED FEATURE_TYPE Clipper_2___ClippersForSolid___ +# The dummy input feature type Clipper_2___ClippeeMakeSureWeDontGetAllFeatures___ +# makes sure that if INPUT FEATURE_TYPE landcover_ESRISHAPE_1 is emtpy, we don't get every feature +# sent into this factory. +FACTORY_DEF * TestFactory FACTORY_NAME Clipper_2_ClippeeFilter INPUT FEATURE_TYPE landcover_ESRISHAPE_1 INPUT FEATURE_TYPE Clipper_2___ClippeeMakeSureWeDontGetAllFeatures___ TEST &fme_type == "fme_raster" OUTPUT FAILED FEATURE_TYPE Clipper_2___VectorOrSolidClippees___ OUTPUT PASSED FEATURE_TYPE Clipper_2___RasterClippees___ +FACTORY_DEF {$(RASTER_CLIPPER_IN)} RasterClippingFactory FACTORY_NAME Clipper_2_Raster INPUT CLIPPER FEATURE_TYPE Clipper_2___ClippersForRaster___ INPUT CLIPPEE FEATURE_TYPE Clipper_2___RasterClippees___ MULTICLIP YES MERGE_CLIPPER_ATTRIBUTES NO ATTR_ACCUM_MODE "" ATTR_CONFLICT_RES "" CLIPPER_PREFIX "" PRESERVE_CLIPPEE_EXTENTS NO FLUSH_WHEN_GROUPS_CHANGE No OUTPUT_NO_CLIPPERS_AS_OUTSIDE OUTSIDE_NO_CLIPPERS_ATTR _fme_no_clipper OUTPUT INSIDE FEATURE_TYPE Clipper_2_INSIDE "_clipped" no OUTPUT CLIPPED_INSIDE FEATURE_TYPE Clipper_2_INSIDE "_clipped" yes OUTPUT EXTRA_CLIPPER FEATURE_TYPE Clipper_2__delete__ @Tcl2("FME_LogMessage fme_warn 917351 Clipper_2") OUTPUT REJECTED FEATURE_TYPE Clipper_2_ +FACTORY_DEF {*} ClippingFactory FACTORY_NAME Clipper_2_Vector INPUT CLIPPER FEATURE_TYPE Clipper_2___ClippersForVector___ INPUT CLIPPEE FEATURE_TYPE Clipper_2___VectorOrSolidClippees___ INPUT CLIPPEE FEATURE_TYPE Clipper_2___RasterClippees___ MULTICLIP YES CONNECT_Z_MODE MISSING_VAL_MODE COMPUTE_NANS COMPUTE_MEASURES_MODE CONTINUOUS MEASURES_AND_Z_FROM CLIPPEE CLIPPEE_ON_BOUNDARY INSIDE MERGE_CLIPPER_ATTRIBUTES NO ATTR_ACCUM_MODE "" ATTR_CONFLICT_RES "" CLIPPER_PREFIX "" OUTPUT_NO_CLIPPERS_AS_OUTSIDE OUTSIDE_NO_CLIPPERS_ATTR _fme_no_clipper LINES_AS_SEGMENTS NO FLUSH_WHEN_GROUPS_CHANGE No MODE COMPLETE CLEANING_TOLERANCE AUTO OUTPUT INSIDE FEATURE_TYPE Clipper_2_INSIDE "_clipped" no OUTPUT CLIPPED_INSIDE FEATURE_TYPE Clipper_2_INSIDE "_clipped" yes OUTPUT OUTSIDE_NO_CLIPPER FEATURE_TYPE Clipper_2___ClippeeForSolid___ OUTPUT EXTRA_CLIPPER FEATURE_TYPE Clipper_2__delete__ @Tcl2("FME_LogMessage fme_warn 917351 Clipper_2") OUTPUT NONPOLY_CLIPPER FEATURE_TYPE Clipper_2__delete__ @Tcl2("FME_LogMessage fme_warn 917352 Clipper_2") OUTPUT REJECTED FEATURE_TYPE Clipper_2_ +FACTORY_DEF * SolidIntersectionFactory FACTORY_NAME Clipper_2_Solid INPUT CLIPPER FEATURE_TYPE Clipper_2___ClippersForSolid___ INPUT CLIPPEE FEATURE_TYPE Clipper_2___ClippeeForSolid___ MULTICLIP YES CLIPPEE_ON_BOUNDARY INSIDE MERGE_CLIPPER_ATTRIBUTES NO ATTR_ACCUM_MODE "" ATTR_CONFLICT_RES "" CLIPPER_PREFIX "" OUTPUT_NO_CLIPPERS_AS_OUTSIDE OUTSIDE_NO_CLIPPERS_ATTR _fme_no_clipper FLUSH_WHEN_GROUPS_CHANGE No OUTPUT INSIDE FEATURE_TYPE Clipper_2_INSIDE "_clipped" no OUTPUT CLIPPED_INSIDE FEATURE_TYPE Clipper_2_INSIDE "_clipped" yes OUTPUT EXTRA_CLIPPER FEATURE_TYPE Clipper_2__delete__ @Tcl2("FME_LogMessage fme_warn 917351 Clipper_2") OUTPUT REJECTED FEATURE_TYPE Clipper_2_ +FACTORY_DEF * TeeFactory FACTORY_NAME Clipper_2_Nuker INPUT FEATURE_TYPE Clipper_2__delete__ @Log("Offending feature was:") +DEFAULT_MACRO _WB_BYPASS_TERMINATION No +FACTORY_DEF * TeeFactory FACTORY_NAME Clipper_2_ INPUT FEATURE_TYPE Clipper_2_ OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, Clipper_2outputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) +# ------------------------------------------------------------------------- +FACTORY_DEF * TeeFactory FACTORY_NAME AttributeFilter INPUT FEATURE_TYPE Clipper_2_INSIDE OUTPUT FEATURE_TYPE AttributeFilter_FILTER FACTORY_DEF * AttributeFilterFactory FACTORY_NAME AttributeFilter_Filter COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE AttributeFilter_FILTER FILTER_ATTRIBUTE covertype FILTER_VALUES EMPTY MISSING NULL UNFILTERED hard forest green water OUTPUT EMPTY FEATURE_TYPE AttributeFilter_EMPTY OUTPUT MISSING FEATURE_TYPE AttributeFilter_MISSING OUTPUT NULL FEATURE_TYPE AttributeFilter_NULL OUTPUT UNFILTERED FEATURE_TYPE AttributeFilter_UNFILTERED OUTPUT hard FEATURE_TYPE AttributeFilter_hard OUTPUT forest FEATURE_TYPE AttributeFilter_forest OUTPUT green FEATURE_TYPE AttributeFilter_green OUTPUT water FEATURE_TYPE AttributeFilter_water FACTORY_DEF * TeeFactory FACTORY_NAME "AttributeFilter EMPTY Transformer Output Nuker" INPUT FEATURE_TYPE AttributeFilter_EMPTY FACTORY_DEF * TeeFactory FACTORY_NAME "AttributeFilter MISSING Transformer Output Nuker" INPUT FEATURE_TYPE AttributeFilter_MISSING FACTORY_DEF * TeeFactory FACTORY_NAME "AttributeFilter NULL Transformer Output Nuker" INPUT FEATURE_TYPE AttributeFilter_NULL # ------------------------------------------------------------------------- -FACTORY_DEF {*} AggregateFactory FACTORY_NAME Aggregator INPUT FEATURE_TYPE AttributeFilter_green INPUT FEATURE_TYPE AttributeFilter_water MODE ONE_LEVEL FLUSH_WHEN_GROUPS_CHANGE No REMOVE_GEOMETRY NO ACCUMULATE_ATTRIBUTES One LIST_ATTRS_TO_INCLUDE { } LIST_ATTRS_TO_INCLUDE_MODE SELECTED SEPARATOR , PRODUCE_MULTIS YES PRESERVE_ID No ATTR_TO_TRAIT Yes OUTPUT AGGREGATE FEATURE_TYPE Aggregator_AGGREGATE -FACTORY_DEF * TeeFactory FACTORY_NAME "Aggregator AGGREGATE Splitter" INPUT FEATURE_TYPE Aggregator_AGGREGATE OUTPUT FEATURE_TYPE Aggregator_AGGREGATE_0_Gs1ZrERRaes= OUTPUT FEATURE_TYPE Aggregator_AGGREGATE_1_Lur5dBPiR/o= +FACTORY_DEF {*} NeighborColorSetterFactory FACTORY_NAME FeatureColorSetter_3 INPUT FEATURE_TYPE AttributeFilter_forest FLUSH_WHEN_GROUPS_CHANGE No ALGORITHM MANUAL RANDOM_MODE RANDOM_COLOR_CAP "" FILL_COLOR "0,0,1" REJECT_INVALID_PARAMS Yes OUTPUT COLORED FEATURE_TYPE FeatureColorSetter_3_COLORED OUTPUT REJECTED FEATURE_TYPE FeatureColorSetter_3_ +DEFAULT_MACRO _WB_BYPASS_TERMINATION No +FACTORY_DEF * TeeFactory FACTORY_NAME FeatureColorSetter_3_ INPUT FEATURE_TYPE FeatureColorSetter_3_ OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, FeatureColorSetter_3outputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) # ------------------------------------------------------------------------- -FACTORY_DEF {*} BoundingBoxFactory FACTORY_NAME BoundingBoxAccumulator INPUT FEATURE_TYPE Aggregator_AGGREGATE_0_Gs1ZrERRaes= REJECT_INVALID_GEOM YES BOUNDING_BOX_TYPE GEOMETRIC ACCUMULATE_ATTRIBUTES One LIST_ATTRS_TO_INCLUDE { } LIST_ATTRS_TO_INCLUDE_MODE SELECTED OUTPUT BOUNDING_BOX FEATURE_TYPE BoundingBoxAccumulator_BOUNDING_BOX OUTPUT REJECTED FEATURE_TYPE BoundingBoxAccumulator_ -FACTORY_DEF * TeeFactory FACTORY_NAME "BoundingBoxAccumulator BOUNDING_BOX Splitter" INPUT FEATURE_TYPE BoundingBoxAccumulator_BOUNDING_BOX OUTPUT FEATURE_TYPE BoundingBoxAccumulator_BOUNDING_BOX_0_Uimj7hHyq4I= OUTPUT FEATURE_TYPE BoundingBoxAccumulator_BOUNDING_BOX_1_Y/YTpXmM27g= OUTPUT FEATURE_TYPE BoundingBoxAccumulator_BOUNDING_BOX_2_fMdYdlx2iJU= +FACTORY_DEF {*} NeighborColorSetterFactory FACTORY_NAME FeatureColorSetter_2 INPUT FEATURE_TYPE AttributeFilter_hard FLUSH_WHEN_GROUPS_CHANGE No ALGORITHM MANUAL RANDOM_MODE RANDOM_COLOR_CAP "" FILL_COLOR "0,1,0" REJECT_INVALID_PARAMS Yes OUTPUT COLORED FEATURE_TYPE FeatureColorSetter_2_COLORED OUTPUT REJECTED FEATURE_TYPE FeatureColorSetter_2_ DEFAULT_MACRO _WB_BYPASS_TERMINATION No -FACTORY_DEF * TeeFactory FACTORY_NAME BoundingBoxAccumulator_ INPUT FEATURE_TYPE BoundingBoxAccumulator_ OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, BoundingBoxAccumulatoroutputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) +FACTORY_DEF * TeeFactory FACTORY_NAME FeatureColorSetter_2_ INPUT FEATURE_TYPE FeatureColorSetter_2_ OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, FeatureColorSetter_2outputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) +# ------------------------------------------------------------------------- +FACTORY_DEF {*} AggregateFactory FACTORY_NAME Aggregator INPUT FEATURE_TYPE AttributeFilter_green INPUT FEATURE_TYPE AttributeFilter_water INPUT FEATURE_TYPE AttributeFilter_UNFILTERED MODE ONE_LEVEL FLUSH_WHEN_GROUPS_CHANGE No REMOVE_GEOMETRY NO ACCUMULATE_ATTRIBUTES One LIST_ATTRS_TO_INCLUDE { } LIST_ATTRS_TO_INCLUDE_MODE SELECTED SEPARATOR , PRODUCE_MULTIS YES PRESERVE_ID No ATTR_TO_TRAIT Yes OUTPUT AGGREGATE FEATURE_TYPE Aggregator_AGGREGATE +FACTORY_DEF * TeeFactory FACTORY_NAME "Aggregator AGGREGATE Splitter" INPUT FEATURE_TYPE Aggregator_AGGREGATE OUTPUT FEATURE_TYPE Aggregator_AGGREGATE_0_Gs1ZrERRaes= OUTPUT FEATURE_TYPE Aggregator_AGGREGATE_1_Lur5dBPiR/o= OUTPUT FEATURE_TYPE Aggregator_AGGREGATE_2_GSpOjMHrfZE= OUTPUT FEATURE_TYPE Aggregator_AGGREGATE_3_zANf9OPdVhE= # ------------------------------------------------------------------------- -FACTORY_DEF * TeeFactory FACTORY_NAME "RandomPointGenerator_2 Area Input Collector" INPUT FEATURE_TYPE BoundingBoxAccumulator_BOUNDING_BOX_1_Y/YTpXmM27g= OUTPUT FEATURE_TYPE RandomPointGenerator_2_Area +FACTORY_DEF * TeeFactory FACTORY_NAME "RandomPointGenerator_2 Area Input Collector" INPUT FEATURE_TYPE Aggregator_AGGREGATE_2_GSpOjMHrfZE= OUTPUT FEATURE_TYPE RandomPointGenerator_2_Area MACRO RandomPointGenerator_WORKSPACE_NAME RandomPointGenerator_2 MACRO $(RandomPointGenerator_WORKSPACE_NAME)_XFORMER_NAME RandomPointGenerator_2 MACRO $(RandomPointGenerator_WORKSPACE_NAME)_TRANSFORMER_GROUP MACRO $(RandomPointGenerator_WORKSPACE_NAME)___COMPOUND_PARAMETERS MACRO $(RandomPointGenerator_WORKSPACE_NAME)_SUB_DOC_NAME RandomPointGenerator MACRO $(RandomPointGenerator_WORKSPACE_NAME)_GROUP_BY -MACRO $(RandomPointGenerator_WORKSPACE_NAME)_NUM_POINTS 20000 +MACRO $(RandomPointGenerator_WORKSPACE_NAME)_NUM_POINTS 10000 MACRO $(RandomPointGenerator_WORKSPACE_NAME)_MIN_NUM 10 MACRO $(RandomPointGenerator_WORKSPACE_NAME)_DENSIFY_FACTOR 2 DEFAULT_MACRO RandomPointGenerator_WORKSPACE_NAME "" INCLUDE [puts {MACRO WB_OLD_CONTEXT_$(RandomPointGenerator_WORKSPACE_NAME) $(WB_CURRENT_CONTEXT)}; puts {MACRO WB_CURRENT_CONTEXT $(RandomPointGenerator_WORKSPACE_NAME)}] -FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Area1559895510 Input Splitter" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Area" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Area" +FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Area1565637266 Input Splitter" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Area" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Area" # ------------------------------------------------------------------------- MACRO OUTPUT_AREA_FTYPE not_selected MACRO OUTPUT_AREA_FTYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_AREA @@ -3053,8 +3557,8 @@ FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_ FACTORY_DEF $(INSTANCE_FILTERING) TestFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_InstanceTest INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Input___ TEST @Geometry(IS_GEOMETRY_INSTANCE) == 1 OUTPUT PASSED FEATURE_TYPE $(OUTPUT_INSTANCE_FTYPE) OUTPUT FAILED FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Input___ FACTORY_DEF $(COLLECTION_HANDLING) TestFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_CollectionTest INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Input___ TEST &fme_type == "fme_collection" OUTPUT FAILED FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Not_Collection___ OUTPUT PASSED FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Collection___ FACTORY_DEF $(COLLECTION_HANDLING) DeaggregateFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_Deagg INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Collection___ HOMOGENIZE_COLLECTIONS YES RECURSIVE YES SET_FME_TYPE YES INSTANTIATE_GEOMETRY_INSTANCES_NEW OUTPUT POINT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ OUTPUT LINE FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ OUTPUT POLYGON FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ OUTPUT DONUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ OUTPUT AGGREGATE FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ -FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_RouterPrepper INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Not_Collection___ INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Input___ OUTPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Prepped___ $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_9618bd36_f236_415a_90d0_daf99ca492494_targetFeatureType @Lookup($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_RouterTable,&fme_type) -FACTORY_DEF * TestFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_Router INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Prepped___ TEST @Value($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_9618bd36_f236_415a_90d0_daf99ca492494_targetFeatureType) != "not_selected" OUTPUT PASSED FEATURE_TYPE * @FeatureType(@Value($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_9618bd36_f236_415a_90d0_daf99ca492494_targetFeatureType)) @RemoveAttributes($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_9618bd36_f236_415a_90d0_daf99ca492494_targetFeatureType) OUTPUT FAILED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_" @RemoveAttributes($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_9618bd36_f236_415a_90d0_daf99ca492494_targetFeatureType) +FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_RouterPrepper INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Not_Collection___ INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Input___ OUTPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Prepped___ $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_75d044ca_60a3_4e09_b2bc_cafd4c48b58610_targetFeatureType @Lookup($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_RouterTable,&fme_type) +FACTORY_DEF * TestFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_Router INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Prepped___ TEST @Value($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_75d044ca_60a3_4e09_b2bc_cafd4c48b58610_targetFeatureType) != "not_selected" OUTPUT PASSED FEATURE_TYPE * @FeatureType(@Value($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_75d044ca_60a3_4e09_b2bc_cafd4c48b58610_targetFeatureType)) @RemoveAttributes($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_75d044ca_60a3_4e09_b2bc_cafd4c48b58610_targetFeatureType) OUTPUT FAILED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_" @RemoveAttributes($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_75d044ca_60a3_4e09_b2bc_cafd4c48b58610_targetFeatureType) FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter Transformer Output Nuker" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_" # ------------------------------------------------------------------------- Tcl2 proc $(RandomPointGenerator_WORKSPACE_NAME)_ParameterFetcher_doFetch {} { foreach {name val} {"randompointgenerator.group_by {$($(RandomPointGenerator_WORKSPACE_NAME)_GROUP_BY$encode)}"} { if { [string match {**} $val] == 1 } { set val [FME_Execute EvaluateExpression {STRING} $val {$(RandomPointGenerator_WORKSPACE_NAME)_ParameterFetcher}]; } elseif {[string match {*FME_CONDITIONAL*} $val] == 1} { set val [FME_Execute EvaluateExpression {STRING} $val {$(RandomPointGenerator_WORKSPACE_NAME)_ParameterFetcher}]; } else { set val [FME_DecodeTextOrAttr $val]; }; FME_SetAttribute [FME_DecodeText $name] $val } } @@ -3067,14 +3571,14 @@ MACRO OUTPUTATTR "randompointgenerator.group_id" INCLUDE [ if {[string length {randompointgenerator.group_id}] == 0} { puts {MACRO OUTPUTATTR } } FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_TclCaller INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_ParameterFetcher_OUTPUT" NUMBER_OF_COPIES $(COPIER) OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_TclCaller_OUTPUT" $(OUTPUTATTR) @Tcl2("concatGroupByAttributeValues") # ------------------------------------------------------------------------- -FACTORY_DEF * SortFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Sorter INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_TclCaller_OUTPUT" SORT_BY randompointgenerator.group_id ALPHA ASCENDING OUTPUT SORTED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED" +FACTORY_DEF * SortFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Sorter INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_TclCaller_OUTPUT" FLUSH_WHEN_GROUPS_CHANGE No SORT_BY randompointgenerator.group_id ALPHA ASCENDING OUTPUT SORTED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED" FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter SORTED Splitter" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED_0_xVKS7A8AJxE=" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED_1_+dZRsoI37hM=" # ------------------------------------------------------------------------- INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeRemover_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeRemover INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED_1_+dZRsoI37hM=" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeRemover_OUTPUT" @RemoveAttributes(randompointgenerator.group_by) @RemoveAttributes(fme_regexp_match"$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeRemover_LIST_EXP)") } # ------------------------------------------------------------------------- -INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_f3d60d29_b282_4a9a_9f4c_51cf539711794_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] -FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED_0_xVKS7A8AJxE=" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_OUTPUT" @KeepAttributes(randompointgenerator.group_id,fme_regexp_match,"^fme_$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_f3d60d29_b282_4a9a_9f4c_51cf539711794_LIST_EXP)") } +INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_a4f4fe0f_aad4_470c_8003_f0b4bbb03e0b10_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] +FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED_0_xVKS7A8AJxE=" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_OUTPUT" @KeepAttributes(randompointgenerator.group_id,fme_regexp_match,"^fme_$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_a4f4fe0f_aad4_470c_8003_f0b4bbb03e0b10_LIST_EXP)") } # ------------------------------------------------------------------------- FACTORY_DEF * DeaggregateFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Deaggregator INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_OUTPUT" ATTR_ACCUM_MODE "HANDLE_CONFLICT" ATTR_CONFLICT_RES "INCOMING_IF_CONFLICT" INCOMING_PREFIX "" RECURSIVE Yes SPLIT_COMPOSITES No INSTANTIATE_GEOMETRY_INSTANCES_NEW No SET_FME_TYPE Yes OUTPUT POINT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Deaggregator_DEAGGREGATED" OUTPUT LINE FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Deaggregator_DEAGGREGATED" OUTPUT POLYGON FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Deaggregator_DEAGGREGATED" OUTPUT DONUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Deaggregator_DEAGGREGATED" OUTPUT AGGREGATE FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Deaggregator_DEAGGREGATED" # ------------------------------------------------------------------------- @@ -3087,8 +3591,8 @@ DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_" OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, RandomPointGenerator_AreaCalculatoroutputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) # ------------------------------------------------------------------------- # check if we have to do the min bounding box calculation -INCLUDE [ if { {BB} == {MINBB} } { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BBFunc @Bounds(MIN_BOUNDING,,)}; } else { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BBFunc @Bounds(___MINX,___MAXX,___MINY,___MAXY,___MINZ,___MAXZ,GEOMETRIC) @Tcl2($(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_30134bf9_318b_4e9c_9249_5624e3c32be54_set_geom_and_type)}; } ] -Tcl2 proc $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_30134bf9_318b_4e9c_9249_5624e3c32be54_set_geom_and_type {} { if {[FME_Coordinates numCoords] > 0} { FME_Execute RemoveGeometry; set minX [FME_GetAttribute ___MINX]; set minY [FME_GetAttribute ___MINY]; set maxX [FME_GetAttribute ___MAXX]; set maxY [FME_GetAttribute ___MAXY]; if { [string is double $minX] && [string is double $maxX] } { set xSame [expr $minX == $maxX] } else { set xSame [string equal $minX $maxX] }; if { [string is double $minY] && [string is double $maxY] } { set ySame [expr $minY == $maxY] } else { set ySame [string equal $minY $maxY] }; FME_Coordinates addCoord $minX $minY; if {$xSame && $ySame} { FME_Execute GeometryType fme_point; FME_SetAttribute fme_type fme_point } elseif {$xSame || $ySame} { FME_Coordinates addCoord $maxX $maxY; FME_Execute GeometryType fme_line; FME_SetAttribute fme_type fme_line } else { FME_Coordinates addCoord $minX $maxY; FME_Coordinates addCoord $maxX $maxY; FME_Coordinates addCoord $maxX $minY; FME_Coordinates addCoord $minX $minY; FME_Execute GeometryType fme_polygon; FME_SetAttribute fme_type fme_area }; FME_UnsetAttributes ___MINX ___MAXX ___MINY ___MAXY ___MINZ ___MAXZ; set width [expr $maxX - $minX]; set length [expr $maxY - $minY]; if {$width > $length} { set temp $length; set length $width; set width $temp; }; if { {} != {} } { FME_SetAttribute {""} $width; }; if { {} != {} } { FME_SetAttribute {""} $length; } } } +INCLUDE [ if { {BB} == {MINBB} } { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BBFunc @Bounds(MIN_BOUNDING,,)}; } else { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BBFunc @Bounds(___MINX,___MAXX,___MINY,___MAXY,___MINZ,___MAXZ,GEOMETRIC) @Tcl2($(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_ea63bbe9_b8db_48e4_acc6_72e51ba730b310_set_geom_and_type)}; } ] +Tcl2 proc $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_ea63bbe9_b8db_48e4_acc6_72e51ba730b310_set_geom_and_type {} { if {[FME_Coordinates numCoords] > 0} { FME_Execute RemoveGeometry; set minX [FME_GetAttribute ___MINX]; set minY [FME_GetAttribute ___MINY]; set maxX [FME_GetAttribute ___MAXX]; set maxY [FME_GetAttribute ___MAXY]; if { [string is double $minX] && [string is double $maxX] } { set xSame [expr $minX == $maxX] } else { set xSame [string equal $minX $maxX] }; if { [string is double $minY] && [string is double $maxY] } { set ySame [expr $minY == $maxY] } else { set ySame [string equal $minY $maxY] }; FME_Coordinates addCoord $minX $minY; if {$xSame && $ySame} { FME_Execute GeometryType fme_point; FME_SetAttribute fme_type fme_point } elseif {$xSame || $ySame} { FME_Coordinates addCoord $maxX $maxY; FME_Execute GeometryType fme_line; FME_SetAttribute fme_type fme_line } else { FME_Coordinates addCoord $minX $maxY; FME_Coordinates addCoord $maxX $maxY; FME_Coordinates addCoord $maxX $minY; FME_Coordinates addCoord $minX $minY; FME_Execute GeometryType fme_polygon; FME_SetAttribute fme_type fme_area }; FME_UnsetAttributes ___MINX ___MAXX ___MINY ___MAXY ___MINZ ___MAXZ; set width [expr $maxX - $minX]; set length [expr $maxY - $minY]; if {$width > $length} { set temp $length; set length $width; set width $temp; }; if { {} != {} } { FME_SetAttribute {""} $width; }; if { {} != {} } { FME_SetAttribute {""} $length; } } } FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_OUTPUT" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BOX" @Force2D() $($(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BBFunc) # ------------------------------------------------------------------------- FACTORY_DEF {*} TransformFact:11:Dissolver FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver" FACTORY_META_PARAMS TRANSFORMER_NAME:"$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver" TRANSFORMER_PARAMS:XFORMER_NAME,$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver,TRANSFORMER_GROUP,,GROUP_BY,randompointgenerator.group_id,PARAMETERS_GROUP,,DIS_ATTR,,ATTR_ACCUM_GROUP,,ACCUM_INPUT_ATTRS,No,SUM,_area1,AV,,WEIGHT,,LIST_NAME,,PARAMETERS_GROUP_ADVANCED,,NO_OVRLP,No PROCESS_GROUP_BY { randompointgenerator.group_id } GROUPS_ARE_ORDERED { Yes } MULTI_PROCESS { NO_PARALLELISM } INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BOX" OUTPUT AREA FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver_AREA" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver_" @@ -3096,8 +3600,8 @@ DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver_" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver_" OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, RandomPointGenerator_DissolveroutputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) # ------------------------------------------------------------------------- # check if we have to do the min bounding box calculation -INCLUDE [ if { {BB} == {MINBB} } { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_BBFunc @Bounds(MIN_BOUNDING,,)}; } else { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_BBFunc @Bounds(___MINX,___MAXX,___MINY,___MAXY,___MINZ,___MAXZ,GEOMETRIC) @Tcl2($(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_9451d6b7_5e3c_4f65_b487_123ed3e07ed24_set_geom_and_type)}; } ] -Tcl2 proc $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_9451d6b7_5e3c_4f65_b487_123ed3e07ed24_set_geom_and_type {} { if {[FME_Coordinates numCoords] > 0} { FME_Execute RemoveGeometry; set minX [FME_GetAttribute ___MINX]; set minY [FME_GetAttribute ___MINY]; set maxX [FME_GetAttribute ___MAXX]; set maxY [FME_GetAttribute ___MAXY]; if { [string is double $minX] && [string is double $maxX] } { set xSame [expr $minX == $maxX] } else { set xSame [string equal $minX $maxX] }; if { [string is double $minY] && [string is double $maxY] } { set ySame [expr $minY == $maxY] } else { set ySame [string equal $minY $maxY] }; FME_Coordinates addCoord $minX $minY; if {$xSame && $ySame} { FME_Execute GeometryType fme_point; FME_SetAttribute fme_type fme_point } elseif {$xSame || $ySame} { FME_Coordinates addCoord $maxX $maxY; FME_Execute GeometryType fme_line; FME_SetAttribute fme_type fme_line } else { FME_Coordinates addCoord $minX $maxY; FME_Coordinates addCoord $maxX $maxY; FME_Coordinates addCoord $maxX $minY; FME_Coordinates addCoord $minX $minY; FME_Execute GeometryType fme_polygon; FME_SetAttribute fme_type fme_area }; FME_UnsetAttributes ___MINX ___MAXX ___MINY ___MAXY ___MINZ ___MAXZ; set width [expr $maxX - $minX]; set length [expr $maxY - $minY]; if {$width > $length} { set temp $length; set length $width; set width $temp; }; if { {} != {} } { FME_SetAttribute {""} $width; }; if { {} != {} } { FME_SetAttribute {""} $length; } } } +INCLUDE [ if { {BB} == {MINBB} } { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_BBFunc @Bounds(MIN_BOUNDING,,)}; } else { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_BBFunc @Bounds(___MINX,___MAXX,___MINY,___MAXY,___MINZ,___MAXZ,GEOMETRIC) @Tcl2($(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_defc686c_8ab9_4ccc_a401_1cd074477efb10_set_geom_and_type)}; } ] +Tcl2 proc $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_defc686c_8ab9_4ccc_a401_1cd074477efb10_set_geom_and_type {} { if {[FME_Coordinates numCoords] > 0} { FME_Execute RemoveGeometry; set minX [FME_GetAttribute ___MINX]; set minY [FME_GetAttribute ___MINY]; set maxX [FME_GetAttribute ___MAXX]; set maxY [FME_GetAttribute ___MAXY]; if { [string is double $minX] && [string is double $maxX] } { set xSame [expr $minX == $maxX] } else { set xSame [string equal $minX $maxX] }; if { [string is double $minY] && [string is double $maxY] } { set ySame [expr $minY == $maxY] } else { set ySame [string equal $minY $maxY] }; FME_Coordinates addCoord $minX $minY; if {$xSame && $ySame} { FME_Execute GeometryType fme_point; FME_SetAttribute fme_type fme_point } elseif {$xSame || $ySame} { FME_Coordinates addCoord $maxX $maxY; FME_Execute GeometryType fme_line; FME_SetAttribute fme_type fme_line } else { FME_Coordinates addCoord $minX $maxY; FME_Coordinates addCoord $maxX $maxY; FME_Coordinates addCoord $maxX $minY; FME_Coordinates addCoord $minX $minY; FME_Execute GeometryType fme_polygon; FME_SetAttribute fme_type fme_area }; FME_UnsetAttributes ___MINX ___MAXX ___MINY ___MAXY ___MINZ ___MAXZ; set width [expr $maxX - $minX]; set length [expr $maxY - $minY]; if {$width > $length} { set temp $length; set length $width; set width $temp; }; if { {} != {} } { FME_SetAttribute {""} $width; }; if { {} != {} } { FME_SetAttribute {""} $length; } } } FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver_AREA" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_BOX" @Force2D() $($(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_BBFunc) # ------------------------------------------------------------------------- INCLUDE [ if { ({Plane Area} == {Sloped Area}) } { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_2_func @Area(REJECTABLE,SLOPED_AREAS,"1")}; } else { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_2_func @Area(REJECTABLE,"1")}; } ] @@ -3106,11 +3610,11 @@ FACTORY_DEF * TestFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME) DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_2_" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_2_" OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, RandomPointGenerator_AreaCalculator_2outputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) # ------------------------------------------------------------------------- -DEFAULT_MACRO __$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_715c0fc4_67bb_4230_a1ea_bfeef6de99e84_GROUP_BY -MACRO __$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_715c0fc4_67bb_4230_a1ea_bfeef6de99e84_GROUP_BY randompointgenerator.group_id +DEFAULT_MACRO __$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_156edb96_7df2_4e5a_b351_d99d68ad0c8310_GROUP_BY +MACRO __$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_156edb96_7df2_4e5a_b351_d99d68ad0c8310_GROUP_BY randompointgenerator.group_id DYNAMIC_FUNCTION_CONFIGURATION Python FMEOBJECTS DYNAMIC_FUNCTION_CONFIGURATION Python import StatisticsCalculator -DYNAMIC_FUNCTION_CONFIGURATION Python "StatisticsCalculator.connectTransformer( '$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator',{ 'GROUP_BY_MACRO':'__$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_715c0fc4_67bb_4230_a1ea_bfeef6de99e84_GROUP_BY', 'GROUP_BY':'randompointgenerator.group_id', 'STATS_ATTRS':'_area1 _area2', 'SUM_ATTR':'_sum', 'COMPUTE_HISTOGRAM':'NO', 'HISTO_ATTR':'', 'PREPEND_ATTR_NAME':'Yes', None:None})" +DYNAMIC_FUNCTION_CONFIGURATION Python "StatisticsCalculator.connectTransformer( '$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator',{ 'GROUP_BY_MACRO':'__$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_156edb96_7df2_4e5a_b351_d99d68ad0c8310_GROUP_BY', 'GROUP_BY':'randompointgenerator.group_id', 'STATS_ATTRS':'_area1 _area2', 'SUM_ATTR':'_sum', 'COMPUTE_HISTOGRAM':'NO', 'HISTO_ATTR':'', 'PREPEND_ATTR_NAME':'Yes', None:None})" FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_InputProcessor INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_2_OUTPUT" OUTPUT FEATURE_TYPE __ORIGINAL__ @Python(StatisticsCalculator.recordFeature,$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator) FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_UnneededInputNuker INPUT FEATURE_TYPE __ORIGINAL__ OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_COMPLETE" FACTORY_DEF * SortFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_CompleteOutputter INPUT FEATURE_TYPE __UNUSED_INPUT_TO_GUARANTEE_FACTORY_DOESNT_CONSUME_EVERYTHING__ INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_COMPLETE" OUTPUT SORTED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_COMPLETE" @Python(StatisticsCalculator.summarizeStatistics,$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator,__ORIGINAL__) @@ -3127,8 +3631,8 @@ FACTORY_DEF * VertexCreatorFactory FACTORY_NAME $(RandomPointGenerator_WORKSP DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_VertexCreator_" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_VertexCreator_" OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, RandomPointGenerator_VertexCreatoroutputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) # ------------------------------------------------------------------------- -INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_6e498305_d837_4b5b_95c7_b1c3ad2d34974_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] -FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_VertexCreator_OUTPUT" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_OUTPUT" @KeepAttributes(randompointgenerator.group_id,_width,_height,_num,fme_regexp_match,"^fme_$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_6e498305_d837_4b5b_95c7_b1c3ad2d34974_LIST_EXP)") } +INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_c42b71ac_110b_4c0f_9916_ff180f1daa6b10_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] +FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_VertexCreator_OUTPUT" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_OUTPUT" @KeepAttributes(randompointgenerator.group_id,_width,_height,_num,fme_regexp_match,"^fme_$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_c42b71ac_110b_4c0f_9916_ff180f1daa6b10_LIST_EXP)") } # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Cloner_Cloner INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_OUTPUT" NUMBER_OF_COPIES "@EvaluateExpression(FLOAT,Value_num,$(RandomPointGenerator_WORKSPACE_NAME)_Cloner)" REJECT_INVALID YES OUTPUT COPY "$(RandomPointGenerator_WORKSPACE_NAME)_Cloner_COPY" OUTPUT "$(RandomPointGenerator_WORKSPACE_NAME)_Cloner_" fme_rejection_code "INVALID_PARAMETER_NUMBER_OF_COPIES" DEFAULT_MACRO _WB_BYPASS_TERMINATION No @@ -3137,14 +3641,14 @@ FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Cl FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Offsetter INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Cloner_COPY" OUTPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_Offset @Offset("@EvaluateExpression(FLOAT,rand*Value_width,$(RandomPointGenerator_WORKSPACE_NAME)_Offsetter)","@EvaluateExpression(FLOAT,rand*Value_height,$(RandomPointGenerator_WORKSPACE_NAME)_Offsetter)","0") FACTORY_DEF * TestFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_PointCloudOffsetter INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_Offset TEST &fme_type == "fme_point_cloud" TEST "" != "" BOOLEAN_OPERATOR AND OUTPUT PASSED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_OFFSET" @TransformPointCloud(OFFSET,) OUTPUT FAILED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_OFFSET" # ------------------------------------------------------------------------- -INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_d691a13b_b619_443f_ab35_14ee68055c3b4_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] -FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_OFFSET" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_OUTPUT" @KeepAttributes(randompointgenerator.group_id,fme_regexp_match,"^fme_$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_d691a13b_b619_443f_ab35_14ee68055c3b4_LIST_EXP)") } +INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_c381e39f_3840_4558_af0f_91ac25c2937710_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] +FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_OFFSET" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_OUTPUT" @KeepAttributes(randompointgenerator.group_id,fme_regexp_match,"^fme_$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_c381e39f_3840_4558_af0f_91ac25c2937710_LIST_EXP)") } # ------------------------------------------------------------------------- FACTORY_DEF {*} SpatialFilterFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_SpatialFilter INPUT BASE FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeRemover_OUTPUT" INPUT CANDIDATE FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_OUTPUT" PREDICATE "INTERSECTS" USE_BOUNDING_BOX NO MULTIPLE_BASES YES MERGE_BASE_ATTR YES BOOLEAN_OPERATOR OR DIMENSION 2 GROUP_BY { randompointgenerator.group_id } CURVE_BOUNDARY_RULE ENDPOINTS_MOD2 OUTPUT PASSED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_SpatialFilter_PASSED" # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_ExpressionEvaluator_2 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_SpatialFilter_PASSED" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_ExpressionEvaluator_2_OUTPUT" "randompointgenerator.rand" "@EvaluateExpression(FLOAT,rand,$(RandomPointGenerator_WORKSPACE_NAME)_ExpressionEvaluator_2)" # ------------------------------------------------------------------------- -FACTORY_DEF * SortFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Sorter_2 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_ExpressionEvaluator_2_OUTPUT" SORT_BY randompointgenerator.group_id ALPHA ASCENDING randompointgenerator.rand NUMERIC ASCENDING OUTPUT SORTED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_2_SORTED" +FACTORY_DEF * SortFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Sorter_2 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_ExpressionEvaluator_2_OUTPUT" FLUSH_WHEN_GROUPS_CHANGE No SORT_BY randompointgenerator.group_id ALPHA ASCENDING randompointgenerator.rand NUMERIC ASCENDING OUTPUT SORTED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_2_SORTED" # ------------------------------------------------------------------------- INCLUDE [ puts "MACRO REAL_RATE [expr $($(RandomPointGenerator_WORKSPACE_NAME)_NUM_POINTS) * -1 ]" ] FACTORY_DEF {*} SamplingFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Sampler SAMPLE_RATE $(REAL_RATE) GROUP_BY { randompointgenerator.group_id } INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_2_SORTED" OUTPUT SAMPLED FEATURE_TYPE ___SAMPLED___ @@ -3153,25 +3657,25 @@ FACTORY_DEF {*} SamplingFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Sampler_Sampled INPUT FEATURE_TYPE ___SAMPLED___ OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sampler_SAMPLED" # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_BulkAttributeRemover INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sampler_SAMPLED" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_BulkAttributeRemover_OUTPUT" @RemoveAttributes(fme_regexp_match,randompointgenerator.) -FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Point1559895510 Output Collector" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_BulkAttributeRemover_OUTPUT" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Point" +FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Point1565637266 Output Collector" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_BulkAttributeRemover_OUTPUT" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Point" INCLUDE [puts {MACRO WB_CURRENT_CONTEXT $(WB_OLD_CONTEXT_$(RandomPointGenerator_WORKSPACE_NAME))}] FACTORY_DEF * TeeFactory FACTORY_NAME "RandomPointGenerator_2 Point Output Renamer/Nuker" INPUT FEATURE_TYPE RandomPointGenerator_2_Point OUTPUT FEATURE_TYPE RandomPointGenerator_2_Point # ------------------------------------------------------------------------- -FACTORY_DEF {*} AttrSetFactory FACTORY_NAME AttributeCreator_2 COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE RandomPointGenerator_2_Point MULTI_FEATURE_MODE NO NULL_ATTR_MODE NO_OP ATTRSET_CREATE_DIRECTIVES _PROPAGATE_MISSING_FDIV ATTR_ACTION { "" "alpha" "SET_TO" "oui" } OUTPUT OUTPUT FEATURE_TYPE AttributeCreator_2_OUTPUT +FACTORY_DEF {*} AttrSetFactory FACTORY_NAME AttributeCreator_2 COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE RandomPointGenerator_2_Point MULTI_FEATURE_MODE NO NULL_ATTR_MODE NO_OP ATTRSET_CREATE_DIRECTIVES _PROPAGATE_MISSING_FDIV ATTR_ACTION { "" "alpha" "SET_TO" "yes" } OUTPUT OUTPUT FEATURE_TYPE AttributeCreator_2_OUTPUT # ------------------------------------------------------------------------- -FACTORY_DEF * TeeFactory FACTORY_NAME "RandomPointGenerator Area Input Collector" INPUT FEATURE_TYPE BoundingBoxAccumulator_BOUNDING_BOX_0_Uimj7hHyq4I= OUTPUT FEATURE_TYPE RandomPointGenerator_Area +FACTORY_DEF * TeeFactory FACTORY_NAME "RandomPointGenerator Area Input Collector" INPUT FEATURE_TYPE Aggregator_AGGREGATE_1_Lur5dBPiR/o= OUTPUT FEATURE_TYPE RandomPointGenerator_Area MACRO RandomPointGenerator_WORKSPACE_NAME RandomPointGenerator MACRO $(RandomPointGenerator_WORKSPACE_NAME)_XFORMER_NAME RandomPointGenerator MACRO $(RandomPointGenerator_WORKSPACE_NAME)_TRANSFORMER_GROUP MACRO $(RandomPointGenerator_WORKSPACE_NAME)___COMPOUND_PARAMETERS MACRO $(RandomPointGenerator_WORKSPACE_NAME)_SUB_DOC_NAME RandomPointGenerator MACRO $(RandomPointGenerator_WORKSPACE_NAME)_GROUP_BY -MACRO $(RandomPointGenerator_WORKSPACE_NAME)_NUM_POINTS 20000 +MACRO $(RandomPointGenerator_WORKSPACE_NAME)_NUM_POINTS 10000 MACRO $(RandomPointGenerator_WORKSPACE_NAME)_MIN_NUM 10 MACRO $(RandomPointGenerator_WORKSPACE_NAME)_DENSIFY_FACTOR 2 DEFAULT_MACRO RandomPointGenerator_WORKSPACE_NAME "" INCLUDE [puts {MACRO WB_OLD_CONTEXT_$(RandomPointGenerator_WORKSPACE_NAME) $(WB_CURRENT_CONTEXT)}; puts {MACRO WB_CURRENT_CONTEXT $(RandomPointGenerator_WORKSPACE_NAME)}] -FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Area1559895510 Input Splitter" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Area" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Area" +FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Area1565637266 Input Splitter" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Area" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Area" # ------------------------------------------------------------------------- MACRO OUTPUT_AREA_FTYPE not_selected MACRO OUTPUT_AREA_FTYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_AREA @@ -3186,8 +3690,8 @@ FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_ FACTORY_DEF $(INSTANCE_FILTERING) TestFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_InstanceTest INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Input___ TEST @Geometry(IS_GEOMETRY_INSTANCE) == 1 OUTPUT PASSED FEATURE_TYPE $(OUTPUT_INSTANCE_FTYPE) OUTPUT FAILED FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Input___ FACTORY_DEF $(COLLECTION_HANDLING) TestFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_CollectionTest INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Input___ TEST &fme_type == "fme_collection" OUTPUT FAILED FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Not_Collection___ OUTPUT PASSED FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Collection___ FACTORY_DEF $(COLLECTION_HANDLING) DeaggregateFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_Deagg INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Collection___ HOMOGENIZE_COLLECTIONS YES RECURSIVE YES SET_FME_TYPE YES INSTANTIATE_GEOMETRY_INSTANCES_NEW OUTPUT POINT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ OUTPUT LINE FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ OUTPUT POLYGON FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ OUTPUT DONUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ OUTPUT AGGREGATE FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ -FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_RouterPrepper INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Not_Collection___ INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Input___ OUTPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Prepped___ $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_9618bd36_f236_415a_90d0_daf99ca492495_targetFeatureType @Lookup($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_RouterTable,&fme_type) -FACTORY_DEF * TestFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_Router INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Prepped___ TEST @Value($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_9618bd36_f236_415a_90d0_daf99ca492495_targetFeatureType) != "not_selected" OUTPUT PASSED FEATURE_TYPE * @FeatureType(@Value($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_9618bd36_f236_415a_90d0_daf99ca492495_targetFeatureType)) @RemoveAttributes($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_9618bd36_f236_415a_90d0_daf99ca492495_targetFeatureType) OUTPUT FAILED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_" @RemoveAttributes($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_9618bd36_f236_415a_90d0_daf99ca492495_targetFeatureType) +FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_RouterPrepper INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Not_Collection___ INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Input___ OUTPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Prepped___ $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_75d044ca_60a3_4e09_b2bc_cafd4c48b58611_targetFeatureType @Lookup($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_RouterTable,&fme_type) +FACTORY_DEF * TestFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_Router INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter___Prepped___ TEST @Value($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_75d044ca_60a3_4e09_b2bc_cafd4c48b58611_targetFeatureType) != "not_selected" OUTPUT PASSED FEATURE_TYPE * @FeatureType(@Value($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_75d044ca_60a3_4e09_b2bc_cafd4c48b58611_targetFeatureType)) @RemoveAttributes($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_75d044ca_60a3_4e09_b2bc_cafd4c48b58611_targetFeatureType) OUTPUT FAILED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_" @RemoveAttributes($(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_75d044ca_60a3_4e09_b2bc_cafd4c48b58611_targetFeatureType) FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter Transformer Output Nuker" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_GeometryFilter_" # ------------------------------------------------------------------------- Tcl2 proc $(RandomPointGenerator_WORKSPACE_NAME)_ParameterFetcher_doFetch {} { foreach {name val} {"randompointgenerator.group_by {$($(RandomPointGenerator_WORKSPACE_NAME)_GROUP_BY$encode)}"} { if { [string match {**} $val] == 1 } { set val [FME_Execute EvaluateExpression {STRING} $val {$(RandomPointGenerator_WORKSPACE_NAME)_ParameterFetcher}]; } elseif {[string match {*FME_CONDITIONAL*} $val] == 1} { set val [FME_Execute EvaluateExpression {STRING} $val {$(RandomPointGenerator_WORKSPACE_NAME)_ParameterFetcher}]; } else { set val [FME_DecodeTextOrAttr $val]; }; FME_SetAttribute [FME_DecodeText $name] $val } } @@ -3200,14 +3704,14 @@ MACRO OUTPUTATTR "randompointgenerator.group_id" INCLUDE [ if {[string length {randompointgenerator.group_id}] == 0} { puts {MACRO OUTPUTATTR } } FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_TclCaller INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_ParameterFetcher_OUTPUT" NUMBER_OF_COPIES $(COPIER) OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_TclCaller_OUTPUT" $(OUTPUTATTR) @Tcl2("concatGroupByAttributeValues") # ------------------------------------------------------------------------- -FACTORY_DEF * SortFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Sorter INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_TclCaller_OUTPUT" SORT_BY randompointgenerator.group_id ALPHA ASCENDING OUTPUT SORTED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED" +FACTORY_DEF * SortFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Sorter INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_TclCaller_OUTPUT" FLUSH_WHEN_GROUPS_CHANGE No SORT_BY randompointgenerator.group_id ALPHA ASCENDING OUTPUT SORTED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED" FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter SORTED Splitter" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED_0_xVKS7A8AJxE=" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED_1_+dZRsoI37hM=" # ------------------------------------------------------------------------- INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeRemover_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeRemover INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED_1_+dZRsoI37hM=" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeRemover_OUTPUT" @RemoveAttributes(randompointgenerator.group_by) @RemoveAttributes(fme_regexp_match"$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeRemover_LIST_EXP)") } # ------------------------------------------------------------------------- -INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_f3d60d29_b282_4a9a_9f4c_51cf539711795_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] -FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED_0_xVKS7A8AJxE=" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_OUTPUT" @KeepAttributes(randompointgenerator.group_id,fme_regexp_match,"^fme_$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_f3d60d29_b282_4a9a_9f4c_51cf539711795_LIST_EXP)") } +INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_a4f4fe0f_aad4_470c_8003_f0b4bbb03e0b11_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] +FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_SORTED_0_xVKS7A8AJxE=" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_OUTPUT" @KeepAttributes(randompointgenerator.group_id,fme_regexp_match,"^fme_$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_a4f4fe0f_aad4_470c_8003_f0b4bbb03e0b11_LIST_EXP)") } # ------------------------------------------------------------------------- FACTORY_DEF * DeaggregateFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Deaggregator INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_OUTPUT" ATTR_ACCUM_MODE "HANDLE_CONFLICT" ATTR_CONFLICT_RES "INCOMING_IF_CONFLICT" INCOMING_PREFIX "" RECURSIVE Yes SPLIT_COMPOSITES No INSTANTIATE_GEOMETRY_INSTANCES_NEW No SET_FME_TYPE Yes OUTPUT POINT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Deaggregator_DEAGGREGATED" OUTPUT LINE FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Deaggregator_DEAGGREGATED" OUTPUT POLYGON FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Deaggregator_DEAGGREGATED" OUTPUT DONUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Deaggregator_DEAGGREGATED" OUTPUT AGGREGATE FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Deaggregator_DEAGGREGATED" # ------------------------------------------------------------------------- @@ -3220,8 +3724,8 @@ DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_" OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, RandomPointGenerator_AreaCalculatoroutputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) # ------------------------------------------------------------------------- # check if we have to do the min bounding box calculation -INCLUDE [ if { {BB} == {MINBB} } { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BBFunc @Bounds(MIN_BOUNDING,,)}; } else { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BBFunc @Bounds(___MINX,___MAXX,___MINY,___MAXY,___MINZ,___MAXZ,GEOMETRIC) @Tcl2($(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_30134bf9_318b_4e9c_9249_5624e3c32be55_set_geom_and_type)}; } ] -Tcl2 proc $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_30134bf9_318b_4e9c_9249_5624e3c32be55_set_geom_and_type {} { if {[FME_Coordinates numCoords] > 0} { FME_Execute RemoveGeometry; set minX [FME_GetAttribute ___MINX]; set minY [FME_GetAttribute ___MINY]; set maxX [FME_GetAttribute ___MAXX]; set maxY [FME_GetAttribute ___MAXY]; if { [string is double $minX] && [string is double $maxX] } { set xSame [expr $minX == $maxX] } else { set xSame [string equal $minX $maxX] }; if { [string is double $minY] && [string is double $maxY] } { set ySame [expr $minY == $maxY] } else { set ySame [string equal $minY $maxY] }; FME_Coordinates addCoord $minX $minY; if {$xSame && $ySame} { FME_Execute GeometryType fme_point; FME_SetAttribute fme_type fme_point } elseif {$xSame || $ySame} { FME_Coordinates addCoord $maxX $maxY; FME_Execute GeometryType fme_line; FME_SetAttribute fme_type fme_line } else { FME_Coordinates addCoord $minX $maxY; FME_Coordinates addCoord $maxX $maxY; FME_Coordinates addCoord $maxX $minY; FME_Coordinates addCoord $minX $minY; FME_Execute GeometryType fme_polygon; FME_SetAttribute fme_type fme_area }; FME_UnsetAttributes ___MINX ___MAXX ___MINY ___MAXY ___MINZ ___MAXZ; set width [expr $maxX - $minX]; set length [expr $maxY - $minY]; if {$width > $length} { set temp $length; set length $width; set width $temp; }; if { {} != {} } { FME_SetAttribute {""} $width; }; if { {} != {} } { FME_SetAttribute {""} $length; } } } +INCLUDE [ if { {BB} == {MINBB} } { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BBFunc @Bounds(MIN_BOUNDING,,)}; } else { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BBFunc @Bounds(___MINX,___MAXX,___MINY,___MAXY,___MINZ,___MAXZ,GEOMETRIC) @Tcl2($(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_ea63bbe9_b8db_48e4_acc6_72e51ba730b311_set_geom_and_type)}; } ] +Tcl2 proc $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_ea63bbe9_b8db_48e4_acc6_72e51ba730b311_set_geom_and_type {} { if {[FME_Coordinates numCoords] > 0} { FME_Execute RemoveGeometry; set minX [FME_GetAttribute ___MINX]; set minY [FME_GetAttribute ___MINY]; set maxX [FME_GetAttribute ___MAXX]; set maxY [FME_GetAttribute ___MAXY]; if { [string is double $minX] && [string is double $maxX] } { set xSame [expr $minX == $maxX] } else { set xSame [string equal $minX $maxX] }; if { [string is double $minY] && [string is double $maxY] } { set ySame [expr $minY == $maxY] } else { set ySame [string equal $minY $maxY] }; FME_Coordinates addCoord $minX $minY; if {$xSame && $ySame} { FME_Execute GeometryType fme_point; FME_SetAttribute fme_type fme_point } elseif {$xSame || $ySame} { FME_Coordinates addCoord $maxX $maxY; FME_Execute GeometryType fme_line; FME_SetAttribute fme_type fme_line } else { FME_Coordinates addCoord $minX $maxY; FME_Coordinates addCoord $maxX $maxY; FME_Coordinates addCoord $maxX $minY; FME_Coordinates addCoord $minX $minY; FME_Execute GeometryType fme_polygon; FME_SetAttribute fme_type fme_area }; FME_UnsetAttributes ___MINX ___MAXX ___MINY ___MAXY ___MINZ ___MAXZ; set width [expr $maxX - $minX]; set length [expr $maxY - $minY]; if {$width > $length} { set temp $length; set length $width; set width $temp; }; if { {} != {} } { FME_SetAttribute {""} $width; }; if { {} != {} } { FME_SetAttribute {""} $length; } } } FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_OUTPUT" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BOX" @Force2D() $($(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BBFunc) # ------------------------------------------------------------------------- FACTORY_DEF {*} TransformFact:11:Dissolver FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver" FACTORY_META_PARAMS TRANSFORMER_NAME:"$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver" TRANSFORMER_PARAMS:XFORMER_NAME,$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver,TRANSFORMER_GROUP,,GROUP_BY,randompointgenerator.group_id,PARAMETERS_GROUP,,DIS_ATTR,,ATTR_ACCUM_GROUP,,ACCUM_INPUT_ATTRS,No,SUM,_area1,AV,,WEIGHT,,LIST_NAME,,PARAMETERS_GROUP_ADVANCED,,NO_OVRLP,No PROCESS_GROUP_BY { randompointgenerator.group_id } GROUPS_ARE_ORDERED { Yes } MULTI_PROCESS { NO_PARALLELISM } INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_BOX" OUTPUT AREA FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver_AREA" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver_" @@ -3229,8 +3733,8 @@ DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver_" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver_" OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, RandomPointGenerator_DissolveroutputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) # ------------------------------------------------------------------------- # check if we have to do the min bounding box calculation -INCLUDE [ if { {BB} == {MINBB} } { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_BBFunc @Bounds(MIN_BOUNDING,,)}; } else { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_BBFunc @Bounds(___MINX,___MAXX,___MINY,___MAXY,___MINZ,___MAXZ,GEOMETRIC) @Tcl2($(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_9451d6b7_5e3c_4f65_b487_123ed3e07ed25_set_geom_and_type)}; } ] -Tcl2 proc $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_9451d6b7_5e3c_4f65_b487_123ed3e07ed25_set_geom_and_type {} { if {[FME_Coordinates numCoords] > 0} { FME_Execute RemoveGeometry; set minX [FME_GetAttribute ___MINX]; set minY [FME_GetAttribute ___MINY]; set maxX [FME_GetAttribute ___MAXX]; set maxY [FME_GetAttribute ___MAXY]; if { [string is double $minX] && [string is double $maxX] } { set xSame [expr $minX == $maxX] } else { set xSame [string equal $minX $maxX] }; if { [string is double $minY] && [string is double $maxY] } { set ySame [expr $minY == $maxY] } else { set ySame [string equal $minY $maxY] }; FME_Coordinates addCoord $minX $minY; if {$xSame && $ySame} { FME_Execute GeometryType fme_point; FME_SetAttribute fme_type fme_point } elseif {$xSame || $ySame} { FME_Coordinates addCoord $maxX $maxY; FME_Execute GeometryType fme_line; FME_SetAttribute fme_type fme_line } else { FME_Coordinates addCoord $minX $maxY; FME_Coordinates addCoord $maxX $maxY; FME_Coordinates addCoord $maxX $minY; FME_Coordinates addCoord $minX $minY; FME_Execute GeometryType fme_polygon; FME_SetAttribute fme_type fme_area }; FME_UnsetAttributes ___MINX ___MAXX ___MINY ___MAXY ___MINZ ___MAXZ; set width [expr $maxX - $minX]; set length [expr $maxY - $minY]; if {$width > $length} { set temp $length; set length $width; set width $temp; }; if { {} != {} } { FME_SetAttribute {""} $width; }; if { {} != {} } { FME_SetAttribute {""} $length; } } } +INCLUDE [ if { {BB} == {MINBB} } { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_BBFunc @Bounds(MIN_BOUNDING,,)}; } else { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_BBFunc @Bounds(___MINX,___MAXX,___MINY,___MAXY,___MINZ,___MAXZ,GEOMETRIC) @Tcl2($(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_defc686c_8ab9_4ccc_a401_1cd074477efb11_set_geom_and_type)}; } ] +Tcl2 proc $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_defc686c_8ab9_4ccc_a401_1cd074477efb11_set_geom_and_type {} { if {[FME_Coordinates numCoords] > 0} { FME_Execute RemoveGeometry; set minX [FME_GetAttribute ___MINX]; set minY [FME_GetAttribute ___MINY]; set maxX [FME_GetAttribute ___MAXX]; set maxY [FME_GetAttribute ___MAXY]; if { [string is double $minX] && [string is double $maxX] } { set xSame [expr $minX == $maxX] } else { set xSame [string equal $minX $maxX] }; if { [string is double $minY] && [string is double $maxY] } { set ySame [expr $minY == $maxY] } else { set ySame [string equal $minY $maxY] }; FME_Coordinates addCoord $minX $minY; if {$xSame && $ySame} { FME_Execute GeometryType fme_point; FME_SetAttribute fme_type fme_point } elseif {$xSame || $ySame} { FME_Coordinates addCoord $maxX $maxY; FME_Execute GeometryType fme_line; FME_SetAttribute fme_type fme_line } else { FME_Coordinates addCoord $minX $maxY; FME_Coordinates addCoord $maxX $maxY; FME_Coordinates addCoord $maxX $minY; FME_Coordinates addCoord $minX $minY; FME_Execute GeometryType fme_polygon; FME_SetAttribute fme_type fme_area }; FME_UnsetAttributes ___MINX ___MAXX ___MINY ___MAXY ___MINZ ___MAXZ; set width [expr $maxX - $minX]; set length [expr $maxY - $minY]; if {$width > $length} { set temp $length; set length $width; set width $temp; }; if { {} != {} } { FME_SetAttribute {""} $width; }; if { {} != {} } { FME_SetAttribute {""} $length; } } } FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Dissolver_AREA" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_BOX" @Force2D() $($(RandomPointGenerator_WORKSPACE_NAME)_BoundingBoxReplacer_2_BBFunc) # ------------------------------------------------------------------------- INCLUDE [ if { ({Plane Area} == {Sloped Area}) } { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_2_func @Area(REJECTABLE,SLOPED_AREAS,"1")}; } else { puts {MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_2_func @Area(REJECTABLE,"1")}; } ] @@ -3239,11 +3743,11 @@ FACTORY_DEF * TestFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME) DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_2_" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_2_" OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, RandomPointGenerator_AreaCalculator_2outputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) # ------------------------------------------------------------------------- -DEFAULT_MACRO __$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_715c0fc4_67bb_4230_a1ea_bfeef6de99e85_GROUP_BY -MACRO __$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_715c0fc4_67bb_4230_a1ea_bfeef6de99e85_GROUP_BY randompointgenerator.group_id +DEFAULT_MACRO __$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_156edb96_7df2_4e5a_b351_d99d68ad0c8311_GROUP_BY +MACRO __$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_156edb96_7df2_4e5a_b351_d99d68ad0c8311_GROUP_BY randompointgenerator.group_id DYNAMIC_FUNCTION_CONFIGURATION Python FMEOBJECTS DYNAMIC_FUNCTION_CONFIGURATION Python import StatisticsCalculator -DYNAMIC_FUNCTION_CONFIGURATION Python "StatisticsCalculator.connectTransformer( '$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator',{ 'GROUP_BY_MACRO':'__$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_715c0fc4_67bb_4230_a1ea_bfeef6de99e85_GROUP_BY', 'GROUP_BY':'randompointgenerator.group_id', 'STATS_ATTRS':'_area1 _area2', 'SUM_ATTR':'_sum', 'COMPUTE_HISTOGRAM':'NO', 'HISTO_ATTR':'', 'PREPEND_ATTR_NAME':'Yes', None:None})" +DYNAMIC_FUNCTION_CONFIGURATION Python "StatisticsCalculator.connectTransformer( '$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator',{ 'GROUP_BY_MACRO':'__$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_156edb96_7df2_4e5a_b351_d99d68ad0c8311_GROUP_BY', 'GROUP_BY':'randompointgenerator.group_id', 'STATS_ATTRS':'_area1 _area2', 'SUM_ATTR':'_sum', 'COMPUTE_HISTOGRAM':'NO', 'HISTO_ATTR':'', 'PREPEND_ATTR_NAME':'Yes', None:None})" FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_InputProcessor INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AreaCalculator_2_OUTPUT" OUTPUT FEATURE_TYPE __ORIGINAL__ @Python(StatisticsCalculator.recordFeature,$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator) FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_UnneededInputNuker INPUT FEATURE_TYPE __ORIGINAL__ OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_COMPLETE" FACTORY_DEF * SortFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_CompleteOutputter INPUT FEATURE_TYPE __UNUSED_INPUT_TO_GUARANTEE_FACTORY_DOESNT_CONSUME_EVERYTHING__ INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_COMPLETE" OUTPUT SORTED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator_COMPLETE" @Python(StatisticsCalculator.summarizeStatistics,$(RandomPointGenerator_WORKSPACE_NAME)_StatisticsCalculator,__ORIGINAL__) @@ -3260,8 +3764,8 @@ FACTORY_DEF * VertexCreatorFactory FACTORY_NAME $(RandomPointGenerator_WORKSP DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_VertexCreator_" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_VertexCreator_" OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, RandomPointGenerator_VertexCreatoroutputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) # ------------------------------------------------------------------------- -INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_6e498305_d837_4b5b_95c7_b1c3ad2d34975_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] -FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_VertexCreator_OUTPUT" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_OUTPUT" @KeepAttributes(randompointgenerator.group_id,_width,_height,_num,fme_regexp_match,"^fme_$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_6e498305_d837_4b5b_95c7_b1c3ad2d34975_LIST_EXP)") } +INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_c42b71ac_110b_4c0f_9916_ff180f1daa6b11_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] +FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_VertexCreator_OUTPUT" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_OUTPUT" @KeepAttributes(randompointgenerator.group_id,_width,_height,_num,fme_regexp_match,"^fme_$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_c42b71ac_110b_4c0f_9916_ff180f1daa6b11_LIST_EXP)") } # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Cloner_Cloner INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_2_OUTPUT" NUMBER_OF_COPIES "@EvaluateExpression(FLOAT,Value_num,$(RandomPointGenerator_WORKSPACE_NAME)_Cloner)" REJECT_INVALID YES OUTPUT COPY "$(RandomPointGenerator_WORKSPACE_NAME)_Cloner_COPY" OUTPUT "$(RandomPointGenerator_WORKSPACE_NAME)_Cloner_" fme_rejection_code "INVALID_PARAMETER_NUMBER_OF_COPIES" DEFAULT_MACRO _WB_BYPASS_TERMINATION No @@ -3270,14 +3774,14 @@ FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Cl FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Offsetter INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Cloner_COPY" OUTPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_Offset @Offset("@EvaluateExpression(FLOAT,rand*Value_width,$(RandomPointGenerator_WORKSPACE_NAME)_Offsetter)","@EvaluateExpression(FLOAT,rand*Value_height,$(RandomPointGenerator_WORKSPACE_NAME)_Offsetter)","0") FACTORY_DEF * TestFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_PointCloudOffsetter INPUT FEATURE_TYPE $(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_Offset TEST &fme_type == "fme_point_cloud" TEST "" != "" BOOLEAN_OPERATOR AND OUTPUT PASSED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_OFFSET" @TransformPointCloud(OFFSET,) OUTPUT FAILED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_OFFSET" # ------------------------------------------------------------------------- -INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_d691a13b_b619_443f_ab35_14ee68055c3b5_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] -FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_OFFSET" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_OUTPUT" @KeepAttributes(randompointgenerator.group_id,fme_regexp_match,"^fme_$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_d691a13b_b619_443f_ab35_14ee68055c3b5_LIST_EXP)") } +INCLUDE [ set macroLine "MACRO $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_c381e39f_3840_4558_af0f_91ac25c2937711_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "{\[0-9\]+}"]; append macroLine ",^$attr$"; }; puts $macroLine; ] +FACTORY_DEF {*} TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Offsetter_OFFSET" OUTPUT { FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_OUTPUT" @KeepAttributes(randompointgenerator.group_id,fme_regexp_match,"^fme_$($(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_c381e39f_3840_4558_af0f_91ac25c2937711_LIST_EXP)") } # ------------------------------------------------------------------------- FACTORY_DEF {*} SpatialFilterFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_SpatialFilter INPUT BASE FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeRemover_OUTPUT" INPUT CANDIDATE FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_AttributeKeeper_3_OUTPUT" PREDICATE "INTERSECTS" USE_BOUNDING_BOX NO MULTIPLE_BASES YES MERGE_BASE_ATTR YES BOOLEAN_OPERATOR OR DIMENSION 2 GROUP_BY { randompointgenerator.group_id } CURVE_BOUNDARY_RULE ENDPOINTS_MOD2 OUTPUT PASSED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_SpatialFilter_PASSED" # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_ExpressionEvaluator_2 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_SpatialFilter_PASSED" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_ExpressionEvaluator_2_OUTPUT" "randompointgenerator.rand" "@EvaluateExpression(FLOAT,rand,$(RandomPointGenerator_WORKSPACE_NAME)_ExpressionEvaluator_2)" # ------------------------------------------------------------------------- -FACTORY_DEF * SortFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Sorter_2 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_ExpressionEvaluator_2_OUTPUT" SORT_BY randompointgenerator.group_id ALPHA ASCENDING randompointgenerator.rand NUMERIC ASCENDING OUTPUT SORTED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_2_SORTED" +FACTORY_DEF * SortFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Sorter_2 INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_ExpressionEvaluator_2_OUTPUT" FLUSH_WHEN_GROUPS_CHANGE No SORT_BY randompointgenerator.group_id ALPHA ASCENDING randompointgenerator.rand NUMERIC ASCENDING OUTPUT SORTED FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_2_SORTED" # ------------------------------------------------------------------------- INCLUDE [ puts "MACRO REAL_RATE [expr $($(RandomPointGenerator_WORKSPACE_NAME)_NUM_POINTS) * -1 ]" ] FACTORY_DEF {*} SamplingFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Sampler SAMPLE_RATE $(REAL_RATE) GROUP_BY { randompointgenerator.group_id } INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sorter_2_SORTED" OUTPUT SAMPLED FEATURE_TYPE ___SAMPLED___ @@ -3286,29 +3790,29 @@ FACTORY_DEF {*} SamplingFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_Sampler_Sampled INPUT FEATURE_TYPE ___SAMPLED___ OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sampler_SAMPLED" # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME $(RandomPointGenerator_WORKSPACE_NAME)_BulkAttributeRemover INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Sampler_SAMPLED" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_BulkAttributeRemover_OUTPUT" @RemoveAttributes(fme_regexp_match,randompointgenerator.) -FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Point1559895510 Output Collector" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_BulkAttributeRemover_OUTPUT" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Point" +FACTORY_DEF * TeeFactory FACTORY_NAME "$(RandomPointGenerator_WORKSPACE_NAME)_Point1565637266 Output Collector" INPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_BulkAttributeRemover_OUTPUT" OUTPUT FEATURE_TYPE "$(RandomPointGenerator_WORKSPACE_NAME)_Point" INCLUDE [puts {MACRO WB_CURRENT_CONTEXT $(WB_OLD_CONTEXT_$(RandomPointGenerator_WORKSPACE_NAME))}] FACTORY_DEF * TeeFactory FACTORY_NAME "RandomPointGenerator Point Output Renamer/Nuker" INPUT FEATURE_TYPE RandomPointGenerator_Point OUTPUT FEATURE_TYPE RandomPointGenerator_Point # ------------------------------------------------------------------------- -Tcl2 proc VoronoiDiagrammer_1609b2c9_1ce2_4507_94cb_177bb195bb832_radial_limit_check {} { if { [string length {}] > 0 } { if { {} < 0 } { FME_LogMessage fme_error 917860 VoronoiDiagrammer "\"Voronoi Radial Limit\"" ; error \"Tcl error occurred while validating the parameter 'Voronoi Radial Limit', please check logfile.\"; }; } } +Tcl2 proc VoronoiDiagrammer_263e05eb_709e_4a5e_980a_e42ab7e096fd5_radial_limit_check {} { if { [string length {}] > 0 } { if { {} < 0 } { FME_LogMessage fme_error 917860 VoronoiDiagrammer "\"Voronoi Radial Limit\"" ; error \"Tcl error occurred while validating the parameter 'Voronoi Radial Limit', please check logfile.\"; }; } } # enable/disable the buffering, clipping, dissolving based on VORONOI_RADIAL_LIMIT INCLUDE [ if { [string length {}] > 0 } { puts { MACRO VoronoiDiagrammer_OUTPUT_FTYPE VoronoiDiagrammer_NEED_TO_CLIP }; puts { MACRO VoronoiDiagrammer_USE_BUFFERER OUTPUT FEATURE_TYPE VoronoiDiagrammer_BUFFERER_INPUT }; } else { puts { MACRO VoronoiDiagrammer_OUTPUT_FTYPE VoronoiDiagrammer_READY_TO_OUTPUT }; puts { MACRO VoronoiDiagrammer_USE_BUFFERER }; } ] -FACTORY_DEF * TeeFactory FACTORY_NAME VoronoiDiagrammer_Splitter0 INPUT FEATURE_TYPE ___nothing_will_match_this_to_handle_when_below_inputs_are_not_specified___ INPUT FEATURE_TYPE RandomPointGenerator_Point INPUT FEATURE_TYPE AttributeCreator_2_OUTPUT @Tcl2(VoronoiDiagrammer_1609b2c9_1ce2_4507_94cb_177bb195bb832_radial_limit_check) OUTPUT FEATURE_TYPE VoronoiDiagrammer_VORONOI_INPUT $(VoronoiDiagrammer_USE_BUFFERER) +FACTORY_DEF * TeeFactory FACTORY_NAME VoronoiDiagrammer_Splitter0 INPUT FEATURE_TYPE ___nothing_will_match_this_to_handle_when_below_inputs_are_not_specified___ INPUT FEATURE_TYPE RandomPointGenerator_Point INPUT FEATURE_TYPE AttributeCreator_2_OUTPUT @Tcl2(VoronoiDiagrammer_263e05eb_709e_4a5e_980a_e42ab7e096fd5_radial_limit_check) OUTPUT FEATURE_TYPE VoronoiDiagrammer_VORONOI_INPUT $(VoronoiDiagrammer_USE_BUFFERER) # 1. Buffer the incoming points FACTORY_DEF * PolygonDissolveFactory INPUT FEATURE_TYPE VoronoiDiagrammer_BUFFERER_INPUT FACTORY_NAME VoronoiDiagrammer_Bufferer FLUSH_WHEN_GROUPS_CHANGE No PRE_BUFFER "" 8 CAP_ROUND FULL DISSOLVE_MODE GEOS OUTPUT POLYGON FEATURE_TYPE VoronoiDiagrammer_BUFFERED OUTPUT NON_POLYGON FEATURE_TYPE VoronoiDiagrammer_BUFFERED # 2. Dissolve the buffers FACTORY_DEF * PolygonDissolveFactory INPUT FEATURE_TYPE VoronoiDiagrammer_BUFFERED FACTORY_NAME VoronoiDiagrammer_Dissolver FLUSH_WHEN_GROUPS_CHANGE No NON_OVERLAPPING_INPUT No ACCUM_INPUT_ATTRS NO MODE COMPLETE OUTPUT POLYGON FEATURE_TYPE VoronoiDiagrammer_Dissolver_AREA # 3. Perform the VoronoiDiagrammer process on the original input points and areas -FACTORY_DEF {*} SurfaceModelFactory FACTORY_NAME VoronoiDiagrammer FLUSH_WHEN_GROUPS_CHANGE No INPUT POINTS FEATURE_TYPE VoronoiDiagrammer_VORONOI_INPUT INPUT MINIMUM_VORONOI_EXTENT FEATURE_TYPE BoundingBoxAccumulator_BOUNDING_BOX_2_fMdYdlx2iJU= TOLERANCE 0 ACCUMULATE_ATTRIBUTES ONE LIST_ATTRS_TO_INCLUDE { } LIST_ATTRS_TO_INCLUDE_MODE SELECTED OUTPUT VORONOI_DIAGRAM_WITH_ATTRS FEATURE_TYPE $(VoronoiDiagrammer_OUTPUT_FTYPE) +FACTORY_DEF {*} SurfaceModelFactory FACTORY_NAME VoronoiDiagrammer FLUSH_WHEN_GROUPS_CHANGE No INPUT POINTS FEATURE_TYPE VoronoiDiagrammer_VORONOI_INPUT INPUT MINIMUM_VORONOI_EXTENT FEATURE_TYPE Aggregator_AGGREGATE_3_zANf9OPdVhE= TOLERANCE 0 ACCUMULATE_ATTRIBUTES ONE LIST_ATTRS_TO_INCLUDE { } LIST_ATTRS_TO_INCLUDE_MODE SELECTED OUTPUT VORONOI_DIAGRAM_WITH_ATTRS FEATURE_TYPE $(VoronoiDiagrammer_OUTPUT_FTYPE) # 4. Clip the output from the AREA port of the Dissolver with the output of the VoronoiDiagrammer FACTORY_DEF * ClippingFactory FACTORY_NAME VoronoiDiagrammer_Vector INPUT CLIPPER FEATURE_TYPE VoronoiDiagrammer_Dissolver_AREA INPUT CLIPPEE FEATURE_TYPE VoronoiDiagrammer_NEED_TO_CLIP FLUSH_WHEN_GROUPS_CHANGE No MULTICLIP YES CLIPPEE_ON_BOUNDARY INSIDE MERGE_CLIPPER_ATTRIBUTES No DO_NOT_AGGREGATE NO OUTPUT_NO_CLIPPERS_AS_OUTSIDE OUTSIDE_NO_CLIPPERS_ATTR _fme_no_clipper MODE COMPLETE OUTPUT INSIDE FEATURE_TYPE VoronoiDiagrammer_READY_TO_OUTPUT OUTPUT CLIPPED_INSIDE FEATURE_TYPE VoronoiDiagrammer_READY_TO_OUTPUT OUTPUT OUTSIDE_NO_CLIPPER FEATURE_TYPE VoronoiDiagrammer_READY_TO_OUTPUT FACTORY_DEF * TeeFactory FACTORY_NAME VoronoiDiagrammer_Output INPUT FEATURE_TYPE VoronoiDiagrammer_READY_TO_OUTPUT OUTPUT FEATURE_TYPE VoronoiDiagrammer_VORONOI_POLYGONS @RemoveAttributes(SurfaceModel.vertex_id,SurfaceModel.elevation) # ------------------------------------------------------------------------- INCLUDE [ if {($(FME_BUILD_NUM) < 5669) || [FME_ComponentIsLicensed -factory RasterClippingFactory]} { puts "MACRO RASTER_CLIPPER_IN *"; } else { puts "MACRO RASTER_CLIPPER_IN NOT_THIS_TIME"; } ] # The dummy input feature type Clipper___ClipperMakeSureWeDontGetAllFeatures___ -# makes sure that if INPUT FEATURE_TYPE Aggregator_AGGREGATE_1_Lur5dBPiR/o= is emtpy, we don't get every feature +# makes sure that if INPUT FEATURE_TYPE Aggregator_AGGREGATE_0_Gs1ZrERRaes= is emtpy, we don't get every feature # sent into this factory. -FACTORY_DEF * TeeFactory FACTORY_NAME Clipper_ClipperCloner INPUT FEATURE_TYPE Aggregator_AGGREGATE_1_Lur5dBPiR/o= INPUT FEATURE_TYPE Clipper___ClipperMakeSureWeDontGetAllFeatures___ OUTPUT FEATURE_TYPE Clipper___ClippersForSolidOrVector___ OUTPUT FEATURE_TYPE Clipper___ClippersForRaster___ +FACTORY_DEF * TeeFactory FACTORY_NAME Clipper_ClipperCloner INPUT FEATURE_TYPE Aggregator_AGGREGATE_0_Gs1ZrERRaes= INPUT FEATURE_TYPE Clipper___ClipperMakeSureWeDontGetAllFeatures___ OUTPUT FEATURE_TYPE Clipper___ClippersForSolidOrVector___ OUTPUT FEATURE_TYPE Clipper___ClippersForRaster___ FACTORY_DEF * TestFactory FACTORY_NAME Clipper_SolidClipperFilter INPUT FEATURE_TYPE Clipper___ClippersForSolidOrVector___ TEST &fme_type == "fme_solid" OUTPUT FAILED FEATURE_TYPE Clipper___ClippersForVector___ OUTPUT PASSED FEATURE_TYPE Clipper___ClippersForSolid___ # The dummy input feature type Clipper___ClippeeMakeSureWeDontGetAllFeatures___ # makes sure that if INPUT FEATURE_TYPE VoronoiDiagrammer_VORONOI_POLYGONS is emtpy, we don't get every feature @@ -3321,49 +3825,23 @@ FACTORY_DEF * TeeFactory FACTORY_NAME Clipper_Nuker INPUT FEATURE_TYPE Cli DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME Clipper_ INPUT FEATURE_TYPE Clipper_ OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, ClipperoutputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) # ------------------------------------------------------------------------- -FACTORY_DEF * TestFactory FACTORY_NAME Tester INPUT FEATURE_TYPE Clipper_INSIDE TEST @EvaluateExpression(FDIV,STRING_ENCODED,Valuealpha,Tester) = oui ENCODED BOOLEAN_OPERATOR OR COMPOSITE_TEST_EXPR "1" OUTPUT FAILED FEATURE_TYPE Tester_FAILED +FACTORY_DEF * TestFactory FACTORY_NAME Tester INPUT FEATURE_TYPE Clipper_INSIDE TEST @EvaluateExpression(FDIV,STRING_ENCODED,Valuealpha,Tester) = yes ENCODED BOOLEAN_OPERATOR OR COMPOSITE_TEST_EXPR "1" OUTPUT FAILED FEATURE_TYPE Tester_FAILED # ------------------------------------------------------------------------- -FACTORY_DEF {*} NeighborColorSetterFactory FACTORY_NAME FeatureColorSetter_4 INPUT FEATURE_TYPE Tester_FAILED ALGORITHM MANUAL RANDOM_MODE RANDOM_COLOR_CAP "" FILL_COLOR "1,0,0" REJECT_INVALID_PARAMS Yes OUTPUT COLORED FEATURE_TYPE FeatureColorSetter_4_COLORED OUTPUT REJECTED FEATURE_TYPE FeatureColorSetter_4_ +FACTORY_DEF {*} NeighborColorSetterFactory FACTORY_NAME FeatureColorSetter_4 INPUT FEATURE_TYPE Tester_FAILED FLUSH_WHEN_GROUPS_CHANGE No ALGORITHM MANUAL RANDOM_MODE RANDOM_COLOR_CAP "" FILL_COLOR "1,0,0" REJECT_INVALID_PARAMS Yes OUTPUT COLORED FEATURE_TYPE FeatureColorSetter_4_COLORED OUTPUT REJECTED FEATURE_TYPE FeatureColorSetter_4_ DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME FeatureColorSetter_4_ INPUT FEATURE_TYPE FeatureColorSetter_4_ OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, FeatureColorSetter_4outputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) # ------------------------------------------------------------------------- -FACTORY_DEF {*} NeighborColorSetterFactory FACTORY_NAME FeatureColorSetter_3 INPUT FEATURE_TYPE AttributeFilter_forest ALGORITHM MANUAL RANDOM_MODE RANDOM_COLOR_CAP "" FILL_COLOR "0,0,1" REJECT_INVALID_PARAMS Yes OUTPUT COLORED FEATURE_TYPE FeatureColorSetter_3_COLORED OUTPUT REJECTED FEATURE_TYPE FeatureColorSetter_3_ -DEFAULT_MACRO _WB_BYPASS_TERMINATION No -FACTORY_DEF * TeeFactory FACTORY_NAME FeatureColorSetter_3_ INPUT FEATURE_TYPE FeatureColorSetter_3_ OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, FeatureColorSetter_3outputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) -# ------------------------------------------------------------------------- -FACTORY_DEF {*} NeighborColorSetterFactory FACTORY_NAME FeatureColorSetter_2 INPUT FEATURE_TYPE AttributeFilter_hard ALGORITHM MANUAL RANDOM_MODE RANDOM_COLOR_CAP "" FILL_COLOR "0,1,0" REJECT_INVALID_PARAMS Yes OUTPUT COLORED FEATURE_TYPE FeatureColorSetter_2_COLORED OUTPUT REJECTED FEATURE_TYPE FeatureColorSetter_2_ -DEFAULT_MACRO _WB_BYPASS_TERMINATION No -FACTORY_DEF * TeeFactory FACTORY_NAME FeatureColorSetter_2_ INPUT FEATURE_TYPE FeatureColorSetter_2_ OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, FeatureColorSetter_2outputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) -# ------------------------------------------------------------------------- INCLUDE [ if { ([string equal {} {}]==0 && [string equal {} {}]==0) && ([string equal {} {}]==0 && [string equal {} {}]==0) && ([string equal {} {}]==0 && [string equal {} {}]==0) && ([string equal {} {}]==0 && [string equal {} {}]==0)} { puts {MACRO GROUND_EXTENTS_CLAUSE GROUND_EXTENTS_MIN_X "" GROUND_EXTENTS_MIN_Y "" GROUND_EXTENTS_MAX_X "" GROUND_EXTENTS_MAX_Y ""}; } elseif { ([string equal {} {}] || [string equal {} {}]) && ([string equal {} {}] || [string equal {} {}]) && ([string equal {} {}] || [string equal {} {}]) && ([string equal {} {}] || [string equal {} {}])} { puts {MACRO GROUND_EXTENTS_CLAUSE}; } else { puts_real {ImageRasterizer (ImageRasterizer): To specify Ground Extents, all the Ground Extents parameters must be filled out.}; exit 1; } ] INCLUDE [ if {{0} == {}} { puts {MACRO ALPHA_CLAUSE}; puts {MACRO BACKGROUND_ALPHA_CLAUSE}; } else { puts {MACRO ALPHA_CLAUSE ALPHA "0"}; puts {MACRO BACKGROUND_ALPHA_CLAUSE BACKGROUND_ALPHA "1"}; } ] -FACTORY_DEF {*} VectorToRasterFactory FACTORY_NAME ImageRasterizer INPUT FEATURE_TYPE FeatureColorSetter_2_COLORED INPUT FEATURE_TYPE FeatureColorSetter_3_COLORED INPUT FEATURE_TYPE FeatureColorSetter_4_COLORED WIDTH "2048" HEIGHT "2048" X_CELL_SIZE "" Y_CELL_SIZE "" INTERPRETATION_TYPE RGBA32 $(ALPHA_CLAUSE) BACKGROUND_COLOR "0,0,0" $(BACKGROUND_ALPHA_CLAUSE) FILL_WITH_NODATA No ANTI_ALIASING No TOLERANCE 0.5 POINTCLOUD_INTERPRETATION COLOR $(GROUND_EXTENTS_CLAUSE) REJECT_INVALID_GEOM YES OUTPUT RASTER FEATURE_TYPE ImageRasterizer_RASTER @SupplyAttributes(?,fme_basename,ImageRasterizer) OUTPUT REJECTED FEATURE_TYPE ImageRasterizer_ +FACTORY_DEF {*} VectorToRasterFactory FACTORY_NAME ImageRasterizer INPUT FEATURE_TYPE FeatureColorSetter_2_COLORED INPUT FEATURE_TYPE FeatureColorSetter_3_COLORED INPUT FEATURE_TYPE FeatureColorSetter_4_COLORED WIDTH "2048" HEIGHT "2048" X_CELL_SIZE "" Y_CELL_SIZE "" INTERPRETATION_TYPE RGBA32 $(ALPHA_CLAUSE) BACKGROUND_COLOR "0,0,0" $(BACKGROUND_ALPHA_CLAUSE) FILL_WITH_NODATA No ANTI_ALIASING Yes POINTCLOUD_INTERPRETATION COLOR $(GROUND_EXTENTS_CLAUSE) REJECT_INVALID_GEOM YES OUTPUT RASTER FEATURE_TYPE ImageRasterizer_RASTER @SupplyAttributes(?,fme_basename,ImageRasterizer) OUTPUT REJECTED FEATURE_TYPE ImageRasterizer_ DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME ImageRasterizer_ INPUT FEATURE_TYPE ImageRasterizer_ OUTPUT FAILED FEATURE_TYPE * @Abort(ENCODED, ImageRasterizeroutputaRejectedfeature.TocontinuetranslationwhenfeaturesarerejectedchangeWorkspaceParametersTranslationRejectedFeatureHandlingtoContinueTranslation) # ------------------------------------------------------------------------- -# Assumption is that the workspace temp dir has been already set and created. See controldefs.cpp - ControlDefs::writeVisualizerTempDir -DEFAULT_MACRO WORKSPACE_TEMP_DIR -INCLUDE [ set safeName "[regsub -all {[^a-zA-Z0-9]} {AttributeFilter__Unfiltered_} _]_[expr round(rand() * 1000000)]_[clock clicks -milliseconds]"; puts "MACRO SAFE_FFS_NAME $safeName"; ] -FACTORY_DEF {*} InspectorFactory FACTORY_NAME AttributeFilter__Unfiltered__Prepper COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE AttributeFilter_UNFILTERED GROUP_ATTRIBUTE __inspector_feature_type_attr__ GROUP_BY { } GROUP_ATTRIBUTE_PREFIX { AttributeFilter__Unfiltered_ } RASTER_REDUCTION NoReduction POINT_CLOUD_REDUCTION NO_THINNING OUTPUT RESULT FEATURE_TYPE __viewme__ -# Now route all the features into the recorder, changing their -# feature type to the transformer name so that they view nicely -DEFAULT_MACRO VISUALIZER_FEATURE_FILE $(WORKSPACE_TEMP_DIR)/$(SAFE_FFS_NAME).ffs -DEFAULT_MACRO VISUALIZER_CREATE_SPATIAL_INDEX NO -# [PR#45549] The Data Inspector will limit the maximum number of features -# it reads on WIN32, so we will correspondingly limit the number of -# features we record here using the MAX_FEATURES_TO_RECORD directive. -FACTORY_DEF * RecorderFactory FACTORY_NAME AttributeFilter__Unfiltered__Recorder COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE __viewme__ _wb_termination_feature Yes @FeatureType(TERMINATOR_@Value(_wb_termination_xformer)) INPUT FEATURE_TYPE __viewme__ @FeatureType(@Value(__inspector_feature_type_attr__)) @RemoveAttributes(__inspector_feature_type_attr__) FEATURE_FILE "$(VISUALIZER_FEATURE_FILE)" STORE_SCANNED_SCHEMA YES CREATE_SPATIAL_INDEX "$(VISUALIZER_CREATE_SPATIAL_INDEX)" INSPECTOR "$(VISUALIZER_CREATE_SPATIAL_INDEX)" FSC_SCHEMA covertype,varchar255,id,varchar255 MODE RECORD STORE_SCANNED_METADATA RECORD_DIRECTLY_TO_DISK YES MAX_FEATURES_TO_RECORD WIN32 2000000 -# ------------------------------------------------------------------------- FACTORY_DEF * RoutingFactory FACTORY_NAME "Destination Feature Type Routing Correlator" COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE * ROUTE FME_GENERIC ImageRasterizer_RASTER TO SGI __GO_TO_FINAL_OUTPUT_ROUTER__ multi_writer_id,0,SupplyAttributesENCODED__wb_out_feat_type__11_splatmap GEOMETRY FEATURE_TYPE_ATTRIBUTE __wb_out_feat_type__ OUTPUT ROUTED FEATURE_TYPE * OUTPUT NOT_ROUTED FEATURE_TYPE __nuke_me__ @Tcl2("FME_StatMessage 818059 [FME_GetAttribute fme_template_feature_type] 818060 818061 fme_warn") # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME "Final Output Nuker" INPUT FEATURE_TYPE __nuke_me__ -# ------------------------------------------------------------------------- - -DEFAULT_MACRO FME_LAUNCH_VIEWER_APP NO -FACTORY_DEF * CreationFactory FACTORY_NAME VisualizerProcessor CREATE_AT_END OUTPUT FEATURE_TYPE __NUKEME__ @TCL("if {{$(FME_LAUNCH_VIEWER_APP)} == {YES}} { if [file exists {$(WORKSPACE_TEMP_DIR)}] {set files [glob -nocomplain -directory {$(WORKSPACE_TEMP_DIR)} -tails *.ffs]; if {[llength $files] == 1} { set theFile {$(WORKSPACE_TEMP_DIR)/}; append theFile [lindex $files 0]; eval FME_Execute System \173\042$(FME_HOME_UNIX)/fmedatainspector\042 --visualizer --single-application --delete-on-close --no-source-prompt -f FFS \042$theFile\042 & \175; } elseif { [llength $files] == 0 } { catch { file delete -force {$(WORKSPACE_TEMP_DIR)} }; } else { set filesNoExt {}; set lastfile {}; foreach {fileName} [lsort $files] { set fileNoExt [string trimright $fileName {.ffs}]; if [regexp {(.*)_[0-9]*$} $fileNoExt wholething fileNoExtBase] { if { $fileNoExtBase == $lastfile } { continue } }; set lastfile $fileNoExt; lappend filesNoExt $fileNoExt }; eval FME_Execute System \173\042$(FME_HOME_UNIX)/fmedatainspector\042 --visualizer --single-application --delete-on-close --no-source-prompt -d {$(WORKSPACE_TEMP_DIR)} -a ffs -f FFS $filesNoExt & \175; }; }; }; ") -FACTORY_DEF * TeeFactory FACTORY_NAME VisualizerCleaner INPUT FEATURE_TYPE __NUKEME__ # ------------------------------------------------------------------------- SGI_1_DEF 11_splatmap sgi_extension .png diff --git a/import/01_terrain/11_splatmap.png b/import/01_terrain/11_splatmap.png index 664eb62..71c9a3b 100644 Binary files a/import/01_terrain/11_splatmap.png and b/import/01_terrain/11_splatmap.png differ diff --git a/unity/Assets/Scripts/ExportSplatmap.cs b/unity/Assets/Scripts/ExportSplatmap.cs deleted file mode 100644 index 6605194..0000000 --- a/unity/Assets/Scripts/ExportSplatmap.cs +++ /dev/null @@ -1,42 +0,0 @@ -using UnityEditor; -using UnityEngine; -using System.Collections; -using System.IO; - -public class ExportSplatmap : ScriptableWizard -{ - public Texture2D splatmap; - - - ExportSplatmap() - { - splatmap = null; - } - - [MenuItem("Terrain/Export Splatmap (from WM)")] - static void CreateWizard() - { - ScriptableWizard.DisplayWizard("Export Splatmap", "Export"); - } - - void OnWizardCreate() - { - try - { - byte[] bytes = splatmap.EncodeToPNG(); - File.WriteAllBytes(Application.dataPath + "/../SavedScreen.png", bytes); - } - catch (UnityException) - { - EditorUtility.DisplayDialog("Not readable", "The 'New' splatmap must be readable. Make sure the type is Advanced and enable read/write and try again!", "Cancel"); - return; - } - - } - - void OnWizardUpdate() - { - helpString = "Export the existing splatmap of your terrain with a new one.\n1) Drag the embedded splatmap texture of your terrain to the 'Splatmap box'.\n2) Then drag the Exportment splatmap texture to the 'New' box\n3) Then hit 'Export'."; - isValid = (splatmap != null); - } -} \ No newline at end of file diff --git a/unity/Assets/Scripts/ExportSplatmap.cs.meta b/unity/Assets/Scripts/ExportSplatmap.cs.meta deleted file mode 100644 index 5350905..0000000 --- a/unity/Assets/Scripts/ExportSplatmap.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c53a1a0915e1c234d93a08f91a03ceea -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/unity/Assets/Scripts/ReplaceSplatmap.cs b/unity/Assets/WorldMachine/ReplaceSplatmap.cs similarity index 100% rename from unity/Assets/Scripts/ReplaceSplatmap.cs rename to unity/Assets/WorldMachine/ReplaceSplatmap.cs diff --git a/unity/Assets/Scripts/ReplaceSplatmap.cs.meta b/unity/Assets/WorldMachine/ReplaceSplatmap.cs.meta similarity index 100% rename from unity/Assets/Scripts/ReplaceSplatmap.cs.meta rename to unity/Assets/WorldMachine/ReplaceSplatmap.cs.meta