<!--
{
  "availability" : [
    "iOS: 13.0.0 -",
    "iPadOS: 13.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "ARKit",
  "identifier" : "/documentation/ARKit/ARSkeleton2D",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "ARKit"
    ],
    "preciseIdentifier" : "c:objc(cs)ARSkeleton2D"
  },
  "title" : "ARSkeleton2D"
}
-->

# ARSkeleton2D

An object that describes the locations of a body’s joints in the camera feed.

```
class ARSkeleton2D
```

## Overview

[`ARSkeleton2D`](/documentation/ARKit/ARSkeleton2D) provides you with a 2D body’s joints in a flat hierarchy so you can access them efficiently. The joint locations are normalized within the range [0..1] in the coordinate space of the current frame’s camera image, where 0 is the upper left, and 1 is the bottom right.

To access a skeleton’s joints by name, you use [`landmarkForJointNamed:`](/documentation/ARKit/ARSkeleton2D/landmarkForJointNamed:). To access a named joint by index (for example, for performance reasons), you query the definition for the named joint index using [`index(for:)`](/documentation/ARKit/ARSkeletonDefinition/index(for:)), then access [`jointLandmarks`](/documentation/ARKit/ARSkeleton2D/jointLandmarks-12vkw) using the resulting index.

## Topics

### Getting Joint Landmarks

[`jointLandmarks`](/documentation/ARKit/ARSkeleton2D/jointLandmarks-12vkw)

The joint landmarks in normalized coordinates.

[`landmark(for:)`](/documentation/ARKit/ARSkeleton2D/landmark(for:))

Returns the location of a joint with a given name.

[`jointLandmarks`](/documentation/ARKit/ARSkeleton2D/jointLandmarks-3en0x)

The joint landmarks in normalized coordinates.

[`-  landmarkForJointNamed:`](/documentation/ARKit/ARSkeleton2D/landmarkForJointNamed:)

Returns the location of a joint with a given name.

## Relationships

### Conforms To

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`Equatable`](/documentation/Swift/Equatable)

[`Hashable`](/documentation/Swift/Hashable)

[`Sendable`](/documentation/Swift/Sendable)

[`CVarArg`](/documentation/Swift/CVarArg)

### Inherits From

[`ARSkeleton`](/documentation/ARKit/ARSkeleton)

---

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)