# PointPrimitive

#### new Cesium.PointPrimitive()
Scene/PointPrimitive.js 54

  A graphical point positioned in the 3D scene, that is created and rendered using a `PointPrimitiveCollection`. A point is created and its initial properties are set by calling `PointPrimitiveCollection#add`.

  ##### Performance:

  Reading a property, e.g., `PointPrimitive#show`, is constant time. Assigning to a property is constant time but results in CPU to GPU traffic when `PointPrimitiveCollection#update` is called. The per-pointPrimitive traffic is the same regardless of how many properties were updated. If most pointPrimitives in a collection need to be updated, it may be more efficient to clear the collection with `PointPrimitiveCollection#removeAll` and add new pointPrimitives instead of modifying each one.

  ##### Throws:

  - DeveloperError : scaleByDistance.far must be greater than scaleByDistance.near
  - DeveloperError : translucencyByDistance.far must be greater than translucencyByDistance.near

  ##### Demo:

  - Cesium Sandcastle Points Demo

  ##### See:

  - PointPrimitiveCollection
  - PointPrimitiveCollection#add

### Members

#### color : Color
Scene/PointPrimitive.js 275

  Gets or sets the inner color of the point. The red, green, blue, and alpha values are indicated by `value`'s `red`, `green`, `blue`, and `alpha` properties as shown in Example 1. These components range from `0.0` (no intensity) to `1.0` (full intensity).

  ##### 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);

#### id : Object
Scene/PointPrimitive.js 347

  Gets or sets the user-defined object returned when the point is picked.

#### outlineColor : Color
Scene/PointPrimitive.js 299

  Gets or sets the outline color of the point.

#### outlineWidth : Number
Scene/PointPrimitive.js 324

  Gets or sets the outline width in pixels. This width adds to pixelSize, increasing the total size of the point.

#### pixelSize : Number
Scene/PointPrimitive.js 241

  Gets or sets the inner size of the point in pixels.

#### position : Cartesian3
Scene/PointPrimitive.js 132

  Gets or sets the Cartesian position of this point.

#### scaleByDistance : NearFarScalar
Scene/PointPrimitive.js 176

  Gets or sets near and far scaling properties of a point based on the point's distance from the camera. A point's scale will interpolate between the `NearFarScalar#nearValue` and `NearFarScalar#farValue` while the camera distance falls within the upper and lower bounds of the specified `NearFarScalar#near` and `NearFarScalar#far`. Outside of these ranges the point's scale remains clamped to the nearest bound. This scale multiplies the pixelSize and outlineWidth to affect the total size of the point. If undefined, scaleByDistance will be disabled.

  ##### 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;

#### show : Boolean
Scene/PointPrimitive.js 109

  Determines if this point will be shown. Use this to hide or show a point, instead of removing it and re-adding it to the collection.

#### translucencyByDistance : NearFarScalar
Scene/PointPrimitive.js 217

  Gets or sets near and far translucency properties of a point based on the point's distance from the camera. A point's translucency will interpolate between the `NearFarScalar#nearValue` and `NearFarScalar#farValue` while the camera distance falls within the upper and lower bounds of the specified `NearFarScalar#near` and `NearFarScalar#far`. Outside of these ranges the point's translucency remains clamped to the nearest bound. If undefined, translucencyByDistance will be disabled.

  ##### 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
Scene/PointPrimitive.js 423

  Computes the screen-space position of the point's origin. The screen space origin is the top, left corner of the canvas; `x` increases from left to right, and `y` increases from top to bottom.

  Name | Type | Description
  --- | --- | ---
  `scene` | Scene | The scene.
  `result` | Cartesian2 | optional The object onto which to store the result.

  ##### Returns:

  The screen-space position of the point.

  ##### Throws:

  - DeveloperError : PointPrimitive must be in a collection.

  ##### Example:

      console.log(p.computeScreenSpacePosition(scene).toString());

#### equals(other) → Boolean
Scene/PointPrimitive.js 451

  Determines if this point equals another point. Points are equal if all their properties are equal. Points in different collections can be equal.

  Name | Type | Description
  --- | --- | ---
  `other` | PointPrimitive | The point to compare for equality.

  ##### Returns:

  `true` if the points are equal; otherwise, `false`.