Files
orx/orx-shapes/src/jvmDemo/kotlin/tunni/DemoTunniAdjuster01.kt
2024-01-22 19:15:07 +01:00

31 lines
969 B
Kotlin

package tunni
import org.openrndr.application
import org.openrndr.color.ColorRGBa
import org.openrndr.extra.shapes.adjust.adjustContour
import org.openrndr.extra.shapes.tunni.tunniLine
import org.openrndr.extra.shapes.tunni.withTunniLine
import org.openrndr.shape.Circle
import kotlin.math.cos
fun main() {
application {
program {
extend {
val c = Circle(drawer.bounds.center, 200.0).contour
val c2 = adjustContour(c) {
selectEdges { it -> true }
for (e in edges) {
val tl = e.tunniLine
e.withTunniLine(tl.position(0.5) + tl.normal * cos(seconds)*200.0)
}
}
for (s in c2.segments) {
drawer.stroke = ColorRGBa.WHITE
drawer.lineSegment(s.tunniLine)
}
drawer.contour(c2)
}
}
}
}