summaryrefslogtreecommitdiff
path: root/openscad.h
diff options
context:
space:
mode:
authorclifford <clifford@b57f626f-c46c-0410-a088-ec61d464b74c>2009-07-01 11:09:19 (GMT)
committerclifford <clifford@b57f626f-c46c-0410-a088-ec61d464b74c>2009-07-01 11:09:19 (GMT)
commit13888cfe9294d1649dff5ea84d5fd76a77182458 (patch)
treea759ce0590a6645d60189aa1664045be2e892956 /openscad.h
parent82fad98cb63d6e27e7c156d4c5e4c9a9847abfd1 (diff)
Clifford Wolf:
Support for hightlights git-svn-id: http://svn.clifford.at/openscad/trunk@45 b57f626f-c46c-0410-a088-ec61d464b74c
Diffstat (limited to 'openscad.h')
-rw-r--r--openscad.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/openscad.h b/openscad.h
index 2de5d42..4f12420 100644
--- a/openscad.h
+++ b/openscad.h
@@ -338,7 +338,8 @@ public:
enum colormode_e {
COLOR_NONE,
COLOR_MATERIAL,
- COLOR_CUTOUT
+ COLOR_CUTOUT,
+ COLOR_HIGHLIGHT
};
void render_surface(colormode_e colormode, GLint *shaderinfo = NULL) const;
@@ -409,7 +410,7 @@ public:
#ifdef ENABLE_CGAL
virtual CGAL_Nef_polyhedron render_cgal_nef_polyhedron() const;
#endif
- virtual CSGTerm *render_csg_term(double m[16]) const;
+ virtual CSGTerm *render_csg_term(double m[16], QVector<CSGTerm*> *highlights) const;
virtual QString dump(QString indent) const;
};
@@ -425,7 +426,7 @@ public:
#ifdef ENABLE_CGAL
virtual CGAL_Nef_polyhedron render_cgal_nef_polyhedron() const;
#endif
- virtual CSGTerm *render_csg_term(double m[16]) const;
+ virtual CSGTerm *render_csg_term(double m[16], QVector<CSGTerm*> *highlights) const;
};
extern int progress_report_count;
@@ -489,7 +490,7 @@ public:
Context root_ctx;
AbstractModule *root_module;
- AbstractNode *root_node;
+ AbstractNode *absolute_root_node;
CSGTerm *root_raw_term;
CSGTerm *root_norm_term;
CSGChain *root_chain;
@@ -497,11 +498,16 @@ public:
CGAL_Nef_polyhedron *root_N;
#endif
+ QVector<CSGTerm*> highlight_terms;
+ CSGChain *highlights_chain;
+ AbstractNode *root_node;
+
MainWindow(const char *filename = 0);
~MainWindow();
private:
void load();
+ void find_root_tag(AbstractNode *n);
void compile();
private slots:
contact: Jan Huwald // Impressum