Hows does Rotations work?
-
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 02/03/2004 at 15:23, xxxxxxxx wrote:
User Information:
Cinema 4D Version: 8.206
Platform:
Language(s) : C++ ;---------
Hi,
This might be a standard maths question but I can't work it out.I want to simulate the rotation tool in my plugin, the problem is that I can't work out the rotation tool works.
If I create a cube in C4D and click rotate, and rotate 30 degrees along the Bank. The cube rotates like it should, around the bank axis.
Now I want to rotate the cube around only the pitch axis (this I want to be done through code, but using c4d as an example)
If i use the AM and increase the Pitch field, the cube rotates around the pitch but in a wonky fashion.
If I use the Pitch handle in the viewport, the cube rotates around the pitch axis perfectly, but all the axis values are changing.I want to simulate this through code, but I don't understand why it changes all the axis values, when I just want to rotate around the Pitch.
This is probably a basic math problem, but my 3D math is quite poor and still learning it.
-
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 02/03/2004 at 23:54, xxxxxxxx wrote:
I believe there's a basic explanation for this in the main C4D manual. Look for the "Use HPB" option, which is what makes C4D behave in the way you describe. (IIRC there's a picture of an airplane on the page.)
-
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 04/03/2004 at 15:54, xxxxxxxx wrote:
Thanks, I found the page.
But I'm confused how I can rotate an object with the same behaviour as the rotate tool in c4d.
I have been experimenting with rotating, and I just can't get it to workMy plugin is rotating an object like this (the c++ equivalent)
main(doc,op) { var r = op->GetRotation(); r.y+=Radians(1); op->SetRotation(r); }
but if the object is rotated a few degree's on the Bank axis first, then the object will 'tumble' using the above code.
The SDK description for BaseObject->SetRot() says:
Set the HPB rotation of the object relative to any parent object.Which is why the object tumbles, how can I set the rotation of an object using the non HPB rotation system?
(which im guessing would solve my tumble problem)