diff options
author | Marius Kintel <marius@kintel.net> | 2014-02-05 04:49:10 (GMT) |
---|---|---|
committer | Marius Kintel <marius@kintel.net> | 2014-02-06 05:50:00 (GMT) |
commit | 716d8a7ab3b93404bfcc5f2687d412272e6b7cfd (patch) | |
tree | aff3c4896a9cb56c1ba70576f419a2d7f22618ca | |
parent | 6a1d91dc76ec819e85b180b8cdaf40ddd639a538 (diff) |
Moved % modifier handling from node to nodedumper. This makes nodes with % operators use the existing cache instead of recalculating the object
-rw-r--r-- | src/node.cc | 2 | ||||
-rw-r--r-- | src/nodedumper.cc | 2 | ||||
-rw-r--r-- | tests/regression/dumptest/background-modifier-expected.csg | 8 | ||||
-rw-r--r-- | tests/regression/dumptest/example009-expected.csg | 4 | ||||
-rw-r--r-- | tests/regression/dumptest/example017-expected.csg | 2 | ||||
-rw-r--r-- | tests/regression/dumptest/example021-expected.csg | 4 | ||||
-rw-r--r-- | tests/regression/dumptest/highlight-and-background-modifier-expected.csg | 10 |
7 files changed, 16 insertions, 16 deletions
diff --git a/src/node.cc b/src/node.cc index a7a7630..f9c68d5 100644 --- a/src/node.cc +++ b/src/node.cc @@ -97,8 +97,6 @@ void AbstractNode::progress_report() const std::ostream &operator<<(std::ostream &stream, const AbstractNode &node) { - // FIXME: Don't use deep access to modinst members - if (node.modinst->isBackground()) stream << "%"; stream << node.toString(); return stream; } diff --git a/src/nodedumper.cc b/src/nodedumper.cc index 4523bac..d2905c0 100644 --- a/src/nodedumper.cc +++ b/src/nodedumper.cc @@ -1,5 +1,6 @@ #include "nodedumper.h" #include "state.h" +#include "module.h" #include <string> #include <sstream> @@ -47,6 +48,7 @@ std::string NodeDumper::dumpChildren(const AbstractNode &node) iter != this->visitedchildren[node.index()].end(); iter++) { assert(isCached(**iter)); + if ((*iter)->modinst->isBackground()) dump << "%"; dump << this->cache[**iter] << "\n"; } diff --git a/tests/regression/dumptest/background-modifier-expected.csg b/tests/regression/dumptest/background-modifier-expected.csg index 0f69ec3..3fda01b 100644 --- a/tests/regression/dumptest/background-modifier-expected.csg +++ b/tests/regression/dumptest/background-modifier-expected.csg @@ -1,12 +1,12 @@ group() { difference() { sphere($fn = 0, $fa = 12, $fs = 2, r = 10); - %cylinder($fn = 0, $fa = 12, $fs = 2, h = 30, r1 = 6, r2 = 6, center = true); +% cylinder($fn = 0, $fa = 12, $fs = 2, h = 30, r1 = 6, r2 = 6, center = true); } - %group() { +% group() { cube(size = [25, 6, 3], center = true); } - %multmatrix([[1, 0, 0, 0], [0, 1, 0, -9], [0, 0, 1, 0], [0, 0, 0, 1]]) { +% multmatrix([[1, 0, 0, 0], [0, 1, 0, -9], [0, 0, 1, 0], [0, 0, 0, 1]]) { difference() { color([0, 0.501961, 0, 1]) { cube(size = [10, 4, 10], center = true); @@ -20,7 +20,7 @@ group() { } multmatrix([[1, 0, 0, 25], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) { minkowski(convexity = 0) { - %cube(size = [10, 10, 10], center = true); +% cube(size = [10, 10, 10], center = true); cube(size = [5, 5, 5], center = true); } } diff --git a/tests/regression/dumptest/example009-expected.csg b/tests/regression/dumptest/example009-expected.csg index 5417d6b..22e4ebd 100644 --- a/tests/regression/dumptest/example009-expected.csg +++ b/tests/regression/dumptest/example009-expected.csg @@ -1,8 +1,8 @@ group() { - %linear_extrude(height = 22, center = true, convexity = 10, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) { +% linear_extrude(height = 22, center = true, convexity = 10, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) { import(file = "example009.dxf", layer = "body", origin = [0, 0], scale = 1, convexity = 1, $fn = 0, $fa = 12, $fs = 2); } - %group() { +% group() { multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 12], [0, 0, 0, 1]]) { linear_extrude(height = 2, center = true, convexity = 10, scale = [1, 1], $fn = 0, $fa = 12, $fs = 2) { import(file = "example009.dxf", layer = "plate", origin = [0, 0], scale = 1, convexity = 1, $fn = 0, $fa = 12, $fs = 2); diff --git a/tests/regression/dumptest/example017-expected.csg b/tests/regression/dumptest/example017-expected.csg index 86bd2a0..a103945 100644 --- a/tests/regression/dumptest/example017-expected.csg +++ b/tests/regression/dumptest/example017-expected.csg @@ -188,7 +188,7 @@ group() { } } } - %multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 12], [0, 0, 0, 1]]) { +% multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 12], [0, 0, 0, 1]]) { group() { rotate_extrude(convexity = 2, $fn = 0, $fa = 12, $fs = 2) { square(size = [25, 68], center = false); diff --git a/tests/regression/dumptest/example021-expected.csg b/tests/regression/dumptest/example021-expected.csg index 3d4aee0..9876e44 100644 --- a/tests/regression/dumptest/example021-expected.csg +++ b/tests/regression/dumptest/example021-expected.csg @@ -17,7 +17,7 @@ group() { } } } - %group() { +% group() { difference() { sphere($fn = 0, $fa = 30, $fs = 2, r = 25); cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true); @@ -251,7 +251,7 @@ group() { } } } - %group() { +% group() { difference() { sphere($fn = 0, $fa = 30, $fs = 2, r = 25); cylinder($fn = 0, $fa = 30, $fs = 2, h = 62.5, r1 = 12.5, r2 = 6.25, center = true); diff --git a/tests/regression/dumptest/highlight-and-background-modifier-expected.csg b/tests/regression/dumptest/highlight-and-background-modifier-expected.csg index 8402355..eaf9b1f 100644 --- a/tests/regression/dumptest/highlight-and-background-modifier-expected.csg +++ b/tests/regression/dumptest/highlight-and-background-modifier-expected.csg @@ -1,12 +1,12 @@ group() { difference() { sphere($fn = 0, $fa = 12, $fs = 2, r = 10); - %cylinder($fn = 0, $fa = 12, $fs = 2, h = 30, r1 = 6, r2 = 6, center = true); - %group() { +% cylinder($fn = 0, $fa = 12, $fs = 2, h = 30, r1 = 6, r2 = 6, center = true); +% group() { cube(size = [25, 6, 3], center = true); } } - %multmatrix([[1, 0, 0, 0], [0, 1, 0, -9], [0, 0, 1, 0], [0, 0, 0, 1]]) { +% multmatrix([[1, 0, 0, 0], [0, 1, 0, -9], [0, 0, 1, 0], [0, 0, 0, 1]]) { difference() { color([0, 0.501961, 0, 1]) { cube(size = [10, 4, 10], center = true); @@ -18,7 +18,7 @@ group() { } } } - %multmatrix([[1, 0, 0, 13], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) { +% multmatrix([[1, 0, 0, 13], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) { difference() { sphere($fn = 0, $fa = 12, $fs = 2, r = 10); cylinder($fn = 0, $fa = 12, $fs = 2, h = 30, r1 = 6, r2 = 6, center = true); @@ -47,7 +47,7 @@ group() { cube(size = [25, 6, 3], center = true); } } - %multmatrix([[1, 0, 0, 0], [0, 1, 0, -9], [0, 0, 1, 0], [0, 0, 0, 1]]) { +% multmatrix([[1, 0, 0, 0], [0, 1, 0, -9], [0, 0, 1, 0], [0, 0, 0, 1]]) { difference() { color([0, 0.501961, 0, 1]) { cube(size = [10, 4, 10], center = true); |