| 55 | |
| 56 | |
| 57 | Xyz rotate(const Xyz& point, const RotationMatrix& matrix) |
| 58 | { |
| 59 | return Xyz( |
| 60 | matrix.m00 * point.X + matrix.m01 * point.Y + matrix.m02 * point.Z, |
| 61 | matrix.m10 * point.X + matrix.m11 * point.Y + matrix.m12 * point.Z, |
| 62 | matrix.m20 * point.X + matrix.m21 * point.Y + matrix.m22 * point.Z); |
| 63 | } |
| 64 | |
| 65 | |
| 66 | Xyz cartesianToCurvilinear(const Xyz& point, double latitude) |