#!#! #! #!#! #!#! #!#! #!#! #!#! #!#! #!#!#!#! #!#! #!#! #! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!20022003 ROUTE_COMPLETE SET_TO no created_date SET_TO 20181016">#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#! #!#! #!#! #!#! #!#!FME_PYTHON_VERSION 27#!START_HEADER#!START_WB_HEADER READER_TYPE MULTI_READER WRITER_TYPE NULL WRITER_KEYWORD NULL_DEST NULL_DEST_DATASET空#!END_WB_HEADER#!START_WB_HEADER#!END_WB_HEADER#!END_HEADER LOG_FILENAME “$(FME_MF_DIR)ListtoFeatures.log” LOG_APPEND NO LOG_FILTER_MASK -1 LOG_MAX_FEATURES 200个LOG_MAX_RECORDED_FEATURES 200 FME_REPROJECTION_ENGINE FME FME_IMPLICIT_CSMAP_REPROJECTION_MODE自动FME_GEOMETRY_HANDLING增强FME_STROKE_MAX_DEVIATION 0#------------------------------------------------------------------------ MULTI_READER_CONTINUE_ON_READER_FAILURE无#------------------------------------------------------------------------- MACRO WORKSPACE_NAME ListtoFeatures MACRO FME_VIEWER_APP fmedatainspector DEFAULT_MACRO WB_CURRENT_CONTEXT#------------------------------------------------------------------------- TCL2 PROC Creator_CoordSysRemover {} {全球FME_CoordSys; set FME_CoordSys {}; } MACRO Creator_XML NOT_ACTIVATED MACRO Creator_CLASSIC NOT_ACTIVATED MACRO Creator_2D3D 2D_GEOMETRY MACRO Creator_COORDS INCLUDE [如果{{几何对象} == {几何对象}} {{放MACRO Creator_XML *}}] INCLUDE [如果{{几何对象} == {2D坐标列表}} {{放MACRO Creator_2D3D 2D_GEOMETRY};放{MACRO Creator_CLASSIC *}}] INCLUDE [如果{{几何对象} == {三维坐标列表}} {{放MACRO Creator_2D3D 3D_GEOMETRY};看跌期权{MACRO Creator_CLASSIC *}}]有[如果{{几何对象} == {2D最小/最大框}} {集评论{我们需要把它们了minX MINY maxX的美星的COORDS为坐标的完整列表多边形};集splitCoords [分裂[字符串装饰{ }]];如果{[llength $ splitcods] > 4} {set trimmedCoords {};如果{$item != {}} {lappend trimmedCoords $item}};设置splitCoords trimmedCoords美元;};如果{[llength $splitCoords] != 4} {error {Creator: Coordinate list is expected to be a space delimited list of four numbers as 'minx miny maxx maxy' - ' ' 是无效的};};集其minX [LINDEX $ splitCoords 0];集MINY [LINDEX $ splitCoords 1];集maxX的[LINDEX $ splitCoords 2];集MAXY [LINDEX $ splitCoords 3];看跌期权 “MACRO Creator_COORDS $ $了minX $ MINY $其minX美星$ maxX的$ $美星$ maxX的$ MINY $了minX MINY”;放{MACRO Creator_2D3D 2D_GEOMETRY};看跌期权{MACRO Creator_CLASSIC *}}] FACTORY_DEF $(Creator_XML)CreationFactory FACTORY_NAME Creator_XML_Creator CREATE_AT_END没有输出FEATURE_TYPE _____CREATED______ @Geometry(FROM_ENCODED_STRING, xml ? 版本= 1.0 编码= US_ASCII 独立= 没有 吗? 几何 尺寸= 2 几何 )FACTORY_DEF $ (Creator_CLASSIC) CreationFactory FACTORY_NAME Creator_CLASSIC_Creator (Creator_2D3D) (Creator_COORDS) CREATE_AT_END没有美元输出FEATURE_TYPE _____CREATED______ FACTORY_DEF * TeeFactory FACTORY_NAME Creator_Cloner输入FEATURE_TYPE _____CREATED______ @Tcl2 (Creator_CoordSysRemover) @CoordSys () NUMBER_OF_COPIES 1 COPY_NUMBER_ATTRIBUTE“_creation_instance”输出FEATURE_TYPE Creator_CREATED fme_feature_type创造者FACTORY_DEF * BranchingFactory Creator_CREATED FACTORY_NAME”布兰凯尔1 4”输入FEATURE_TYPE Creator_CREATED TARGET_FACTORY " $ (WB_CURRENT_CONTEXT) _CREATOR_BRANCH_TARGET“MAXIMUM_COUNT没有输出通过FEATURE_TYPE * # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - FACTORY_DEF * TeeFactory FACTORY_NAME”(WB_CURRENT_CONTEXT)美元_CREATOR_BRANCH_TARGET“输入输出FEATURE_TYPE FEATURE_TYPE * * # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - FACTORY_DEF {*} AttrSetFactory FACTORY_NAME AttributeCreator创建的MULTI_FEATURE_MODE没有NULL_ATTR_MODE NO_OP attrset_create__missing_fdiv ATTR_ACTION {"" "ROUTE_NUM" "SET_TO" "4003 2002年 2003" } {ATTR_ACTION “” “ROUTE_COMPLETE” “SET_TO” “没有”} {ATTR_ACTION “” “CREATED_DATE” “SET_TO”“2018 10 16”}输出输出FEATURE_TYPE AttributeCreator_OUTPUT # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Tcl2设置AttributeSplitter_94ac286e_f3c6_4414_98e9_96e7c64574432_splitDelim [FME_DecodeText { }];如果{[正则表达式{^([1-9] [0-9] * S)+ $} [组AttributeSplitter_94ac286e_f3c6_4414_98e9_96e7c64574432_splitDelim]]} {集AttributeSplitter_94ac286e_f3c6_4414_98e9_96e7c64574432_splitWidths [分裂[regsub -all {S $} { }{}]s];{全局AttributeSplitter_94ac286e_f3c6_4414_98e9_96e7c64574432_splitWidths;设置源[FME_GetAttribute [FME_DecodeText {ROUTE_NUM}];设置attrNum 0;设置listName [FME_DecodeText {ROUTE_NUM}];设置attrPos 0;设置keepEmptyParts [string = {No} {No}];[set AttributeSplitter_94ac286e_f3c6_4414_98e9_96e7c64574432_splitWidths] {set endPos [expr $attrPos + $width - 1];设置位[字符串范围$source $attrPos $endPos];设置部分[字符串修剪$bit]; if { $keepEmptyParts || $part != \"\" } { FME_SetAttribute "$listName{$attrNum}" $part; incr attrNum; }; incr attrPos $width; }; }; } else { proc AttributeSplitter_doSplit {} { global AttributeSplitter_94ac286e_f3c6_4414_98e9_96e7c64574432_splitDelim; set delim [set AttributeSplitter_94ac286e_f3c6_4414_98e9_96e7c64574432_splitDelim]; set delimLength [string length $delim]; set source [FME_GetAttribute [FME_DecodeText {ROUTE_NUM}]]; set keepEmptyParts [string equal {No} {No}]; set bits {}; set startIndex 0; set nextIndex [string first $delim $source $startIndex]; while {$nextIndex >= 0} { lappend bits [string range $source $startIndex [expr $nextIndex-1]]; set startIndex [expr $nextIndex + $delimLength]; set nextIndex [string first $delim $source $startIndex]; }; lappend bits [string range $source $startIndex end]; set listName [FME_DecodeText {ROUTE_NUM}]; set attrNum 0; foreach bit $bits { set trimmedPart [string trim $bit]; if { $keepEmptyParts || $trimmedPart != \"\" } { FME_SetAttribute "$listName{$attrNum}" $trimmedPart; incr attrNum; }; } } } FACTORY_DEF * TeeFactory FACTORY_NAME AttributeSplitter INPUT FEATURE_TYPE AttributeCreator_OUTPUT OUTPUT FEATURE_TYPE AttributeSplitter_OUTPUT @Tcl2(AttributeSplitter_doSplit) # ------------------------------------------------------------------------- FACTORY_DEF * ElementFactory FACTORY_NAME ListExploder INPUT FEATURE_TYPE AttributeSplitter_OUTPUT LIST_NAME "ROUTE_NUM{}" CLONE_GEOMETRY ATTR_ACCUM_MODE "HANDLE_CONFLICT" ATTR_CONFLICT_RES "INCOMING_IF_CONFLICT" INCOMING_PREFIX " “输出NOLIST FEATURE_TYPE ListExploder_ @RemoveAttributes(ElementFactory.baseCloned) fme_rejection_code missing_list DEFAULT_MACRO _WB_BYPASS_TERMINATION No FACTORY_DEF * TeeFactory FACTORY_NAME listdynamder_ 输入FEATURE_TYPE ListExploder_ 输出失败FEATURE_TYPE * @Abort(编码,ListExploder 产量 一个 被拒绝 特征。 继续 翻译 什么时候 特征 被拒绝 改变 工作空间 参数 翻译 被拒绝 特征 处理 继续 翻译 )#------------------------------------------------------------------------- FACTORY_DEF * RoutingFactory FACTORY_NAME “目的地功能类型的路由相关器” COMMAND_PARM_EVALUATION SINGLE_PASS输入FEATURE_TYPE * FEATURE_TYPE_ATTRIBUTE __wb_out_feat_type__输出连FEATURE_TYPE *输出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 “最终输出Nuker” INPUTFEATURE_TYPE __nuke_me__