new Cesium.PolygonOutlineGeometry(options)

椭圆形上多边形轮廓的描述. 多边形由多边形的阶梯来定义.
Name Type Description
options object 下列属性的对象 :
Name Type Default Description
polygonHierarchy PolygonHierarchy 多边形结构可以包括孔.
height number 0.0 optional 多边形与椭圆表面之间的米数距离.
extrudedHeight number optional 多边形外凸面与椭圆形表面之间以米计的距离.
vertexFormat VertexFormat VertexFormat.DEFAULT optional The vertex attributes to be computed.
ellipsoid Ellipsoid Ellipsoid.default optional The ellipsoid to be used as a reference.
granularity number CesiumMath.RADIANS_PER_DEGREE optional The distance, in radians, between each latitude and longitude. Determines the number of positions in the buffer.
perPositionHeight boolean false optional Use the height of options.positions for each position instead of using options.height to determine the height.
arcType ArcType ArcType.GEODESIC optional The type of path the outline must follow. Valid options are ArcType.GEODESIC and ArcType.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

packedLength : number

用于将对象组合成数组的元素数量.

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 下列属性的对象 :
Name Type Default Description
positions Array.<Cartesian3> 定义多边形角点的一系列位置.
height number 0.0 optional 多边形的高度.
extrudedHeight number optional 多边形挤压的高度.
ellipsoid Ellipsoid Ellipsoid.default optional The ellipsoid to be used as a reference.
granularity number CesiumMath.RADIANS_PER_DEGREE optional The distance, in radians, between each latitude and longitude. Determines the number of positions in the buffer.
perPositionHeight boolean false optional Use the height of options.positions for each position instead of using options.height to determine the height.
arcType ArcType ArcType.GEODESIC optional The type of path the outline must follow. Valid options are LinkType.GEODESIC and ArcType.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 The index into the array at which to start packing the elements.
Returns:
装入的阵列

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

从组合的数组中获取实例 .
Name Type Default Description
array Array.<number> 装填的阵列.
startingIndex number 0 optional The starting index of the element to be unpacked.
result PolygonOutlineGeometry optional 存储结果的对象.
Returns:
如果不提供经过修改的结果参数或一个新的PolygonOutlineGeometry实例.
Need help? The fastest way to get answers is from the community and team on the Cesium Forum.