#!#!

" warn_invalid_xform_param="Yes" ignore_reader_failure="No" begin_tcl="" workspace_version="1" requirements_keyword="none" max_log_features="200" usage="


" end_tcl="" fme_build_num="16494" zoom_scale="100" fme_implicit_csmap_reprojection_mode="Auto" last_save_date="2016-06-10T15:33:29" fme_stroke_max_deviation="0" source_routing_file="" fme_geometry_handling="Enhanced" begin_python="" history="" legal_terms_conditions="


" show_info_nodes="true" source="NONE" fme_document_guid="91d21af9-ca02-4de4-ba28-6673b7227aca" end_python="" description="


" log_file="" attr_type_encoding="SDF" fme_server_services="" doc_top_left="-984.385 -553.756" fme_document_priorguid="4ba12e4a-b208-4cb8-87a4-3aa7daeea0e7,52b6ee44-5945-42cf-9723-fc5022e5fda4,5817d783-d07a-4872-bbda-6a9ad6514f50,91fa0bcb-af61-496c-915d-185b0e6c8c37,89dfa116-080e-4fea-9ae8-8c83f3195c2d,e5af4ea1-9441-4248-ab3f-d9700b1e49fa,bca0cf40-fe69-4e70-85a3-c31358f9f1d4,beabe46d-b8d9-415e-bce2-5beaa0ece783,4001049e-f0d3-4f51-b602-d9ceef0d598d,43c546ae-b92b-4282-8087-68cb43ce320c,7b94d171-da54-41da-95a1-79ee1696d8ab,8d34dc4b-0832-47d6-881d-3f7d4212d344,9df7900f-c3f8-4036-8235-3cdf7be08efd,3e82ed70-1ad4-409d-ab9c-6ea13af2cb02,4d6f0efa-5587-4362-a925-6d4cf7c3ecb2" password="" title="" destination_routing_file="" category="" show_annotations="true" fme_reprojection_engine="FME" multi_writer_dataset_order="BY_ID" destination="NONE" python_compatibility="27" log_max_recorded_features="200" redirect_terminators="NONE" last_save_build="FME(R) 2016.1.0.1 (20160516 - Build 16494 - WIN32)" explicit_bookmark_order="false" view_position="-984.385 987.51" doc_extents="6876.06 1244.39"> #! #! #!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #! #!#!#!#!#!#!#! #!#! #!#!#!#!#!#!#!#!#!#!#! #!

The FeatureWriter creates SQLite (Non-Spatial) database and saves (row index, column index) of all alive cells in the first generation into a table.

Each time the SQLExecutor receives a feature, it updates the table for the new generation and then reads the records. i.e. (r, c) of alive cells in the new generation.

The SQLite file will be created in a temporary folder under the FME_TEMP and removed automatically when the translation has completed.

Microsoft Access can also be used instead of SQLite and it may be more efficient.

" POSITION="-221.833 -273.753" TOP_LEFT="-221.833 -273.753" BOTTOM_RIGHT="2888.31 -553.756" BOUNDING_RECT="-221.833 -273.753 3110.14 280.003" ORDER="5e+14" FOLLOW_ANCHOR="true" INFO_NODE="false" COLOUR="1,1,0.784314,0.192157" SIZE_POLICY="10" COMMENT_TYPE="REGULAR" ANCHORED_NODE="0">
#!
#! #!#! #!


" TOP_LEFT="-984.385 690.631" BOTTOM_RIGHT="649.845 219.258" BOUNDING_RECT="-984.385 690.631 1634.23 471.373" STICKY="true" COLOUR="0.619608,0.564706,0.211765" CONTENTS="1 6 3 5 2 ">
#!


" TOP_LEFT="2928.14 618.881" BOTTOM_RIGHT="5218.19 154.131" BOUNDING_RECT="2928.14 618.881 2290.05 464.75" STICKY="true" COLOUR="0.666667,0.666667,1" CONTENTS="35 24 31 32 50 33 41 ">
#!


" TOP_LEFT="722.295 389.496" BOTTOM_RIGHT="2888.31 -225.002" BOUNDING_RECT="722.295 389.496 2166.01 614.498" STICKY="true" COLOUR="0.737255,0.14902,0.184314" CONTENTS="7 49 39 10 40 47 14 ">
#!


" TOP_LEFT="-574.593 83.6305" BOTTOM_RIGHT="653.387 -225.002" BOUNDING_RECT="-574.593 83.6305 1227.98 308.633" STICKY="true" COLOUR="0.666667,1,1" CONTENTS="43 44 45 ">
#!


