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


##########################
MeasurePolygonAreaOperator
##########################

.. js:class:: wv.Operators.Measure.MeasurePolygonAreaOperator

   This operator allows you to create a polygon and measure its area. Click to add points to the polygon. 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. 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.MeasurePolygonAreaOperator._clearMeasurement`
   * :js:meth:`~wv.Operators.Measure.MeasurePolygonAreaOperator.addMapping`
   * :js:meth:`~wv.Operators.Measure.MeasurePolygonAreaOperator.clearMapping`
   * :js:meth:`~wv.Operators.Measure.MeasurePolygonAreaOperator.setAnchor`
   * :js:meth:`~wv.Operators.Measure.MeasurePolygonAreaOperator.setMapping`
   * :js:meth:`~wv.Operators.Measure.MeasurePolygonAreaOperator._pickExisting`
   
   



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

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


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

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



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

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



.. js:method:: wv.Operators.Measure.MeasurePolygonAreaOperator.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.MeasurePolygonAreaOperator._pickExisting

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




