#!#! #! #! #!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #! #!#!#! #!#!#!#! #!#! #!#!#! #!

Why are 4 objects and not 5 objects getting passed out?


Should there not be:

  1. A-1
  2. A-2
  3. A-3
  4. B-2
  5. B-4
" POSITION="1197.81 616.509" TOP_LEFT="1197.81 616.509" BOTTOM_RIGHT="1947.81 566.509" BOUNDING_RECT="1197.81 616.509 750 50" ORDER="5e+14" FOLLOW_ANCHOR="true" INFO_NODE="false" COLOUR="1,1,0.784314,0.196078" SIZE_POLICY="10" COMMENT_TYPE="REGULAR" ANCHORED_NODE="0">
#!

This workflow will pass out 5 Objects

(result Similar to ArcGIS Spatial Join with one-to-many option chosen)

  1. A-1
  2. A-2
  3. A-3
  4. B-2
  5. B-4
" POSITION="2506.28 -984.385" TOP_LEFT="2506.28 -984.385" BOTTOM_RIGHT="3256.28 -1034.38" BOUNDING_RECT="2506.28 -984.385 750 50" ORDER="5e+14" FOLLOW_ANCHOR="true" INFO_NODE="false" COLOUR="0.333333,0.666667,1,0.192157" SIZE_POLICY="10" COMMENT_TYPE="REGULAR" ANCHORED_NODE="0">
#!

This workflow will pass out 2 Objects

  1. A: 1,2,3
  2. B: 2,4
" POSITION="2506.28 -682.256" TOP_LEFT="2506.28 -682.256" BOTTOM_RIGHT="3256.28 -732.256" BOUNDING_RECT="2506.28 -682.256 750 50" ORDER="5e+14" FOLLOW_ANCHOR="true" INFO_NODE="false" COLOUR="0.333333,0.666667,1,0.192157" SIZE_POLICY="10" COMMENT_TYPE="REGULAR" ANCHORED_NODE="0">
#!

This workflow will pass out 2 Objects

With list data.

" POSITION="1952.14 -472.376" TOP_LEFT="1952.14 -472.376" BOTTOM_RIGHT="2702.14 -522.376" BOUNDING_RECT="1952.14 -472.376 750 50" ORDER="5e+14" FOLLOW_ANCHOR="true" INFO_NODE="false" COLOUR="0.333333,0.666667,1,0.192157" SIZE_POLICY="10" COMMENT_TYPE="REGULAR" ANCHORED_NODE="0">
#!

This workflow will pass out 14 Objects

And is similar to ArcGIS Union Operation.

