summaryrefslogtreecommitdiffabout
authorMichael Krelin <hacker@klever.net>2016-01-07 20:55:09 (UTC)
committer Michael Krelin <hacker@klever.net>2016-01-07 20:55:09 (UTC)
commit38331f5dc2cb18d65baf24c5a181de1656c9b8c4 (patch) (side-by-side diff)
tree2f9f5c3dafce947d74ac94a9e212d18336242910
parent07d64020a23339f759f183c12ebda7a5f69acc78 (diff)
downloadredelta-38331f5dc2cb18d65baf24c5a181de1656c9b8c4.zip
redelta-38331f5dc2cb18d65baf24c5a181de1656c9b8c4.tar.gz
redelta-38331f5dc2cb18d65baf24c5a181de1656c9b8c4.tar.bz2
base sides generation separated
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--delta.jscad19
1 files changed, 12 insertions, 7 deletions
diff --git a/delta.jscad b/delta.jscad
index e6516f9..7dedfab 100644
--- a/delta.jscad
+++ b/delta.jscad
@@ -535,36 +535,41 @@ var E2020 = {
[ -e.T.width/2,e.outer/2-e.thickness],
[ -e.slot_width/2,e.outer/2-e.thickness],
[ -e.slot_width/2,e.outer/2],
]).extrude({offset:[0,0,l+thickness]}).rotateZ(w);
}));
rv.properties.P = new CSG.Connector([0,0,0],[0,0,1],[1,0,0]);
return rv;
}
};
var THREEWINDS = [0,120,240];
-function base_extrusions() {
- var rv = union( THREEWINDS.map(function(w) {
+function base_sides() {
+ return [0,1].map(function(l) {
+ return THREEWINDS.map(function(w) {
var e = E2020.extrusion({l:CONFIG.base.el});
e = e.connectTo(e.properties.c_midway,
new CSG.Connector([0,-CD.base.mid_inscription_r,CONFIG.extrusion.w/2],[1,0,0],[0,0,1]),
false, 0);
- return union( [0,CONFIG.extrusion.w+CONFIG.base.gap].map(function(z) {
- return e.translate([0,0,z]);
- }) ).rotateZ(w);
- }) );
+ return ( e.translate([0,0,CONFIG.foot.h+l*(CONFIG.extrusion.w+CONFIG.base.gap)])
+ .rotateZ(w)
+ .setColor(CONFIG.color.extrusion) );
+ });
+ });
+}
+function base_extrusions() {
+ var rv = union( base_sides().map(function(x){return union(x)}) );
rv.properties.P = new CSG.Connector([0,0,0],[0,0,1],[1,0,0]);
- return rv.setColor(CONFIG.color.extrusion);
+ return rv;
}
function column_extrusions() {
var rv = union( THREEWINDS.map(function(w) {
return E2020.extrusion({l:CONFIG.column.h}).translate([0,CD.base.column_r,0]).rotateZ(w);
}) );
rv.properties.P = new CSG.Connector([0,0,0],[0,0,1],[1,0,0]);
return rv.setColor(CONFIG.color.extrusion);
}
function duet() {
var C = CONFIG.duet;