立即注册 登录
晓东CAD家园-论坛 返回首页

yonjay2的个人空间 http://bbs.xdcad.net/?793555 [收藏] [复制] [分享] [RSS]

日志

椭球面积计算

已有 84 次阅读2022-8-9 10:57 |个人分类:椭球面积计算| 椭球面积计算

double ParaE1 = m_de11;
double E1 = ParaE1;
// ParamA—ParamE
double ParamA = 1.0 + 0.5 * E1 + 0.375 * E1 * E1 + 0.3125 * E1 * E1 * E1 + 0.2734375 * E1 * E1 * E1 * E1;
double ParamB = 0.1666666666666666666666666667 * E1 + 0.1875 * E1 * E1 + 0.1875 * E1 * E1 * E1 + 0.1822916666666666666666666667 * E1 * E1 * E1 * E1;
double ParamC = 0.0375 * E1 * E1 + 0.0625 * E1 * E1 * E1 + 0.078125 * E1 * E1 * E1 * E1;
double ParamD = 0.0089285714285714285714285714 * E1 * E1 * E1 + 0.01953125 * E1 * E1 * E1 * E1;
double ParamE = 0.0021701388888888888888888889 * E1 * E1 * E1 * E1;


// 两点围成梯形面积
double area=0;
double lDiference = 0.0;    // 经差
double bDiference = 0.0;    // 纬差
double bSum = 0.0;          // 纬度和

// 纬差||纬度和||经差
bDiference = (B1 - B)/ 2.0;
bSum = (B1 + B) / 2.0;
lDiference = (L1 + L) / 2.0;


double ItemValue[5];
double bRadius=m_db;//WGS2000_eb;
// 按照以下计算顺序:短半径*经差*短半径
double num1 = 2.0 * bRadius * lDiference * bRadius;
double num2 = cos(bSum);
double num3 = sin(bDiference);
double d1,d2,d3,d4,d5;
d1=ItemValue[0] = num1 * ParamA * num2 * num3;
d2=ItemValue[1] = num1 * ParamB * sin(3.0 * bDiference) * cos(3.0 * bSum);
d3=ItemValue[2] = num1 * ParamC * sin(5.0 * bDiference) * cos(5.0 * bSum);
d4=ItemValue[3] = num1 * ParamD * sin(7.0 * bDiference) * cos(7.0 * bSum);
d5=ItemValue[4] = num1 * ParamE * sin(9.0 * bDiference) * cos(9.0 * bSum);
area = ItemValue[0] - ItemValue[1] + ItemValue[2] - ItemValue[3] + ItemValue[4];

路过

雷人

握手

鲜花

鸡蛋

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 立即注册

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-12-22 00:09 , Processed in 0.254600 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

返回顶部