空间分析
空间分析是进行空间操作的主要模块,支持常用的 拓扑验证
拓扑检查
空间连接
空间选择
等,并具备融合、缓冲、边界几何等一系列空间分析工具。
拓扑验证
命令 TV
,一般用于修复图形在微观层面的一些错误,以规范图形质量。
同时拓扑验证是执行拓扑检查的基础,一些未通过验证的数据会导致拓扑检查失败,正确理解验证对规范空间数据质量很重要。
注意
验证会对要素折点进行聚类处理,彼此间距离在指定范围内的折点被认为表示同一个位置,换言之,在容差范围内的折点会被捕捉到一起,处于拓扑容差范围内的所有折点在验证过程中均可能轻微移动。所以,拓扑容差应设置在不影响数据质量的范围内。
拓扑验证步骤
在
图层列表
中勾选需要加入验证的图层,并设置其锁定状态
和优先级
。在
验证设置
中勾选要验证的项目,在容差设置
中设置合适的容差 。点击
框选验证
或全部验证
,等待验证完成即可。属性过滤
可按属性排除指定图元,使其不参与验证。
图层列表
- 在图层列表中勾选图层,其要素将加入拓扑验证
- 锁定、冻结、关闭的图层将不出现在列表中;
- 优先级:优先级高的图层将有更少的要素改动,最高为1,最低10,单击优先级数字可调整;
- 锁定:右键可设置锁定,锁定图层后,该层的要素将尽可能避免更改:
- 锁定层只执行要素验证,不参与相邻验证;
- 锁定层比未锁定层有更高的优先级;
要素验证
修复要素自身问题,如重合点、自相交、环走向、尖锐角等,重合点是验证默认项,此外有以下可选项:
- 添加自相交点:要素若存在自相交,其交点处将被添加节点;
- 移除共线节点:若节点到其前后节点所构成线段的距离小于拓扑容差,这三点将被认为是“共线”的,中间节点将被移除;
- 移除尖角节点:若节点处夹角小于角度容差,该节点将被移除;
- 调整环走向:闭合要素将调整其环走向为设置值;
- 注:共线节点和相交节点矛盾时,优先满足相交节点
相邻验证
修复和相邻要素间的问题,如相交缺节点、相邻缺节点等:
- 相交相交节点:若要素与其他要素相交,其交点处将被添加节点
- 添加相邻节点:若节点到相邻要素节点或边界距离在容差范围内,则该点将被吸附到相邻的节点或边界上
- 捕捉到锁定层:节点将被捕捉到附近锁定图层的线段上,受距离容差影响,开启锁定图层后生效
拓扑容差
拓扑容差用于控制折点位移的范围,可在验证设置-容差设置中设置容差,具体分为3种:
- 距离容差:该范围内所有折点和边界将被视为相同或重合,落在容差范围内的折点和端点将被捕捉到一起;
- 角度容差:折点处夹角小于该值的顶点将被移除;
- 共线容差:点到相邻两点线段的垂直距离小于该值的将视为3点共线,中间节点将被移除。
注意事项
- 可参与验证的要素类型有:多段线(
Polyline
),二维多段线(Polyline2D
) - 验证过程会对弧段进行强制转换,转换设置参考 几何转换设置
拓扑检查
命令 TC
,拓扑检查 一般用于图形的空间关系检查,按指定的规则检查图形数据,列出不满足规则的项供用户快速定位并修改,以完善数据质量,和自动执行的拓扑验证不同,拓扑检查更宏观 ,检查到的问题一般需要人工核实修改。
ArcGIS等软件在进行拓扑检查前,为确保节点的有效性,默认进行了点聚类处理,这个过程也就是本软件的拓扑验证功能
因此,强烈建议执行检查前对要检查的图层先执行 拓扑验证
拓扑检查步骤
在检查面板中点击
添加
,设置检查规则,确定后该规则添加至列表,可添加多个规则:- 配置好的规则可 保存 到本地,下次使用时 加载 即可,也可以将配置文件复制给他人使用。
- 筛选可对图层中的实体进行简单过滤,语法参见 按属性选择。
- 注意:若多个拓扑规则涉及相同图层,且都有筛选器,则将取其并集进行检查。
在规则列表中勾选需要检查的项(可多选),勾选后执行检查即可:
检查完成后,结果列表会列出错误信息,双击节点可定位至相应错误项:
所有的检查结果均保存在
_TopoCheck_Err
图层中,双击也是定位到该图层中的图形,可按需要删除或关闭该图层,也可将该图层作为检查结果导出为其他格式,反馈第三方修改。修改完成后可通过
清除检查结果
来清空错误列表,也可直接删除_TopoCheck_Err
图层;
提示
- 为确保图形几何有效,提高拓扑检查结果准确性,强烈建议执行检查前对要检查的图层先执行 拓扑验证 。
- 开启筛选后,对图形进行属性值过滤将花费一些时间,请耐心等待。
拓扑检查规则
单图层规则
名称 | 说明 |
---|---|
不闭合 | 不闭合的多段线将被判定为错误 |
不能有碎线 | 长度小于容差的多段线将被判定为错误 |
不能有碎面 | 面积小于容差的多段线将被判定为错误 |
最小节点间距 | 节点距离小于容差的要素将被判定为错误 |
最大节点间距 | 节点距离大于容差的要素将被判定为错误 |
不能有锐角 | 夹角小于容差的要素将被判定为错误 |
不能有钝角 | 夹角大于容差的要素将被判定为错误 |
不能重叠 | 重叠要素将被判定为错误 |
不能有空隙 | 要素间的空隙(空洞)要素将被判定为错误 |
复合规则
名称 | 说明 |
---|---|
要素间距 | 要素间隔距离大于0且小于容差的要素将被判定为错误 |
不能与其他要素重叠 | 图层中的要素不能与图层B要素重叠,否则视为错误 |
不能与其他要素重叠 | 图层中的要素不能与图层B要素重叠,否则视为错误 |
必须包含 | 图层中的要素必须包含图层B要素,否则视为错误 |
不能包含 | 图层中的要素不能包含图层B要素,否则视为错误 |
必须被包含 | 图层中的要素必须被图层B要素包含,否则视为错误 |
必须包含一个 | 图层中的要素必须包含图层B的一个要素,否则视为错误 |
必须被一个包含 | 图层中的要素必须被图层B的一个要素包含,否则视为错误 |
必须与一个相交 | 图层中的要素必须与图层B的一个要素相交,否则视为错误 |
边界必须被其他要素边界覆盖 | 图层中的要素边界必须被图层B要素边界覆盖,否则视为错误 |
空间选择
命令 KJXZ
,利用 空间选择
工具,您可以根据要素相对于另一图层要素的位置来进行选择。 您可使用多种选择方法,选择与同一图层或其他图层中的要素接近或重叠的点、线或面要素。
空间选择步骤
根据需要选取
选择方法
,默认为创建新选择内容
。在图层列表中勾选想要选择的
目标图层
,可以选择多个。在
源图层
中选择用于选取的图层。按需要勾选
使用所选要素
,勾选后可刷新
。在
空间选择方法
中选取空间关系规则。按需要设置
搜索距离
,点击应用
即可完成选择。
空间连接
命令 KJLJ
,空间连接可利用不同图层中各要素的空间关系为字段赋值,顺带也兼具部分拓扑检查的功能。
空间连接步骤
打开
空间连接
面板,设置输入图层
输入字段
目标图层
目标字段
。选择
空间关系
,可按需求设置容差,默认为 0.0001 米。点击
验证
,结果列表中会列出匹配情况,单击可定位查看相关图形。检查无误后,点击
保存
即可将结果列表中的内容保存到字段中。搜索
可对结果列表进行关键字检索,自动定位
可在单击节点时定位到图形。若图层和字段列表中的值和实际不符,可点击
刷新
来更新。
空间连接方法
名称 | 说明 |
---|---|
输入要素包含目标要素 | 大面对小面、点、文字、块、线等赋值 |
目标要素包含输入要素 | 点、文字、块、线等给面赋值 |
空间距离赋值 | 按要素的空间距离赋值,优先级包含>相交>相邻,容差为查找范围 |
包含求和 | 目标图层包含输入图层,可对输入字段进行求和 (只对数字有效) |
字段追加 | 目标图层包含输入图层,可对输入字段进行追加 (可设置连接符) |
文字内容提取到面 | 输入为文字层,目标为面图层,将文字内容提取到面的指定字段 (可设置连接符) |
空间连接示例
将注记内容添加到图形属性 ,在此注记为文字 (在FW注记图层),图形为闭合多段线 (在FW图层)
打开 FW 和 FW注记 图层的属性表,分别添加 Text 字段 ,如已有字段可忽略该步骤。
打开
字段计算器
,计算 Text 字段的值,表达式为 DBOBJECT.TextString,可将文字内容提取到字段中。打开
空间连接
面板,若图层和字段和上述一致,可如下设置,空间关系选目标要素包含输入要素
。设置好后
验证
,下方列表中会提示验证结果,本例中有8个闭合多段线未包含文字注记,可定位检查修改。确认后
保存
即可。
空间参考
AutoCAD
使用的是以固定坐标定位数据的 2D 和 3D 笛卡尔坐标系。其 x、y 和 z 坐标本质上并不是地理位置,而是相对于任一几何原点 (0,0,0) 的位置。为建立和 GIS 数据的转换,x 轴可以认为是向东的方向,y 轴可以认为是向北的方向,由此建立空间参考。
本软件的空间参考(定义投影)功能需要用户清楚自己所使用数据的坐标系,定义投影只是将该坐标系的参数保存下来,在格式转换和数据交互时使用,并不会修改图形的坐标值,若要实际上修改坐标值,请参考 投影变换
。
全局空间参考
设置全局空间参考后,在一些需要坐标系的场景(如导出 KML
)会自动使用该坐标系,导出的空间数据也会自动定义为该坐标系。
图层根节点右键,选择
设置投影
。在弹出窗口中选择需要的投影
确定
即可 (也可双击投影节点直接确定)。- 搜索框可对坐标系名称进行关键词搜索;
- 选择界面列出了常用的地理坐标系和投影坐标系,选中坐标系后会列出参数;
- 常用的坐标系可添加至收藏夹,方便下次使用;
- 有必要的话,可通过
自定义
设置坐标系
投影设置成功后会有提示,同时 AutoCAD 状态栏的图形坐标前会显示当前投影名称,未定义投影则显示
NOPRJ
;命令
SPRJ
,也可以设置投影。
自定义坐标系
坐标系选择界面左下角,可通过 自定义
设置参数来定义其他坐标系
- 自定义坐标系未被收入坐标系数据库,系统将无法判断其有效范围,使用时需注意精度
图层空间参考
图层空间参考用处和全局空间参考类似,只是具有更高优先级,在导出数据等场景下,若图层和全局都有设置,会优先使用图层空间参考。
设置方法:图层右键 > 属性 > 设置投影 > 确定
。
坐标转换
命令:ZBZH
,支持四参数转换,七参数转换,投影变换等
该功能测试中,使用时请注意检查精度,若有疑问径向客服反馈
四参数转换
适用于二维平面转换,可通过公共点(至少2组)计算四参数,并通过四参数对实体进行转换,高程维持不变
七参数转换
适用于三维转换,可通过公共点(至少3组)计算七参数,对实体进行转换
投影转换
适用于各种投影变换,换带计算等,只需输入源坐标系及目标坐标系,即可对图元进行转换
关于坐标转换
坐标转换会实际上修改数据的坐标值,本软件采取的坐标转换均是逐点进行。
CAD的数据结构较为繁杂,很多实体不能简单通过点来完整描述,转换过程不可避免的会造成一些数据或者精度上的损失,目前支持的实体及转换规则如下:
图元 | 备注 |
---|---|
点(DBPoint ) | 逐点转换,精度无损 |
线(Line ) | 逐点转换,精度无损 |
多段线(Polyline ) | 逐点转换,弧段凸度维持原状,线宽按转换前后的尺度缩放 |
二维多段线(Polyline2d ) | 同多段线 |
圆(Circle ) | 按圆心转换,半径将按转换前后的尺度缩放 对于投影转换而言,圆的转换是不可能精确的,A坐标系下的圆,投影到B坐标系可能变成椭圆,确保其数据结构,就不可能确保其圆周精度 |
弧段(Arc ) | 同圆 |
单行文字(DBText ) | 通过基点进行转换,字高按转换前后的尺度缩放 |
多行文字(MText ) | 同单行文字 |
填充(Hatch ) | 精度取决于填充的构成方式,若是直线段则转换是精确的 若转换前后的坐标系尺度变化较大,填充由于密度等参数可能导致视觉效果差异较大 |
块参照(Insert ) | 块有两种方案: 多部件块(块名以SBOX开头):将对块定义进行逐点转换,由于直接修改块定义,将不支持对块的多个引用 其他块:按基点转换后再进行尺度缩放 |
注意:
- 检查未显示的图元,诸如图案错误的填充,字体缺失的文字;
- 转换时请确保图层没有冻结,锁定等情况;
- 投影变换的目标:在确保精度的前提下,尽可能保证转换前后视觉效果一致性;
- 进行坐标转换后,由于坐标系尺度单位的不同(如:地理坐标系的
度
和投影坐标系的米
),转换前后的图元视觉效果可能有差异,诸如:多段线的线宽、填充的密度;
分析工具
缓冲区
命令:
BFF
包络矩形
命令:
BEnv
最小凸包
命令:
BCH
最小宽度外接矩形
命令:
BMWR
最小面积外接矩形
命令:
BMAR
最大面积内接矩形
命令:
BMIR
最大面积四边形
命令:
BMAP
最小外接圆
命令:
BMBC
最大内接圆
命令:
BMIC
融合线
命令:
LD
融合面
命令:
PD
构建泰森多边形
命令:
BVD
构建三角网
命令:
BTIN
构建凹包
命令:
CCH
构建边界(分组)
命令:
CCHG