参数化对象指用一个或多个参数(如角度、长度等)来表示(x,y)坐标点的几何对象,例如圆、椭圆使用参数方程表达为:
圆:x=a+rcosɵ,y=b+rsinɵ (ɵϵ[0,2л))
椭圆:x=acosɵ,y=bsinɵ (ɵϵ[0,2л))
使用参数化对象来表达地物几何特征的好处是,现实中的地物轮廓线存在曲线时,采用参数化数据进行描述,在地图显示上与实际地物轮廓更为贴合,在面积周长等几何计算中更加准确。
图1 操场的轮廓曲线 |
参数化对象类型
当前线、面数据集中支持存储的参数化对象包括圆、圆弧、椭圆、椭圆弧、3阶贝塞尔曲线,同时支持由这些参数化对象组合成的复合线、面数据集。具体的参数化对象类型说明如下:
参数化对象
|
描述
|
参数化对象图形
|
类名
|
圆弧
|
|
GeoArc
|
|
圆
|
|
GeoCircle
|
|
椭圆弧
|
|
GeoEllipticArc
|
|
椭圆
|
|
GeoEllipse
|
|
贝塞尔曲线
|
3阶贝塞尔曲线
|
GeoBezier3Curve
|
|
参数化线
|
可以由如下几何对象组成:折线(GeoLine)、圆弧(GeoArc)、圆(GeoCircle)、椭圆弧(GeoEllipticArc)、椭圆(GeoEllipse)、贝塞尔曲线(GeoBezier3Curve),并且上一几何对象的终止坐标与下一几何对象的起始坐标重合。
|
GeoCompoundCurv
|
|
参数化面
|
可以由如下几何对象组成:折线(GeoLine)、参数化线(GeoCompoundCurve)、圆(GeoCircle)、椭圆(GeoEllipse),并且各几何对象均闭合。
|
GeoCurvePolygon
|
|
参数化多线
|
由多个子对象组成,每个子对象仅包含一个几何对象,几何对象可以为:折线(GeoLine)、圆弧(GeoArc)、圆(GeoCircle)、椭圆弧(GeoEllipticArc)、椭圆(GeoEllipse)、参数化线(GeoCompoundCurve)、贝塞尔曲线(GeoBezier3Curve),特别的,子对象为GeoLine时,所包含的线对象个数只能是1。
|
GeoMultiCurve
|
|
参数化多面
|
由多个子对象组成,每个子对象仅包含一个几何对象,几何对象可以为:面(GeoRegion)、参数化面(GeoCurvePolygon),特别的,子对象为GeoRegion时,所包含的面对象个数只能是1。
|
GeoMultiSurface
|
外部格式参数化对象导入
当前支持DWG、FileGDB数据中参数化对象的导入,且在windows_x86、linux_x86、linux_arm环境下均支持参数化对象的导入。
- DWG
DWG几何对象导入为线、面数据集导入为CAD数据集保持参数化对象不保持参数化对象保持参数化对象不保持参数化对象圆、椭圆圆、椭圆拟合折线/拟合面圆、椭圆圆、椭圆圆弧、椭圆弧圆弧、椭圆弧拟合折线圆弧、椭圆弧圆弧、椭圆弧样条曲线参数化线拟合折线参数化线拟合折线多段线参数化线拟合折线参数化线复合对象图案填充参数化面拟合面参数化面复合对象块参数化线/面拟合折线/面参数化线/面复合对象
* 多段线导入为CAD数据集时,需设置“保持参数化对象”,且满足存在参数化对象,忽略多段线宽或多段线宽为0,才能导入为参数化对象,否则导入为复合对象。
* DWG导入为参数化对象,仅支持导入为二维的数据集,若要保留对象高度信息,则会被拟合为折线。
- FileGDB
FileGDB几何对象导入线、面数据集圆、圆弧圆、圆弧贝塞尔曲线参数化多线,子对象为贝塞尔曲线圆、椭圆、参数化面圆、椭圆、参数化面由多个线面几何对象组成的线/面要素(见图2)参数化多线/参数化多面
* 当FileGDB一个线/面要素存在多个子对象时(如下图2),导入将转成包含多个子对象的参数化多线/参数化多面。
图2 多个子对象组成的参数化多线
- 其它外部格式
其它外部格式中的参数化对象导入,将会被拟合成折线。
参数化对象导出外部格式
当前仅支持参数化对象导出为DWG、DXF格式时,仍保留参数化对象,且在windows_x86、linux_x86、linux_arm环境下均支持。导出为其它格式,包括不支持参数化对象的格式,如csv、geojson、kml等,参数化对象将拟合成折线。
特殊说明
对于参数化对象的编辑,当前仅支持圆和椭圆,其它参数化对象编辑后将被拟合成折线。
功能支持情况
当前支持参数化对象的矢量处理和分析功能包括:叠加分析、缓冲区分析、融合、建筑物规则化、计算面积、矢量重采样、双线提取中心线、面提取中心线、距离计算、线面光滑、创建随机点、矢量栅格化、属性更新、图幅接边、矢量裁剪、线拓扑处理、碎多边形合并、面聚合、聚类和异常值分析、热点分析等。其他未说明的功能,若遇到无法支持参数化对象,可进行反馈。