已知两点和弧长lisp_计算球面上两点弧长
1,三角形余弦定理
余弦定理是揭示三角形边角关系的重要定理,直接运用它可解决一类已知三角形两边及夹角求第三边或者是已知三个边求角的问题,若对余弦定理加以变形并适当移于其它知识,则使用起来更为方便、灵活。
对于任意三角形,任何一边的平方等于其他两边平方的和减去这两边与他们夹角的余弦的两倍积,若三边为a,b,c 三角为A,B,C ,则满足性质——
(注:a*b、a*c就是a乘b、a乘c 。a^2、b^2、c^2就是a的平方,b的平方,c的平方。)
a^2=b^2+c^2-2*b*c*CosA
b^2=a^2+c^2-2*a*c*CosB
c^2=a^2+b^2-2*a*b*CosC
CosC=(a^2+b^2-c^2)/2ab
CosB=(a^2+c^2-b^2)/2ac
CosA=(c^2+b^2-a^2)/2bc 平面向量证法 ∵如图,有a+b=c (平行四边形定则:两个邻边之间的对角线代表两个邻边大小)
∴c·c=(a+b)·(a+b)
∴c^2=a·a+2a·b+b·b∴c^2=a^2+b^2+2|a||b|Cos(π-θ)
(以上粗体字符表示向量)
又∵Cos(π-θ)=-CosC
∴c^2=a^2+b^2-2|a||b|Cosθ(注意:这里用到了三角函数公式)
再拆开,得c^2=a^2+b^2-2*a*b*CosC
同理可证其他,而下面的CosC=(c^2-b^2-a^2)/2ab就是将CosC移到左边表示一下。
2,利用三角形余弦定理求解两点之间的弧度
如图,先假设球的半径为R,所给定的2点为A,B两点,先假设A在北半球,B在南半球。
(这只是其中的一种情况,至于其它的情况可以同样的方法计算出,仅仅是大同小异而已。当然,还有特殊情况也不能忘了哦。)
假设球心为点O,那么最后得到的∠AOB的弧度乘以球的半径R即为所求的球面距离。
设经过球的南极和北极的极点的直线为l,分别过点B、A作l的垂线,设垂点分别为D、C。
过点B作线BC的平行线BE,过C作BD的平行线CE,这两条平行线必定相交,交点为E,容易证明BDCE是一个矩形,
同时,因为BE垂直AC且垂直EC,所以三角形AEB为直角三角形。 由于A、B点的经纬度已知,所以∠OBD和∠OAC也已知,
设分别为β,α,由于半径R已知,
所以|BD| = R * cosβ,|AC| = R * cosα,|OD| = R * sinβ,|OC| = R * sinα。
由于点A、B的经度已知,所以不难求出∠ACE的值。所以三角形ACE中不难用余弦定理求出|AE|的值。
在直角三角形ABE中,容易求出AB的值。此时三角形AOB三条边都已知,所以∠AOB也可以用余弦定理求出来。
已知两点和弧长lisp_计算球面上两点弧长相关推荐
- php 计算两点时间距离,PHP计算地球上两点之间的距离(示例详解)
给定经度和纬度,求地球上两点之间的距离.首先我们需要了解该问题的解决思路,然后再用PHP代码来实现计算. 此问题可以用半正矢(haversine)公式求解: 大圆距离或正交距离是球面(或地球表面)上两 ...
- 计算球面上任意两点间的球面距离(C++实现)
文章目录 1 预备知识 2 原理描述 3 代码实现 1 预备知识 在求解此问题之前首先要明确一下几点: (1)两点间的球面距离: 球面上两点间的最短距离,即球心与球面上两点所确定的平面与球面相交,得到 ...
- 已知点的经纬度坐标计算/读取DEM高程信息/海拔高度
已知点的经纬度坐标计算/读取DEM高程信息/海拔高度 思路 环境 依赖 安装GDAL 安装依赖包 测试GDAL 数据依赖 python代码 参考 思路 实现条件 1.GDAL库 2.DEM数据 开发语 ...
- 根据经纬度计算地球上两点之间的距离——Haversine公式介绍及计算步骤
目录 摘要 1.半正矢公式(Haversine Formula)介绍 2.半正矢公式应用 3.半正矢公式计算 3.1 主要思路 3.2 计算步骤 3.2.1 平面向量计算方法 3.2.2 空间向量计算 ...
- php 地图两点距离计算,计算地图上两点间的距离PHP类
计算地图上两点间的距离,使用的是谷歌地图 class GeoHelper { /** * @param int $lat1 * @param int $lon1 * @param int $lat2 ...
- 给定经纬度计算距离_根据经纬度计算地球上两点之间的距离js实现代码
利用JS实现的根据经纬度计算地球上两点之间的距离 最近用到了根据经纬度计算地球表面两点间距离的公式,然后就用JS实现了一下. 计算地球表面两点间的距离大概有两种办法. 第一种是默认地球是一个光滑的球面 ...
- python 计算流形上两点之间的测地距离
在分析数据时,有时要计算流形上两点之间的测地距离.本着有现成轮子绝对不自己写的观点,发现可以通过以下方式计算流形上任意两点之间的测地距离. ISOMAP是一种保持测地距离不变的高维空间中低维流形的降维 ...
- 已知液面高度怎么计算圆形管道内液体截面积(圆弧面)的方法成都仪器开发
沙鸥 成都 这是一个流量测量计算测试设备的工程应用,假设一根大口径的圆形管道,在管道顶部安装了一个距离传感器,能检测液面距离顶部的距离,那么怎么计算管道内的流量呢? 根据流量公式Q=S.V,其中Q为流 ...
- 怎么计算管道的大小C语言,已知液面高度怎么计算圆形管道内液体截面积(圆弧面)的方法...
沙鸥成都 1.PNG (30.65 KB, 下载次数: 6) 2019-11-6 19:54 上传 这是一个流量测量计算测试设备的工程应用,假设一根大口径的圆形管道,在管道顶部安装了一个距离传感器,能 ...
最新文章
- SQL SERVER数据库中的数据类型 转
- 复杂查询练习_数据分析之路——复杂查询(4)
- linux cat 命令详解--转
- 关于SVN Server自助修改密码详细教程
- scala通过mkString方法把一个集合转化为一个字符串
- Thunderspy: 7个硬件漏洞,影响9年来所有安装 Thunderbolt 的电脑
- Zero Shot | 一文了解零样本学习
- HTML兼容IE版本问题
- 源码分享—《Java多线程编程核心技术》源码,Java多线程编程核心技术源码 略微有改动。
- vue+flv.js实现视频播放
- 搜狗输入法怎样使用自定义短语
- 多旋翼飞行器设计与控制·绪论(笔记001)
- 解决安装 ISE14.7 Windows10 时出错
- Google-admob广告变现
- 最短路径(迪杰斯特拉、弗洛伊德含代码)
- MFC中CreateCompatibleDC的作用
- 安装python+selenium
- 企业WiFi安全管家有何好处?数据安全最重要
- 猜灯谜、送福字 广西高速“返乡路”上年味浓
- 默沙东将向中国癌症基金会捐赠捐赠6万支HPV疫苗;勃林格殷格翰在成都投建德国金标准卒中康复中心 | 医药健闻...