await visibility(), (() => {
const sin = Math.sin;
const cos = Math.cos;
const abs = Math.abs;
function shape(x, y) {
return -1.5 + (cos( (x*.2) + x**2 + y**2))
}
const size = 8
const scene = new ln.Scene()
const min = new ln.Vector(-size, -size, -size)
const max = new ln.Vector(size, size, size)
const box = new ln.Box(min, max)
const fn = new ln.Function(shape, box, ln.Direction.Above)
scene.add(fn)
const eye = new ln.Vector(0, -7, -5)
const center = new ln.Vector(0, -3.8, 0)
const up = new ln.Vector(0, 1, 0)
const w = width * .5;
const height = w * .704;
const paths = scene.render(eye, center, up, w, height, 80, 0.1, 30, 0.01)
return svg`${ln.toSVG(paths, w, height)}`
})()