summaryrefslogtreecommitdiff
path: root/openscad.h
diff options
context:
space:
mode:
authorclifford <clifford@b57f626f-c46c-0410-a088-ec61d464b74c>2009-06-24 15:39:08 (GMT)
committerclifford <clifford@b57f626f-c46c-0410-a088-ec61d464b74c>2009-06-24 15:39:08 (GMT)
commit65c7db49c97ee3b0f79ffdd10a7396c3d7fb82a3 (patch)
tree07acf30113bf4748a2dfe976ea2791c08c9926e6 /openscad.h
parentba42e6c30be19004f0c4351f51005bc5e5dabdca (diff)
Clifford Wolf:
Generate CSG Products as part of compilation process git-svn-id: http://svn.clifford.at/openscad/trunk@16 b57f626f-c46c-0410-a088-ec61d464b74c
Diffstat (limited to 'openscad.h')
-rw-r--r--openscad.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/openscad.h b/openscad.h
index 3003256..af35ee5 100644
--- a/openscad.h
+++ b/openscad.h
@@ -59,7 +59,10 @@ class ModuleInstanciation;
class Module;
class Context;
+class CSGTerm;
+class PolySet;
class AbstractNode;
+class AbstractPolyNode;
class Value
{
@@ -308,18 +311,21 @@ public:
type_e type;
PolySet *polyset;
+ QString label;
CSGTerm *left;
CSGTerm *right;
int refcounter;
double m[16];
- CSGTerm(PolySet *polyset, double m[16]);
+ CSGTerm(PolySet *polyset, QString label, double m[16]);
CSGTerm(type_e type, CSGTerm *left, CSGTerm *right);
- CSGTerm *normalize(bool &changed);
+ CSGTerm *normalize();
+ CSGTerm *normalize_tail();
CSGTerm *link();
void unlink();
+ QString dump();
};
#endif
@@ -428,6 +434,10 @@ public:
Context root_ctx;
AbstractModule *root_module;
AbstractNode *root_node;
+#ifdef ENABLE_OPENCSG
+ CSGTerm *root_raw_term;
+ CSGTerm *root_norm_term;
+#endif
#ifdef ENABLE_CGAL
CGAL_Nef_polyhedron *root_N;
#endif
@@ -446,7 +456,9 @@ private slots:
#endif
void actionDisplayAST();
void actionDisplayCSGTree();
+#ifdef ENABLE_OPENCSG
void actionDisplayCSGProducts();
+#endif
void actionExportSTL();
void actionExportOFF();
};
contact: Jan Huwald // Impressum