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


#############
PathGenerator
#############

.. js:class:: cee.utils.PathGenerator

   Helper class to generate vertices for paths
   
   
   Index
   =====
   
   .. rubric:: Constructors
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:func:`~cee.utils.PathGenerator.constructor`
   
   .. rubric:: Methods
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:meth:`~static cee.utils.PathGenerator.generateVerticesForCircle`
   * :js:meth:`~static cee.utils.PathGenerator.generateVerticesForCircleThrough3Points`
   * :js:meth:`~static cee.utils.PathGenerator.generateVerticesForCircularSegmentBetween2Lines`
   * :js:meth:`~static cee.utils.PathGenerator.generateVerticesForPath`
   
   



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

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


.. js:method:: cee.utils.PathGenerator.constructor

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



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

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


.. js:method:: static cee.utils.PathGenerator.generateVerticesForCircle

      .. rst-class:: clio-flags
      
         :clio-static:`static`
      
      .. rst-class:: sig-pretty-signature
      
         | generateVerticesForCircle(**center**\ : :js:class:`Vec3 <cee.Vec3>`\ , **normal**\ : :js:class:`Vec3 <cee.Vec3>`\ , **radius**\ : *number*\ , **numSegments**\ : *number*\ ): *number*\ []
      
      Generates vertices to draw a circle.
      
      **Parameters**
      
      
         **center**\ : :js:class:`Vec3 <cee.Vec3>`
      
         **normal**\ : :js:class:`Vec3 <cee.Vec3>`
      
         **radius**\ : *number*
      
         **numSegments**\ : *number*
      
      
      **Returns**\ : *number*\ []
      



.. js:method:: static cee.utils.PathGenerator.generateVerticesForCircleThrough3Points

      .. rst-class:: clio-flags
      
         :clio-static:`static`
      
      .. rst-class:: sig-pretty-signature
      
         | generateVerticesForCircleThrough3Points(**p1**\ : :js:class:`Vec3 <cee.Vec3>`\ , **p2**\ : :js:class:`Vec3 <cee.Vec3>`\ , **p3**\ : :js:class:`Vec3 <cee.Vec3>`\ , **numSegments**\ : *number*\ ): *number*\ []
      
      Generates vertices to draw a circle passing through the given 3 points. Returns null when the points (p1, p2, p3) do not specify a circle, e.g. they lie on a straight line.
      
      **Parameters**
      
      
         **p1**\ : :js:class:`Vec3 <cee.Vec3>`
      
         **p2**\ : :js:class:`Vec3 <cee.Vec3>`
      
         **p3**\ : :js:class:`Vec3 <cee.Vec3>`
      
         **numSegments**\ : *number*
      
      
      **Returns**\ : *number*\ []
      



.. js:method:: static cee.utils.PathGenerator.generateVerticesForCircularSegmentBetween2Lines

      .. rst-class:: clio-flags
      
         :clio-static:`static`
      
      .. rst-class:: sig-pretty-signature
      
         | generateVerticesForCircularSegmentBetween2Lines(**center**\ : :js:class:`Vec3 <cee.Vec3>`\ , **endPoint1**\ : :js:class:`Vec3 <cee.Vec3>`\ , **endPoint2**\ : :js:class:`Vec3 <cee.Vec3>`\ , **radius**\ : *number*\ , **numSegments**\ : *number*\ ): *number*\ []
      
      Generates vertices to draw a circular segment between the lines <center, endPoint1> and <center, endPoint2>. Returns null when the points (center, endpoint1, endpoint2) do not specify a circle, e.g. they lie on a straight line.
      
      **Parameters**
      
      
         **center**\ : :js:class:`Vec3 <cee.Vec3>`
      
         **endPoint1**\ : :js:class:`Vec3 <cee.Vec3>`
      
         **endPoint2**\ : :js:class:`Vec3 <cee.Vec3>`
      
         **radius**\ : *number*
      
         **numSegments**\ : *number*
      
      
      **Returns**\ : *number*\ []
      



.. js:method:: static cee.utils.PathGenerator.generateVerticesForPath

      .. rst-class:: clio-flags
      
         :clio-static:`static`
      
      .. rst-class:: sig-pretty-signature
      
         | generateVerticesForPath(**points**\ : :js:class:`Vec3 <cee.Vec3>`\ []): *number*\ []
      
      Generates vertices to draw a path connecting the given points
      
      **Parameters**
      
      
         **points**\ : :js:class:`Vec3 <cee.Vec3>`\ []
      
      
      **Returns**\ : *number*\ []
      




