.. role:: ts-api-decorator

###
Ray
###

.. container:: ts-api-section

   .. js:class:: Ray

      Object representing a Ray.



.. container:: api-index-section

   .. rubric:: Constructors

   .. rst-class:: api-index-list-item api-kind-constructor api-parent-kind-class

   * :js:meth:`~Ray.constructor`



.. container:: api-index-section

   .. rubric:: Properties

   .. rst-class:: api-index-list-item api-kind-property api-parent-kind-class

   * :js:attr:`~Ray.direction`
   * :js:attr:`~Ray.origin`



.. container:: api-index-section

   .. rubric:: Methods

   .. rst-class:: api-index-list-item api-kind-method api-parent-kind-class

   * :js:meth:`~Ray.assign`
   * :js:meth:`~Ray.copy`
   * :js:meth:`~Ray.negate`





------------

Constructors
============

.. container:: ts-api-section

   .. js:function:: Ray.constructor([ origin[, direction]])

      :param origin: :ts-api-decorator:`optional` None
      :type origin: Point3
      :param direction: :ts-api-decorator:`optional` None
      :type direction: Point3


      :rtype: Ray



Properties
==========

.. container:: ts-api-section

   .. js:attribute:: Ray.direction

      :type: Point3





.. container:: ts-api-section

   .. js:attribute:: Ray.origin

      :type: Point3





Methods
=======

.. rst-class:: ts-api-section

assign
------

.. js:method:: Ray.assign( ray)

   :param ray: the ray to assign
   :type ray: Ray


   Sets this ray equal to another ray


   :rtype: this

.. rst-class:: ts-api-section

copy
----

.. js:method:: Ray.copy()



   Creates a copy of this ray

   :returns: a copy of this ray object


   :rtype: Ray

.. rst-class:: ts-api-section

negate
------

.. js:method:: Ray.negate()



   Flips the ray's direction.


   :rtype: this

