Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
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.
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.)
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 work
My 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)