区段最低X / Y,最大X / Y(度):
以十进制的角度指定区段。区段应该满足所有这些条件。
- 180<Xmin,xmax < = 180
- 90<YMIN,ymax < = 90
xmin比xmax向西,伊敏比伊玛克斯南
宽度< = 0.15,高度< = 0.15
如果其中一个条件不满足,的输入特性将立即输出
输出OSM文件路径:
指定保存下载的OSM文件的文件路径。
输出OSM文件路径属性:
(可选)指定存储已保存的OSM文件路径的属性名。属性的值将与“输出OSM文件路径”参数指定的文件路径相同。
HTTP连接超时长度(秒):
此参数可用于设置HTTP连接请求的超时。如果在给定的秒数内无法创建到服务器的连接,请求将失败,该功能将通过故障输出 端口。默认连接超时为60秒。如果输入0,不会有超时,变压器将无限期地等待连接成功。
HTTP传输超时长度(秒):
此参数可用于设置HTTP传输的超时。如果数据停止传输的时间超过给定的秒数,请求将失败,该功能将通过故障输出 端口。默认传输超时为300秒。如果输入0,不会有超时,变压器将无限期地等待数据恢复传输。
" # !VIEW_POSITION = " -2943.03 - 1350.01 " # !MARKDOWN_USAGE = " " # !描述= "下载与指定区段对应的OpenStreetMap (OSM)数据文件。您可以使用OpenStreetMap (OSM) XML [OSM]阅读器从下载的文件中读取特性。
注:
1.根据区段的不同,数据大小可能变得太大,完成下载可能需要很长时间。为防止下载过大数据,此转换器将区段的宽度和高度限制为0.15 x 0.15度 (9 x 9分钟)如果指定区段的宽度或高度大于限制,的输入特性将立即输出
2.如果使用此转换器连续向OSM服务器发送多个HTTP请求,它可能会使服务器不堪重负,一些请求可能会失败。在这种情况下,考虑使用减速器来延迟每个特性的请求。
三。此转换器创建目标文件夹,如果它不存在。如果文件夹创建失败,不会执行下载,输入特性将通过 失败 端口。
创建URL (HTTP API)
" # !位置= " -1203.01 - 1014.76 " # !TOP_LEFT = " -1203.01 - 1014.76 " # !BOTTOM_RIGHT = " -1204.01 - 1015.76 " # !BOUNDING_RECT="-1203.01 1014.76 -1 -1"#!订单= " 5 e + 14 " # !FOLLOW_ANCHOR = " true " # !INFO_NODE = " false " # !颜色=“1、0.784314、0.192157 # !SIZE_POLICY = " 8 " # !comment_type=“Regular”!ANCHORED_NODE = " 3 " # !/ > # !下载并保存一个OSM文件。
" # !位置=“-637.008 1014.76”!TOP_LEFT = " -637.008 - 1014.76 " # !右下角“-638.008 1015.76”!BOUNDING_RECT="-637.008 1014.76 -1 -1"#!订单= " 5 e + 14 " # !FOLLOW_ANCHOR = " true " # !INFO_NODE = " false " # !颜色=“1、0.784314、0.192157 # !SIZE_POLICY = " 8 " # !comment_type=“Regular”!ANCHORED_NODE = " 4 " # !/ > # !1.0编码= US_ASCII独立的= 不吗? 几何 尺寸= 2零 几何 )FACTORY_DEF $(Creator_CLASSIC) CreationFactory FACTORY_NAME Creator_CLASSIC_Creator $(Creator_2D3D) $(Creator_COORDS) CREATE_AT_END no OUTPUT FEATURE_TYPE _____CREATED______FACTORY_DEF * TeeFactory FACTORY_NAME Creator_Cloner INPUT FEATURE_TYPE _____CREATED______ NUMBER_OF_COPIES 1 COPY_NUMBER_ATTRIBUTE "_creation_instance" OUTPUT FEATURE_TYPE Creator_CREATED @Tcl2(Creator_CoordSysRemover) @CoordSys() fme_feature_type CreatorFACTORY_DEF * BranchingFactory FACTORY_NAME "Creator_CREATED Brancher -1 5" INPUT FEATURE_TYPE Creator_CREATED TARGET_FACTORY "$(WB_CURRENT_CONTEXT)_CREATOR_BRANCH_TARGET" OUTPUT PASSED FEATURE_TYPE * @RemoveAttributes("Creator_CREATED Brancher -1 5".BranchingFactory.Count)# -------------------------------------------------------------------------FACTORY_DEF * TeeFactory FACTORY_NAME "$(WB_CURRENT_CONTEXT)_CREATOR_BRANCH_TARGET" INPUT FEATURE_TYPE * OUTPUT FEATURE_TYPE *# -------------------------------------------------------------------------FACTORY_DEF * TeeFactory FACTORY_NAME "OSMDownloader Input Input Collector" INPUT FEATURE_TYPE Creator_CREATED OUTPUT FEATURE_TYPE OSMDownloader_InputMACRO OSMDownloader_WORKSPACE_NAME OSMDownloaderMACRO $(OSMDownloader_WORKSPACE_NAME)_XFORMER_NAME OSMDownloaderMACRO $(OSMDownloader_WORKSPACE_NAME)_TRANSFORMER_GROUP MACRO $(OSMDownloader_WORKSPACE_NAME)___COMPOUND_PARAMETERS MACRO $(OSMDownloader_WORKSPACE_NAME)_SUB_DOC_NAME OSMDownloaderMACRO $(OSMDownloader_WORKSPACE_NAME)_BB_XMIN 5.9854MACRO $(OSMDownloader_WORKSPACE_NAME)_BB_YMIN 45.4216MACRO $(OSMDownloader_WORKSPACE_NAME)_BB_XMAX 6.0367MACRO $(OSMDownloader_WORKSPACE_NAME)_BB_YMAX 45.4461MACRO $(OSMDownloader_WORKSPACE_NAME)_OUTPUT_FILENAME $(FME_MF_DIR)FME_input data\waterMACRO $(OSMDownloader_WORKSPACE_NAME)_FILE_PATH_ATTR _water_osm_file_pathMACRO $(OSMDownloader_WORKSPACE_NAME)_CONNECTION_TIMEOUT_LENGTH 60MACRO $(OSMDownloader_WORKSPACE_NAME)_TRANSFER_TIMEOUT_LENGTH 300MACRO $(OSMDownloader_WORKSPACE_NAME)_BB_MAX_WIDTH 0.15MACRO $(OSMDownloader_WORKSPACE_NAME)_BB_MAX_HEIGHT 0.15DEFAULT_MACRO OSMDownloader_WORKSPACE_NAME ""INCLUDE [puts {MACRO WB_OLD_CONTEXT_$(OSMDownloader_WORKSPACE_NAME) $(WB_CURRENT_CONTEXT)};输入macro wb_current_context$(osmdownloader_workspace_name)]工厂_def*teefactory工厂_name“$(osmdownloader_workspace_name)_input1520351145输入拆分器”输入功能_type“$(osmdownloader_workspace_name)_input“输出功能”_type“$(osmdownloader_workspace_name)_input”----------------------------------------------------------————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————t; 测试$($(OSMDownloader_WORKSPACE_NAME)_BB_XMAX$encode) < 0; 评估 + 360 (OSMDownloader_WORKSPACE_NAME) _BB_XMAX美元(编码) “FME_NUM_CONDITIONS2___ ATTR __osmdownloader.file_path 价值 $($(osmdownloader_workspace_name)_file_path_attr$encode) 输出输出FEATURE_TYPE " $ (OSMDownloader_WORKSPACE_NAME) _AttributeCreator_OUTPUT " # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Tcl2 FME_Decode proc createDirectory 集 迪尔 文件 目录名 FME_GetAttribute __osmdownloader.file_path如果 ! 文件 存在 迪尔 文件 mkdir 迪尔 返回 文件 存在 迪尔 MACRO COPIER @Tcl2("")INCLUDE [ if {[string length {}] == 0} { puts {MACRO COPIER 1} }MACRO OUTPUTATTR "__osmdownloader.folder_exists"INCLUDE [ if {[string length {__osmdownloader.folder_exists}] == 0} { puts {MACRO OUTPUTATTR } }FACTORY_DEF * TeeFactory FACTORY_NAME $(OSMDownloader_WORKSPACE_NAME)_TclCaller INPUT FEATURE_TYPE "$(OSMDownloader_WORKSPACE_NAME)_AttributeCreator_OUTPUT" NUMBER_OF_COPIES $(COPIER) OUTPUT FEATURE_TYPE "$(OSMDownloader_WORKSPACE_NAME)_TclCaller_OUTPUT" $(OUTPUTATTR) @Tcl2("createDirectory")# -------------------------------------------------------------------------FACTORY_DEF * TestFactory FACTORY_NAME $(OSMDownloader_WORKSPACE_NAME)_Tester INPUT FEATURE_TYPE "$(OSMDownloader_WORKSPACE_NAME)_TclCaller_OUTPUT" TEST -180 <= @EvaluateExpression(FDIV,STRING_ENCODED,$($(OSMDownloader_WORKSPACE_NAME)_BB_XMIN$encode),$(OSMDownloader_WORKSPACE_NAME)_Tester) ENCODED TEST @EvaluateExpression(FDIV,STRING_ENCODED,$($(OSMDownloader_WORKSPACE_NAME)_BB_XMAX$encode),$(OSMDownloader_WORKSPACE_NAME)_Tester) <= 180 ENCODED TEST -90 <= @EvaluateExpression(FDIV,STRING_ENCODED,$($(OSMDownloader_WORKSPACE_NAME)_BB_YMIN$encode),$(OSMDownloader_WORKSPACE_NAME)_Tester) ENCODED TEST @EvaluateExpression(FDIV,STRING_ENCODED,$($(OSMDownloader_WORKSPACE_NAME)_BB_YMAX$encode),$(OSMDownloader_WORKSPACE_NAME)_Tester) <= 90 ENCODED TEST @EvaluateExpression(FDIV,STRING_ENCODED,$($(OSMDownloader_WORKSPACE_NAME)_BB_XMIN$encode),$(OSMDownloader_WORKSPACE_NAME)_Tester) < @EvaluateExpression(FDIV,STRING_ENCODED, 价值 __osmdownloader.xmax ,$(OSMDownloader_WORKSPACE_NAME)_Tester) ENCODED TEST @EvaluateExpression(FDIV,STRING_ENCODED,$(OSMDownloader_WORKSPACE_NAME)_Tester) ENCODED TEST @EvaluateExpression(FDIV,STRING_ENCODED, 评估 价值 __osmdownloader.xmax - $ ((OSMDownloader_WORKSPACE_NAME) _BB_XMIN编码美元) 美元(OSMDownloader_WORKSPACE_NAME) _Tester) < @EvaluateExpression (FDIV STRING_ENCODED, 评估 $ ((OSMDownloader_WORKSPACE_NAME) _BB_MAX_WIDTH编码)美元+ 1.0 e-8 ,$(osmdownloader_workspace_name)_tester)encoded test@evaluateexpression(fdiv,string_encoded, 评估 $ ((OSMDownloader_WORKSPACE_NAME) _BB_YMAX编码美元)- $ ((OSMDownloader_WORKSPACE_NAME) _BB_YMIN编码美元) 美元(OSMDownloader_WORKSPACE_NAME) _Tester) < @EvaluateExpression (FDIV STRING_ENCODED, 评估 $ ((OSMDownloader_WORKSPACE_NAME) _BB_MAX_HEIGHT编码)美元+ 1.0 e-8 ,$(OSMDownloader_WORKSPACE_NAME)_Tester)编码的BOOLEAN_OPERATOR和输出传递的FEATURE_TYPE "$(OSMDownloader_WORKSPACE_NAME) _tester_type "输出失败的FEATURE_TYPE "$(OSMDownloader_WORKSPACE_NAME)_Tester_FAILED"#——INCLUDE [set macroLine "宏$(OSMDownloader_WORKSPACE_NAME)_AttributeRemover_3_LIST_EXP ";foreach attr [split ""] {set attr [FME_DecodeText $attr];设置attr [regsub "{}$" $attr "{}.*"];设置attr[regsub-all“”$attr“\123; \[0-9\]+\”];附加宏行“^$attr$”;};卖出$macroline;]工厂定义*teefactory工厂名称$(osmdownloader\u workspace\u name)attributeremover\u 3 input feature\u type“$(osmdownloader\u workspace\u name)测试仪\u failed“output feature\u type”$(osmdownloader\u workspace\u name)attributeremover\u 3\u output“@removeattributes(fme\u encoded,\uosmdownloader.xmax,\uosmdownloader.file\u path,\uu osmdownloader.folder_exists)@removeattributes(fme_pcre_match“$($(osmdownloader_workspace_name)_attributeerMover_3_list_exp)”)\\35----------------------------------------------------------------------TC2 proc$(osmdownloader_工作区_name)_StringConcator \ \\ \\\\\\\\\\\M下载器URL};如果{[string length $attr] == 0} {return;};设置attrs [list [FME_EncodeText $attr]];} else {set attrAll { };如果{[string length $attrAll] == 0} {return;};set attrs [split {] }{};};设置parmList {{EvaluateExpression} {ATTR_CREATE_EXPR_PROPOGATE_MISSING_FDIV}};foreach attr $attrs {lappend parmList $attr;lappend parmList { " http: overpass.osm.rambler.ru cgi xapi_meta ? * bbox = $ ((OSMDownloader_WORKSPACE_NAME) _BB_XMIN编码美元) $ ((OSMDownloader_WORKSPACE_NAME) _BB_YMIN编码美元) $ ((OSMDownloader_WORKSPACE_NAME) _BB_XMAX编码美元) $($(osmdownloader_workspace_name)_bb_ymax$编码) “};};lappend parmlist$(osmdownloader_workspace_name)_stringconcatenator_eval fme_执行$parmlist;}工厂定义*teefactory工厂名称$(osmdownloader_workspace_name)_stringconcatenator输入功能_type“$(osmdownloader_workspace_name)_检测仪通过”输出功能_type“$(osmdownloader_workspace_name)_stringconcatenator_output”@tcl2(“$(osmdownloader_workspace_name)_stringconcatenator_evaluator”)\---———————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————— 价值 __osmdownloader.url ,$(osmdownloader_workspace_name)_httpcaller)“http_method get save_file yes output_file name”@evaluateexpression(fdiv,string,$($(osmdownloader_workspace_name)_output_file name$encode),$(osmdownloader_workspace_name)_httpcaller)“output_directory” “目标\u attr” " FILE_PATH_ATTR "$($(OSMDownloader_WORKSPACE_NAME)_FILE_PATH_ATTR)" UPLOAD_FILE " “UPLOAD_BODY” “MULTIPART_UPLOAD 上传“内容类型” " COMBINED_MULTIPART_TABLE REQUEST_HEADER_TABLE ADDITIONAL_URL_PARAMETERS AUTH_USERNAME " “AUTH_PASSWORD” “身份验证方法” “目标属性编码 响应\u header_list_attr“_headers”状态\u code_attr“_http_status_code”错误\u attr“_error”连接超时\u length$($(osmdownloader_workspace_name)连接超时\u length)传输超时\u length$($(osmdownloader_workspace_name)传输超时\u length)遵循重定向是验证ssl_证书是命名的连接“N” " USE_COOKIES无输出输出FEATURE_TYPE "$(OSMDownloader_WORKSPACE_NAME)_HTTPCaller_Output"输出拒绝FEATURE_TYPE "$(OSMDownloader_WORKSPACE_NAME)_HTTPCaller_ “\\35;--------------------------------------------------------------------------------------------------------------------------------------------------TCL2 FME_decode宏复印机@TCL2(”“)incinc[if;[string len;125;]==0;宏复印机1 \125\ \\\\\\\\\\\\\\\123; \125;工厂定义*teefactory工厂名称$(osmdownloader_workspace_name)_tcCaller_2输入功能_type“$(osmdownloader_workspace_name)_httpCaller_ “NUMBER_OF_COPIES(复印机)输出FEATURE_TYPE美元”(OSMDownloader_WORKSPACE_NAME) _TclCaller_2_OUTPUT”(OUTPUTATTR)美元@Tcl2(“文件删除(FME_GetAttribute " __osmdownloader.file_path "]”) # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - include(设置macroLine“宏(OSMDownloader_WORKSPACE_NAME) _AttributeRemover_2_LIST_EXP美元”;foreach attr [split ""] {set attr [FME_DecodeText $attr];设置attr [regsub "{}$" $attr "{}.*"];设置attr[regsub-all“”$attr“\123; \[0-9\]+\”];附加宏行“^$attr$”;};卖出$macroline;]工厂定义*teefactory工厂名称$(osmdownloader\u workspace\u name)属性移动器\u 2输入功能\u type“$(osmdownloader\u workspace\u name)调用器\u 2输出”输出功能\u type“$(osmdownloader\u workspace\u name)属性移动器\u 2输出”@removeattributes(fme\u编码,\uu osmdownloader.file\u path,\uu osmdownloader.folder\u exists,\uu osmdownloader.url,uu osmdownloader.xmax)@removeattributes(fme_pcre_match“$($(osmdownloader_workspace_name)_attributeremover_2_list_exp)”)包括[设置宏行“macro$(osmdownloader_workspace_name)_attributeremover_list_exp”;foreach attr [split ""] {set attr [FME_DecodeText $attr];设置attr [regsub "{}$" $attr "{}.*"];设置attr[regsub-all“”$attr“\123; \[0-9\]+\”];附加宏行“^$attr$”;};卖出$macroline;]工厂定义*teefactory工厂名称$(osmdownloader\u workspace\u name)属性移动器输入功能\u type“$(osmdownloader\u workspace\u name)\u httpcaller\u output”输出功能\u type“$(osmdownloader\u workspace\u name)属性移动器输出”@removeattributes(fme\u编码,\uu osmdownloader.url,\uu osmdownloader.xmax,\uu osmdownloader.file\u path,uu osmdownloader.folder_exists)@removeattributes(fme_pcre_match“$(osmdownloader_workspace_name)_attributeremover_list_exp)”)Factory_def*teefactory factory_name“$(osmdownloader_workspace_name)_ 1520351145输出收集器“INPUT FEATURE_TYPE”$(OSMDownloader_WORKSPACE_NAME)_AttributeRemover_3_OUTPUT“Output FEATURE_TYPE”$(OSMDownloader_WORKSPACE_NAME)_ “工厂定义*teefactory工厂名称”$(osmdownloader\u workspace\u name)\u成功1520351145输出收集器“输入功能”类型“$(osmdownloader\u workspace\u name)\u attributeremover\u output“输出功能”类型“$(osmdownloader\u workspace\u name)\u success“工厂定义*teefactory工厂名称”$(osmdownloader\u workspace\u name)\u失败1520351145输出collector“input feature_type”$(osmdownloader_workspace_name)_attributeremover_2_output“output feature_type”$(osmdownloader_workspace_name)_failure“包括[puts macro wb_current_context$(wb_old_context_$(osmdownloader_workspace_name))]工厂定义*teefactory工厂_name“osmdownloader successful output renamer/nuker”输入功能键入osmdownloader_success output feature_type osmdownloader_success factory_def*teefactory factory_name“osmdownloader failure output renamer/nuker”input feature_type osmdownloader_failure factory_def*teefactory factory_name“osmdownloader” 输出Renamer/Nuker“输入功能\u型osmdownloader_ 输出功能_型osmdownloader_ DEFAULT_MACRO _WB_BYPASS_TERMINATION NoFACTORY_DEF * TeeFactory FACTORY_NAME OSMDownloader_ 输入FEATURE_TYPE OSMDownloader_ 输出失败的功能_type*@中止(编码,OSMDownloader 输出 一个 拒绝了 特性。 来 继续 翻译 当 特性 是 拒绝了 改变 工作空间 参数 翻译 拒绝了 功能 处理 来 继续 翻译 )#—————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————— 供词 编码 __wb_out_feat_type__ debug_water_tmp 坐标轴系统EPSG:3857几何特征type_u attribute uuwb_out Feat uuuu type uuuuuu output routed feature uuu type ke me_uuuuuuu@tcl2(“FME_statmessage 818059[FME_getattribute FME_template_feature_type]818060 818061 FME_Warn”)3580;-----------------------------------------------工厂定义*teefactory factory_name“Final output nuker”input feature_type_uu nuke_me_uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu