# Hands, boundary & anchors

Platform integrations implement small **adapter interfaces** to feed hand / boundary data into the SDK; game code reads the active one from a per-type factory (`…AdapterFactory::GetAdapter()`). Anchor components keep content world-locked to an AR 51 spatial anchor.

:::caution[Units]
All `FVector` positions here are documented as **UE centimeters** in their respective space. ⚠️ Confirm whether the SDK converts AR 51 meters → UE cm at the adapter boundary or hands you raw native units.
:::

## EHandJointType

Moved to [`EHandJointType`](/docs/sdk-api/unreal-api/classes/handjointinfo#ehandjointtype).

## EHandType

Moved to [`EHandType`](/docs/sdk-api/unreal-api/classes/handjointinfo#ehandtype).

## HandJointInfo

Moved to [`HandJointInfo`](/docs/sdk-api/unreal-api/classes/handjointinfo).

### HandJointTypeHelper

Moved to [`HandJointTypeHelper`](/docs/sdk-api/unreal-api/classes/handjointinfo#handjointtypehelper).

## Adapter interfaces

Implement to provide data; consume to read it. Both are pure C++ interfaces (`AR51SDK_API`, abstract) — **not** UE `UINTERFACE`s, so no Blueprint exposure.

### IHandsAdapter

Moved to [`IHandsAdapter`](/docs/sdk-api/unreal-api/classes/adapters).

### IBoundaryAdapter

Moved to [`IBoundaryAdapter`](/docs/sdk-api/unreal-api/classes/adapters).

## Adapter factories

Concrete factories inherit the shared template base.

### AdapterFactory

Moved to [`AdapterFactory`](/docs/sdk-api/unreal-api/classes/adapters).

### HandsAdapterFactory

Moved to [`HandsAdapterFactory`](/docs/sdk-api/unreal-api/classes/adapters).

### BoundaryAdapterFactory

Moved to [`BoundaryAdapterFactory`](/docs/sdk-api/unreal-api/classes/adapters).

## Anchor components

### UCameraAnchorComponent

Moved to [`UCameraAnchorComponent`](/docs/sdk-api/unreal-api/classes/anchor-components#ucameraanchorcomponent).

### UWorldAnchorConstraintComponent

Moved to [`UWorldAnchorConstraintComponent`](/docs/sdk-api/unreal-api/classes/anchor-components#uworldanchorconstraintcomponent).

:::note[Internal — not documented]
`EmptyHandsAdapter` (platform fallback/no-op), the `AdapterFactory<TAdapter>::GetAdapter(AR51::PlatformType)` overload + `AR51::PlatformType` ↔ `EPlatformTypes` converters, and `UAnchorServiceComponent` / `UnityAdapter` / `TTransform` internals are excluded.
:::

---

Next: [Utilities & platform](/docs/sdk-api/unreal-api/utilities-platform).
