This is the marching-cubes Reference Manual, version 1.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Tue Jul 15 05:54:03 2025 GMT+0.
The main system appears first, followed by any subsystem dependency.
marching-cubesA marching cubes algorithm implementation in Common Lisp based on Paul Bourke’s (http://paulbourke.net/geometry/polygonise/)
Masayuki Takagi
LLGPL
# Marching-Cubes
A marching cubes algorithm implementation in Common Lisp based on Paul Bourke’s (http://paulbourke.net/geometry/polygonise/)
## API
### [Function] marching-cubes
MARCHING-CUBES density-function min-position max-position delta isolevel => triangles
Extracts a surface from density field represented with ‘density-function‘ and returns ‘triangles‘ which is a list of triangles. ‘density-function‘ is a function that takes three arguments representing the position of a point and returns density as a scalar at the point. ‘min-position‘ and ‘max-position‘ are ‘vec3‘ values and specify the minimun point and the maximun point of a grid to be processed. ‘delta‘ is a scalar that specifies the size of a cell in a grid to be processed. ‘isolevel‘ is a scalar that specifies the threshold of mesh construction.
### [Function] marching-cubes-smooth
MARCHING-CUBES-SMOOTH density-function normal-function min-position max-position delta isolevel => smooth-triangles
Same as ‘marching-cubes‘ except that ‘marching-cubes-smooth‘ returns a list of smooth triangles which have normal vectors at each vertex. ‘normal-function‘ is a function that takes three arguments representing the position of a point and returns a normal vector at the point. Other arguments are same as ‘marching-cubes‘’s.
## Example
See example/ directory.
## Author
* Masayuki Takagi (kamonama@gmail.com)
## Copyright
Copyright (c) 2012 Masayuki Takagi (kamonama@gmail.com)
## License
Licensed under the LLGPL License.
1.0
src (module).
Modules are listed depth-first from the system components tree.
marching-cubes/srcmarching-cubes (system).
package.lisp (file).
tables.lisp (file).
marching-cubes.lisp (file).
Files are sorted by type and then listed depth-first from the systems components trees.
marching-cubes/marching-cubes.asdmarching-cubes/src/package.lispmarching-cubes/src/tables.lispmarching-cubes/src/marching-cubes.lispmarching-cubes/marching-cubes.asdmarching-cubes (system).
marching-cubes/src/tables.lisppackage.lisp (file).
src (module).
+edge-table+ (special variable).
+tri-table+ (special variable).
marching-cubes/src/marching-cubes.lisptables.lisp (file).
src (module).
make-smooth-triangle (function).
make-triangle (function).
make-vec3 (function).
marching-cubes (function).
marching-cubes-smooth (function).
normalize-vec3 (function).
smooth-triangle-normal (macro).
smooth-triangle-vertex (macro).
smooth-triangle= (function).
triangle-vertex (macro).
triangle= (function).
vec3-x (reader).
vec3-y (reader).
vec3-z (reader).
vec3= (function).
*vertex-offsets* (special variable).
copy-grid (function).
copy-grid-cell (function).
copy-smooth-triangle (function).
copy-triangle (function).
copy-vec3 (function).
degenerate-triangle (function).
grid (structure).
grid-cell (function).
grid-cell (structure).
grid-cell-p (function).
grid-cell-value (macro).
grid-cell-values (function).
grid-cell-values% (reader).
(setf grid-cell-values%) (writer).
grid-cell-vertex (macro).
grid-cell-vertices (function).
grid-cell-vertices% (reader).
(setf grid-cell-vertices%) (writer).
grid-delta (reader).
(setf grid-delta) (writer).
grid-max (reader).
(setf grid-max) (writer).
grid-min (reader).
(setf grid-min) (writer).
grid-p (function).
grid-point (function).
grid-size-x (reader).
(setf grid-size-x) (writer).
grid-size-y (reader).
(setf grid-size-y) (writer).
grid-size-z (reader).
(setf grid-size-z) (writer).
grid-value (function).
grid-values% (reader).
(setf grid-values%) (writer).
inc-logior (macro).
make-grid (function).
make-grid-cell (function).
make-grid-values (function).
make-raw-grid (function).
polygonise (function).
reduce-grid (function).
remove-degenerate-triangles (function).
smooth-triangle (structure).
smooth-triangle-normal-0 (reader).
smooth-triangle-normal-1 (reader).
smooth-triangle-normal-2 (reader).
smooth-triangle-p (function).
smooth-triangle-vertex-0 (reader).
smooth-triangle-vertex-1 (reader).
smooth-triangle-vertex-2 (reader).
to-smooth-triangle (function).
triangle (structure).
triangle-p (function).
triangle-vertex-0 (reader).
triangle-vertex-1 (reader).
triangle-vertex-2 (reader).
vec3 (structure).
vec3-p (function).
vertex-interop (function).
Packages are listed by definition order.
marching-cubescommon-lisp.
make-smooth-triangle (function).
make-triangle (function).
make-vec3 (function).
marching-cubes (function).
marching-cubes-smooth (function).
normalize-vec3 (function).
smooth-triangle-normal (macro).
smooth-triangle-vertex (macro).
smooth-triangle= (function).
triangle-vertex (macro).
triangle= (function).
vec3-x (reader).
vec3-y (reader).
vec3-z (reader).
vec3= (function).
*vertex-offsets* (special variable).
+edge-table+ (special variable).
+tri-table+ (special variable).
copy-grid (function).
copy-grid-cell (function).
copy-smooth-triangle (function).
copy-triangle (function).
copy-vec3 (function).
degenerate-triangle (function).
grid (structure).
grid-cell (function).
grid-cell (structure).
grid-cell-p (function).
grid-cell-value (macro).
grid-cell-values (function).
grid-cell-values% (reader).
(setf grid-cell-values%) (writer).
grid-cell-vertex (macro).
grid-cell-vertices (function).
grid-cell-vertices% (reader).
(setf grid-cell-vertices%) (writer).
grid-delta (reader).
(setf grid-delta) (writer).
grid-max (reader).
(setf grid-max) (writer).
grid-min (reader).
(setf grid-min) (writer).
grid-p (function).
grid-point (function).
grid-size-x (reader).
(setf grid-size-x) (writer).
grid-size-y (reader).
(setf grid-size-y) (writer).
grid-size-z (reader).
(setf grid-size-z) (writer).
grid-value (function).
grid-values% (reader).
(setf grid-values%) (writer).
inc-logior (macro).
make-grid (function).
make-grid-cell (function).
make-grid-values (function).
make-raw-grid (function).
polygonise (function).
reduce-grid (function).
remove-degenerate-triangles (function).
smooth-triangle (structure).
smooth-triangle-normal-0 (reader).
smooth-triangle-normal-1 (reader).
smooth-triangle-normal-2 (reader).
smooth-triangle-p (function).
smooth-triangle-vertex-0 (reader).
smooth-triangle-vertex-1 (reader).
smooth-triangle-vertex-2 (reader).
to-smooth-triangle (function).
triangle (structure).
triangle-p (function).
triangle-vertex-0 (reader).
triangle-vertex-1 (reader).
triangle-vertex-2 (reader).
vec3 (structure).
vec3-p (function).
vertex-interop (function).
Definitions are sorted by export status, category, package, and then by lexicographic order.
structure-object.
common-lisp.
common-lisp.
structure-object.
This slot is read-only.
This slot is read-only.
This slot is read-only.
This slot is read-only.
This slot is read-only.
This slot is read-only.
structure-object.
| Jump to: | (
C D F G I M N P R S T V |
|---|
| Jump to: | (
C D F G I M N P R S T V |
|---|
| Jump to: | *
+
D M N S V X Y Z |
|---|
| Jump to: | *
+
D M N S V X Y Z |
|---|
| Jump to: | F G M P S T V |
|---|
| Jump to: | F G M P S T V |
|---|