---
title: ARPlaneAnchor
framework: arkit
role: symbol
role_heading: Class
path: arkit/arplaneanchor
---

# ARPlaneAnchor

An anchor for a 2D planar surface that ARKit detects in the physical environment.

## Declaration

```swift
class ARPlaneAnchor
```

## Overview

Overview When you enable planeDetection in a world tracking session, ARKit notifies your app of all the surfaces it observes using the device’s back camera. ARKit calls your delegate’s session(_:didAdd:) with an ARPlaneAnchor for each unique surface. Each plane anchor provides details about the surface, like its real-world position and shape. The width and length of a plane (the planeExtent) span the xz-plane of an ARPlaneAnchor instance’s local coordinate system. The y-axis of the plane anchor is the plane’s normal vector.

## Topics

### Orientation

- [alignment](arkit/arplaneanchor/alignment-swift.property.md)
- [ARPlaneAnchor.Alignment](arkit/arplaneanchor/alignment-swift.enum.md)

### Geometry

- [geometry](arkit/arplaneanchor/geometry.md)
- [ARPlaneGeometry](arkit/arplanegeometry.md)
- [ARSCNPlaneGeometry](arkit/arscnplanegeometry.md)

### Dimensions

- [center](arkit/arplaneanchor/center.md)
- [planeExtent](arkit/arplaneanchor/planeextent.md)
- [ARPlaneExtent](arkit/arplaneextent.md)
- [extent](arkit/arplaneanchor/extent.md)

### Classifying a Plane

- [isClassificationSupported](arkit/arplaneanchor/isclassificationsupported.md)
- [classification](arkit/arplaneanchor/classification-2r4x8.md)
- [ARPlaneAnchor.Classification](arkit/arplaneanchor/classification-swift.enum.md)

## Relationships

### Inherits From

- [ARAnchor](arkit/aranchor.md)

### Conforms To

- [ARAnchorCopying](arkit/aranchorcopying.md)
- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Surface Detection

- [Tracking and visualizing planes](arkit/tracking-and-visualizing-planes.md)
- [ARMeshAnchor](arkit/armeshanchor.md)
