<!--
{
  "availability" : [
    "iOS: 13.0.0 -",
    "iPadOS: 13.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "ARKit",
  "identifier" : "/documentation/ARKit/ARSkeleton/JointName",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "ARKit"
    ],
    "preciseIdentifier" : "c:@T@ARSkeletonJointName"
  },
  "title" : "ARSkeleton.JointName"
}
-->

# ARSkeleton.JointName

A name identifier for a joint.

```
struct JointName
```

## Discussion

Use this class to access information about a named joint, such as its index in a skeleton’s array of joints, or its position on the screen or in the physical environment.

When you’re tracking a body in 2D space, you get the screen-space position of a named joint by using the [`landmark(for:)`](/documentation/ARKit/ARSkeleton2D/landmark(for:)) function.

When you’re tracking a body in 3D space, you get a named joint’s position in either local or model space by using the [`localTransform(for:)`](/documentation/ARKit/ARSkeleton3D/localTransform(for:)) or [`modelTransform(for:)`](/documentation/ARKit/ARSkeleton3D/modelTransform(for:)) functions, respectively.

## Topics

### Creating a Joint Name

[`init(rawValue:)`](/documentation/ARKit/ARSkeleton/JointName/init(rawValue:))

Creates a new joint name.

[`ARSkeletonJointNameForRecognizedPointKey`](/documentation/ARKit/ARSkeleton/JointName/init(_:))

Returns a joint name that corresponds to a key point defined in a human body pose.

  <doc://com.apple.documentation/documentation/Vision/VNRecognizedPointKey>

### Identifying Joints

[`ARSkeletonJointNameRoot`](/documentation/ARKit/ARSkeleton/JointName/root)

A skeletal joint that’s the root of all other joints.

[`ARSkeletonJointNameHead`](/documentation/ARKit/ARSkeleton/JointName/head)

A skeletal joint that ARKit tracks representing the head.

[`ARSkeletonJointNameLeftFoot`](/documentation/ARKit/ARSkeleton/JointName/leftFoot)

A skeletal joint that ARKit tracks representing the left foot.

[`ARSkeletonJointNameLeftHand`](/documentation/ARKit/ARSkeleton/JointName/leftHand)

A skeletal joint that ARKit tracks representing the left hand.

[`ARSkeletonJointNameLeftShoulder`](/documentation/ARKit/ARSkeleton/JointName/leftShoulder)

A skeletal joint that ARKit tracks representing the left shoulder.

[`ARSkeletonJointNameRightFoot`](/documentation/ARKit/ARSkeleton/JointName/rightFoot)

A skeletal joint that ARKit tracks representing the right foot.

[`ARSkeletonJointNameRightHand`](/documentation/ARKit/ARSkeleton/JointName/rightHand)

A skeletal joint that ARKit tracks representing the right hand.

[`ARSkeletonJointNameRightShoulder`](/documentation/ARKit/ARSkeleton/JointName/rightShoulder)

A skeletal joint that ARKit tracks representing the right shoulder.

## Relationships

### Conforms To

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

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

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

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

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

---

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)