summaryrefslogtreecommitdiff
path: root/module.cc
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 /module.cc
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 'module.cc')
-rw-r--r--module.cc8
1 files changed, 5 insertions, 3 deletions
diff --git a/module.cc b/module.cc
index d090ac7..2e9a3f6 100644
--- a/module.cc
+++ b/module.cc
@@ -226,17 +226,19 @@ CGAL_Nef_polyhedron AbstractNode::render_cgal_nef_polyhedron() const
#endif /* ENABLE_CGAL */
-CSGTerm *AbstractNode::render_csg_term(double m[16]) const
+CSGTerm *AbstractNode::render_csg_term(double m[16], QVector<CSGTerm*> *highlights) const
{
CSGTerm *t1 = NULL;
- foreach(AbstractNode * v, children) {
- CSGTerm *t2 = v->render_csg_term(m);
+ foreach(AbstractNode *v, children) {
+ CSGTerm *t2 = v->render_csg_term(m, highlights);
if (t2 && !t1) {
t1 = t2;
} else if (t2 && t1) {
t1 = new CSGTerm(CSGTerm::UNION, t1, t2);
}
}
+ if (modinst->tag_highlight && highlights)
+ highlights->append(t1->link());
return t1;
}
contact: Jan Huwald // Impressum