- Adjust some demo window sizes. - Replace Random.double by Double.uniform - Tweak some demos so screenshots look more interesting
30 lines
894 B
Kotlin
30 lines
894 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)
|
|
}
|
|
}
|
|
}
|