将x,y,z转换为航向和角度

时间:2019-05-26 18:12:27

标签: c++ math

我的数学不是很好。

我正在使用以下代码将航向和角度转换为x,y,z坐标。

double x  =-((1000/std::tan(DEG_TO_RAD(angle)))*std::sin(DEG_TO_RAD(heading)))/std::sqrt(std::pow(1000,2)+std::pow(((1000/std::tan(DEG_TO_RAD(angle)))*std::cos(DEG_TO_RAD(heading))),2)+std::pow(((1000/std::tan(DEG_TO_RAD(angle)))*std::sin(DEG_TO_RAD(180-heading))),2));
double y = (1000/std::sqrt(std::pow(1000,2)+std::pow(((1000/std::tan(DEG_TO_RAD(angle)))*std::cos(DEG_TO_RAD(180-heading))),2)+std::pow(((1000/std::tan(DEG_TO_RAD(angle)))*std::sin(DEG_TO_RAD(180-heading))),2)))*(angle/std::sqrt(std::pow(angle,2)));
double z =-((1000/std::tan(DEG_TO_RAD(angle)))*std::cos(DEG_TO_RAD(180-heading)))/std::sqrt(std::pow(1000,2)+std::pow(((1000/std::tan(DEG_TO_RAD(angle)))*std::cos(DEG_TO_RAD(180-heading))),2)+std::pow(((1000/std::tan(DEG_TO_RAD(angle)))*std::sin(DEG_TO_RAD(180-heading))),2));

我现在想做相反的事情,甚至有可能

0 个答案:

没有答案