yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #04786
Re: normalizing quaternions. Rev 2266: 1. Tentative fix for the clumps bug
-
To:
Yade developers <yade-dev@xxxxxxxxxxxxxxxxxxx>
-
From:
Janek Kozicki <janek_listy@xxxxx>
-
Date:
Fri, 4 Jun 2010 22:52:17 +0200
-
Face:
iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAALVBMVEUBAQEtLS1KSkpRUVFXV1dYWFhjY2Nzc3N3d3eHh4eKioqdnZ24uLjLy8vc3NxVIagyAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH2AIVEzgS1fgQtQAAAjRJREFUOMtt1DFv00AUAOAzFQNbjigSyoQaRaBMhKgLUyKXpVNNeUpk9vyDqFJhQ1kiBuaqAwJCqvPtSLY7RlTn5+5IdnYkkt/AOyfxXVLe5vf53Z1875kd34tOEax8djmj6GyjhB5bxz50GdsVZr9fqRjZwAtKOJw5Wqs2MMZ16ALHsaDncF7xAHix1oEFHAB8f+pRjcO4gfZDykcYzbiucRolOLUJ6kjA0xtVt+A6TySlM0RajIpK6DzwKZ/nOYbF/gclHMo1ZOHYY/+Ha+AWuM+3oMS4eeqYzZ8FiCltgUqI8cd2wwAVpJk+8LWYjBtnJdQpHQqJMd4Oxt4bU9ESiFGc5hkqaH74asAX4iabP5I5gZ+qjgGlJCqZa3h3lxhoeVcSE1qLQC4sqKOK9MGW9E3izFqqHokoztLFEgXg31sbZEKnWi2T74A4NxfVQqlkjKtcAWD+zcArFEES01dR0E/nnV0IgugmDd/2L84sOAouRBBHEc7gtc8teDkRlE0iNQPo2w3Xhh/D4TCIQ4LRLoTvgwjj6RRgavdurxYGMaIuGOyAW/PpNlCcU9/93AHenAWYjPoAwa+G3e3to/MgFNTAEKvKDjzuCzHTnY3qqdXtx24VijzQfZ0yewZ5cwRFQaa+mIYr1uI0I76+3W4xhlvoVRwOA0Fdl64HlJnxP6T8YpX/Lga4Wv4A3ErrU5oTfN7Mu/llXMl8RXEPji/lQkN3H7qXqgC2By47EXeU/7PJ/wPxRKMnuZwIeAAAAABJRU5ErkJggg==
-
In-reply-to:
<20100604223935.6af833f3@atak.bl.pg.gda.pl>
Václav Šmilauer said: (by the date of Thu, 03 Jun 2010 21:50:52 +0200)
Oh sorry Vaclav - I didn't notice your reply!
(thread switching in ML perhaps is bad.... sorry if you feel that it
makes more mess, but now I will reply here).
> > I wish there was some flag telling the quaternion to be a UNIT
> > quaternion. The library should take care of all that normalizing.
> > After all inside its own routines it is calculating length quite
> > frequently.
> They are supposed to be unit quaternions. Exactly for that reason I
> guess Eigen _never_ computes the norm, as it is costly and it thinks it
> is more or less unit.
aha! good. It's faster!
> The case for clumps was only for for construction of quaternion
> construction from rotation matrix, normal quaternion operations (such as
> multiplication) preserve unit length, modulo numerical drift, which is
> the same for wm3.
> > Just add a check if != 1.0 and if so, then perform
> > a .normalize action.
> Contact the Eigen guys, I am sure they will be very happy with that
> optimization ;-)
heh, so we agree. I said this at least 5 times today ;-)
--
Janek Kozicki http://janek.kozicki.pl/ |
References