summaryrefslogtreecommitdiff
path: root/src/CSGTermEvaluator.cc
diff options
context:
space:
mode:
authorMarius Kintel <marius@kintel.net>2011-12-22 03:12:15 (GMT)
committerMarius Kintel <marius@kintel.net>2011-12-22 03:12:15 (GMT)
commit8d5be2c5247f806fb3ec9c9a197ae97b5d565dc7 (patch)
tree154a4c2a15a52e99cdd82e181db3b6298a7ad44b /src/CSGTermEvaluator.cc
parentd7ca192077f127a2d05bed73d1814a8045823335 (diff)
Implemented CSG tree pruning - this should significantly improve performance of difficult models in OpenCSG preview mode
Diffstat (limited to 'src/CSGTermEvaluator.cc')
-rw-r--r--src/CSGTermEvaluator.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/CSGTermEvaluator.cc b/src/CSGTermEvaluator.cc
index 1aedfec..fc76d56 100644
--- a/src/CSGTermEvaluator.cc
+++ b/src/CSGTermEvaluator.cc
@@ -48,11 +48,11 @@ void CSGTermEvaluator::applyToChildren(const AbstractNode &node, CSGTermEvaluato
t1 = t2;
} else if (t2 && t1) {
if (op == CSGT_UNION) {
- t1.reset(new CSGTerm(CSGTerm::TYPE_UNION, t1, t2));
+ t1 = CSGTerm::createCSGTerm(CSGTerm::TYPE_UNION, t1, t2);
} else if (op == CSGT_DIFFERENCE) {
- t1.reset(new CSGTerm(CSGTerm::TYPE_DIFFERENCE, t1, t2));
+ t1 = CSGTerm::createCSGTerm(CSGTerm::TYPE_DIFFERENCE, t1, t2);
} else if (op == CSGT_INTERSECTION) {
- t1.reset(new CSGTerm(CSGTerm::TYPE_INTERSECTION, t1, t2));
+ t1 = CSGTerm::createCSGTerm(CSGTerm::TYPE_INTERSECTION, t1, t2);
}
}
}
contact: Jan Huwald // Impressum