Java-Gaming.org Hi !
 Featured games (90) games approved by the League of Dukes Games in Showcase (777) Games in Android Showcase (231) games submitted by our members Games in WIP (856) games currently in development
 News: Read the Java Gaming Resources, or peek at the official Java tutorials
Pages: [1]
 ignore  |  Print
 Simple?? Quaternion rotation problem  (Read 5205 times) 0 Members and 1 Guest are viewing this topic.
dranonymous

Junior Devvie

Hoping to become a Java Titan someday!

 « Posted 2005-03-07 15:51:02 »

A friend and I were messing around with jME and were rotating 2 cubes.  We had different ideas on how we could do it, but got one way to work.  The other didn't and we aren't sure why.

We have an array of the geometry we want to rotate.  Below is a code snippet -

 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16 `          Quaternion rotQuat = new Quaternion();          Quaternion localQuat = null;          float angle = 0;           if (timer.getTimePerFrame() < 1) {                angle = timer.getTimePerFrame() * 50;          }               rotQuat.fromAngleAxis(angle*FastMath.DEG_TO_RAD, new Vector3f(1, 0, 0));         for (int i = 0; i < spinList.size(); i++){               TriMesh geom = (TriMesh)spinList.get(i);               localQuat = geom.getLocalRotation();               localQuat.addLocal(rotQuat);        }`

Shouldn't this take the quat from the current object and add a small amount of rotation to it?

If we instead change 2 things: make the angle additive each time, ie angle += ....  and then do a geom.setLocalRotation(rotQuat), it works.  Of course, this means all the rotating objects are rotated at exactly the same angles, rather than whatever angles they started at.

Regards,
Dr. A>

renanse

Junior Devvie

Exp: 14 years

Intelligence is light to a dark world.

 « Reply #1 - Posted 2005-03-13 01:34:28 »

FYI, this was answered on the official jME forums

Renanse  (ruh-NON-say)
dranonymous

Junior Devvie

Hoping to become a Java Titan someday!

 « Reply #2 - Posted 2005-03-16 11:38:14 »

I double checked there and don't see that anyone has responded.  My thread at the jme forum there is -

http://www.jmonkeyengine.com/jmeforum/viewtopic.php?t=1437

Thanks,
Dr. A>
renanse

Junior Devvie

Exp: 14 years

Intelligence is light to a dark world.

 « Reply #3 - Posted 2005-03-16 12:54:01 »

Oops, sorry, there was another similar thread around the same time:

http://www.jmonkeyengine.com/jmeforum/viewtopic.php?t=1424

I think you would multiply, like: localQuat = rotQuat.multiply(localQuat);

Renanse  (ruh-NON-say)
renanse

Junior Devvie

Exp: 14 years

Intelligence is light to a dark world.

 « Reply #4 - Posted 2005-03-16 12:55:43 »

Looks like another poster suggests the same thing on your other thread.

Renanse  (ruh-NON-say)
Pages: [1]
 ignore  |  Print

 hadezbladez (336 views) 2018-11-16 13:46:03 hadezbladez (180 views) 2018-11-16 13:41:33 hadezbladez (336 views) 2018-11-16 13:35:35 hadezbladez (83 views) 2018-11-16 13:32:03 EgonOlsen (2177 views) 2018-06-10 19:43:48 EgonOlsen (2205 views) 2018-06-10 19:43:44 EgonOlsen (1378 views) 2018-06-10 19:43:20 DesertCoockie (2010 views) 2018-05-13 18:23:11 nelsongames (1654 views) 2018-04-24 18:15:36 nelsongames (2299 views) 2018-04-24 18:14:32
 Deployment and Packagingby mudlee2018-08-22 18:09:50Java Gaming Resourcesby gouessej2018-08-22 08:19:41Deployment and Packagingby gouessej2018-08-22 08:04:08Deployment and Packagingby gouessej2018-08-22 08:03:45Deployment and Packagingby philfrei2018-08-20 02:33:38Deployment and Packagingby philfrei2018-08-20 02:29:55Deployment and Packagingby philfrei2018-08-19 23:56:20Deployment and Packagingby philfrei2018-08-19 23:54:46
 java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org