📄 vector.h
字号:
#ifndef vector_h
#define vector_h
#include <iostream>
#include <math.h>
using namespace std;
//矢量球坐标系数据结构
typedef struct
{
double R;
double thinc;
double phinc;
}doubleVector;
//矢量直角坐标系数据结构
typedef struct
{
double x;
double y;
double z;
}doublexyzVector;
//////////////////////////////////////////////////////////////////////
//
// 坐标转化和矢量运算
//
//////////////////////////////////////////////////////////////////////
doubleVector Vectorset(double r,double thinc,double phinc);
doublexyzVector RTPtoXYZ(doubleVector r); //将球坐标转化为直角坐标
doubleVector XYZtoRTP(doublexyzVector x); //将直角坐标转化为球坐标
doublexyzVector XYZadd(doublexyzVector x,doublexyzVector y); //两矢量相加
doublexyzVector RTPsub(doubleVector rise,doubleVector end); //两矢量相减
doublexyzVector XYZsub(doublexyzVector x,doublexyzVector y); //两矢量相减
doublexyzVector XYZmult(double c,doublexyzVector); //矢量乘常数
doublexyzVector XYZVMult(doublexyzVector X,doublexyzVector Y); //矢量杈乘
double dotmult(doubleVector X,doubleVector Y); //矢量点乘
double XYZdotmult(doublexyzVector x,doublexyzVector y); //直角坐标系矢量点乘
doublexyzVector Enxyz(doublexyzVector X); //求直角坐标系中某矢量的单位矢量
doubleVector En(doubleVector X); //求球坐标系中某矢量的单位矢量
double MO(doublexyzVector x); //矢量的模
double area(doubleVector A,doubleVector B,doubleVector C); //三角形的面积
void printdoubleVector(doubleVector r); //显示点的球坐标系的参量
void printdoublexyzVector(doublexyzVector r); //显示点的直角坐标系的参量
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -