navigati.h
来自「eC++编译器源码」· C头文件 代码 · 共 35 行
H
35 行
#pragma Navigation
typedef enum {North, South, East, West} Compass;
double Radius(double new /*in NMI*/); /*old*/
void GreatCircle(double latitude, double longitude, double lat2, double long2, /*all in radians*/
double &distance /*NMI*/, double &course /*radians*/);
void RhumbLine(double latitude, double longitude, double lat2, double long2, /*all in radians*/
double &distance /*NMI*/, double &course /*radians*/);
void WhereTo(double originLat, double originLong, double course, double distance,
double &latitude, double &longitude /*destination*/);
double CircleErr(double latitude, double longitude, double lat2, double long2, double errLat, /*all in radians*/
double errLong); /*NMI, right positive*/
double LineErr(double latitude, double longitude, double lat2, double long2, double errLat, /*all in radians*/
double errLong); /*NMI, right positive*/
void LatToDeg(double latitude, /*in radians*/
double °rees, double &minutes, double &seconds, Compass &c);
void LongToDeg(double longitude, /*in radians*/
double °rees, double &minutes, double &seconds, Compass &c);
double LatToRad(double degrees, double minutes, double seconds, Compass c);/*radians*/
double LongToRad(double degrees, double minutes, double seconds, Compass c);
/* If type = LAT
* The entire value must be in the range: [-90, 90].
* The degrees field must be in the range [0, 90].
* If type = LON
* The entire value must be in the range: [-180, 180].
* The degrees field must be in the range [0, 180].
*
* If there is a minutes field, it must be in the range [0, 60).
* If there is a seconds field, it must be in the range [0, 60).
*/
void Output(double latLong, /*in radians*/ boolean latitude,
char format[], char &output[], unsigned int position, unsigned int width);
double Input(Compass &c, char format[], char &output[],
unsigned int &position);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?