56 lines
1.2 KiB
Markdown
56 lines
1.2 KiB
Markdown
# orx-delegate magic
|
|
|
|
Collection of magical property delegators. For tracking variable change or
|
|
interpolate towards the value of a variable.
|
|
|
|
## Delegated properties
|
|
|
|
[Kotlin documentation](https://kotlinlang.org/docs/delegated-properties.html)
|
|
|
|
## Property smoothing
|
|
|
|
```kotlin
|
|
val state = object {
|
|
var radius = 10.0
|
|
}
|
|
|
|
val smoothRadius by smoothing(state::radius)
|
|
```
|
|
|
|
|
|
## Property dynamics
|
|
|
|
```kotlin
|
|
val state = object {
|
|
var radius = 10.0
|
|
}
|
|
|
|
val dynamicRadius by springForcing(state::radius)
|
|
```
|
|
|
|
## Property tracking
|
|
|
|
```kotlin
|
|
val state = object {
|
|
var radius = 10.0
|
|
}
|
|
|
|
val radiusHistory by tracking(state::radius)
|
|
```
|
|
<!-- __demos__ -->
|
|
## Demos
|
|
### DemoDifferencing01
|
|
[source code](src/jvmDemo/kotlin/DemoDifferencing01.kt)
|
|
|
|

|
|
|
|
### DemoSmoothing01
|
|
[source code](src/jvmDemo/kotlin/DemoSmoothing01.kt)
|
|
|
|

|
|
|
|
### DemoSpring01
|
|
[source code](src/jvmDemo/kotlin/DemoSpring01.kt)
|
|
|
|

|