• ArcGIS Pro之OSGB数据转换及发布服务流程


     现在三维应用越来越广泛,我们也要与时俱进广泛应用三维场景,创建三维GIS应用。三维GIS应用可以提升视觉上的感官体验,也可以进行二维无法实现的各类分析。

    三维分析包括:数字地形模型分析(即高程,等高线、坡度坡向等读取分析),可视性分析(包括通视分析、视点分析、视域分析、视线分析、天际线分析、日照分析)、淹没分析、节点动画、挖方分析、三维路径分析、飞行路线危险性分析、危险物扩散分析、三维测量等。

    一、处理前注意事项

    1、arcgis pro支持三维数据的发布必须使用portal连接server才能发布三维服务;

    2、 ArcMap和ArcGIS Pro 1.X版本不能直接打开OSGB的数据,需要使用数据互操作模块将OSGB转换为multipatch,之后发布服务。目前已知ArcGIS Pro 2.2版本,GP工具箱找到Create Integrated Mesh Scene Layer,可以直接将OSGB转为SLPK。

    3、明确OSGB的坐标,否则转换后会出现模型偏移等问题。模型坐标存储在medata.xml中(在将OSGB转换为multipatch的时候,需要定义投影坐标系)。

    二、osbg转换方法一:

    arcgis pro2.2版本直接转

    此方法暂未实践,来源:https://zhuanlan.zhihu.com/p/43410474

    1、在ESRI网站申请Arcgis pro2.2,选择英文语言有最新安装包,其他语言包会滞后。还需要相应的数据转换工具Data Interoperability。(注意:尽量使用英文版,目前经测试中文语言包在使用时部分操作会有错误)

    2.新建工程,熟悉相关界面。

    3.在GP工具箱找到Create Integrated Mesh Scene Layer。可以直接将OSGB转为SLPK。

    4.打开输入数据集,Input Dataset.

     

    5.点击任意根目录文件,ctrol+A全选,这些tile可以合成一个slpk文件。

    6.File Suffix 选择数据格式,osgb或者所有支持的格式。output scene layer保存slpk文件路径。anchor停靠点可以导入点文件,或绘制点(点击)。

    7.Go To XY,输入经纬度,显示高亮点,放大地图。停靠点点在osgb数据头文件meradata.xml的坐标原点处。如果需要平面投影坐标转经纬度,可用下面工具完成。平面点位输入还未测试,按理也可以。

    8.将停靠点文件保留一份,如果下次或同一个工程很大分成了若干文件夹。最好使用同一份点位停靠。不然每次点停靠点的话肯定会有误差。

    9.设置完毕,点击下方run命令,等待工程运行。(目前测试大数据使用版本pro会崩,如果是正式用户需联系ESRI解决)。

    10.根据项目数据情况,在catalog目录下可建Global球面场景或本地local场景,一般根据数据集格式。pro可能实现平面和球面的自转换。

    11.将生成的slpk文件拖到场景,在3D图层pan缩放其位置就可显示模型了。

    三、osgb转换方法二:

    将OSGB数据转换为multipatch

    不方便截图,图片参考来源:https://blog.csdn.net/zglybl/article/details/75252288

    1、准备工作

    注意:此方法需要Installing the ArcGIS Data Interoperability 扩展模块扩展模块,需单独购买,单独安装,使用时勾选扩展模块,无试用版本。

    (1)、ArcGIS Pro中如何获取和使用

    确认是否购买此模块:如果是name user登录形式,需要登录ArcGIS online中查看和分配扩展模块许可;如果是浮动版或单机版的pro许可,用记事本打开浮动版.prvs或单击版.prvc授权文件,看最后一行是否有Data Interoperability=EFL123456789=1,如果有的话,就表示购买此模块。

    详情请参考:安装Installing the ArcGIS Data Interoperability 扩展模块—ArcGISPro | ArcGIS Desktop:  https://pro.arcgis.com/zh-cn/pro-app/help/data/data-interoperability/install-the-data-interoperability-extension.htm

    安装应用程序,找到如下截图所示的exe,双击即可完成安装:

    找到licensing,在Data Interoperability扩展模块前打勾即可开启。

    之后,打开ArcGIS Pro 即可在ANALYSIS下找到Workbench,说明你已成功启动数据互操作。

    (2)、ArcMap中如何获取和使用

     针对购买的正版软件:请检查您是否购买数据互操作模块(用记事本打开浮动版.prvs或单击版.prvc授权文件,看最后一行是否有Data Interoperability=EFL123456789=1,如果有的话,就表示购买此模块),         

    详情请参考:

    安装 Data Interoperability—帮助 | ArcGIS Desktop:点击打开链接

     安装Data interoperability应用程序,找到光盘,双击ArcGIS_Data_Interop_for_Desktop_105_154035.exe即可安装。

    安装完成后,打开ArcMap,点击Customize下的Extensions,勾选Data interoperability即可开启此模块的使用。

    2、将OSGB数据转换为multipatch

    (1)在ArcGIS Pro中,使用FME workbench 创建 Spatial ETL tool进行转换,流程如下:

    ①  右键单击工程窗格中的工具箱,指向新建,然后单击spatial ETL tool。将出现工具属性对话框

    ②定义合适的名称和标签,并在工作空间参数中使用默认 FMW 文件,然后单击确定。

    ③  将启动 Workbench 应用程序,点击File下的Generate Workspace,出现如下对话框。

    Reader中,在下拉列表中选择OSGB格式,单击浏览按钮 (...),浏览至osgb所在文件。

    单击参数按钮以编辑默认的 FME 阅读器参数。这些参数可包括可选设置和必要设置,并随所选格式的不同而变化。

    Writer中,在下拉列表中选择gdb格式,单击浏览按钮 (...),指定gdb所在文件。

    ④ 点击确定后,需要转换的数据流依次出现在如下界面中,点击绿色按钮run,即可开始转换。

    转换结果:

    (2)在ArcMap中进行转换:

    ArcMap中可以使用以下两种方法进行转换,

    ①、使用快速转换工具进行转换

    开启数据互操作模块后,在工具箱中找到Data interoperability tools,里边有两个工具,分别是quick export和quick import。使用quick import即可将OSGB数据转换到指定的gdb中。

    tips:一个小技巧

    OSGB格式的数据通常有多个tile文件组成,每个tile下有好多个.osgb;通过下图中的add folders可将tile文件夹下的所有osgb进行转换,无需单个输入。

     

    ②、使用空间ETL工具进行转换(在arcgis pro中进行)

    3、合并为一个multipatch

    在ArcGIS Pro中,使用工具merge(Data Management toolbox --General ),或ArcScene中3D编辑工具条下的union,将osgb中最高级别进行合并(OSGB数据类似于金字塔结构,最高级别模型最精细),合并为一个multipatch。

    4、移动至实际位置并贴合

    (1)在ArcGIS Pro中,选中模型,使用move to工具将模型移动到模型中心实际所在位置(从metadata.xml中获取,注意选择absolute)。

    转移后,坐标范围没有更新,需要使用工具Recalculate Feature ClassExtent工具重新计算。

    计算完后,加载模型,模型已处于正确的地理位置,但你会发现,此时模型是悬浮在空中。

    (2)可以使用move工具,移动z值将其调整至地面,或者右键图层选择on the ground,下图为模型和底图完全贴合。

    四、发布服务

    方法一、直接发布(适合小数据量)

    1、直接将多面体加载到场景中,右键场景图层,点击share as web layer,然后根据参考文档进行操作即可发布场景服务。

    参考链接:https://pro.arcgis.com/zh-cn/pro-app/help/sharing/overview/share-a-web-scene.htm

    2、在portal中添加发布的场景

    方法一、打包发布(适合大数据量)

    1、使用“创建场景图层包”工具,将多面体要素图层生成场景图层包 (.slpk);工具位置:数据管理工具箱 -> 打包工具集->创建场景图层包

    参考链接:https://pro.arcgis.com/zh-cn/pro-app/tool-reference/data-management/create-scene-layer-package.htm

    2、如果输出场景包小于 1 GB,则可在浏览器中直接将其上传至 ArcGIS Online 或 Portal for ArcGIS。如果大于 1 GB,请使用“共享包”工具将其上传至 ArcGIS Online 或 Portal for ArcGIS 10.3.1 或更高版本。工具位置:数据管理工具箱 -> 打包工具集 ->共享包

    3)上传场景图层包后打开项目详细页面,将其发布为服务。

    关于发布场景图层参考:http://zhihu.esrichina.com.cn/article/3173

  • 相关阅读:
    搞明白这八个问题,Linux系统就好学多了
    Fedora 25 Alpha版本今天发布啦
    Linux新手应掌握的10个基本命令
    PC-BSD 换名 TrueOS
    JPA+Springboot实现分页效果
    陈亮
    押尾光太郎
    岸部真明
    面试必备-网络的七层协议
    JavaScript中的快速排序
  • 原文地址:https://www.cnblogs.com/tangguobo/p/11131528.html
Copyright © 2020-2023  润新知