OpenSCAD: Um einen bestimmten Punkt drehen?
Mark Harrison
Der folgende Code dreht den zweiten Würfel um den Ursprung. Wie kann ich stattdessen den zweiten Würfel um seinen Mittelpunkt ([5,5,0]) drehen?
cube([10,10,1]);
rotate([0,0,45]) cube([10,10,1]);
Mark Harrison
Dieses Modul führt die gewünschte Drehung durch.
// rotate as per a, v, but around point pt
module rotate_about_pt(a, v, pt) {
translate(pt)
rotate(a,v)
translate(-pt)
children();
}
cube([10,10,1]);
rotate_about_pt(45,0,[5,5,0]) cube([10,10,1]);
In neueren Versionen (getestet mit der Vorschau vom Januar 2019) generiert der obige Code eine Warnung. Um dies zu beheben, aktualisieren Sie die Parameter auf rotate
:
module rotate_about_pt(z, y, pt) {
translate(pt)
rotate([0, y, z]) // CHANGE HERE
translate(-pt)
children();
}