
###########
LineManager
###########

.. js:class:: wv.LineManager

   This class provides an interface to 3D line management related functions of the viewer.
   
   
   Index
   =====
   
   .. rubric:: Methods
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:meth:`~wv.LineManager.addLine`
   * :js:meth:`~wv.LineManager.exportMarkup`
   * :js:meth:`~wv.LineManager.getAllLines`
   * :js:meth:`~wv.LineManager.getLineByNodeId`
   * :js:meth:`~wv.LineManager.loadData`
   * :js:meth:`~wv.LineManager.removeAllLines`
   * :js:meth:`~wv.LineManager.removeLastLine`
   * :js:meth:`~wv.LineManager.removeLine`
   
   



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

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


.. js:method:: wv.LineManager.addLine

      .. rst-class:: sig-pretty-signature
      
         | addLine(**lineItem**\ : :js:class:`LineMarkup <wv.Markup.Line.LineMarkup>`\ ): *Promise*
      
      Adds a new Line to the Line Manager
      
      **Parameters**
      
      
         **lineItem**\ : :js:class:`LineMarkup <wv.Markup.Line.LineMarkup>`
      
      
            LineMarkup Object that will be added
      
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.LineManager.exportMarkup

      .. rst-class:: sig-pretty-signature
      
         | exportMarkup(): *object*\ []
      
      **Returns**\ : *object*\ []
      
      
         JSON Array with line markup
      
      



.. js:method:: wv.LineManager.getAllLines

      .. rst-class:: sig-pretty-signature
      
         | getAllLines(): :js:class:`LineMarkup <wv.Markup.Line.LineMarkup>`\ []
      
      Return an array of line items.
      
      **Returns**\ : :js:class:`LineMarkup <wv.Markup.Line.LineMarkup>`\ []
      
      
         array of all line items.
      
      



.. js:method:: wv.LineManager.getLineByNodeId

      .. rst-class:: sig-pretty-signature
      
         | getLineByNodeId(**id**\ : *number*\ ): (*None* | :js:class:`LineMarkup <wv.Markup.Line.LineMarkup>`\ )
      
      Gets a line markup item associated with a node id.
      
      **Parameters**
      
      
         **id**\ : *number*
      
      
      **Returns**\ : (*None* \| :js:class:`LineMarkup <wv.Markup.Line.LineMarkup>`\ )
      



.. js:method:: wv.LineManager.loadData

      .. rst-class:: sig-pretty-signature
      
         | loadData(**lineDataJson**\ : *any*\ []): *Promise*
      
      Loads JSON markup data
      
      **Parameters**
      
      
         **lineDataJson**\ : *any*\ []
      
      
            Input markup data in Json representation
      
      
      
      **Returns**\ : *Promise*
      
      
         Load status
      
      



.. js:method:: wv.LineManager.removeAllLines

      .. rst-class:: sig-pretty-signature
      
         | removeAllLines(): *Promise*
      
      Removes all line items.
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.LineManager.removeLastLine

      .. rst-class:: sig-pretty-signature
      
         | removeLastLine(): *Promise*
      
      Removes the most recently added line item.
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.LineManager.removeLine

      .. rst-class:: sig-pretty-signature
      
         | removeLine(**lineItem**\ : :js:class:`LineMarkup <wv.Markup.Line.LineMarkup>`\ ): *Promise*
      
      Removes an existing line item.
      
      **Parameters**
      
      
         **lineItem**\ : :js:class:`LineMarkup <wv.Markup.Line.LineMarkup>`
      
      
            the line item to remove.
      
      
      
      **Returns**\ : *Promise*
      




