.. role:: clio-inherited
   :class: clio-flag clio-flag-inherited


###############################
MeasureBodyBodyDistanceOperator
###############################

.. js:class:: Operators.Measure.MeasureBodyBodyDistanceOperator

   This operator allows you to measure the minimum distance between two bodies. Moving the mouse over the model will highlight the body that will be measured. Clicking will select the first node to be measured, it will stay highlighted as you move the mouse away. Clicking a second time on a different body will begin the measurement. Once the measurement is completed you can move the mouse to position the measurement text box. The markup drawn represents the shortest distance between the two bodies you selected. Clicking a final time will place the measurement text box and finalize the measurement.
   
   
   Index
   =====
   
   .. rubric:: Constructors
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:func:`~Operators.Measure.MeasureBodyBodyDistanceOperator.constructor`
   
   .. rubric:: Methods
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:meth:`~Operators.Measure.MeasureBodyBodyDistanceOperator.addMapping`
   * :js:meth:`~Operators.Measure.MeasureBodyBodyDistanceOperator.clearMapping`
   * :js:meth:`~Operators.Measure.MeasureBodyBodyDistanceOperator.setMapping`
   
   




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

.. js:method:: Operators.Measure.MeasureBodyBodyDistanceOperator.constructor

   .. rst-class:: sig-pretty-signature
   
      | MeasureBodyBodyDistanceOperator(**viewer**\ : :js:class:`~IWebViewer`\ , **view**\ : :js:class:`~IView`\ , **measureManager**\ : :js:class:`~MeasureManager`\ ): :js:class:`MeasureBodyBodyDistanceOperator <Operators.Measure.MeasureBodyBodyDistanceOperator>`
   
   **Parameters**
   
      **viewer**\ : :js:class:`~IWebViewer`
   
      **view**\ : :js:class:`~IView`
   
      **measureManager**\ : :js:class:`~MeasureManager`
   
   
   **Returns**\ : :js:class:`MeasureBodyBodyDistanceOperator <Operators.Measure.MeasureBodyBodyDistanceOperator>`
   





Methods
=======

.. js:method:: Operators.Measure.MeasureBodyBodyDistanceOperator.addMapping

   .. rst-class:: clio-flags
   
      :clio-inherited:`inherited`
   
   .. rst-class:: sig-pretty-signature
   
      | addMapping(**button**\ : :js:data:`~Button`\ , **modifier**\ : :js:data:`~KeyModifiers`\ ?): *void*
   
   Adds a button and key modifier mapping for the operator. If no mapping is provided, all combinations are considered valid. All mappings require a mouse button, but a key modifier is optional.
   
   **Parameters**
   
      **button**\ : :js:data:`~Button`
   
      **modifier**\ : :js:data:`~KeyModifiers` = KeyModifiers.None
   
   
   **Returns**\ : *void*
   



.. js:method:: Operators.Measure.MeasureBodyBodyDistanceOperator.clearMapping

   .. rst-class:: clio-flags
   
      :clio-inherited:`inherited`
   
   .. rst-class:: sig-pretty-signature
   
      | clearMapping(): *void*
   
   Clears any button and key modifier mappings for the operator.
   
   **Returns**\ : *void*
   



.. js:method:: Operators.Measure.MeasureBodyBodyDistanceOperator.setMapping

   .. rst-class:: clio-flags
   
      :clio-inherited:`inherited`
   
   .. rst-class:: sig-pretty-signature
   
      | setMapping(**button**\ : :js:data:`~Button`\ , **modifier**\ : :js:data:`~KeyModifiers`\ ?): *void*
   
   Sets the button and key modifier mapping for the operator.
   
   **Parameters**
   
      **button**\ : :js:data:`~Button`
   
      **modifier**\ : :js:data:`~KeyModifiers` = KeyModifiers.None
   
   
   **Returns**\ : *void*
   





