ArcGIS Pro 矢量切片二三事

用于测试的软件版本:ArcGIS Pro2.5英文版  ArcGIS Enterprise10.7.1

数据来源:https://www.openstreetmap.org/  截取下载中的一部分数据,以上海市为例

测试数据坐标系:3857

切片方案:自定义

目录

一、使用ArcGIS Pro生成矢量切片工作流

1、配图

2、定义切片方案

3、生成矢量切片索引面

4、生成矢量切片包或直接发布为矢量切片服务

5、如生成矢量切片包,上传或分享包

二、原理

1、生成矢量切片索引面的规则

2、生成矢量切片索引面的作用

2.1、加快生成vtpk包的速度(测试速度仅针对本文中提到的数据,并非所有情况)

2.2、可以预先判断生成切片的密度,是否合理

2.3、修改生成切片的层级或包含的节点个数

3、如何控制生成多少级切片


一、使用ArcGIS Pro生成矢量切片工作流

1、配图

矢量切片配图要求一个图层只加载一次,与ArcMap时代配图要求不同,详见链接

本文中配图样例:

2、定义切片方案

3、生成矢量切片索引面

4、生成矢量切片包或直接发布为矢量切片服务

步骤详见:http://zhihu.esrichina.com.cn/article/3871

5、如生成矢量切片包,上传或分享包

完整工作流

二、原理

1、生成矢量切片索引面的规则

从右到左,从上到下

2、生成矢量切片索引面的作用

注:个人见解

2.1、加快生成vtpk包的速度(测试速度仅针对本文中提到的数据,并非所有情况)

在Create Vector Tile Package这个工具中,Index Polygon是一个可选项,如果有Index Polygon,生成vtpk是1分8秒左右,如果没有Index Polygon,生成vtpk大约需要1分57秒左右

2.2、可以预先判断生成切片的密度,是否合理

每个切片中含有1w个节点,默认值
每个切片中含有500个节点

从上面的图就能看出来,每个切片中含有的节点越少,要产生的切片就会越多

如果在ArcGIS Pro中打开Index Polygon,通过属性表,也可以了解到

LOD代表切片的层级,即根据默认的每个切片中包含1w个节点来看,总共需要切9级(0-8)

PTS代表每个切片中含有的节点个数(节点个数是将这一整个文档中所加载的所有图层,经过要素节点转点计算得出的)

2.3、修改生成切片的层级或包含的节点个数

如果想要实现上述目的,那么一定要生成Index Polygon,并将此Index Polygon在生成vtpk时作为参数填入,否则默认还是按照1w来的

那么问题来了,每个节点中包含节点数,应该设置为多少?生成的层级越多越好吗?

话不多说,先放几个对比动图

注:左边是每个切片中含有1W个节点的,右边是每个切片中含有1K个节点的,因为在代码中写的是一个view监视另外一个view的变化而变化,因此两个view在变化上有些许时间差

右边监视左边,右边反应慢些
左边监视右边,左边反应慢些

个人感觉,每个切片中含有1w个节点的,浏览起来也比较顺畅,每个切片中含有1k个节点的,没有比较明显的优势,因此我认为,如果不纠结于一定要将切片切到多少级,默认用1w就比较香,优点比较明显,生成切片速度快,体积小。

3、如何控制生成多少级切片

在栅格切片中,大家都比较熟悉下面这个图

这个图的意思是说,一共可生成0—23级,选择生成第8级到17级,其余的不生成,那么矢量切片时代?怎么做相同的控制呢?

因为发布矢量切片有两条路,假设切片方案里有0-23级

生成vtpk的方式:切片最终生成的层级由每个切片中包含节点数量控制,可通过Index Polygon里LOD最大属性看到

通过ArcGIS Pro直接发布:

上面的滑动条,是控制最终识别多少层级,而下面的index polygon 如果没有填,默认为10000 index polygon生成的切片,即规定了max lod和min lod
而如果index polygon代表的是能生成6级的面,上面的滑动条小于6级,比如0-3,那么最终切片层级为0-3级,
 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值