代码拉取完成,页面将自动刷新
#define MAXTN 10000 /* 查表最大数字 */
float sRoot[MAXTN+1]; /* Square root,平方表 */
float J2SX[3601];
float J2SY[3601];
void initAME()
{
ifstream inf;
/* 读取开方表 */
inf.open( ".\\calcF\\sRootTable" );
int n = 0;
for(n=0; n<=MAXTN; n++) {
inf >> sRoot[n];
}
inf.close();
//读取J2S表
inf.open( ".\\calcF\\J2STable" );
for(n=0; n<=3600; n++) {
inf >> J2SX[n]>>J2SY[n];
}
inf.close();
}
#define R2AW 57.295779513082
inline void J2DtoS2D(float& x,float& y,float r,float l)
{
int a=r*R2AW*10;
a%=3600;
if(a<0) a+=3600;
x=J2SX[a]*l;
y=J2SY[a]*l;
}
#undef R2AW
//判断点3是否在线段12上
inline bool PIL(int x1,int y1,int x2,int y2,int x3,int y3)
{
VECTOR3D v1,v2,v3;
v1.x=x1;
v1.y=y1;
v2.x=x2;
v2.y=y2;
v3.x=x3;
v3.y=y3;
return ((v3-v1)*(v2-v1)==0&&x1<=x3&&x2>=x3&&y1<=y3&&y2>=y3);
}
//投影
//基础投影
inline void perPro(float x,float y,float z,float& px,float& py,float maxvl)
{
px=maxvl*x/z;
py=maxvl*y/z;
}
//计算完全位于xy平面的线段在不同深坐标时的长度
inline float perProLen(float z,float len,float maxvl)
{
float x1,x2;
x1=0;
x2=len;
perPro(x1,0,z,x1,len,maxvl);
perPro(x2,0,z,x2,len,maxvl);
return fabs(x1-x2);
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。