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


###############################
MeasurePolylineDistanceOperator
###############################

.. js:class:: wv.Operators.Measure.MeasurePolylineDistanceOperator

   This operator allows you to create a polyline and measure its distance. Click to add points to the polyline.  A cursor will show where the point will be placed. The operator will perform vertex snapping by default.  Holding down the alt key will disable this feature. To complete a measurement, double click when placing a point to create an open line measurement, or single click on the first point to create a closed loop. When there is no active measurement being created, click on a text box to drag and reposition it relative to its anchor point. If a measurement is currently being created, pressing the Escape key will discard it, otherwise the last created measurement will be discarded.
   
   
   Index
   =====
   
   .. rubric:: Methods
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:meth:`~wv.Operators.Measure.MeasurePolylineDistanceOperator._clearMeasurement`
   * :js:meth:`~wv.Operators.Measure.MeasurePolylineDistanceOperator.addMapping`
   * :js:meth:`~wv.Operators.Measure.MeasurePolylineDistanceOperator.clearMapping`
   * :js:meth:`~wv.Operators.Measure.MeasurePolylineDistanceOperator.setAnchor`
   * :js:meth:`~wv.Operators.Measure.MeasurePolylineDistanceOperator.setMapping`
   * :js:meth:`~wv.Operators.Measure.MeasurePolylineDistanceOperator._pickExisting`
   
   



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

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


.. js:method:: wv.Operators.Measure.MeasurePolylineDistanceOperator._clearMeasurement

      .. rst-class:: sig-pretty-signature
      
         | _clearMeasurement(): *void*
      
      **Returns**\ : *void*
      



.. js:method:: wv.Operators.Measure.MeasurePolylineDistanceOperator.addMapping

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | addMapping(**button**\ : :js:data:`Button <wv.Button>`\ , **modifier**\ : :js:data:`KeyModifiers <wv.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 <wv.Button>`
      
         **modifier**\ : :js:data:`KeyModifiers <wv.KeyModifiers>` = KeyModifiers.None
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.Operators.Measure.MeasurePolylineDistanceOperator.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:: wv.Operators.Measure.MeasurePolylineDistanceOperator.setAnchor

      .. rst-class:: sig-pretty-signature
      
         | setAnchor(**anchor**\ : :js:data:`MeasurePolylineDistanceAnchor <wv.Operators.Measure.MeasurePolylineDistanceAnchor>`\ ): *void*
      
      Sets the anchor type that will be set for markups created by this operator.
      
      **Parameters**
      
      
         **anchor**\ : :js:data:`MeasurePolylineDistanceAnchor <wv.Operators.Measure.MeasurePolylineDistanceAnchor>`
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.Operators.Measure.MeasurePolylineDistanceOperator.setMapping

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



.. js:method:: wv.Operators.Measure.MeasurePolylineDistanceOperator._pickExisting

      .. rst-class:: sig-pretty-signature
      
         | _pickExisting(**selectPoint**\ : :js:class:`Point2 <wv.Point2>`\ ): *boolean*
      
      **Parameters**
      
      
         **selectPoint**\ : :js:class:`Point2 <wv.Point2>`
      
      
      **Returns**\ : *boolean*
      




