# FaceSelectionItem

class Selection.FaceSelectionItem()

  A [[SelectionItem]] that is guaranteed to have a valid [[NodeId]] and [[FaceEntity]].

Methods

- `equals()`

- `getFaceEntity()`

- `getInclusionKey()`

- `getLineEntity()`

- `getNodeId()`

- `getPointEntity()`

- `getPosition()`

- `getSelectionType()`

- `isEntitySelection()`

- `isFaceSelection()`

- `isLineSelection()`

- `isNodeEntitySelection()`

- `isNodeSelection()`

- `isPointSelection()`

- `overlayIndex()`

- `toJson()`

## Methods

### equals

FaceSelectionItem.equals(selectionItem)
  Arguments

    - selectionItem (`SelectionItem()`) – The selection item to test against.

  Determines if two selection items are equal.

  Returns

    whether or not the two items are equal.

  Return type

    boolean

### getFaceEntity

FaceSelectionItem.getFaceEntity()

  Gets the face entity for this selection.

  Returns

    the face entity if one was selected, otherwise null

  Return type

    FaceEntity

### getInclusionKey

FaceSelectionItem.getInclusionKey()

  Gets the include id for this selection.

  Returns

    the inclusion key associated with this selection item

  Return type

    null | InclusionKey

### getLineEntity

FaceSelectionItem.getLineEntity()

  Gets the line entity for this selection.

  Returns

    the line entity if one was selected, otherwise null

  Return type

    null | LineEntity

### getNodeId

FaceSelectionItem.getNodeId()

  Gets the part id for this selection.

  Returns

    the part id associated with this selection item

  Return type

    number

### getPointEntity

FaceSelectionItem.getPointEntity()

  Gets the point entity for this selection.

  Returns

    the point entity if one was selected, otherwise null

  Return type

    null | PointEntity

### getPosition

FaceSelectionItem.getPosition()

  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

    World space position of the selection point if it can be determined.

  Return type

    Point3

### getSelectionType

FaceSelectionItem.getSelectionType()
  Return type

    SelectionType

### isEntitySelection

FaceSelectionItem.isEntitySelection()
  Returns

    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).

  Return type

    this

### isFaceSelection

FaceSelectionItem.isFaceSelection()
  Returns

    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).

  Return type

    this

### isLineSelection

FaceSelectionItem.isLineSelection()
  Returns

    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).

  Return type

    this

### isNodeEntitySelection

FaceSelectionItem.isNodeEntitySelection()
  Returns

    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).

  Return type

    this

### isNodeSelection

FaceSelectionItem.isNodeSelection()
  Returns

    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).

  Return type

    this

### isPointSelection

FaceSelectionItem.isPointSelection()
  Returns

    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).

  Return type

    this

### overlayIndex

FaceSelectionItem.overlayIndex()

  Gets the overlay index for this selection.

  Returns

    the overlay index associated with this selection item

  Return type

    number

### toJson

FaceSelectionItem.toJson()

  Creates an object ready for JSON serialization.

  Returns

    The prepared object.

  Return type

    object