Hello. > In project SIRIUS (CNES), we would like to slightly modify the Rotation > class so it can fit our needs, and to create an independant Quaternion > class. > > - Quaternion : We need to separate these two notions : the quaternion > and the rotation representation, because we have to be able to access > directly to a quaternion as a mathematical object, not only as a > rotation quaternion. > > - Rotation : > - We would like to base the rotation upon the new Quaternion object. > - We would like to use the CCSDS convention (the same as ESA projects) > for the rotation quaternion : > if Q represents a rotation, applied to a vector X giving the > vector X', we have : X' = Q.X.Qt (Qt = conjugate(Q) ). > -> As the actual rotation (based upon 4 double q1/2/3/4) does not use > this convention, we propose to modify the getters/setters (getQi / > setQi) to preserve compatibility and to add a getQ that returns a > quaternion compliant with CCSDS convention. > > This feature can be summed up in 3 points : > - create a Quaternion class (mathematical object) > - modify the Rotation class to use this quaternion, with the CCSDS > convention > - modify the actual methods in Rotation class to preserve compatibility > > The Quaternionn class should be placed in the geometry.euclidian.threed > package.
I'd propose to put it in the "complex" package. It would thus stand out as a mathematical concept of its own, as you suggest above. > Thanks in advance for your advice about this feature. Please also tell > us the best way to communicate on such features (mailing list or/and bug > tracker ?). > Regards, Gilles --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org