static Vect3 equator_map_inv(const Vect3& ref, const Vect3& p) { Vect3 xmult = ref.Hat(); Vect3 ymult = vect3_orthog_toy(ref).Hat(); Vect3 zmult = ref.cross(vect3_orthog_toy(ref)).Hat(); Vect3 xmultInv = Vect3(xmult.x, ymult.x, zmult.x); Vect3 ymultInv = Vect3(xmult.y, ymult.y, zmult.y); Vect3 zmultInv = Vect3(xmult.z, ymult.z, zmult.z); return Vect3(xmultInv.dot(p), ymultInv.dot(p), zmultInv.dot(p)); }
static Vect3 equator_map(const Vect3& ref, const Vect3& p) { Vect3 xmult = ref.Hat(); Vect3 ymult = vect3_orthog_toy(ref).Hat(); Vect3 zmult = ref.cross(vect3_orthog_toy(ref)).Hat(); return Vect3(xmult.dot(p), ymult.dot(p), zmult.dot(p)); }