summaryrefslogtreecommitdiff
path: root/module/math/polyhedra.m
diff options
context:
space:
mode:
Diffstat (limited to 'module/math/polyhedra.m')
-rw-r--r--module/math/polyhedra.m25
1 files changed, 25 insertions, 0 deletions
diff --git a/module/math/polyhedra.m b/module/math/polyhedra.m
new file mode 100644
index 00000000..2b3e9ce6
--- /dev/null
+++ b/module/math/polyhedra.m
@@ -0,0 +1,25 @@
+Polyhedra: module
+{
+ PATH: con "/dis/math/polyhedra.dis";
+
+ Vector: adt{
+ x, y, z: real;
+ };
+
+ Polyhedron: adt{
+ name, dname: string;
+ indx, V, E, F, concave, anti, allf, adj: int;
+ v, f: array of Vector;
+ fv, vf: array of array of int;
+ offset: big;
+ prv, nxt: cyclic ref Polyhedron;
+ inc: real;
+ };
+
+ # read in details of all polyhedra in the given file
+ scanpolyhedra: fn(f: string): (int, ref Polyhedron, ref Bufio->Iobuf);
+ # read in the coordinates of all polyhedra
+ getpolyhedra: fn(p: ref Polyhedron, b: ref Bufio->Iobuf);
+ # read in the coordinates of the given polyhedron
+ getpolyhedron: fn(p: ref Polyhedron, b: ref Bufio->Iobuf);
+};