# Ray

#### new Cesium.Ray(origin, direction)
Core/Ray.js 22

  Represents a ray that extends infinitely from the provided origin in the provided direction.

  Name | Type | Default | Description
  --- | --- | --- | ---
  `origin` | Cartesian3 | `Cartesian3.ZERO` | optional The origin of the ray.
  `direction` | Cartesian3 | `Cartesian3.ZERO` | optional The direction of the ray.

### Members

#### direction : Cartesian3
Core/Ray.js 39

  The direction of the ray.

#### origin : Cartesian3
Core/Ray.js 33

  The origin of the ray.
  Default Value: ``Cartesian3.ZERO``

### Methods

#### staticCesium.Ray.getPoint(ray, t, result) → Cartesian3
Core/Ray.js 56

  Computes the point along the ray given by r(t) = o + t*d, where o is the origin of the ray and d is the direction.

  Name | Type | Description
  --- | --- | ---
  `ray` | Ray | The ray.
  `t` | Number | A scalar value.
  `result` | Cartesian3 | optional The object in which the result will be stored.

  ##### Returns:

  The modified result parameter, or a new instance if none was provided.

  ##### Example:

      //Get the first intersection point of a ray and an ellipsoid.
      var intersection = Cesium.IntersectionTests.rayEllipsoid(ray, ellipsoid);
      var point = Cesium.Ray.getPoint(ray, intersection.start);