Description
Each *Funktor* is defined by a sequence of mathematical functions called signed distance functions. This type of function describes the relationship between the interior and exterior of shapes, yielding negative or positive values depending on whether a point in space belongs to the inside or the outside of the shapes they describe, and values close to zero for points on the boundary between them.
In that sense, they are like architectural drawings, only instead of lines, they use the the value zero to mark the boundaries between outside and inside - in other words, walls. A room, in this context, is therefore a region of space that return negative values when its defining function is sampled.
In *Funktor*, a simple sequence of such functions is defined, then twice extruded and interpolated, as if going from floor to floor, with the previous level transforming into the next through simple linear interpolation. There are no surfaces, only a field of points at regular intervals, sampled in space. For values close to zero, there's a coloured dot. In that way, only the boundaries between inside and outside are visible, sometimes floating in space, sometimes standing firmly on a ground plane.
You can press '1' to '5' to export PNG image files of increasing resolution. You can press 'e' to export an STL file that can be used for 3D printing, or 'o' to export an OBJ file. You can also press 'g' to export a GIF animation and 'p' to repaint the Funktor. Note that the STL and OBJ files can be very large.
*Funktor* is part of the exhibition *Generative Architecture* and was written in Javascript using p5.js in 2023.