对三维点、线几何对象做缓冲区。可以指定源投影坐标系。
命名空间:
SuperMap.Realspace.SpatialAnalyst程序集: SuperMap.Realspace.SpatialAnalyst (in SuperMap.Realspace.SpatialAnalyst)
版本: dll
语法
C# |
---|
public static Geometry3D CreateBuffer( Geometry3D geometry, BufferAnalyst3DParameter bufferAnalyst3DParameter, PrjCoordSys prjCoordSys ) |
参数
- geometry
- Type: SuperMap.Data..::.Geometry3D
指定的三维几何对象。
- bufferAnalyst3DParameter
- Type: SuperMap.Realspace.SpatialAnalyst..::.BufferAnalyst3DParameter
指定的缓冲参数类。
- prjCoordSys
- Type: SuperMap.Data..::.PrjCoordSys
指定的源投影坐标系。支持平面和球面场景。
返回值
三维模型几何对象。备注
该方法用于对三维点、线几何对象在空间做缓冲区域。
支持以下几种三维对象:
包括GeoBox(长方体)、GeoCone(圆锥体)、GeoSphere(球体)、GeoHemiSphere(半球体)、GeoCylinder(圆台)、GeoEllipsoid(椭球体)、GeoPieCylinder(饼台)、GeoPyramid(四棱锥)等三维规则几何体,以及 GeoModel(三维模型)。
- 三维点缓冲区
- 三维线缓冲区
三维点的缓冲区是以点对象为圆心,以给定的缓冲距离为半径生成的空间球状区域。
三维线的缓冲区是沿空间线对象的法线方向,向线对象的周围平移一定的距离而得到空间柱状区域,并与在线端点处形成的半球(也可以形成圆)接合形成的封闭区域。
调用该方法时,需要通过 bufferAnalyst3DParameter 指定缓冲参数(BufferAnalyst3DParameter)对象,该对象用于指定三维几何对象缓冲所需的参数,如缓冲端点类型、缓冲半径、缓冲质量。
示例
以下代码示范了如何根据给三维线对象创建缓冲区。
CopyC#
public void CreatBufferForLine3D(Geometry3D geometry,PrjCoordSys prjCoordSys) { //设置缓冲参数 BufferAnalyst3DParameter bufferAnalyst3DParameter = new BufferAnalyst3DParameter(); bufferAnalyst3DParameter.EndType = BufferEndType.Round; bufferAnalyst3DParameter.BufferDistance = 50; bufferAnalyst3DParameter.BufferQuality = 20; //调用创建缓冲区方法 Geometry3D geoModel = Geometrist3D.CreateBuffer(geometry,bufferAnalyst3DParameter,prjCoordSys); }