^
brixelweb.de OpenSCAD-Menu
[ https://openscad.org/ ]


Das Koordinatensystem mit rotate und translate

Das Koordinatensystem besteht aus drei Achsen: X , Y und Z (dargestellt in den jeweiligen Farben). Vom Nullpunkt aus gesehen, gehen alle drei Achsen in den positiven Bereich - dies sind die Linien mit den durchgehenden Farben.

Die Linien mit den Unterbrechungen durch Weiss vom Zentrum aus in die Gegenrichtung stellen je die negativen Werte dar.


Ferner lassen sich die Achsen jederzeit unten links im Fenster ablesen. Dies betrifft die drei farbigen kurze Linien, die mit X, Y und Z beschriftet sind.


Die Reihenfolge der Angaben der Achsen ist zu beachten:
translate([ Wert X , Wert Y , Wert Z ]) sowie bei
rotate([ Winkel X , Winkel Y , Winkel Z ])


Der Script dazu

// kos-rt.scad
// Darstellung des Koordinatensystems in Farbe
// Demo mit translate und mit rotate

$fn=100; // Aufoesung

// Versuchsweise die "//" entfernen
// bitte nur abwechselnd ....

//translate([10,15,20])
//rotate([0,-45,0])
//rotate([22.5,-45,0])

union() {
// X-Achse Plus in Rot
rotate([0,90,0]) color("Red") cylinder(h=50,r=0.2);
// X-Achse Minus in Rot/Weiss
rotate([0,-90,0]) color("White") cylinder(h=50,r=0.2);
for (a =[-50:2:0])
    translate([a,0,0]) rotate([0,90,0]) 
	color("Red") cylinder(h=1,r=0.2);

// Y-Achse Plus in Gruen
rotate([-90,0,0]) color("Lime") cylinder(h=50,r=0.2);
// Y-Achse Minus in Gruen/Weiss
rotate([90,0,0]) color("White") cylinder(h=50,r=0.2);
for (a =[-50:2:0])
    translate([0,a,0]) rotate([90,0,0]) 
	color("Lime") cylinder(h=1,r=0.2);

// Z-Achse Plus in Blau
rotate([0,0,0]) color("DeepSkyBlue") cylinder(h=50,r=0.2);
// Z-Achse Minus in Blau/Weiss
translate([0,0,-50])rotate([0,0,0]) 
color("white") cylinder(h=50,r=0.2);
for (a =[-50:2:0])
    translate([0,0,a]) rotate([0,0,0]) 
	color("DeepSkyBlue") cylinder(h=1,r=0.2);

// Kugel im Zentrum	
color("Magenta") sphere(r=.75);
}

Der Script links ist zum Probieren gedacht: einfach kopieren und unter OpenSCAD ausprobieren!


Es werden nacheinander die jeweiligen Achsen in der entsprechenden Farbe erzeugt. Die negativen Werte erhalten eine weiße Linie mit den Farben unterbrochen gekennzeichnet.


Die Musterzeilen:

//translate([10,15,20])
//rotate([0,-45,0])
//rotate([22.5,-45,0])


werden als Kommentar beschrieben. Entfernt man die "//", so wird dieser Befehl als solcher erkannt und ausgeführt.
Folglich kann dadurch jeder Befehl ganz gezielt mit verschiedenen Werten zum Agieren gebracht werden.


Für das bessere Verständnis der unterschiedlichen Werte empfiehlt es sich die Musterzeilen nacheinander zu Probieren und die Werte zu Ändern.


Hier wird ein Würfel nach dem anderen erzeugt. Alle liegen auf der roten X-Achse.
color("Magenta") sphere(0.5); // Kugel im Zentrum des KOS
color("yellow", 0.1) cube(10);// Würfel im Zentrum
bringt eine Lila-Kugel und einen fast ganz durchsichtigen Würfel ganz links im Zentrum zustande.

Der zweite Würfel und dessen grüne Kugel:
translate([20,0,0]) color("Green")
sphere(0.5);// Kugel 2

translate([20,0,0]) color("yellow", 0.3)
cube(10);// Wuerfel 2

werden um 20 auf der X-Achse verschoben.

Der dritte Würfel und dessen grüne Kugel:
translate([40,0,0]) color("Blue")
sphere(0.5);// Kugel 3

translate([40,0,0]) color("yellow", 0.3)
cube(10);// Wuerfel 3

werden um 20 auf der X-Achse verschoben.

Die Achsen werden mit dem Würfel 4translate([40,0,0]) rotate([45,0,0])
cube(10);// Wuerfel 4

nach dm Verschieben komplett um 45 Grad gedreht.

Werden in der vorletzten Zeile die Befehle translate([40,0,0]) rotate([45,0,0]) gegeneinander vertauscht: rotate([45,0,0])translate([40,0,0]), so geschieht nichts besonderes. Es bleibt alles wie es war: denn die Verschiebung und die Drehung finden auf der gleichen Achse statt.



Jetzt wird getauscht !


Zuerst wird um 10 auf der X-Achse verschoben, anschließendend um 45 Grad um die Z-Achse gedreht. Erst dann wird ein gelber Quader erzeugt, dessen Startpunkt die lila Kugel ist.

// kos-rt2.scad
// Darstellung des Koordinatensystems in Farbe
// Demo 2 mit translate und mit rotate

$fn=100; // Aufoesung

// Gelber Quader
translate([10,0,0]) rotate([0,0,45]) cube([15,10,5]);
translate([10,0,0]) rotate([0,0,45]) 
color("magenta")sphere(0.5);


Jetzt wird zuerst um 45 Grad um die Z-Achse gedreht, dann um 10 auf der neuen X-Achse verschoben. Nun wird ein blauer Quader erzeugt, dessen Startpunkt die gelbe Kugel ist.

// kos-rt2.scad
// Darstellung des Koordinatensystems in Farbe
// Demo 2 mit translate und mit rotate

$fn=100; // Aufoesung

// Blauer Quader
rotate([0,0,45]) translate([10,0,0])
color("blue",.5) cube([15,10,5]);

// Gelbe Kugel
rotate([0,0,45]) translate([10,0,0])
color("yellow") sphere(r=.5);


Nimmt man beide Quader zusammen in ein Fenster, wird sehr schnell der Unterschied der Vertauschung deutlich. Den gelben Quader habe ich durchsichtig gestaltet, damit die gelbe Kugel vom Startpunkt des blauen Quaders sichtbar wird.

// kos-rt2.scad
// Darstellung des Koordinatensystems in Farbe
// Demo 2 mit translate und mit rotate

$fn=100; // Aufoesung

// Blauer Quader
rotate([0,0,45]) translate([10,0,0])
color("blue",.5) cube([15,10,5]);

// Gelbe Kugel
rotate([0,0,45]) translate([10,0,0])
color("yellow") sphere(r=.5);

// Gelber Quader
translate([10,0,0]) rotate([0,0,45])
color("yellow",0.3)cube([15,10,5]);
translate([10,0,0]) rotate([0,0,45]) 
color("magenta")sphere(0.5);







www.brixelweb.de