
##############
ExplodeManager
##############

.. js:class:: ExplodeManager

   This class provides an interface to the explode related features of the viewer. More information can be found `here <https://docs.techsoft3d.com/hoops/visualize-web/latest/prog_guide/viewing/scene_attributes/explode.html>`_\ .
   
   
   Index
   =====
   
   .. rubric:: Methods
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:meth:`~ExplodeManager.getActive`
   * :js:meth:`~ExplodeManager.getMagnitude`
   * :js:meth:`~ExplodeManager.setMagnitude`
   * :js:meth:`~ExplodeManager.start`
   * :js:meth:`~ExplodeManager.stop`
   
   




Methods
=======

.. js:method:: ExplodeManager.getActive

   .. rst-class:: sig-pretty-signature
   
      | getActive(): *boolean*
   
   Indicates whether there is a currently active explode operation.
   
   **Returns**\ : *boolean*
   
      boolean value indicating if there is an active explode operation.
   
   



.. js:method:: ExplodeManager.getMagnitude

   .. rst-class:: sig-pretty-signature
   
      | getMagnitude(): *number*
   
   Gets the current explode magnitude. This will always return 0 when there is no active explode operation.
   
   **Returns**\ : *number*
   
      the current explode magnitude.
   
   



.. js:method:: ExplodeManager.setMagnitude

   .. rst-class:: sig-pretty-signature
   
      | setMagnitude(**magnitude**\ : *number*\ ): *Promise*
   
   Sets the explosion magnitude if there is an active explosion operation. A value of 1.0 indicates that the distance between a part's exploded center, and exploded center will be double.
   
   **Parameters**
   
      **magnitude**\ : *number*
   
         the magnitude for the explosion.
   
   
   
   **Returns**\ : *Promise*
   
      a promise that resolves when this operation is complete.
   
   



.. js:method:: ExplodeManager.start

   .. rst-class:: sig-pretty-signature
   
      | start(**nodeIds**\ : *number*\ [], **explosionVector**\ : :js:class:`~Point3`\ ): *Promise*
   
   Starts an explode operation. This will cancel any currently active explode operation.
   
   **Parameters**
   
      **nodeIds**\ : *number*\ []
   
         an array of NodeId for the parts that should be exploded. If this parameter is omitted or is an empty array, the entire model will be considered for explosion.
   
   
      **explosionVector**\ : :js:class:`~Point3`
   
         the vector to use for the center of the explosion.
   
   
   
   **Returns**\ : *Promise*
   
      a promise that resolves when this operation is complete.
   
   



.. js:method:: ExplodeManager.stop

   .. rst-class:: sig-pretty-signature
   
      | stop(): *Promise*
   
   Terminates any active explode operation.
   
   **Returns**\ : *Promise*
   
      a promise that resolves when this operation is complete.
   
   





