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. 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 ?). Best regards, Yannick TANGUY CNES - DCT/SB/SP - SIRIUS Project Product Owner for the core libraries --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org