.. role:: clio-readonly
   :class: clio-flag clio-flag-readonly

.. role:: clio-static
   :class: clio-flag clio-flag-static


###########
BoundingBox
###########

.. js:class:: cee.BoundingBox

   An axis-oriented bounding box storing the extent of an object.
   
   All vertices of the object that the bounding box has been computed for will be within the box defined by the min and max corners.
   
   Note that this class is immutable.
   
   
   Index
   =====
   
   .. rubric:: Constructors
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:func:`~cee.BoundingBox.constructor`
   
   .. rubric:: Properties
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:data:`~cee.BoundingBox.maximum`
   * :js:data:`~cee.BoundingBox.minimum`
   
   .. rubric:: Methods
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:meth:`~cee.BoundingBox.getCenter`
   * :js:meth:`~cee.BoundingBox.getExtent`
   * :js:meth:`~cee.BoundingBox.isValid`
   * :js:meth:`~static cee.BoundingBox.createInvalid`
   
   



.. rst-class:: kind-group kind-constructors

.. rubric:: Constructors
   :class: kind-group-title


.. js:method:: cee.BoundingBox.constructor

      .. rst-class:: sig-pretty-signature
      
         | BoundingBox(**minimum**\ : :js:class:`Vec3Like <cee.Vec3Like>`\ , **maximum**\ : :js:class:`Vec3Like <cee.Vec3Like>`\ ): :js:class:`BoundingBox <cee.BoundingBox>`
      
      Creates a bounding box with the given min and max corners.
      
      **Parameters**
      
      
         **minimum**\ : :js:class:`Vec3Like <cee.Vec3Like>`
      
         **maximum**\ : :js:class:`Vec3Like <cee.Vec3Like>`
      
      
      **Returns**\ : :js:class:`BoundingBox <cee.BoundingBox>`
      



.. rst-class:: kind-group kind-properties

.. rubric:: Properties
   :class: kind-group-title


.. js:data:: cee.BoundingBox.maximum

      .. rst-class:: clio-flags
      
         :clio-readonly:`readonly`
      
      .. rst-class:: sig-pretty-signature
      
         | maximum: :js:class:`Vec3 <cee.Vec3>`
      
      The maximum values for x, y and z across all vertices in the object.
      



.. js:data:: cee.BoundingBox.minimum

      .. rst-class:: clio-flags
      
         :clio-readonly:`readonly`
      
      .. rst-class:: sig-pretty-signature
      
         | minimum: :js:class:`Vec3 <cee.Vec3>`
      
      The minimum values for x, y and z across all vertices in the object.
      



.. rst-class:: kind-group kind-methods

.. rubric:: Methods
   :class: kind-group-title


.. js:method:: cee.BoundingBox.getCenter

      .. rst-class:: sig-pretty-signature
      
         | getCenter(): :js:class:`Vec3 <cee.Vec3>`
      
      Returns the center of the bounding box
      
      **Returns**\ : :js:class:`Vec3 <cee.Vec3>`
      



.. js:method:: cee.BoundingBox.getExtent

      .. rst-class:: sig-pretty-signature
      
         | getExtent(): :js:class:`Vec3 <cee.Vec3>`
      
      Returns the extent for each component (x,y,z) of the bounding box (maximum - minimum).
      
      **Returns**\ : :js:class:`Vec3 <cee.Vec3>`
      



.. js:method:: cee.BoundingBox.isValid

      .. rst-class:: sig-pretty-signature
      
         | isValid(): *boolean*
      
      Returns true if the bounding box is valid, i.e. if minimum < maximum for x, y and z.
      
      **Returns**\ : *boolean*
      



.. js:method:: static cee.BoundingBox.createInvalid

      .. rst-class:: clio-flags
      
         :clio-static:`static`
      
      .. rst-class:: sig-pretty-signature
      
         | createInvalid(): :js:class:`BoundingBox <cee.BoundingBox>`
      
      Creates an invalid bounding box where maximum < minimum for x, y and z
      
      **Returns**\ : :js:class:`BoundingBox <cee.BoundingBox>`
      




