---
title: SKReachConstraints
framework: spritekit
role: symbol
role_heading: Class
path: spritekit/skreachconstraints
---

# SKReachConstraints

A specification of the degree of freedom when solving inverse kinematics.

## Declaration

```swift
class SKReachConstraints
```

## Overview

Overview An SKReachConstraints object is used to describe the range of motion for an SKNode object whenever an inverse kinematic (IK) action is executed. To use reach constraints, create an SKReachConstraints object and assign it to a node’s reachConstraints property. For more information on using reach actions to perform IK animations, see the SKAction class.

## Topics

### Working with Reach Constraints

- [init(lowerAngleLimit:upperAngleLimit:)](spritekit/skreachconstraints/init(loweranglelimit:upperanglelimit:).md)
- [lowerAngleLimit](spritekit/skreachconstraints/loweranglelimit.md)
- [upperAngleLimit](spritekit/skreachconstraints/upperanglelimit.md)

### Initializers

- [init(coder:)](spritekit/skreachconstraints/init(coder:).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)
- [NSCoding](foundation/nscoding.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)

## See Also

### Constraints

- [SKConstraint](spritekit/skconstraint.md)
