Has anyone ever done quaternion conversions in Python or Dynamo? I’d like to use a known Point A with x,y,z and quaternion values like a=“0.0375994810” b=“0.6464504909” c=“0.7607432138” d=“0.0442470853” to establish a Vector from that point.
1 Like
did you find a solution?
maybe something like that?:
// inside quaterion class
// quaternion defined as (r, i, j, k)
Vector3 rotateVector(const Vector3 & _V)const{
Vector3 vec(); // any constructor will do
vec.x = 2*(r*_V.z*j + i*_V.z*k - r*_V.y*k + i*_V.y*j) + _V.x*(r*r + i*i - j*j - k*k);
vec.y = 2*(r*_V.x*k + i*_V.x*j - r*_V.z*i + j*_V.z*k) + _V.y*(r*r - i*i + j*j - k*k);
vec.z = 2*(r*_V.y*i - r*_V.x*j + i*_V.x*k + j*_V.y*k) + _V.z*(r*r - i*i - j*j + k*k);
return vec;