A 2D surface that ARKit detects in the physical environment.


class ARPlaneAnchor : ARAnchor


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 a ARPlaneAnchor for each unique surface. And each plane anchor provides details about the surface, like its real world position and shape.



var alignment: ARPlaneAnchor.Alignment

The general orientation of the detected plane with respect to gravity.

enum ARPlaneAnchor.Alignment

Values describing possible general orientations of a detected plane with respect to gravity.


var geometry: ARPlaneGeometry

A coarse triangle mesh representing the general shape of the detected plane.

class ARPlaneGeometry

A 3D mesh describing the shape of a detected plane in world-tracking AR sessions.

class ARSCNPlaneGeometry

A SceneKit representation of the 2D shape of a plane, for use with plane detection results in an AR session.


var center: simd_float3

The center point of the plane relative to its anchor position.

var extent: simd_float3

The estimated width and length of the detected plane.

Classifying a Plane

class var isClassificationSupported: Bool

A Boolean value that indicates whether plane classification is available on the current device.

var classification: ARPlaneAnchor.Classification

A general characterization of what kind of real-world surface the plane anchor represents.

enum ARPlaneAnchor.Classification

Possible characterizations of real-world surfaces represented by plane anchors.


Inherits From

Conforms To

See Also

World Tracking

Understanding World Tracking

Discover supporting concepts, features, and best practices for building great AR experiences.

class ARWorldTrackingConfiguration

A configuration that monitors the iOS device's position and orientation while enabling you to augment the environment that's in front of the user.

Tracking and Visualizing Planes

Detect surfaces in the physical environment and visualize their shape and location in 3D space.

class ARCoachingOverlayView

A view that presents visual instructions that guide the user.

Placing Objects and Handling 3D Interaction

Place virtual content on real-world surfaces, and enable the user to interact with virtual content by using gestures.

class ARWorldMap

The space-mapping state and set of anchors from a world-tracking AR session.

Saving and Loading World Data

Serialize a world tracking session to resume it later on.

Ray-Casting and Hit-Testing

Find 3D positions on real-world surfaces given a screen point.