---
title: GKRTreeSplitStrategy
framework: gameplaykit
role: symbol
role_heading: Enumeration
path: gameplaykit/gkrtreesplitstrategy
---

# GKRTreeSplitStrategy

Options that control how a tree balances its internal structure when adding elements, used with the addElement(_:boundingRectMin:boundingRectMax:splitStrategy:) method.

## Declaration

```swift
enum GKRTreeSplitStrategy
```

## Topics

### Constants

- [GKRTreeSplitStrategy.halve](gameplaykit/gkrtreesplitstrategy/halve.md)
- [GKRTreeSplitStrategy.linear](gameplaykit/gkrtreesplitstrategy/linear.md)
- [GKRTreeSplitStrategy.quadratic](gameplaykit/gkrtreesplitstrategy/quadratic.md)
- [GKRTreeSplitStrategy.reduceOverlap](gameplaykit/gkrtreesplitstrategy/reduceoverlap.md)

### Initializers

- [init(rawValue:)](gameplaykit/gkrtreesplitstrategy/init(rawvalue:).md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
