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


#################
FaceSelectionItem
#################

.. js:class:: wv.Selection.FaceSelectionItem

   A [[SelectionItem]] that is guaranteed to have a valid [[NodeId]] and [[FaceEntity]].
   
   
   Index
   =====
   
   .. rubric:: Methods
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:meth:`~wv.Selection.FaceSelectionItem.equals`
   * :js:meth:`~wv.Selection.FaceSelectionItem.getFaceEntity`
   * :js:meth:`~wv.Selection.FaceSelectionItem.getInclusionKey`
   * :js:meth:`~wv.Selection.FaceSelectionItem.getLineEntity`
   * :js:meth:`~wv.Selection.FaceSelectionItem.getNodeId`
   * :js:meth:`~wv.Selection.FaceSelectionItem.getPointEntity`
   * :js:meth:`~wv.Selection.FaceSelectionItem.getPosition`
   * :js:meth:`~wv.Selection.FaceSelectionItem.getSelectionType`
   * :js:meth:`~wv.Selection.FaceSelectionItem.isEntitySelection`
   * :js:meth:`~wv.Selection.FaceSelectionItem.isFaceSelection`
   * :js:meth:`~wv.Selection.FaceSelectionItem.isLineSelection`
   * :js:meth:`~wv.Selection.FaceSelectionItem.isNodeEntitySelection`
   * :js:meth:`~wv.Selection.FaceSelectionItem.isNodeSelection`
   * :js:meth:`~wv.Selection.FaceSelectionItem.isPointSelection`
   * :js:meth:`~wv.Selection.FaceSelectionItem.overlayIndex`
   * :js:meth:`~wv.Selection.FaceSelectionItem.toJson`
   
   



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

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


.. js:method:: wv.Selection.FaceSelectionItem.equals

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | equals(**selectionItem**\ : :js:class:`SelectionItem <wv.Selection.SelectionItem>`\ ): *boolean*
      
      Determines if two selection items are equal.
      
      **Parameters**
      
      
         **selectionItem**\ : :js:class:`SelectionItem <wv.Selection.SelectionItem>`
      
      
            The selection item to test against.
      
      
      
      **Returns**\ : *boolean*
      
      
         whether or not the two items are equal.
      
      



.. js:method:: wv.Selection.FaceSelectionItem.getFaceEntity

      .. rst-class:: sig-pretty-signature
      
         | getFaceEntity(): :js:class:`FaceEntity <wv.Selection.FaceEntity>`
      
      Gets the face entity for this selection.
      
      **Returns**\ : :js:class:`FaceEntity <wv.Selection.FaceEntity>`
      
      
         the face entity if one was selected, otherwise null
      
      



.. js:method:: wv.Selection.FaceSelectionItem.getInclusionKey

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | getInclusionKey(): (*None* | :js:data:`InclusionKey <wv.Sc.InclusionKey>`\ )
      
      Gets the include id for this selection.
      
      **Returns**\ : (*None* \| :js:data:`InclusionKey <wv.Sc.InclusionKey>`\ )
      
      
         the inclusion key associated with this selection item
      
      



.. js:method:: wv.Selection.FaceSelectionItem.getLineEntity

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | getLineEntity(): (*None* | :js:class:`LineEntity <wv.Selection.LineEntity>`\ )
      
      Gets the line entity for this selection.
      
      **Returns**\ : (*None* \| :js:class:`LineEntity <wv.Selection.LineEntity>`\ )
      
      
         the line entity if one was selected, otherwise null
      
      



.. js:method:: wv.Selection.FaceSelectionItem.getNodeId

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | getNodeId(): *number*
      
      Gets the part id for this selection.
      
      **Returns**\ : *number*
      
      
         the part id associated with this selection item
      
      



.. js:method:: wv.Selection.FaceSelectionItem.getPointEntity

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | getPointEntity(): (*None* | :js:class:`PointEntity <wv.Selection.PointEntity>`\ )
      
      Gets the point entity for this selection.
      
      **Returns**\ : (*None* \| :js:class:`PointEntity <wv.Selection.PointEntity>`\ )
      
      
         the point entity if one was selected, otherwise null
      
      



.. js:method:: wv.Selection.FaceSelectionItem.getPosition

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | getPosition(): :js:class:`Point3 <wv.Point3>`
      
      Convenience method for getting the world space position of the selection point. [[SelectionItem]]s with a type of [[SelectionType.Part]] will not have a position and null will be returned.
      
      **Returns**\ : :js:class:`Point3 <wv.Point3>`
      
      
         World space position of the selection point if it can be determined.
      
      