" TOP_LEFT="2935.16 123.624" BOTTOM_RIGHT="5218.19 -286.376" BOUNDING_RECT="2935.16 123.624 2283.03 410" STICKY="true" COLOUR="0.392157,0.576471,0.603922" CONTENTS="53 54 63 62 55 57 59 ">
#!
#! #! #!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!,SQLITE3_OVERWRITE_FILE,"OPTIONAL ACTIVECHECK Yes%No,DATASET_TEMPLATE",SQLITE3OverwriteExistingDatabase:">#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!">#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#!#! #!#! #!#! #!#! #!#!
FME_PYTHON_VERSION 27 GUI IGNORE DestDataset_GIFRASTER_1 DEFAULT_MACRO GENERATIONS 30 GUI INTEGER GENERATIONS数量:DEFAULT_MACRO NUMCOLS 30 GUI INTEGER NUMCOLS列数:DEFAULT_MACRO NUMROWS 30 GUI INTEGER NUMROWS行数:DEFAULT_MACRO INI_RATE 30 GUI RANGE_SLIDER INI_RATE 0%100%0第一代活细胞率:DEFAULT_MACRO SCALE 10 GUI INTEGER SCALE Cell Size (pixels): DEFAULT_MACRO DestDataset_GIFRASTER game-of-life-sql GUI DIRNAME DestDataset_GIFRASTER Destination GIF Folder: DEFAULT_MACRO CELL_COLOR 0,0,0 GUI COLOR_PICK CELL_COLOR Cell Color:DEFAULT_MACRO BACKGROUND_COLOR 0.8, 0.8, 0.8 GUI COLOR_PICK BACKGROUND_COLOR背景颜色:包括PYTHON def ParamFunc (): r =浮动(FME_MacroValues [' INI_RATE ']) / 100.0 n = int (FME_MacroValues [' NUMCOLS ']) * int (FME_MacroValues [' NUMROWS '])返回int (r * n)值= ParamFunc()宏名字= ' INI_NUM '如果价值= =没有:返回{宏名字:“其他}:return {macroName: str(value)} END_INCLUDE INCLUDE [if {{$(GENERATIONS)} == {}} {puts_real {Parameter 'GENERATIONS'必须给一个值。};退出1;};INCLUDE [if {{$(NUMCOLS)} == {}} {puts_real{参数'NUMCOLS'必须给定一个值};退出1;};[if {{$(NUMROWS)} == {}} {puts_real {Parameter 'NUMROWS' must be given a value.};}; exit 1; }; ] INCLUDE [ if {{$(INI_RATE)} == {}} { puts_real {Parameter 'INI_RATE' must be given a value.}; exit 1; }; ] INCLUDE [ if {{$(SCALE)} == {}} { puts_real {Parameter 'SCALE' must be given a value.}; exit 1; }; ] INCLUDE [ if {{$(DestDataset_GIFRASTER)} == {}} { puts_real {Parameter 'DestDataset_GIFRASTER' must be given a value.}; exit 1; }; ] INCLUDE [ if {{$(CELL_COLOR)} == {}} { puts_real {Parameter 'CELL_COLOR' must be given a value.}; exit 1; }; ] INCLUDE [ if {{$(BACKGROUND_COLOR)} == {}} { puts_real {Parameter 'BACKGROUND_COLOR' must be given a value.}; exit 1; }; ] #! START_HEADER #! START_WB_HEADER READER_TYPE NULL READER_KEYWORD NULL_SOURCE NULL_SOURCE_DATASET null WRITER_TYPE MULTI_WRITER MULTI_WRITER_DATASET_ORDER BY_ID MULTI_WRITER_FIRST_WRITER_ID 0 MULTI_WRITER_TYPE{0} GIFRASTER MULTI_WRITER_KEYWORD{0} GIFRASTER_1 #! END_WB_HEADER #! START_WB_HEADER MACRO WB_KEYWORD "GIFRASTER_1" #! END_WB_HEADER #! START_DEST_HEADER GIFRASTER GIFRASTER_1 # The following GUI lines prompt for a GIFRASTER 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 # the dataset to be written. #! END_DEST_HEADER #! START_WB_HEADER DEFAULT_MACRO DestDataset INCLUDE [ if {"$(DestDataset)" != ""} { \ puts {DEFAULT_MACRO DestDataset_GIFRASTER_1 $(DestDataset)} \ } ] #! END_WB_HEADER #! START_DEST_HEADER GIFRASTER GIFRASTER_1 DEFAULT_MACRO DestDataset_GIFRASTER_1 $(DestDataset_GIFRASTER) GUI DIRNAME DestDataset_GIFRASTER_1 Destination GIF Folder: DEFAULT_MACRO _GIFRASTER_WRITER_WORLD_FILE_GENERATION_GIFRASTER_1 yes DEFAULT_MACRO _GIFRASTER_WRITER_TAB_FILE_GENERATION_GIFRASTER_1 no DEFAULT_MACRO GIFRASTER_OUT_COORDINATE_SYSTEM_GRANULARITY_GIFRASTER_1 FEATURE GIFRASTER_1_COORDINATE_SYSTEM_GRANULARITY "$(GIFRASTER_OUT_COORDINATE_SYSTEM_GRANULARITY_GIFRASTER_1)" GIFRASTER_1_DATASET "$(DestDataset_GIFRASTER_1)" #! END_DEST_HEADER #! START_WB_HEADER #! END_WB_HEADER #! END_HEADER LOG_FILENAME "$(FME_MF_DIR)game-of-life-9-sql.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_GIFRASTER_1 GIFRASTER_1 # ------------------------------------------------------------------------- MULTI_READER_CONTINUE_ON_READER_FAILURE No # ------------------------------------------------------------------------- MACRO WORKSPACE_NAME game-of-life-9-sql MACRO FME_VIEWER_APP fmedatainspector DEFAULT_MACRO WB_CURRENT_CONTEXT # ------------------------------------------------------------------------- INCLUDE [ if {[string length { }]>0 && [string equal {UInt8} { }]&&[string equal{RGB24}{ }]}{放置{宏波段颜色\输入波段颜色\模型 };{宏PALETTE_COLOR_ENTRY};{宏PALETTE_KEY_ENTRY};} else {[string = =] }{ }] && [string length {UInt8}]>0 && [string length {RGB24}]>0} {puts {MACRO BAND_COLOR_ENTRY};{MACRO PALETTE_COLOR_ENTRY PALETTE_COLOR_MODEL RGB_3BYTE};{MACRO PALETTE_KEY_ENTRY PALETTE_KEY_TYPE UInt_8_Bits};} else {puts_real {rsterrgbcreator (rsterrgbcreator):必须为波段或调色板指定值。另一个的条目必须为空。退出1;}] FACTORY_DEF * CreationFactory FACTORY_NAME rsterrgbcreator_creator OUTPUT FEATURE_TYPE _____ created_rster__rgb__ FACTORY_DEF * rstercreationfactory FACTORY_NAME rsterrgbcreator INPUT FEATURE_TYPE _____ created_rster__rgb__ WIDTH $(NUMCOLS) HEIGHT $(NUMROWS) GENERAL_CELL_TYPE Color CREATE_PALETTE Yes $(BAND_COLOR_ENTRY)$(palette_color_entry) $(palette_key_entry) x_cell_origin 0.5 y_cell_origin 0.5 x_spacing 1 y_spacing 1 x_upper_left_coord 0.0 y_upper_left_coord $(numrows) nodata_color_value min_color_value $(background_color) max_color_value $(background_color) nodata_alpha_value 旋转0.0 MIN_α_值 MAX_ALPHA_VALUE rster_type "Single_Value" OUTPUT CREATED FEATURE_TYPE rsterrgbcreator_created @SupplyAttributes(fme_basename, rsterrgbcreator,fme_feature_type, rsterrgbcreator) FACTORY_DEF * BranchingFactory FACTORY_NAME " rsterrgbcreator_created Brancher -1 55" INPUT FEATURE_TYPE rsterrgbcreator_created TARGET_FACTORY“$ (WB_CURRENT_CONTEXT) _CREATOR_BRANCH_TARGET“输出通过FEATURE_TYPE * @RemoveAttributes (.BranchingFactory.Count RasterRGBCreator_CREATED布兰凯尔1 55 ) # ------------------------------------------------------------------------- Tcl2 proc Creator_2_CoordSysRemover{}{全球FME_CoordSys;设置FME_CoordSys {};} MACRO Creator_2_XML NOT_ACTIVATED MACRO Creator_2_CLASSIC NOT_ACTIVATED MACRO Creator_2_2D3D 2D_GEOMETRY MACRO Creator_2_COORDS 包括[if{{Geometry Object}=={Geometry Object}}{puts{MACRO Creator_2_XML*}]包括[if{Geometry Object}=={2D坐标列表}{puts{MACRO Creator_2_2D3D 2D_Geometry};puts{MACRO Creator_2_CLASSIC*}]包括[if{Geometry Object}={3D坐标列表}{puts{MACRO Creator_2_2; 2D_Geometry};puts}{MACRO Creator_2_CLASSIC*}}包括[if{{{Geometry Object}={2D Min/Max Box}}{set comment{我们需要将minX minY maxX maxY坐标转换为完整的多边形坐标列表};设置splitCoords[split[string trim]{ }]];如果{[llength $splitCoords] > 4} {set trimmedCoords {};foreach item $splitCoords {if {$item != {}} {lappend trimmedCoords $item}};设置splitCoords trimmedCoords美元;};如果{[llength $splitCoords] != 4} {error {Creator_2:坐标列表应该是一个以空格分隔的列表,包含4个数字,如'minx miny maxx max ' - ' '无效};};集minX[lindex$splitCoords 0];集minY[lindex$splitCoords 1];集maxX[lindex$splitCoords 2];集maxY[lindex$splitCoords 3];放置“宏创建者\u 2 \u COORDS$minX$minY$minX$maxY$maxX$minY$minX$minY”;“放置{宏创建者\u 2\u 2D3D 2D几何图形};放置{创建者宏\u 2\u经典*]$(Creator\u 2\u XML)CreationFactory\u名称Creator\u 2\u XML\u Creator\u在\u结束时创建\u无输出特征\u类型\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu, xml ? 版本= 1.0 编码= US_ASCII 独立的= 没有 几何 尺寸= 2 几何 ) FACTORY_DEF $(Creator_2_CLASSIC) CreationFactory FACTORY_NAME Creator_2_CLASSIC_Creator $(Creator_2_2D3D) $(Creator_2_COORDS) CREATE_AT_END no OUTPUT FEATURE_TYPE _____CREATED______ FACTORY_DEF * TeeFactory FACTORY_NAME Creator_2_Cloner INPUT FEATURE_TYPE _____CREATED______ NUMBER_OF_COPIES 1 OUTPUT FEATURE_TYPE Creator_2_CREATED . txt@Tcl2(Creator_2_CoordSysRemover) @CoordSys() fme_feature_type Creator_2 FACTORY_DEF * BranchingFactory FACTORY_NAME "Creator_2_CREATED Brancher -1 45" INPUT FEATURE_TYPE Creator_2_CREATED TARGET_FACTORY "$(WB_CURRENT_CONTEXT)_CREATOR_BRANCH_TARGET" OUTPUT PASSED FEATURE_TYPE * @RemoveAttributes("Creator_2_CREATED Brancher -145“.BranchingFactory.Count ) # ------------------------------------------------------------------------- Tcl2 proc Creator_CoordSysRemover{}{全球FME_CoordSys;设置FME_CoordSys {};} MACRO Creator_XML NOT_ACTIVATED MACRO Creator_CLASSIC NOT_ACTIVATED MACRO Creator_2D3D 2D_GEOMETRY MACRO Creator_COORDS . 包括[if{{Geometry Object}==={Geometry Object}}{puts{MACRO Creator_XML*}}]包括[if{Geometry Object}=={2D坐标列表}{puts{MACRO Creator_2D3D 2D_Geometry};puts{MACRO Creator_CLASSIC*}]包括[if{{{Geometry Object}==={3D坐标列表}{puts{Creator MACRO_2D3D_3D_Geometry};puts}{MACRO Creator_CLASSIC*}]包括[if{{Geometry Object}={2D Min/Max Box}{set comment{我们需要将minX minY maxX maxY坐标转换为完整的多边形坐标列表};设置splitCoords[split[string trim]{ }]];if{[llength$splitCoords]>4}{set trimmedCoords{};foreach item$splitCoords{if{$item!={}}{lappend trimmedCoords$item};set splitCoords$trimmedCoords;};if{[llength$splitCoords]!=4}{错误{创建者:坐标列表应该是一个由四个数字组成的空格分隔列表,如“minx miny maxx maxy”-` '无效};};set minX[lindex$splitCoords 0];set minY[lindex$splitCoords 1];set maxX[lindex$splitCoords 2];set maxY[lindex$splitCoords 3];put“宏创建者”\u COORDS$minX$minY$minX$maxY$maxY$maxX$minY$minX$minY”;put{MACRO Creator 2D3D 2D\u几何体};put{MACRO Creator u CLASSIC*}]工厂$(创建者XML)CreationFactory工厂\u名称创建者\u XML\u创建者在\u结束时创建\u无输出特征\u类型\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu创建\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu, xml ? 版本= 1.0 编码= US_ASCII 独立的= 没有 几何 尺寸= 2 几何 )工厂定义$(Creator\u CLASSIC)创建工厂工厂名称创建者\u CLASSIC\u Creator$(Creator\u 2D3D)$(Creator\u COORDS)创建\u结尾无输出功能\u类型\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu输出功能\u TYPE Creator\u CREATED@Tcl2(Creator\u CoordSysRemover)@CoordSys()fme\u FEATURE\u TYPE Creator FACTORY\u DEF*BranchingFactory\u NAME“Creator\u CREATED Brancher-1 5”输入功能\u TYPE Creator\u CREATED TARGET\u FACTORY“$(WB\u当前上下文)\u Creator\u BRANCH\u TARGET”输出传递的功能\u TYPE*@RemoveAttributes(“Creator\u CREATED Brancher-1 5”。BranchingFactory.Count)#----------------------------------------------------------------工厂定义*工厂名称“$(WB\u当前上下文)\u Creator\u BRANCH\u目标“输入功能_TYPE*输出功能_TYPE*#--------------------------------------------------------------------------------------工厂_DEF*测试工厂_NAME Cloner_CheckCopies输入功能_TYPE Creator_创建的测试”@EvaluateExpression(FDIV,FLOAT,$(NUMCOLS$encode),Cloner)”键入INT编码输出传递功能\u TYPE\uuuu toOutput\uuuu FACTORY\u DEF*TeeFactory\u NAME Cloner\u Cloner输入功能\u TYPE\uuuu toOutput\uuu数量\u拷贝数“@EvaluateExpression(FDIV,FLOAT,$(NUMCOLS$encode),Cloner)”复制\编号\属性c输出功能\类型克隆器\复制\----------------------------------------------------------------包括[puts“宏实际\速率[expr$(INI \ NUM)*-1]”]工厂\定义*采样工厂\名称采样器采样\速率$(实际\速率)样本\u顺序随机输入特征\u类型克隆器\u复制输出采样特征\u类型\uuuuuuuuuuuuuuuuuuuuuu35;此工厂是必需的,因为如果没有指定输出子句,采样器仍将输出特征。#这样,即使变压器上没有输出连接,我们也能表现良好。见PR#28886。工厂定义*TeeFactory工厂名称采样器\采样输入特征\类型\采样\输出特征\类型采样器\采样“@EvaluateExpression(ATTR\u CREATE\u EXPR\u PROPAGATE\u MISSING\u FDIV,generation,0,FEATURE\u TYPE)”工厂定义*TeeFactory工厂名称“采样器采样拆分器”输入功能\u TYPE Sampler\u SAMPLED输出功能\u TYPE Sampler\u SAMPLED\u 0\u qKSqHZTJ/+c=输出功能\u TYPE Sampler\u SAMPLED\u 1\u F3CResnX36E=#-----------------------------------------------------------------------------------------在翻译启动时,准备此#xformer实例将填充其临时文件的临时目录。为此,我们将请求一个临时文件名,然后将UUID添加到临时文件名中,以生成一个超级唯一的名称,该名称将成为我们分发的所有临时文件的目录我们将设置为在关闭时让END_TCL删除整个目录为此,我们将使用“环境”保存主子目录,并将#我们的UUID作为环境变量名。这是将信息#从@Tcl2传递到FME#u END#TCL的唯一方法(通过“env”变量,因为它们使用不同的TCL解释器)Tcl2 set sampleTempFile[FME#u TempFilename];设置ourTempDir{};附加ourTempDir$sampleTempFile{TempPathnameCreator_c972b3c2_1860_4630_b326_66a28f34174f17};文件mkdir$ourTempDir;设置环境(TempPathnameCreator_c972b3c2_1860_4630_b326_66a28f34174f17_目录)$ourTempDir;设置环境(TempPathnameCreator_c972b3c2_1860_4630_b326_66a28f34174f17_文件)$sampleTempFile;将gnumTempFileHandedOut设置为0;#清理时间。删除此转换器用于其临时文件的目录,以及作为“种子”创建的#原始临时文件,以获得唯一的起点。FME_END_TCL文件删除-强制$env(TempPathnameCreator_c972b3c2_1860_4630_b326_66a28f34174f17_dir)$env(TempPathnameCreator_c972b3c2_1860_4630_b326_66a28f34174f17_文件);未设置环境(临时路径名创建者目录c972b3c2 1860 4630 b326 66a28f34174f17);取消设置环境(临时路径名创建者_c972b3c2_1860_4630_b326_66a28f34174f17_文件);#实际上,创建并返回一个格式良好的文件名,该文件名保证不存在我们知道,我们在一个特定于transformer实例的目录中工作因此,我们可以在其中连续递增,以确保我们没有创建以前存在的文件。如果文件名库没有提供默认值,我们还需要为文件名库提供一个默认值(我们将使用XFORMER#u名称),并注意处理不需要扩展名的情况以及扩展名以扩展名开头的情况。Tcl2 proc TempPathnameCreator_makeTemp{baseName extension}{global env;global gNumTempFilesHandedOut;if{[string length$extension]==0}{set extensionSep{};}elseif{[string index$extension 0]={.}{set extensionSep{.};}else{set extensionSep{.};}if{$baseName={set baseName{tempNameCreator};};设置curClock[时钟点击];设置last7ClockDigits[字符串范围$curClock end-6 end];追加aGoodTempFile$env(TempPathnameCreator_c972b3c2_1860_4630_b326_66a28f34174f17_dir) [file separator] [FME_DecodeText $baseName] {_} $last7ClockDigits {_} $gNumTempFilesHandedOut $extensionSep [FME_DecodeText $extension]; incr gNumTempFilesHandedOut; FME_SetAttribute [FME_DecodeText _pathname] $aGoodTempFile; } FACTORY_DEF * TeeFactory FACTORY_NAME TempPathnameCreator INPUT FEATURE_TYPE Creator_2_CREATED OUTPUT FEATURE_TYPE TempPathnameCreator_OUTPUT @Tcl2("TempPathnameCreator_makeTemp {} {}") # ------------------------------------------------------------------------- INCLUDE [if { {ATTRIBUTES} == {ATTRIBUTES} } { puts "MACRO FeatureMerger_REFERENCE_INFO ATTRIBUTES"; } elseif { {ATTRIBUTES} == {GEOM_BUILD} && { } == {polygon}} {puts "MACRO FeatureMerger_REFERENCE_INFO geom_build_polyys ";} elseif {{ATTRIBUTES} == {GEOM_BUILD} && { } == {aggregate}} {puts "MACRO FeatureMerger_REFERENCE_INFO geom_build_aggregate ";} elseif {{ATTRIBUTES} == {GEOM_BUILD} && { } == {LINESFROMPOINTS}} {puts "MACRO FeatureMerger_REFERENCE_INFO GEOM_BUILD_LINES_FROM_POINTS";} elseif {{ATTRIBUTES} == {GEOM_AND_ATTRS} && { } == {polygon}} {puts "MACRO FeatureMerger_REFERENCE_INFO geom_and_attr_build_polyys ";} elseif {{ATTRIBUTES} == {GEOM_AND_ATTRS} && { } == {aggregate}} {puts "MACRO FeatureMerger_REFERENCE_INFO geom_and_attr_build_aggregate ";} elseif {{ATTRIBUTES} == {GEOM_AND_ATTRS} && { } == {LINESFROMPOINTS}} {puts "MACRO FeatureMerger_REFERENCE_INFO GEOM_AND_ATTR_BUILD_LINES_FROM_POINTS";} elseif {{ATTRIBUTES} == {GEOM_BUILD}} {puts "MACRO FeatureMerger_REFERENCE_INFO geom_build_aggregate ";} elseif {{ATTRIBUTES} == {GEOM_AND_ATTRS}} {puts "MACRO FeatureMerger_REFERENCE_INFO geom_and_attr_build_aggregate ";其他}{};] FACTORY_DEF * ReferenceFactory FACTORY_NAME FeatureMerger输入参考FEATURE_TYPE Sampler_SAMPLED_1_F3CResnX36E =输入REFERENCEE FEATURE_TYPE TempPathnameCreator_OUTPUT REFERENCE_INFO (FeatureMerger_REFERENCE_INFO) REFERENCE_TABLE 1美元1汽车ATTR_ACCUM_MODE“HANDLE_CONFLICT ATTR_CONFLICT_RES IGNORE_NULLS“REQUESTOR_IF_CONFLICT”“不”HANDLE_NULL_MISSING_KEYS_LIKE_FME2013没有MERGE_ATTRIBUTES是的MANAGE_FME_TYPE是的模式完成PROCESS_DUPLICATE_REFERENCEES REFERENCEES_FIRST是的输出完整FEATURE_TYPE FeatureMerger_MERGED # ------------------------------------------------------------------------- FACTORY_DEF * WriterFactory FACTORY_NAME FeatureWriter WRITER_TYPESQLITE3 WRITER_DATASET @EvaluateExpression (FDIV STRING_ENCODED, 价值 _pathname FeatureWriter) WRITER_SETTINGS RUNTIME_MACROS DESTINATION_DATASETTYPE_VALIDATION 是的 OVERWRITE_FILE 图元文件,SQLITE3 WRITER_FEATURE_TYPES WRITER_METAFILE_INFO ATTRIBUTE_CASE,任何ATTRIBUTE_INVALID_CHARS, ,属性长度,255,属性类型映射,整数 fme_int32 整数 fme_uint32 整数 fme_int64 整数 fme_int16 整数 fme_uint16 整数 fme_boolean 整数 fme_int8 整数 fme_uint8 文本 fme_buffer 文本 fme_xml 文本 fme_json fme_binarybuffer fme_varbinary 宽度 fme_binary 宽度 文本 fme_datetime 文本 fme_日期 文本 fme_time 浮动 fme_real64 浮动 fme_real32 varchar 宽度 fme_varchar 宽度 varchar 宽度 fme_char 宽度 varchar 20. fme_uint64 真正的 宽度 小数 fme_decimal 宽度 小数 、DEST_ILLEGAL_ATTR_LIST DB_TYPE SQLITE3_DROP_TABLE SQLITE3_表_写入器_模式 SQLITE3_UPDATE_KEY_COLUMNS SQLITE3\u TRUNCATE\u表,特征类型\u大小写,任意,特征类型\u无效\u字符, :?* | % # +- FEATURE_TYPE_LENGTH_INCLUDES_PREFIX FEATURE_TYPE_LENGTH, 255年,假,FEATURE_TYPE_RESERVED_WORDS, FORMAT_NAME, SQLITE3, GEOM_MAP db_none fme_no_geom db_none fme_点 db_none fme_line db_none fme_polygon db_none fme_文本 db_none fme_ellipse db_none fme_arc db_none fme_矩形 db_none fme_rounded_rectangle db_none fme_collection db_none fme_raster db_none fme_surface db_none fme_solid db_none fme_point_cloud db_none fme_feature_table READER_ATTR_INDEX_TYPES,索引 独特的来源,不,SUPPORTS_FEAT_TYPE_FANOUT,是的,是的,WORKBENCH_CANNED_SCHEMA, SUPPORTS_MULTI_GEOM,作家,SQLITE3, WRITER_ATTR_INDEX_TYPES,索引 独特,WRITER_DEFLINE_PARMS, NAMEDGROUP sqlite3_层_组 sqlite3_general_group 表格 设置 NAMEDGROUP sqlite3_general_group sqlite3_table_writer_mode % sqlite3_drop_table % sqlite3_truncate_table % sqlite3_row_selection_group 一般 DISCLOSUREGROUP sqlite3_row_selection_group FME_DISCLOSURE_OPEN % sqlite3_update_key_columns 选择 选择 sqlite3_drop_table 没有%是的 表格 没有 选择 sqlite3_truncate_table 没有%是的 截断 表格 没有 选择 sqlite3_table_writer_mode INHERIT_FROM_WRITER % % %插入更新删除 作家 模式 INHERIT_FROM_WRITER 可选 ATTRLIST_COMMAS sqlite3_update_key_columns 更新 删除 关键 WRITER_DEF_LINE_TEMPLATE, FME_GEN_GROUP_NAME sqlite3_update_key_columns sqlite3_drop_table 没有 sqlite3_truncate_table 没有 sqlite3_table_writer_mode INHERIT_FROM_WRITER、WRITER_FORMAT_PARAMETER ALLOW_DATASET_CONFLICT 是的 DATASET_NAME sqlite 文件 FEATURE_TYPE_NAME 表格 功能\u类型\u默认\u名称 表1 读取器\u数据集\u提示 选择 SQLite3 数据库 文件 年代 WRITER_DATASET_HINT 指定 一个 的名字 SQLite3 数据库 文件 是的,作者有属性;单元格:采样、ftp特性类型名称、单元格、ftp编写器、SQLITE3、ftp动态模式、否、ftp动态特性类型名称类型、动态模式属性自动、ftp动态几何类型、动态模式属性自动、动态模式属性自动、ftp动态模式属性自动、ftp动态模式属性自动、ftp动态模式定义名称类型、动态模式属性自动、动态模式属性自动、ftp动态模式属性自动、ftp动态模式属性自动、ftp动态模式源、, lt 未使用的 gt ftp_user_attributes ftp_attribute_source 1, r 整数 c 整数 一代 整数,ftp_format_parameters sqlite3_layer_group sqlite3_general_group sqlite3_row_selection_group sqlite3_drop_table 没有 sqlite3_truncate_table 没有 sqlite3_table_writer_mode INHERIT_FROM_WRITER sqlite3_update_key_columns WRITER_PARAMS DESTINATION_DATASETTYPE_VALIDATION,Yes,OVERWRITE_FILE,No DATASET_ATTR _dataset FEATURE_TYPE_LIST_ATTR INPUT Sampled FEATURE_TYPE FeatureMerger_MERGED @FeatureType(ENCODED,cells) OUTPUT SUMMARY FEATURE_TYPE FeatureWriter_SUMMARY # ------------------------------------------------------------------------- FACTORY_DEF * TestFactory@EvaluateExpression(FDIV,FLOAT,$(GENERATIONS$encode),Cloner_2)"TYPE INT ENCODED OUTPUT PASSED FEATURE_TYPE __toOutput__ FACTORY_DEF * TeeFactory FACTORY_NAME Cloner_2_Cloner INPUT FEATURE_TYPE __toOutput__ NUMBER_OF_COPIES "@EvaluateExpression(FDIV,FLOAT,$(GENERATIONS$encode),Cloner_2)"COPY_NUMBER_ATTRIBUTE _copynum输出FEATURE_TYPE Cloner_2_COPY # ------------------------------------------------------------------------- 宏SQLExecutor_DIRECTIVES QUERY_FEATURE_TYPES_FOR_MERGE_FILTERS是的FACTORY_DEF * QueryFactory FACTORY_NAME SQLExecutor输入FEATURE_TYPE Cloner_2_COPY QUERY_SQL“@EvaluateExpression (FDIV STRING_ENCODED FME_SQL_DELIMITER 插入 细胞 选择 a.r 交流 价值 _copynum +1 作为 一代 选择 r c 总和 n 作为 全国矿工工会 选择 r+1 作为 r c-1 作为 c 1 作为 n 细胞 联盟 所有 选择 r+1 c 1 细胞 联盟 所有 选择 r+1 c+1 1 细胞 联盟 所有 选择 r c-1 1 细胞 联盟 所有 选择 r c+1 1 细胞 联盟 所有 选择 r 1 c-1 1 细胞 联盟 所有 选择 r 1 c 1 细胞 联盟 所有 选择 r 1 c+1 1 细胞 集团 通过 r c 作为 一个 参加 细胞 作为 b 在…上 b、 r a.r 公元前 交流 在哪里 0 a.r a.r $(美元NUMROWS编码) 0 交流 交流 $(美元NUMCOLS编码) a、 num 3. a、 num 2 b.generation 删去 细胞 在哪里 一代 价值 _copynum 选择 细胞 SQLExecutor)”READER_TYPE SQLITE3 READER_DATASET "@EvaluateExpression(FDIV,STRING_ENCODED, 价值 _dataset ,SQLExecutor)“合并属性结果只合并几何查询只继续执行读卡器错误是读卡器参数$(SQLExecutor指令)输出结果功能类型SQLExecutor结果输出查询功能类型SQLExecutor启动器输出读卡器错误功能类型SQLExecutor_ 工厂名称“SQLExecutor启动器输出核”输入功能类型SQLExecutor启动器工厂名称“SQLExecutor” 输出Nuker" INPUT FEATURE_TYPE SQLExecutor_ # ------------------------------------------------------------------------- Tcl2 proc 2 dboxreplacer_isvalid {coord}{如果{[string双严格coord美元]= = 0}{返回0}其他{返回1;}} FACTORY_DEF * TestFactory FACTORY_NAME 2DBoxReplacer_testMinX INPUT FEATURE_TYPE Sampler_SAMPLED_0_qKSqHZTJ/+c= INPUT FEATURE_TYPE SQLExecutor_RESULT TEST @Tcl2("2DBoxReplacer_isValid {@EvaluateExpression(FDIV,FLOAT, 价值 c *$(SCALE$encode),2DBoxReplacer)}“==1输出通过的特征\u TYPE\u toTestMaxX\u工厂\u DEF*TestFactory\u名称2DBoxReplacer\u testMaxX输入特征\u TYPE\u toTestMaxX\u测试@Tcl2(“2DBoxReplacer\u有效{@EvaluateExpression(FDIV,FLOAT, 价值 c +1 *$(SCALE$encode),2DBoxReplacer)}") == 1 OUTPUT PASSED FEATURE_TYPE __toTestMinY__ FACTORY_DEF * TestFactory FACTORY_NAME 2DBoxReplacer_testMinY INPUT FEATURE_TYPE __toTestMinY__ TEST @Tcl2("2DBoxReplacer_isValid {@EvaluateExpression(FDIV,FLOAT, 价值 r *$(SCALE$encode),2DBoxReplacer)}") == 1 OUTPUT PASSED FEATURE_TYPE __toTestMaxY__ FACTORY_DEF * TestFactory FACTORY_NAME 2DBoxReplacer_testMaxY INPUT FEATURE_TYPE __toTestMaxY__ TEST @Tcl2("2DBoxReplacer_isValid {@EvaluateExpression(FDIV,FLOAT, 价值 r +1 *$(SCALE$encode),2DBoxReplacer)}") == 1 OUTPUT PASSED FEATURE_TYPE __toOutput__ FACTORY_DEF * TeeFactory FACTORY_NAME 2DBoxReplacer INPUT FEATURE_TYPE __toOutput__ OUTPUT FEATURE_TYPE 2DBoxReplacer_BOX @Dimension(2) @SupplyAttributes(__minx___, "@EvaluateExpression(FDIV,FLOAT, ") 价值 c *$(SCALE$encode),2DBoxReplacer)“)@SupplyAttributes(u_;ux___;,”@EvaluateExpression(FDIV,FLOAT, 价值 c +1 * $(美元规模编码),2 dboxreplacer)”)@SupplyAttributes (___MINY___,“@EvaluateExpression (FDIV、浮点数、 价值 r * $(美元规模编码),2 dboxreplacer)”)@SupplyAttributes (___MAXY___,“@EvaluateExpression (FDIV、浮点数、 价值 r +1 * $(美元规模编码),2 dboxreplacer)”)@XValue (@ value (___MINX___),重置)@YValue (@ value (___MINY___)) @XValue (@ value (___MINX___)) @YValue (@ value (___MAXY___)) @XValue (@ value (___MAXX___)) @YValue (@ value (___MAXY___)) @XValue (@ value (___MAXX___)) @YValue (@ value (___MINY___)) @XValue (@ value (___MINX___)) @YValue (@ value (___MINY___)) @GeometryType (fme_polygon)@RemoveAttributes (___MINX___ ___MAXX___、___MINY___ ___MAXY ___) # ------------------------------------------------------------------------- FACTORY_DEF * AttrSetFactory FACTORY_NAME AttributeCreator输入FEATURE_TYPE 2 dboxreplacer_box MULTI_FEATURE_MODE没有NULL_ATTR_MODE NO_OP ATTRSET_CREATE_DIRECTIVES _PROPAGATE_MISSING_FDIV ATTR_ACTION”““SET_TO”“fme_color $ (CELL_COLOR编码美元)"输出输出FEATURE_TYPE AttributeCreator_OUTPUT # ------------------------------------------------------------------------- FACTORY_DEF * TransformFact: 5: ImageRasterizer FACTORY_NAME ImageRasterizer FACTORY_META_PARAMS TRANSFORMER_NAME: ImageRasterizerTRANSFORMER_PARAMS: XFORMER_NAME ImageRasterizer TRANSFORMER_GROUP, RASTER_PROPERTIES_GROUP, GROUP_BY,一代,ROWCOL_OR_CELLSIZE, CellSize,列, 未使用的 、行 未使用的 X_CELL_SIZE 1 Y_CELL_SIZE 1 INTERPRETATION_GROUP, INTERPRETATION_TYPE, RGB24,α, 未使用的 , BACKGROUND_COLOR BACKGROUND_GROUP,美元(美元BACKGROUND_COLOR编码),BACKGROUND_ALPHA, 未使用的 , FILL_WITH_NODATA ANTI_ALIASING_GROUP、FME_DISCLOSURE_CLOSED ANTI_ALIASING,不,宽容,0.5,GROUND_EXTENTS_GROUP, FME_DISCLOSURE_OPEN SPECIFY_GROUND_EXTENTS,指定 地面 范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围、地面范围,颜色处理组逐代多处理否并行组排序是输入功能类型属性创建器输出光栅功能类型图像光栅化器光栅化器ImageRasterizer_光栅输出功能_TYPE RasterPalette Generator_OUTPUT@GenerateRasterPalettes(UInt8,)#-----------------------------------------------------------------------------------------工厂_DEF*TeeFactory_名称定标器_输入输入功能_TYPE RasterRGBCreator_创建@Rename属性(FME_严格,FME_拒绝代码,FME_拒绝代码)输出功能\u类型定标器\u执行定标器工厂\u定义\u禁用\uuuuuuu工厂\uuuuuuu名称定标器\uu几何图形\uu中心点计算器输入功能\u类型定标器\u执行定标器输出功能\u类型定标器\u执行中心点缩放@ConvertToPoint(重心,\uuuuuuuuuuuuuuuuux\uuuu,\uuuuuuuuuuuuuuu CPy,\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu工厂定义禁用工厂名称定标器中心点定标器输入功能类型定标器执行中心点缩放比例(可拒绝,“@EvaluateExpression(FDIV,FLOAT,$(Scale$encode),Scaler)”,“@EvaluateExpression(FDIV,FLOAT,$(Scale$encode),Scaler)”,“1”,“Value(@Value(@Value(@CPx\uuu),@Value(@Value(@Value(@CPy),Value(@Value(\uuuuuuuuuuuuuuuu-CPz),光栅范围)输出特性\u类型\u类型\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu,光栅数据块)工厂定义*测试工厂名称定标器拒绝器输入功能类型拒绝器测试@值(fme拒绝代码)!=“”输出失败的功能\u TYPE Scaler\u Scaled@RenameAttributes(FME\u STRICT,FME\u rejection\u code,\uuuuuuuuu FME\u rejection\u code\uuuuuuu)工厂\u DEF*测试工厂\u NAME Scaler\u PointCloudScaler输入功能\u TYPE Scaler\u Scaled TEST&FME\u TYPE==“FME\u point\u cloud”TEST”“!”“”布尔运算符和输出传递的特征(类型定标器)缩放@TransformPointCloud(缩放,)输出失败的特征(类型定标器)缩放(缩放)----------------------------------------------------------------------包括[if{{CellSize}=={RowsColumns}}{put{MACRO RESAMPLE(参数维数,” ", " ",}} else {{CellSize} == {CellSize}} {puts {MACRO RESAMPLE_ARGS CELL_SIZE, "1", "1", else {{CellSize} == {Percentage}} {puts {MACRO RESAMPLE_ARGS Percentage, " ", " “,Nearest Neighbor};]FACTORY\u DEF*TeeFactory\u NAME RasterResampler\u RasterResampler输入功能\u TYPE Scaler\u SCALED@RenameAttributes(FME\u STRICT,\uuuuuuuuuFME\u rejection\u code\uuuuuuuuuuuuuuuuu,FME\u rejection\u code)输出功能\u TYPE\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu@ResampleRaster(Rejector,$(RESAMPLEFACTORY_DEF*TestFactory_NAME RasterResampler_Rejector输入特性_TYPE uuu-Retector_uuu-TEST@Value(fme_rejection_代码)!=“输出失败特性_TYPE RasterResampler_重新采样@RenameAttributes(fme_严格,fme_rejection_代码,fme_u_uRejection_代码)——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————“键入INT编码输出传递功能\u TYPE\uuuuuu输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出输出复制{u编号{u属性生成输出功能{u类型克隆器{u 3}复制{u复制}----------------------------------------------------------------包括[if{{ATTRIBUTES}=={ATTRIBUTES}}{puts“宏特性合并{u 2_引用{u信息属性”;}elseif{{ATTRIBUTES}=={GEOM\u BUILD}&{ } == {polygon}} {puts "MACRO FeatureMerger_2_REFERENCE_INFO geom_build_polyys ";} elseif {{ATTRIBUTES} == {GEOM_BUILD} && { } == {aggregate}} {puts "MACRO FeatureMerger_2_REFERENCE_INFO geom_build_aggregate ";} elseif {{ATTRIBUTES} == {GEOM_BUILD} && { }={LINESFROMPOINTS}{puts“宏功能合并\u 2\u引用\u信息GEOM\u构建\u线\u自\u点”;}elseif{{ATTRIBUTES}={GEOM\u和\u属性}&&{ } == {polygon}} {puts "MACRO FeatureMerger_2_REFERENCE_INFO geom_and_attr_build_polyys ";} elseif {{ATTRIBUTES} == {GEOM_AND_ATTRS} && { } == {aggregate}} {puts "MACRO FeatureMerger_2_REFERENCE_INFO geom_and_attr_build_aggregate ";} elseif {{ATTRIBUTES} == {GEOM_AND_ATTRS} && { }={LINESFROMPOINTS}}{puts“宏特性合并”{u 2参考”{u信息几何和从点开始构建线”}elseif{ATTRIBUTES}={GEOM构建}}{puts“宏特性合并”{u 2参考{u信息几何构建聚合”}elseif{ATTRIBUTES}={GEOM和属性}{puts“宏特性合并”{u 2参考{u信息几何构建聚合”}else{};]工厂定义*ReferenceFactory工厂名称功能合并2输入引用器功能类型RasterPaletteGenerator输出输入引用功能类型克隆器3复制引用信息$(功能合并2引用信息)引用表@EvaluateExpression(FDIV,字符串编码, 价值 一代 FeatureMerger_2) @EvaluateExpression (FDIV STRING_ENCODED, 价值 一代 ,功能合并2)自动属性累积模式“处理冲突”属性冲突“请求者如果冲突”忽略为空“否”句柄\u NULL \u缺少\u键\u像\u FME2013没有合并\u属性是管理\u FME\u类型是模式完成过程\u重复\u引用没有引用\u第一个是输出完成功能\u类型功能合并\u 2\u合并输出未引用功能\u类型功能合并\u 2\u未引用------------------------------------------工厂定义*路由工厂名称“目标功能类型路由相关器”命令\参数\评估单次\输入功能\类型*路由FME \通用功能合并\ 2 \合并到GIFBRASTER \转到\最终\输出\路由\多写入器\ id,0, SupplyAttributes 编码 fme_template_feature_type 刺激器1 EvaluateExpression ATTR_CREATE_EXPR __wb_out_专长_类型__ generation_ 总体安排 openparen % d 03 逗号 价值 openparen 一代 closeparen closeparen 刺激器1 GEOMETRY ROUTE FME_GENERIC FeatureMerger_2_UNREFERENCED TO GIFRASTER __GO_TO_FINAL_OUTPUT_ROUTER__ multi_writer_id,0, SupplyAttributes 编码 fme_template_feature_type 刺激器1 EvaluateExpression ATTR_CREATE_EXPR __wb_out_专长_类型__ generation_ 总体安排 openparen % d 03 逗号 价值 openparen 一代 closeparen closeparen 刺激器1 几何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”决赛输入输出核武器”FEATURE_TYPE __nuke_me __ # ------------------------------------------------------------------------- GIFRASTER_1_DEF Raster1 gifraster_world_file_generation不gifraster_tab_file_generation不