对三维点、线几何对象做缓冲区。可以指定源投影坐标系。

命名空间:  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);   
}

版本信息

SuperMap iObjects .NET


请参见