.. js:method:: wv.Selection.FaceSelectionItem.getSelectionType

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | getSelectionType(): :js:data:`SelectionType <wv.SelectionType>`
      
      **Returns**\ : :js:data:`SelectionType <wv.SelectionType>`
      



.. js:method:: wv.Selection.FaceSelectionItem.isEntitySelection

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | isEntitySelection(): this *is* :js:class:`EntitySelectionItem <wv.Selection.EntitySelectionItem>`
      
      **Returns**\ : this *is* :js:class:`EntitySelectionItem <wv.Selection.EntitySelectionItem>`
      
      
         true if the object has the fields required for an [[EntitySelectionItem]]. This function can be used as a TypeScript `type guard <https://www.typescriptlang.org/docs/handbook/advanced-types.html#user-defined-type-guards>`__\ .
      
      



.. js:method:: wv.Selection.FaceSelectionItem.isFaceSelection

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | isFaceSelection(): this *is* :js:class:`FaceSelectionItem <wv.Selection.FaceSelectionItem>`
      
      **Returns**\ : this *is* :js:class:`FaceSelectionItem <wv.Selection.FaceSelectionItem>`
      
      
         true if the object has the fields required for a [[FaceSelectionItem]]. This function can be used as a TypeScript `type guard <https://www.typescriptlang.org/docs/handbook/advanced-types.html#user-defined-type-guards>`__\ .
      
      



.. js:method:: wv.Selection.FaceSelectionItem.isLineSelection

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | isLineSelection(): this *is* :js:class:`LineSelectionItem <wv.Selection.LineSelectionItem>`
      
      **Returns**\ : this *is* :js:class:`LineSelectionItem <wv.Selection.LineSelectionItem>`
      
      
         true if the object has the fields required for a [[LineSelectionItem]]. This function can be used as a TypeScript `type guard <https://www.typescriptlang.org/docs/handbook/advanced-types.html#user-defined-type-guards>`__\ .
      
      



.. js:method:: wv.Selection.FaceSelectionItem.isNodeEntitySelection

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | isNodeEntitySelection(): this *is* :js:class:`NodeEntitySelectionItem <wv.Selection.NodeEntitySelectionItem>`
      
      **Returns**\ : this *is* :js:class:`NodeEntitySelectionItem <wv.Selection.NodeEntitySelectionItem>`
      
      
         true if the object has the fields required for a [[NodeEntitySelectionItem]]. This function can be used as a TypeScript `type guard <https://www.typescriptlang.org/docs/handbook/advanced-types.html#user-defined-type-guards>`__\ .
      
      



.. js:method:: wv.Selection.FaceSelectionItem.isNodeSelection

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | isNodeSelection(): this *is* :js:class:`NodeSelectionItem <wv.Selection.NodeSelectionItem>`
      
      **Returns**\ : this *is* :js:class:`NodeSelectionItem <wv.Selection.NodeSelectionItem>`
      
      
         true if the object has the fields required for a [[NodeSelectionItem]]. This function can be used as a TypeScript `type guard <https://www.typescriptlang.org/docs/handbook/advanced-types.html#user-defined-type-guards>`__\ .
      
      



.. js:method:: wv.Selection.FaceSelectionItem.isPointSelection

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | isPointSelection(): this *is* :js:class:`PointSelectionItem <wv.Selection.PointSelectionItem>`
      
      **Returns**\ : this *is* :js:class:`PointSelectionItem <wv.Selection.PointSelectionItem>`
      
      
         true if the object has the fields required for a [[PointSelectionItem]]. This function can be used as a TypeScript `type guard <https://www.typescriptlang.org/docs/handbook/advanced-types.html#user-defined-type-guards>`__\ .
      
      



.. js:method:: wv.Selection.FaceSelectionItem.overlayIndex

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | overlayIndex(): *number*
      
      Gets the overlay index for this selection.
      
      **Returns**\ : *number*
      
      
         the overlay index associated with this selection item
      
      



.. js:method:: wv.Selection.FaceSelectionItem.toJson

      .. rst-class:: clio-flags
      
         :clio-inherited:`inherited`
      
      .. rst-class:: sig-pretty-signature
      
         | toJson(): *object*
      
      Creates an object ready for JSON serialization.
      
      **Returns**\ : *object*
      
      
         The prepared object.
      
      




