PolygonOutlineGeometry

new Cesium.PolygonOutlineGeometry(options)

描述椭球上多边形轮廓。多边形由多边形层级结构定义。
Name Type Description
options object Object with the following properties:
Name Type Default Description
polygonHierarchy PolygonHierarchy 一个可以包含孔洞的多边形层级结构。
height number 0.0 optional 多边形与椭球表面之间的距离(单位:米)。
extrudedHeight number optional 多边形拉伸面与椭球表面之间的距离(单位:米)。
vertexFormat VertexFormat VertexFormat.DEFAULT optional 要计算的顶点属性。
ellipsoid Ellipsoid Ellipsoid.default optional 用作参考的椭球体。
granularity number CesiumMath.RADIANS_PER_DEGREE optional 每个经度和纬度之间的间隔(单位:弧度)。决定缓冲区中位置的数量。
perPositionHeight boolean false optional 使用 options.positions 中每个位置的高度来确定高度,而不是使用 options.height。
arcType ArcType ArcType.GEODESIC optional 轮廓必须遵循的路径类型。有效选项为 ArcType.GEODESICArcType.RHUMB
Example:
// 1. create a polygon outline from points
const polygon = new Cesium.PolygonOutlineGeometry({
  polygonHierarchy : new Cesium.PolygonHierarchy(
    Cesium.Cartesian3.fromDegreesArray([
      -72.0, 40.0,
      -70.0, 35.0,
      -75.0, 30.0,
      -70.0, 30.0,
      -68.0, 40.0
    ])
  )
});
const geometry = Cesium.PolygonOutlineGeometry.createGeometry(polygon);

// 2. create a nested polygon with holes outline
const polygonWithHole = new Cesium.PolygonOutlineGeometry({
  polygonHierarchy : new Cesium.PolygonHierarchy(
    Cesium.Cartesian3.fromDegreesArray([
      -109.0, 30.0,
      -95.0, 30.0,
      -95.0, 40.0,
      -109.0, 40.0
    ]),
    [new Cesium.PolygonHierarchy(
      Cesium.Cartesian3.fromDegreesArray([
        -107.0, 31.0,
        -107.0, 39.0,
        -97.0, 39.0,
        -97.0, 31.0
      ]),
      [new Cesium.PolygonHierarchy(
        Cesium.Cartesian3.fromDegreesArray([
          -105.0, 33.0,
          -99.0, 33.0,
          -99.0, 37.0,
          -105.0, 37.0
        ]),
        [new Cesium.PolygonHierarchy(
          Cesium.Cartesian3.fromDegreesArray([
            -103.0, 34.0,
            -101.0, 34.0,
            -101.0, 36.0,
            -103.0, 36.0
          ])
        )]
      )]
    )]
  )
});
const geometry = Cesium.PolygonOutlineGeometry.createGeometry(polygonWithHole);

// 3. create extruded polygon outline
const extrudedPolygon = new Cesium.PolygonOutlineGeometry({
  polygonHierarchy : new Cesium.PolygonHierarchy(
    Cesium.Cartesian3.fromDegreesArray([
      -72.0, 40.0,
      -70.0, 35.0,
      -75.0, 30.0,
      -70.0, 30.0,
      -68.0, 40.0
    ])
  ),
  extrudedHeight: 300000
});
const geometry = Cesium.PolygonOutlineGeometry.createGeometry(extrudedPolygon);
See:
  • PolygonOutlineGeometry#createGeometry
  • PolygonOutlineGeometry#fromPositions

Members

用于将对象打包进数组的元素数量。

Methods

static Cesium.PolygonOutlineGeometry.createGeometry(polygonGeometry)Geometry|undefined

计算多边形轮廓的几何表示,包括其顶点、索引和包围球。
Name Type Description
polygonGeometry PolygonOutlineGeometry 对多边形轮廓的描述。
Returns:
计算得到的顶点和索引。

static Cesium.PolygonOutlineGeometry.fromPositions(options)PolygonOutlineGeometry

通过一组位置数组描述多边形轮廓。
Name Type Description
options object Object with the following properties:
Name Type Default Description
positions Array.<Cartesian3> 定义多边形角点的一组位置数组。
height number 0.0 optional 多边形的高度。
extrudedHeight number optional 多边形拉伸的高度。
ellipsoid Ellipsoid Ellipsoid.default optional 用作参考的椭球体。
granularity number CesiumMath.RADIANS_PER_DEGREE optional 每个经度和纬度之间的间隔(单位:弧度)。决定缓冲区中位置的数量。
perPositionHeight boolean false optional 使用 options.positions 中每个位置的高度来确定高度,而不是使用 options.height。
arcType ArcType ArcType.GEODESIC optional 轮廓必须遵循的路径类型。有效选项为 LinkType.GEODESICArcType.RHUMB
Returns:
Example:
// create a polygon from points
const polygon = Cesium.PolygonOutlineGeometry.fromPositions({
  positions : Cesium.Cartesian3.fromDegreesArray([
    -72.0, 40.0,
    -70.0, 35.0,
    -75.0, 30.0,
    -70.0, 30.0,
    -68.0, 40.0
  ])
});
const geometry = Cesium.PolygonOutlineGeometry.createGeometry(polygon);
See:
  • PolygonOutlineGeometry#createGeometry

static Cesium.PolygonOutlineGeometry.pack(value, array, startingIndex)Array.<number>

将所提供的实例存储到所提供的数组中。
Name Type Default Description
value PolygonOutlineGeometry 要打包的值。
array Array.<number> 要打包进的数组。
startingIndex number 0 optional 数组中开始打包元素的索引。
Returns:
被打包到的数组

static Cesium.PolygonOutlineGeometry.unpack(array, startingIndex, result)PolygonOutlineGeometry

从打包后的数组中取出一个实例。
Name Type Default Description
array Array.<number> 已打包的数组。
startingIndex number 0 optional 要解包的元素起始索引。
result PolygonOutlineGeometry optional 用于存储结果的对象。
Returns:
被修改的 result 参数;如果未提供,则为一个新的 PolygonOutlineGeometry 实例。
需要帮助?获取答案的最快方式是在 Cesium 论坛 上向社区和团队提问。