1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-08-13 10:14:41 +02:00

we only needed pts of contour

This commit is contained in:
Justin Lin
2017-05-24 09:54:11 +08:00
parent e2527bbf8c
commit cccba1515b

View File

@@ -11,16 +11,30 @@
*
**/
module polytransversals(transversals) {
module two_transversals(trans1, trans2) {
leng_trans2 = len(trans2);
polygon(concat(
trans1,
[for(i = [0:leng_trans2 - 1]) trans2[leng_trans2 - 1 - i]]
));
}
include <__private__/__reverse.scad>;
for(i = [0:len(transversals) - 2]) {
two_transversals(transversals[i], transversals[i + 1]);
}
module polytransversals(transversals) {
leng_trs = len(transversals);
leng_tr = len(transversals[0]);
lefts = [
for(i = [1:leng_trs - 2])
let(tr = transversals[leng_trs - i])
tr[0]
];
rights = [
for(i = [1:leng_trs - 2])
let(tr = transversals[i])
tr[leng_tr - 1]
];
polygon(
concat(
transversals[0],
rights,
__reverse(transversals[leng_trs - 1]),
lefts
)
);
}