Enumeration Case

ARHitTestResultTypeExistingPlaneUsingGeometry

A point on a real-world plane (already detected with the planeDetection option), respecting the plane's estimated size and shape.

Declaration

ARHitTestResultTypeExistingPlaneUsingGeometry = (1 << 5)

Discussion

When searching for this result type, ARKit returns a point coplanar with an already detected plane only if that point lies within the area defined by the plane's geometry. That property (together with the anchor's transform) defines the smallest polygonal area that includes all regions ARKit estimates to be a part of the plane.

Because that polygon is always convex, it may contain regions that are not part of the same real-world surface. (It does, however, provide a more precise esitmate than a bounding rectangle provided by the ARHitTestResultTypeExistingPlaneUsingExtent type.) There may also be parts of the same real-world surface that lie outside the polygon because ARKit has not yet recognized them as part of the same plane. You extend your hit test to an infinite plane by using the ARHitTestResultTypeExistingPlane type.

An existing plane search can return any number of results, depending on how many already-detected planes the hit test ray intersects (if any).

See Also

Result Types

ARHitTestResultTypeFeaturePoint

A point on a surface detected by ARKit, but not part of any detected planes.

ARHitTestResultTypeEstimatedHorizontalPlane

A point on a real-world planar surface detected during the search, whose orientation is perpendicular to gravity.

ARHitTestResultTypeEstimatedVerticalPlane

A point on a real-world planar surface detected during the search, whose orientation is parallel to gravity.

ARHitTestResultTypeExistingPlane

A point on a real-world plane (already detected with the planeDetection option), without considering the plane's size.

ARHitTestResultTypeExistingPlaneUsingExtent

A point on a real-world plane (already detected with the planeDetection option), respecting the plane's estimated size.