mesh/extraction
src/mesh/extraction.tur
Marching Cubes extraction from a ColoredSDF.
Since: Phase 2
defn
mc-extract-colored
(mc-extract-colored [csdf :int res :int bx0 :float by0 :float bz0 :float bx1 :float by1 :float bz1 :float] :int)
run Marching Cubes on a ColoredSDF tree.
Parameters
| csdf | ColoredSDF handle | |
| res | voxel resolution per axis (e.g. 32, 64) | |
| bx0 by0 bz0 -- bounding-box minimum | ||
| bx1 by1 bz1 -- bounding-box maximum |
Returns
Opaque cmesh handle, or 0 on failure. Free with cmesh-free.
Example
(mc-extract-colored scene 32 -2.0 -2.0 -2.0 2.0 2.0 2.0)
Since: Phase 2
defn
cmesh-vertex-count
(cmesh-vertex-count [m :int] :int)
number of vertices (3 per triangle). Since: Phase 2
defn
cmesh-get-vx
(cmesh-get-vx [m :int i :int] :float)
x position of vertex i. Since: Phase 2
defn
cmesh-get-vy
(cmesh-get-vy [m :int i :int] :float)
y position of vertex i. Since: Phase 2
defn
cmesh-get-vz
(cmesh-get-vz [m :int i :int] :float)
z position of vertex i. Since: Phase 2
defn
cmesh-get-nx
(cmesh-get-nx [m :int i :int] :float)
x normal of vertex i. Since: Phase 2
defn
cmesh-get-ny
(cmesh-get-ny [m :int i :int] :float)
y normal of vertex i. Since: Phase 2
defn
cmesh-get-nz
(cmesh-get-nz [m :int i :int] :float)
z normal of vertex i. Since: Phase 2
defn
cmesh-get-cr
(cmesh-get-cr [m :int i :int] :float)
red color channel of vertex i. Since: Phase 2
defn
cmesh-get-cg
(cmesh-get-cg [m :int i :int] :float)
green color channel of vertex i. Since: Phase 2
defn
cmesh-get-cb
(cmesh-get-cb [m :int i :int] :float)
blue color channel of vertex i. Since: Phase 2
defn
cmesh-get-object-id
(cmesh-get-object-id [m :int i :int] :int)
object ID of vertex i. Since: Phase 2
defn
cmesh-free
(cmesh-free [m :int] :void)
free a colored mesh returned by mc-extract-colored. Since: Phase 2