Beschränke Transformation

Was tut es?

Diese Expression beschränkt die mögliche Position, Rotation und Skalierung eines Objekts. Jede Achse kann separat behandelt werden. Es ist also z.B. möglich, ein Objekt auf Bewegungen entlang der x-Achse zu limitieren, oder Rotationen um die z-Achse nur zwischen -90 und +90 Grad zu erlauben. Dies gilt sowohl für Animationen als auch für Manipulationen beim Editieren.

Welche Parameter müssen gesetzt werden?

Attributes of distance tag

Der Attributmanager zeigt eine ganze Reihe von Parametern, doch in Wahrheit sind es nur vier, die sich für jede mögliche Transformation (Rotation, Translation und Skalierung) und jede Achse (X/H, Y/P, Z/B) wiederholen.

Zunächst wird für die gewünschte Transformation und Achse aus dem Dropdownfeld "Beschränke" die Art der Beschränkung gewählt.

In den Feldern Min und Max kann man die benötigten Werte einstellen. Wählt man die Beschränkung Fest, so wird der Wert im Minimumsfeld als Festwert benutzt.

Ferner kann noch der Modus auf "Lokal" oder "Global" eingestellt werden. Bei "Global" gilt die Beschränkung für das globale Koordinatensystem, egal in welcher Hierarchie das Objekt sich befindet. Bei "Lokal" gilt die Beschränkung für das lokale Koordinatensystem (also das System des Elternobjekts). Im Koordinatenmanager von C4D kann man die Wirkung beider Einstellungen schnell überprüfen.

Warum funktioniert das nicht so, wie es soll?

Wenn Sie die Beschränkung praktisch ausprobieren, werden Sie eine scheinbare Merkwürdigkeit feststellen. Bei frisch erzeugten Objekten geht alles wunderbar. Man zieht am x-Achsen-Anfasser und stößt an die x-Begrenzung, man dreht den B-Achsen-Anfasser und wird von der B-Begrenzung aufgehalten. Aber kaum hat man das Objekt gedreht, scheint gar nichts mehr zu funktionieren. Man zieht am x-Achsen-Anfasser, und das Objekt bewegt sich entweder gar nicht, oder nicht so, wie es sollte, oder beginnt sogar schräg zu gleiten, obwohl man doch die (begrenzte) x-Achse verschiebt! Was ist da los?

Das scheinbar merkwürdige Verhalten hat einen ganz einfachen Grund. Die Begrenzungen wirken im Koordinatensystem des Elternobjekts (oder im globalen Raum). Die Anfasser am Achsenkreuz des Objekts stellen aber das objekteigene Koordinatensystem dar! Und dieses eigene Koordinatensystem kann im begrenzten Raum schief liegen. Das heißt, wenn Sie einen Achsen-Anfasser ziehen, bewegen Sie das Objekt tatsächlich entlang mehrerer Achsen des Elternsystems.

Das glauben Sie nicht? Probieren Sie es aus: erzeugen Sie ein Objekt, drehen Sie es um 45 Grad, und ziehen Sie es dann mit den Achsen-Anfassern in verschiedene Richtungen. Im Koordinatenmanager können Sie sehen, daß sich je nach Richtung mehrere Achsenwerte gleichzeitig ändern.

Das Tag "Beschränke Transformation" zieht ebenso zur Beschränkung nicht das objekteigene Koordinatensystem heran (das kann es ja auch gar nicht, denn in bezug auf sich selbst sind alle Achswerte immer Null!), sondern das Elternsystem oder das globale System. Zur Veranschaulichung das folgende Bild: Der große Würfel, der nur aus Kanten besteht, symbolisiert die Beschränkung (Translation in allen Achsen durch "Bereich" begrenzt). Der kleine Würfel ist das beschränkte Objekt. Es ist in sich gedreht, aber die gültige Beschränkung ist der achsenparallele große Würfel!

Distance example

Ziehen Sie jetzt z.B. am y-Achsen-Anfasser, so bewegt sich der kleine Würfel zunächst ungehindert schräg in seinem beschränkten Raum. Irgendwann stößt er jedoch auf die Beschränkung (die Wand des großen Würfels). Zieht man dann noch weiter, wirkt der Zug nicht mehr in die beschränkte Richtung, und das Objekt "gleitet an der Wand des großen Würfels entlang", bis die nächste Beschränkung erreicht ist. Irgendwann kommt der kleine Würfel zum Stillstand, weil er all seine Beschränkungen erreicht hat. Wenn man nun den äußeren beschränkenden Würfel nicht im Kopf hat, wirkt die Bewegung beim Ziehen ein wenig konfus. Schlimmer noch sieht das Drehen aus (unterliegt jedoch denselben Gesetzen).

Ist das Koordinatensystem des Objekts achsenparallel zu dem seines Elternobjekts (oder dem globalen Koordinatensystem), arbeitet auch das Ziehen an den Achsen-Anfassern wieder intuitiv.

(Achtung: Das Bild ist natürlich etwas irreführend. Die Beschränkung wirkt auf den Nullpunkt des kleinen Würfels, d.h. den Ursprung des Koordinatensystems des Würfels. Nur dieser Punkt wird also im beschränkten Bereich festgehalten; die Eckpunkte und Flächen des Würfels können durchaus über die Grenzen des großen Würfels hinausragen. Es handelt sich hier nicht um eine Kollisionserkennung!)

Und noch eine Kleinigkeit gilt es zu beachten: "Skalieren" bezieht sich ausschließlich auf die Matrixtransformation, d.h. das Skalieren im Objekt-Modus (nicht im Modell-Modus). Im Modell-Modus wird nicht die Transformationsmatrix beeinflußt, sondern es werden (parametrische) Werte und (Polygon-)Punkte des Objekts skaliert. Eine solche Skalierung läßt sich prinzipiell nicht durch das Tag beschränken.


Zurück zur Kinematische Tools-Seite

Zurück zur Handbuch-Hauptseite