" POSITION="1952.14 -246.498" TOP_LEFT="1952.14 -246.498" BOTTOM_RIGHT="2702.14 -296.498" BOUNDING_RECT="1952.14 -246.498 750 50" ORDER="5e+14" FOLLOW_ANCHOR="true" INFO_NODE="false" COLOUR="0.333333,0.666667,1,0.192157" SIZE_POLICY="10" COMMENT_TYPE="REGULAR" ANCHORED_NODE="0">
#!
#! #!#! #!#! #! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#! #!#! #!#! #!#!
FME_PYTHON_VERSION 27 GUI忽略SourceDataset_ESRISHAPE_1,ESRISHAPE_IN_ENCODING_ESRISHAPE_1,ESRISHAPE_IN_EXPOSE_ATTRS_GROUP_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 DEFAULT_MACRO SourceDataset_ESRISHAPE $(FME_MF_DIR)testInput.zip GUI多文件SourceDataset_ESRISHAPE形状文件(* .shp)| * .shp | commetting_shapefiles(*。shz)| * .shz | all_files(*)| *源Esri shapefile:包括[if {$(sourceatataset_esrishape)} == {}} {puts_real {参数'sourceatataset_esrishape'必须给出一个值。};退出1;};]#!start_header#!START_WB_HEADER READER_TYPE ESRISHAPE READER_KEYWORD ESRISHAPE_1 READER_GEN_DIRECTIVES CHECK_NUMERIC_FIELDS,是的,SEARCH_ENVELOPE_MAXX,0,MEASURES_AS_Z,不,高级,,几何,, SEARCH_ENVELOPE_COORDINATE_SYSTEM ,, READER_PARAMETERS ,, USE_SEARCH_ENVELOPE,NO,SIMPLE_DONUT_GEOMETRY,简单,REPORT_BAD_GEOMETRY,不,SEARCH_ENVELOPE_MINY,0,EXPOSE_ATTRS_GROUP ,, UPPER_CASE_ATTR_NAMES,no,search_envelope_minx,0,trim_preceding_spaces,是,编码,_ merge_schemas,是,esrishape_expose_format_attrs ,, search_envelope_maxy,0,dissolve_holes,no,clip_to_envelope,没有writer_type null writer_keyword null_dest null_dest_dataset null#!end_wb_header#!start_wb_header宏wb_keyword“esrishape_1”#!end_wb_header#!start_source_header esrishape Esrishape_1#============================================================================ # 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_1 $(SourceDataset)} \ } ] #! END_WB_HEADER #! START_SOURCE_HEADER ESRISHAPE ESRISHAPE_1 DEFAULT_MACRO SourceDataset_ESRISHAPE_1 $(SourceDataset_ESRISHAPE) GUI MULTIFILE SourceDataset_ESRISHAPE_1 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_1_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_1 no ESRISHAPE_1_DISSOLVE_HOLES "$(ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_1)" # ============================================================================ # 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_1 No ESRISHAPE_1_UPPER_CASE_ATTR_NAMES "$(ESRISHAPE_IN_UPPER_CASE_ATTR_NAMES_ESRISHAPE_1)" # ============================================================================ # 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_1 ESRISHAPE_1_ENCODING "$(ESRISHAPE_IN_ENCODING_ESRISHAPE_1)" GUI OPTIONAL ENCODING ESRISHAPE_IN_ENCODING_ESRISHAPE_1 ANSI%SYSTEM%BIG5%EUC%HKBIG5%ISO%OEM%SJIS%UTF-8%CP437%CP708%CP720%CP737%CP775%CP850%CP852%CP855%CP857%CP860%CP861%CP862%CP863%CP864%CP865%CP866%CP869%CP874%CP932%CP936%CP950%CP1250%CP1251%CP1252%CP1253%CP1254%CP1255%CP1256%CP1257%CP1258%ISO8859-1%ISO8859-2%ISO8859-3%ISO8859-4%ISO8859-5%ISO8859-6%ISO8859-7%ISO8859-8%ISO8859-9%ISO-8859-11%ISO8859-13%ISO8859-15%WINDOWS-874 Character Encoding #Note: Using the search envelope requires the shape index files (.sbnand.sbx) DEFAULT_MACRO ESRISHAPE_IN_EXPOSE_ATTRS_GROUP_ESRISHAPE_1 ESRISHAPE_1_EXPOSE_ATTRS_GROUP "$(ESRISHAPE_IN_EXPOSE_ATTRS_GROUP_ESRISHAPE_1)" GUI OPTIONAL DISCLOSUREGROUP ESRISHAPE_IN_EXPOSE_ATTRS_GROUP_ESRISHAPE_1 ESRISHAPE_IN_ESRISHAPE_EXPOSE_FORMAT_ATTRS Schema Attributes # 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_SEARCH_ENVELOPE_MINX_ESRISHAPE_1 0 ESRISHAPE_1_SEARCH_ENVELOPE "$(ESRISHAPE_IN_SEARCH_ENVELOPE_MINX_ESRISHAPE_1)" GUI OPTIONAL FLOAT ESRISHAPE_IN_SEARCH_ENVELOPE_MINX_ESRISHAPE_1 Minimum X: # =========================================================================== DEFAULT_MACRO ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_1 0 ESRISHAPE_1_SEARCH_ENVELOPE "$(ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_1)" GUI OPTIONAL FLOAT ESRISHAPE_IN_SEARCH_ENVELOPE_MINY_ESRISHAPE_1 Minimum Y: # =========================================================================== DEFAULT_MACRO ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_1 0 ESRISHAPE_1_SEARCH_ENVELOPE "$(ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_1)" GUI OPTIONAL FLOAT ESRISHAPE_IN_SEARCH_ENVELOPE_MAXX_ESRISHAPE_1 Maximum X: # =========================================================================== DEFAULT_MACRO ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_1 0 ESRISHAPE_1_SEARCH_ENVELOPE "$(ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_1)" GUI OPTIONAL FLOAT ESRISHAPE_IN_SEARCH_ENVELOPE_MAXY_ESRISHAPE_1 Maximum Y: # =========================================================================== DEFAULT_MACRO ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_1 ESRISHAPE_1_SEARCH_ENVELOPE "$(ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_1)" GUI OPTIONAL COORDSYS ESRISHAPE_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_ESRISHAPE_1 Search Envelope Coordinate System: # =========================================================================== DEFAULT_MACRO ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_1 NO ESRISHAPE_1_CLIP_TO_ENVELOPE "$(ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_1)" GUI OPTIONAL CHECKBOX ESRISHAPE_IN_CLIP_TO_ENVELOPE_ESRISHAPE_1 YES%NO Clip to Search Envelope DEFAULT_MACRO ESRISHAPE_IN_CHECK_NUMERIC_FIELDS_ESRISHAPE_1 yes ESRISHAPE_1_CHECK_NUMERIC_FIELDS "$(ESRISHAPE_IN_CHECK_NUMERIC_FIELDS_ESRISHAPE_1)" DEFAULT_MACRO ESRISHAPE_IN_ADVANCED_ESRISHAPE_1 GUI OPTIONAL DISCLOSUREGROUP ESRISHAPE_IN_ADVANCED_ESRISHAPE_1 ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_1%ESRISHAPE_IN_GEOMETRY_ESRISHAPE_1 Advanced DEFAULT_MACRO ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_1 yes ESRISHAPE_1_TRIM_PRECEDING_SPACES "$(ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_1)" GUI CHOICE ESRISHAPE_IN_TRIM_PRECEDING_SPACES_ESRISHAPE_1 yes%no Trim Preceding Spaces DEFAULT_MACRO ESRISHAPE_IN_GEOMETRY_ESRISHAPE_1 GUI OPTIONAL DISCLOSUREGROUP 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 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_1 simple ESRISHAPE_1_SIMPLE_DONUT_GEOMETRY "$(ESRISHAPE_IN_SIMPLE_DONUT_GEOMETRY_ESRISHAPE_1)" GUI LOOKUP_CHOICE ESRISHAPE_IN_SIMPLE_DONUT_GEOMETRY_ESRISHAPE_1 "\"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_1 no ESRISHAPE_1_MEASURES_AS_Z "$(ESRISHAPE_IN_MEASURES_AS_Z_ESRISHAPE_1)" GUI CHOICE ESRISHAPE_IN_MEASURES_AS_Z_ESRISHAPE_1 yes%no Treat Measures as Elevation # ============================================================================ # The following keyword sets whether the reader dissolves holes in donuts. ESRISHAPE_1_DISSOLVE_HOLES "$(ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_1)" GUI CHOICE ESRISHAPE_IN_DISSOLVE_HOLES_ESRISHAPE_1 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_1 no ESRISHAPE_1_REPORT_BAD_GEOMETRY "$(ESRISHAPE_IN_REPORT_BAD_GEOMETRY_ESRISHAPE_1)" GUI CHOICE ESRISHAPE_IN_REPORT_BAD_GEOMETRY_ESRISHAPE_1 yes%no Report Geometry Anomalies # =========================================================================== DEFAULT_MACRO ESRISHAPE_IN_NETWORK_AUTHENTICATION_ESRISHAPE_1 ESRISHAPE_1_NETWORK_AUTHENTICATION "$(ESRISHAPE_IN_NETWORK_AUTHENTICATION_ESRISHAPE_1)" GUI OPTIONAL AUTHENTICATOR ESRISHAPE_IN_NETWORK_AUTHENTICATION_ESRISHAPE_1 CONTAINER%GROUP%CONTAINER_TITLE%"Network Authentication"%PROMPT_TYPE%NETWORK Network Authentication # =========================================================================== DEFAULT_MACRO ESRISHAPE_IN_ATTRIBUTE_READING_ESRISHAPE_1 ALL ESRISHAPE_1_ATTRIBUTE_READING "$(ESRISHAPE_IN_ATTRIBUTE_READING_ESRISHAPE_1)" ESRISHAPE_1_DATASET "$(SourceDataset_ESRISHAPE_1)" #! END_SOURCE_HEADER #! START_WB_HEADER #! END_WB_HEADER #! END_HEADER LOG_FILENAME "$(FME_MF_DIR)FME_SpatialFilter_Query__ver3_esrishape2none.log" LOG_APPEND NO LOG_MAX_FEATURES 200 LOG_MAX_RECORDED_FEATURES 200 FME_REPROJECTION_ENGINE FME FME_IMPLICIT_CSMAP_REPROJECTION_MODE Auto FME_GEOMETRY_HANDLING Enhanced FME_STROKE_MAX_DEVIATION 0 LOG_FILTER_MASK -1 DEFAULT_MACRO DATASET_KEYWORD_ESRISHAPE_1 ESRISHAPE_1 # ------------------------------------------------------------------------- ESRISHAPE_1_READER_META_ATTRIBUTES fme_feature_type # ------------------------------------------------------------------------- MULTI_READER_CONTINUE_ON_READER_FAILURE No # ------------------------------------------------------------------------- MACRO WORKSPACE_NAME FME_SpatialFilter_Query__ver3_esrishape2none 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 Areas SHAPE_GEOMETRY shape_polygon ID_Area char(1) # ------------------------------------------------------------------------- ESRISHAPE_1_DEF Tiles SHAPE_GEOMETRY shape_polygon ID_Tile short # ------------------------------------------------------------------------- FACTORY_DEF * RoutingFactory FACTORY_NAME "Router and Unexpected Input Remover" COMMAND_PARM_EVALUATION SINGLE_PASS MULTI_READER_KEYWORD ESRISHAPE_1 INPUT FEATURE_TYPE * ROUTE ESRISHAPE ESRISHAPE_1::Areas TO FME_GENERIC ::Areas ALIAS_GEOMETRY ROUTE ESRISHAPE ESRISHAPE_1::Tiles TO FME_GENERIC ::Tiles ALIAS_GEOMETRY MERGE_INPUT Yes OUTPUT ROUTED FEATURE_TYPE * ESRISHAPE_1_MERGE_DEF ESRISHAPE_1::Areas EXACT Areas ESRISHAPE_1_MERGE_DEF ESRISHAPE_1::Tiles EXACT Tiles # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME "Areas (ESRISHAPE_1) Splitter" INPUT FEATURE_TYPE Areas OUTPUT FEATURE_TYPE Areas_ESRISHAPE_1_0_YUsXnG7zAn4= OUTPUT FEATURE_TYPE Areas_ESRISHAPE_1_1_ZtxOxHul9m8= OUTPUT FEATURE_TYPE Areas_ESRISHAPE_1_2_KF/RiccXrmo= # ------------------------------------------------------------------------- FACTORY_DEF * TeeFactory FACTORY_NAME "Tiles (ESRISHAPE_1) Splitter" INPUT FEATURE_TYPE Tiles OUTPUT FEATURE_TYPE Tiles_ESRISHAPE_1_0_BJkYfs3SF8E= OUTPUT FEATURE_TYPE Tiles_ESRISHAPE_1_1_dCChlxTfzWM= OUTPUT FEATURE_TYPE Tiles_ESRISHAPE_1_2_L4wp5EBiexk= DEFAULT_MACRO WB_CURRENT_CONTEXT # ------------------------------------------------------------------------- FACTORY_DEF * TransformFact:9:SpatialFilter FACTORY_NAME SpatialFilter FACTORY_META_PARAMS TRANSFORMER_NAME:SpatialFilter TRANSFORMER_PARAMS:XFORMER_NAME,SpatialFilter,TRANSFORMER_GROUP,,GROUP_BY,,TESTS_GROUP,,AGGREGATE_HANDLING,Yes,PREDICATES,INTERSECTS,USE_BOUNDING_BOX,No,BASE_TYPE,Multiple 过滤器,parameter_group ,, predattr,_predicate,pass_criTeria,通过 过滤器,Curve_boundary_rule_param,默认 规则,ATTR_ACCUM_GROUP,不,ATTR_ACCUM_MODE, 没用过 ,attr_conflict_res, 没用过 ,attr_prefix, 没用过 MULTI_PROCESS "EXTREME" GROUPS_ARE_ORDERED No INPUT Filter FEATURE_TYPE Areas_ESRISHAPE_1_0_YUsXnG7zAn4= INPUT Candidate FEATURE_TYPE Tiles_ESRISHAPE_1_0_BJkYfs3SF8E= OUTPUT PASSED FEATURE_TYPE SpatialFilter_PASSED OUTPUT feature_type spatialfilter_ default_macro _wb_bypass_termination no factory_def * teefactory factory_name spatialfilter_ 输入feature_type spatialfilter_ 输出失败feature_type * @abort(编码,spatialfilter 输出 一个 拒绝了 特征。 继续 翻译 什么时候 特征 拒绝了 改变 工作空间 参数 翻译 拒绝了 特征 处理 继续 翻译 ) # ------------------------------------------------------------------------- # 假设是工作区临时dir已经设置和创建。见controldefs.cpp - ControlDefs :: writeVisualizerTempDir DEFAULT_MACRO WORKSPACE_TEMP_DIR FACTORY_DEF * InspectorFactory FACTORY_NAME insSpatialFilter_Prepper COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE SpatialFilter_PASSED GROUP_ATTRIBUTE __inspector_feature_type_attr__ GROUP_BY GROUP_ATTRIBUTE_PREFIX insSpatialFilter RASTER_REDUCTION NoReduction POINT_CLOUD_REDUCTION NO_THINNING输出结果FEATURE_TYPE __viewme__#现在将所有功能集成在录像机,改变他们#功能类型变换器名称使它们看起来很好Default_Macro Visualizer_feature_file $(workspace_temp_dir)/ $(safespace_temp_dir).ffs default_亚搏在线macro visualizer_create_spatial_index no#[pr#45549]数据检查器将限制它在Win32上读取的最大功能数量。我们将相应地使用max_features_to_record指令限制我们在此处录制的#功能的数量。FACTORY_DEF * RecorderFactory FACTORY_NAME insSpatialFilter_Recorder COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE __viewme__ _wb_termination_feature是@FeatureType(TERMINATOR_ @值(_wb_termination_xformer))输入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 id_tile,varchar 255. ,_predicate,varchar 255. Mode Record Store_scanned_metadata record_directly_to_disk是max_features_to_record win32 2000000#--------------------------------------------------------------------------------------------= PREDICATE “相交” LIST_NAME “_relationships” SELECTED SUCCESS_ATTR “_related_candidates” REJECT_INVALID_GEOM是REJECT_INVALID_PREDICATES是REJECT_RASTERS否CUSTOM_MULTI_HANDLING是CURVE_BOUNDARY_RULE ENDPOINTS_MOD2 CALCULATE_CARDINALITY否MERGE_INCOMING_ATTR YES ATTR_ACCUM_MODE PREFIX_INCOMING ATTR_CONFLICT_RES LIST_ATTRS_TO_INCLUDE {ID_Tile} LIST_ATTRS_TO_INCLUDE_MODE Incoming_attr_prefix“_sup”输出标记feature_type spatialrelator_output输出拒绝feature_type spatialrelator_ FACTORY_DEF * TeeFactory FACTORY_NAME “SpatialRelator输出分配器” INPUT FEATURE_TYPE SpatialRelator_Output OUTPUT FEATURE_TYPE SpatialRelator_Output_0_Zt / koDaSfXg = OUTPUT FEATURE_TYPE SpatialRelator_Output_1_iTCVv1Mebdw = OUTPUT FEATURE_TYPE SpatialRelator_Output_2_VWDiDCuBhho = DEFAULT_MACRO _WB_BYPASS_TERMINATION否FACTORY_DEF * TeeFactory FACTORY_NAME SpatialRelator_ 输入FEATURE_TYPE SpatialRelator_ 输出失败feature_type * @abort(编码,空间缩放器 输出 一个 拒绝了 特征。 继续 翻译 什么时候 特征 拒绝了 改变 工作空间 参数 翻译 拒绝了 特征 处理 继续 翻译 ) # ------------------------------------------------------------------------- # 假设是工作区临时dir已经设置和创建。见controldefs.cpp - ControlDefs :: writeVisualizerTempDir DEFAULT_MACRO WORKSPACE_TEMP_DIR FACTORY_DEF * InspectorFactory FACTORY_NAME insSpatialRelator_Prepper COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE SpatialRelator_Output_2_VWDiDCuBhho = GROUP_ATTRIBUTE __inspector_feature_type_attr__ GROUP_BY GROUP_ATTRIBUTE_PREFIX insSpatialRelator RASTER_REDUCTION NoReduction POINT_CLOUD_REDUCTION NO_THINNING输出结果FEATURE_TYPE __viewme__#现在将所有功能集成在录像机,改变他们#特征类型到变换器名称,以便他们查看默认的default_macro visualizer_feature_file $(workspace_temp_dir)/ $(safeSt_ffs_name).ffs default_mac亚搏在线ro visualizer_create_spatial_index no#[pr#45549]数据检查器将限制它在Win32上读取的最大功能数量。我们将相应限制我们使用max_features_to_record指令记录的#特征数量。FACTORY_DEF * RecorderFactory FACTORY_NAME insSpatialRelator_Recorder COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE __viewme__ _wb_termination_feature是@FeatureType(TERMINATOR_ @值(_wb_termination_xformer))输入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 id_area,varchar 255. ,_supid_tile,varchar 255. 、_related_candidates varchar 255. Mode Record Store_scanned_metadata record_directly_to_disk是max_features_to_record win32 2000000#---------------------------------------------------------------------- }];Regsub -all \“{} \”[fme_decodeText {_relationships .ID_Tile}] [FME_DecodeText { D + listconcatenator__listpattern;set listconcatenator__listpattern ^ $ listconcatenator__listpattern $;tcl2 proc listconcatenator__concatenate {} {upvar \#0 listConcatenator__separator sectrator listConcatenator__ListPattern listPattern;设置Allattrs [lsort -dictionary [fme_attributenames]];set keepempyparts [string等于{no} {no}];设置结果{};foreachattrname $ allattrs {if {[regexp $ listpattern $ attrname]} {set attrvalue [fme_getattribute $ attrname];如果{$ keepeptys ||$ attrvalue!= {}} {lappend结果$ attrvalue;}; }; }; FME_SetAttribute {"concatID_Tile"} [join $result $separator]; } FACTORY_DEF * TeeFactory FACTORY_NAME ListConcatenator INPUT FEATURE_TYPE SpatialRelator_Output_0_Zt/koDaSfXg= OUTPUT FEATURE_TYPE ListConcatenator_OUTPUT @Tcl2(ListConcatenator__Concatenate) # ------------------------------------------------------------------------- # Assumption is that the workspace temp dir has been already set and created. See controldefs.cpp - ControlDefs::writeVisualizerTempDir DEFAULT_MACRO WORKSPACE_TEMP_DIR FACTORY_DEF * InspectorFactory FACTORY_NAME insListConcatenator_Prepper COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE ListConcatenator_OUTPUT GROUP_ATTRIBUTE __inspector_feature_type_attr__ GROUP_BY GROUP_ATTRIBUTE_PREFIX insListConcatenator 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 insListConcatenator_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 ID_Area,varchar 255. ,_supid_tile,varchar 255. 、_related_candidates varchar 255. 、concatID_Tile varchar 255. Mode Record Store_scanned_metadata record_directly_to_disk是max_features_to_record win32 2000000#----------------------------------------------------------------------------------------------------20--。地“clone_geometryattr_accum_mode”suppl_conflict“attr_conflict_res”incoming_if_conflict“incoming_prefix” “输出元素feature_type listexploder_elements @removeattributes(exporthfactory.basecloned)输出nolist feature_type listExploder_ @RemoveAttributes(ElementFactory.baseCloned) fme_rejection_code MISSING_PARAMETER_LIST DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME ListExploder_ 输入feature_type listexploder_ 输出失败feature_type * @abort(编码,list exploder 输出 一个 拒绝了 特征。 继续 翻译 什么时候 特征 拒绝了 改变 工作空间 参数 翻译 拒绝了 特征 处理 继续 翻译 ) # ------------------------------------------------------------------------- # 假设是工作区临时dir已经设置和创建。见controldefs.cpp - ControlDefs :: writeVisualizerTempDir DEFAULT_MACRO WORKSPACE_TEMP_DIR FACTORY_DEF * InspectorFactory FACTORY_NAME insListExploder_Prepper COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE ListExploder_ELEMENTS GROUP_ATTRIBUTE __inspector_feature_type_attr__ GROUP_BY GROUP_ATTRIBUTE_PREFIX insListExploder RASTER_REDUCTION NoReduction POINT_CLOUD_REDUCTION NO_THINNING输出结果FEATURE_TYPE __viewme__#现在将所有功能集成在录像机,改变他们#功能类型变换器名称使它们看起来很好Default_Macro Visualizer_feature_file $(workspace_temp_dir)/ $(safespace_temp_dir).ffs default_亚搏在线macro visualizer_create_spatial_index no#[pr#45549]数据检查器将限制它在Win32上读取的最大功能数量。我们将相应地使用max_features_to_record指令限制我们在此处录制的#功能的数量。FACTORY_DEF * RecorderFactory FACTORY_NAME insListExploder_Recorder COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE __viewme__ _wb_termination_feature是@FeatureType(TERMINATOR_ @值(_wb_termination_xformer))输入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 id_area,varchar 255. ,_supid_tile,varchar 255. ,id_tile,varchar 255. ,de9im,varchar 255. 、_related_candidates varchar 255. ,_element_index.id,varchar 255. Mode Record Store_scanned_metadata record_directly_to_disk是max_features_to_record win32 2000000#---------------------------------------------------------------------------------------------------所有list_name“lst”list_attrs_to_include {id_tile} list_attrs_attrs_to_include_mode所选connect_z_mode first_wins deaggrege_input yoplopap_count_attribute _overlaps模式完整的输出poluegon feature_type areaOverlayer_area输出Illegul_Geom Feature_type AreaOropoverLayer_ default_macro _wb_bypass_termination no factory_def * teefactory factory_name areacaReaoverlayer_ 输入Feature_type AreaAreaOverLayer_ 输出失败Feature_type * @abort(编码,areaconareoOverlayer 输出 一个 拒绝了 特征。 继续 翻译 什么时候 特征 拒绝了 改变 工作空间 参数 翻译 拒绝了 特征 处理 继续 翻译 ) # ------------------------------------------------------------------------- # 假设是工作区临时dir已经设置和创建。看到controldefs.cpp——ControlDefs: writeVisualizerTempDir DEFAULT_MACRO WORKSPACE_TEMP_DIR FACTORY_DEF * InspectorFactory FACTORY_NAME insAreaOnAreaOverlayer_Prepper COMMAND_PARM_EVALUATION SINGLE_PASS输入FEATURE_TYPE AreaOnAreaOverlayer_AREA GROUP_ATTRIBUTE __inspector_feature_type_attr__ GROUP_BY GROUP_ATTRIBUTE_PREFIX insAreaOnAreaOverlayerRASTER_REDUCTION NoReduction POINT_CLOUD_REDUCTION no_thinke_output RESULT FEATURE_TYPE __viewme__ #现在将所有的特性路由到记录器中,将它们的#特性类型更改为转换器名称,这样它们就可以很好地查看DEFAULT_MACRO VISUALIZER_FEATURE_FILE $(WORKSPACE_TEMP_DIR)/$(SAFE_FFS_NAME)。亚搏在线数据检查器将限制它在WIN32上读取的特性的最大数量,因此我们将相应地限制我们使用MAX_FEATURES_TO_RECORD指令记录的特性的数量。Yes @FeatureType(TERMINATOR_@Value(_wb_termination_xformer))输入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)"检查员" $ (VISUALIZER_CREATE_SPATIAL_INDEX) "FSC_SCHEMA ID_Tile、varchar 255. ,id_area,varchar 255. ,_overlaps,varchar 255. Mode Record Store_scanned_metadata record_directly_to_disk是max_features_to_record win32 2000000#------------------------------------------------------------------------------------------------------输出路由功能_type *输出not_routed feature_type __nuke_me__ @ tcl2(“fme_statmessage 818059 [fme_getattribute fme_template_feature_feature_feature_type] 818060 818061 fme_warn”)#---------------------------------------------------------------- Factory_def * teefactoryfactory_name“最终输出nuker”输入feature_type __nuke_me__#-------------------------------------------------------------------------------- Factory_def * creationfactory create_at_end输出feature_type __nukeme__ @tcl(“如果[文件存在{$(workspace_temp_dir)}] {set文件[glob -nocomplin -directory {$(workspace_temp_dir)} -tails * .ffs];如果{[llength $ files]== 1} {set thefile {$(workspace_temp_dir)/};附加到文件[Lindex $文件0];eval fme_execute system \ 173 \ 042 $(fme_home_unix)/ fmedatainspector \ 042 --visualizer --single-application --delete-on-close --no-source-prompt -f ffs $ thefile&\ 175;} elsef {[llength $ files] == 0} {catch {file delest -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 INPUT FEATURE_TYPE __NUKEME__