PointPrimitive

new Cesium.PointPrimitive ()

位于 3D 场景中的图形点,使用 PointPrimitiveCollection 创建和渲染。创建一个点,并通过调用 PointPrimitiveCollection#add 设置其初始属性。
Performance:

读取属性(例如 PointPrimitive#show )是恒定时间。分配给属性是恒定时间,但在调用 PointPrimitiveCollection#update 时会导致 CPU 到 GPU 的流量。无论更新了多少属性,per-pointPrimitive 流量都是相同的。如果集合中的大多数 pointPrimitives 需要更新,使用 PointPrimitiveCollection#removeAll 清除集合并添加新的 pointPrimitives 而不是修改每一个可能更有效。

Throws:
  • DeveloperError : scaleByDistance.far 必须大于 scaleByDistance.near
  • DeveloperError : translucencyByDistance.far 必须大于 translucencyByDistance.near
  • DeveloperError : distanceDisplayCondition.far 必须大于 distanceDisplayCondition.near
Demo:
See:

Members

获取或设置点的内部颜色。红色、绿色、蓝色和 alpha 值由 value red green blue alpha 属性表示,如示例 1 所示。这些分量的范围从 0.0 (无强度)到 1.0 (全强度)。
Examples:
// Example 1. Assign yellow.
p.color = Cesium.Color.YELLOW;
// Example 2. Make a pointPrimitive 50% translucent.
p.color = new Cesium.Color(1.0, 1.0, 1.0, 0.5);

disableDepthTestDistance : Number

获取或设置与相机的距离,在该距离处禁用深度测试,例如,防止对地形进行裁剪。当设置为零时,始终应用深度测试。当设置为 Number.POSITIVE_INFINITY 时,永远不会应用深度测试。
Default Value: 0.0
获取或设置条件,指定在距相机多远的地方显示该点。
Default Value: undefined
获取或设置拾取点时返回的用户定义值。
获取或设置点的轮廓颜色。

outlineWidth : Number

获取或设置轮廓宽度(以像素为单位)。这个宽度增加了pixelSize,增加了点的总大小。
获取或设置点的内部大小(以像素为单位)。
获取或设置该点的笛卡尔位置。
根据点与相机的距离,获取或设置点的近距和远距缩放属性。当相机距离落在指定的 NearFarScalar#near NearFarScalar#far 的上下限内时,点的比例将在 NearFarScalar#nearValue NearFarScalar#farValue 之间进行插值。在这些范围之外,点的比例仍被限制在最近的范围内。此比例乘以 pixelSize 和 outlineWidth 以影响点的总大小。如果未定义,scaleByDistance 将被禁用。
Examples:
// Example 1.
// Set a pointPrimitive's scaleByDistance to scale to 15 when the
// camera is 1500 meters from the pointPrimitive and disappear as
// the camera distance approaches 8.0e6 meters.
p.scaleByDistance = new Cesium.NearFarScalar(1.5e2, 15, 8.0e6, 0.0);
// Example 2.
// disable scaling by distance
p.scaleByDistance = undefined;
确定是否显示该点。使用它来隐藏或显示一个点,而不是删除它并将其重新添加到集合中。
根据点与相机的距离,获取或设置点的近和远半透明属性。当相机距离落在指定的 NearFarScalar#near NearFarScalar#far 的上下限内时,点的半透明度将在 NearFarScalar#nearValue NearFarScalar#farValue 之间进行插值。在这些范围之外,点的半透明度仍然被限制在最近的边界。如果未定义,则 translucencyByDistance 将被禁用。
Examples:
// Example 1.
// Set a point's translucency to 1.0 when the
// camera is 1500 meters from the point and disappear as
// the camera distance approaches 8.0e6 meters.
p.translucencyByDistance = new Cesium.NearFarScalar(1.5e2, 1.0, 8.0e6, 0.0);
// Example 2.
// disable translucency by distance
p.translucencyByDistance = undefined;

Methods

computeScreenSpacePosition (scene, result ) Cartesian2

计算点原点的屏幕空间位置。屏幕空间原点是画布的左上角; x 从左到右增加, y 从上到下增加。
Name Type Description
scene Scene 现场。
result Cartesian2 可选 存储结果的对象。
Returns:
点的屏幕空间位置。
Throws:
Example:
console.log(p.computeScreenSpacePosition(scene).toString());

equals (other) Boolean

确定该点是否等于另一个点。如果所有属性都相等,则点相等。不同集合中的点可以相等。
Name Type Description
other PointPrimitive 比较平等的点。
Returns:
如果点相等,则为 true ;否则, false