---
title: SCNGeometryPrimitiveType
framework: scenekit
role: symbol
role_heading: Enumeration
path: scenekit/scngeometryprimitivetype
---

# SCNGeometryPrimitiveType

The drawing primitive that connects vertices when rendering a geometry element, used by the primitiveType property to specify how SceneKit interprets the geometry element’s data.

## Declaration

```swift
enum SCNGeometryPrimitiveType
```

## Topics

### Constants

- [SCNGeometryPrimitiveType.triangles](scenekit/scngeometryprimitivetype/triangles.md)
- [SCNGeometryPrimitiveType.triangleStrip](scenekit/scngeometryprimitivetype/trianglestrip.md)
- [SCNGeometryPrimitiveType.line](scenekit/scngeometryprimitivetype/line.md)
- [SCNGeometryPrimitiveType.point](scenekit/scngeometryprimitivetype/point.md)

### Enumeration Cases

- [SCNGeometryPrimitiveType.polygon](scenekit/scngeometryprimitivetype/polygon.md)

### Initializers

- [init(rawValue:)](scenekit/scngeometryprimitivetype/init(rawvalue:).md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Working with Indexes

- [data](scenekit/scngeometryelement/data.md)
- [bytesPerIndex](scenekit/scngeometryelement/bytesperindex.md)
- [primitiveType](scenekit/scngeometryelement/primitivetype.md)
- [primitiveCount](scenekit/scngeometryelement/primitivecount.md)
- [primitiveRange](scenekit/scngeometryelement/primitiverange.md)
