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


#################
CuttingPlaneUtils
#################

.. js:class:: cee.ug.CuttingPlaneUtils

   Helper functions for cutting planes
   
   
   Index
   =====
   
   .. rubric:: Constructors
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:func:`~cee.ug.CuttingPlaneUtils.constructor`
   
   .. rubric:: Methods
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:meth:`~static cee.ug.CuttingPlaneUtils.getPositionFromRelativeNormalPosition`
   * :js:meth:`~static cee.ug.CuttingPlaneUtils.getRelativeNormalPosition`
   
   



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

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


.. js:method:: cee.ug.CuttingPlaneUtils.constructor

      .. rst-class:: sig-pretty-signature
      
         | CuttingPlaneUtils(): :js:class:`CuttingPlaneUtils <cee.ug.CuttingPlaneUtils>`
      
      **Returns**\ : :js:class:`CuttingPlaneUtils <cee.ug.CuttingPlaneUtils>`
      



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

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


.. js:method:: static cee.ug.CuttingPlaneUtils.getPositionFromRelativeNormalPosition

      .. rst-class:: clio-flags
      
         :clio-static:`static`
      
      .. rst-class:: sig-pretty-signature
      
         | getPositionFromRelativeNormalPosition(**relVal**\ : *number*\ , **normal**\ : :js:class:`Vec3Like <cee.Vec3Like>`\ , **boundingBox**\ : :js:class:`BoundingBox <cee.BoundingBox>`\ ): :js:class:`Vec3 <cee.Vec3>`
      
      Gets a position from a relative position along the given normal on the given bounding box.
      
      This is useful for implementing a slider moving the cutting plane back and forth in the direction of the plane's normal vector.
      
      **Parameters**
      
      
         **relVal**\ : *number*
      
      
            The relative value to get the position for (0..1)
      
      
         **normal**\ : :js:class:`Vec3Like <cee.Vec3Like>`
      
      
            The normal direction to compute the position in
      
      
         **boundingBox**\ : :js:class:`BoundingBox <cee.BoundingBox>`
      
      
            The bounding box defining the range of positions for the point (usually the model bounding box)
      
      
      
      **Returns**\ : :js:class:`Vec3 <cee.Vec3>`
      



.. js:method:: static cee.ug.CuttingPlaneUtils.getRelativeNormalPosition

      .. rst-class:: clio-flags
      
         :clio-static:`static`
      
      .. rst-class:: sig-pretty-signature
      
         | getRelativeNormalPosition(**point**\ : :js:class:`Vec3Like <cee.Vec3Like>`\ , **normal**\ : :js:class:`Vec3Like <cee.Vec3Like>`\ , **boundingBox**\ : :js:class:`BoundingBox <cee.BoundingBox>`\ ): *number*
      
      Gets a relative position along the given normal and bounding box for the given point
      
      Useful for updating the slider position based on the current position of a cutting plane.
      
      **Parameters**
      
      
         **point**\ : :js:class:`Vec3Like <cee.Vec3Like>`
      
      
            The point to compute the relative position for
      
      
         **normal**\ : :js:class:`Vec3Like <cee.Vec3Like>`
      
      
            The normal direction to use for the computation
      
      
         **boundingBox**\ : :js:class:`BoundingBox <cee.BoundingBox>`
      
      
            The bounding box defining the range of positions for the point (usually the model bounding box)
      
      
      
      **Returns**\ : *number*
      




