Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
outilsit:fablab:laser:lol [2022/02/09 01:22] vanlindtmarc [menger3D(d,maxit)] |
outilsit:fablab:laser:lol [2022/02/09 02:27] (Version actuelle) vanlindtmarc |
||
---|---|---|---|
Ligne 1010: | Ligne 1010: | ||
} | } | ||
</ | </ | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ==== outline(w, | ||
+ | |||
+ | < | ||
+ | abc=square([50, | ||
+ | |||
+ | # | ||
+ | outline(w=3) 2D(abc); | ||
+ | |||
+ | # | ||
+ | translate([55, | ||
+ | |||
+ | # | ||
+ | translate([110, | ||
+ | </ | ||
+ | < | ||
+ | module outline | ||
+ | w=w==undef? | ||
+ | t=t==undef?" | ||
+ | difference() | ||
+ | { | ||
+ | offset(t==" | ||
+ | children(); | ||
+ | offset(t==" | ||
+ | children(); | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
---- | ---- | ||
Ligne 1192: | Ligne 1223: | ||
</ | </ | ||
< | < | ||
- | module | + | module |
- | intersection(){ | + | |
- | translate([-d/2,-d/2,-d]) linear_extrude(d*2) menger(d=d, | + | cube([d, |
- | rotate([90, | + | } |
- | translate([-d/ | + | if (it< |
- | rotate([90, | + | union(){ |
- | translate([-d/2,-d/2,-d]) linear_extrude(d*2) menger(d=d, | + | for (i=[-1:1]){ |
- | } | + | translate([d/3,d/3,d/3*i]) rotate([0,90,0]) menger3d(it=it+1, |
- | } | + | translate([-d/ |
+ | } | ||
+ | |||
+ | translate([0, | ||
+ | translate([0,d/3,-d/3]) rotate([0, | ||
+ | |||
+ | for (i=[-1:1]){ | ||
+ | translate([d/3,-d/3,d/3*i]) rotate([0, | ||
+ | translate([-d/3,-d/3,d/3*i]) rotate([0,90,0]) menger3d(it=it+1, | ||
+ | } | ||
+ | translate([0,-d/3,d/3]) rotate([0, | ||
+ | | ||
+ | translate([d/ | ||
+ | translate([d/ | ||
+ | translate([-d/3,0,d/3]) rotate([0,90,0]) menger3d(it=it+1, | ||
+ | translate([-d/3,0,-d/3]) rotate([0, | ||
+ | }}} | ||
</ | </ | ||
Ligne 1555: | Ligne 1602: | ||
function translate3D(a, | function translate3D(a, | ||
function rescale3D(a, | function rescale3D(a, | ||
+ | </ | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ==== skew(XY, | ||
+ | {{ : | ||
+ | < | ||
+ | skew(XY=0.5) cube([25, | ||
+ | translate([50, | ||
+ | translate([0, | ||
+ | translate([50, | ||
+ | translate([0, | ||
+ | translate([50, | ||
+ | </ | ||
+ | < | ||
+ | module skew(XY, | ||
+ | matrice=[ | ||
+ | [1, | ||
+ | [YX, | ||
+ | [ZX,ZY,1,0] //[SkewZX, SkewZY, | ||
+ | ]; | ||
+ | multmatrix(matrice){ | ||
+ | children(); | ||
+ | } | ||
+ | } | ||
</ | </ | ||