+local function make_plane(centre, normal, texture)
+ return function(p)
+ return {dist = normal*(p-centre),
+ texture = texture}
+ end
+end
+
+local function make_pipe(centre, radius, axis, texture)
+ return function(p)
+ return {dist = V.norm(V.cross(p-centre, axis)) - radius,
+ texture = texture}
+ end
+end
+
+