Tunnel
Ported to Coracle from www.dwitter.net/d/26555
import coracle.Drawing
import coracle.Math.map
import kotlin.math.cos
import kotlin.math.sin
import kotlin.math.tan
class Tunnel: Drawing() {
val bg = 0x1d1d1d
override fun setup() {
(550, 550)
size()
noStroke(0xffffff)
fill}
override fun draw() {
(bg)
backgroundfor(i in 800 downTo 0){
val T = frame * 2
val z = width * 39/(i - (T.toFloat() % 1))
val a = i + T - (T.toFloat() % 1)
val x = sin(a) * z + (sin(a/(width.toFloat()) * 1.1) + 2) * 200
val y = cos(a.toDouble()) *z+(sin(a/(width.toFloat()) / 1.1 ) + 2) * 100
(x - width/4, y, width/(i))
circle}
}
}