<!--
{
  "availability" : [
    "iOS: 11.0.0 -",
    "iPadOS: 11.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "ARKit",
  "identifier" : "/documentation/ARKit/ARWorldTrackingConfiguration/PlaneDetection-swift.struct",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "ARKit"
    ],
    "preciseIdentifier" : "c:@E@ARPlaneDetection"
  },
  "title" : "ARWorldTrackingConfiguration.PlaneDetection"
}
-->

# ARWorldTrackingConfiguration.PlaneDetection

Options for whether and how the framework detects flat surfaces in captured images.

```
struct PlaneDetection
```

## Overview

By default, this configuration disables plane detection. If you enable horizontal or vertical plane detection, the session adds ARPlaneAnchor objects and notifies your ARSessionDelegate, ARSCNViewDelegate, or ARSKViewDelegate object when its analysis of captured video images detects an area that appears to be a flat surface.

Use an empty set literal `[]` to specify no plane detection.

## Topics

### Plane Detection Option Creation

[`init(rawValue:)`](/documentation/ARKit/ARWorldTrackingConfiguration/PlaneDetection-swift.struct/init(rawValue:))

Creates plane detection options.

### Plane Detection Options

[`horizontal`](/documentation/ARKit/ARWorldTrackingConfiguration/PlaneDetection-swift.struct/horizontal)

The session detects planar surfaces that are perpendicular to gravity.

[`vertical`](/documentation/ARKit/ARWorldTrackingConfiguration/PlaneDetection-swift.struct/vertical)

The session detects surfaces that are parallel to gravity, regardless of other orientation.

[`horizontal`](/documentation/ARKit/ARWorldTrackingConfiguration/PlaneDetection-swift.struct/horizontal)

The session detects planar surfaces that are perpendicular to gravity.

[`vertical`](/documentation/ARKit/ARWorldTrackingConfiguration/PlaneDetection-swift.struct/vertical)

The session detects surfaces that are parallel to gravity, regardless of other orientation.

[`ARPlaneDetectionNone`](/documentation/ARKit/ARPlaneDetection/ARPlaneDetectionNone)

Plane detection is disabled.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)