---
title: ARRaycastResult
framework: arkit
role: symbol
role_heading: Class
path: arkit/arraycastresult
---

# ARRaycastResult

Information about a real-world surface found by examining a point on the screen.

## Declaration

```swift
class ARRaycastResult
```

## Overview

Overview If you use ARView or ARSCNView as your renderer, you can search for real-world surfaces at a screen point using the raycast(from:allowing:alignment:), and raycastQuery(from:allowing:alignment:) functions, respectively. If you use a custom renderer, you can find real-world positions using screen points with: The raycastQuery(from:allowing:alignment:) function of ARFrame. The raycast(_:) function of ARSession. For tracked raycasting, you call trackedRaycast(_:updateHandler:) on your app’s current ARSession.

## Topics

### Identifying Results

- [worldTransform](arkit/arraycastresult/worldtransform.md)
- [anchor](arkit/arraycastresult/anchor.md)
- [target](arkit/arraycastresult/target.md)
- [ARRaycastQuery.Target](arkit/arraycastquery/target-swift.enum.md)
- [targetAlignment](arkit/arraycastresult/targetalignment.md)
- [ARRaycastQuery.TargetAlignment](arkit/arraycastquery/targetalignment-swift.enum.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Raycasting

- [Placing objects and handling 3D interaction](arkit/placing-objects-and-handling-3d-interaction.md)
- [ARRaycastQuery](arkit/arraycastquery.md)
- [ARTrackedRaycast](arkit/artrackedraycast.md)
