点之间的笛卡尔XY轴承.Net

Posted

技术标签:

【中文标题】点之间的笛卡尔XY轴承.Net【英文标题】:Cartesian XY bearing between points .Net 【发布时间】:2012-11-03 16:08:31 【问题描述】:

我正在寻找一种方法来计算一个绘图点、像素或屏幕坐标与另一个的方位角或方位角 (0-360°)。

我目前有它的距离部分,并且在我上学的时候数学不是最喜欢的科目,我正在寻求帮助。

我见过很多计算经纬度距离和方位的例子,但我只想计算屏幕坐标。稍后,我会将这些转换为纬度/经度。

屏幕坐标起源于 (0,0) 的顶部/左侧,所以我知道这一点。我还需要能够用鼠标移动“原点”。这是我已经可以轻松做到的事情。部分问题是我是否必须将这些点转换为正确的笛卡尔点(即点的负值“南”和“西”或“下”和“左”的原点?

【问题讨论】:

How to calculate the angle between two points relative to the horizontal axis?的可能重复 感谢 Peter O,这是迄今为止最有用的发现。由于这给出了相对于水平轴的角度,有没有办法修改代码,使 0 或 360 是原点的“北”?我猜另一种方法是加或减 90° How to calculate the angle between a line and the horizontal axis?的可能重复 【参考方案1】:

类似于 arctan( (x2-x1)/(y2-y1) )

【讨论】:

以上是关于点之间的笛卡尔XY轴承.Net的主要内容,如果未能解决你的问题,请参考以下文章

齐次坐标

Go 语言: 极坐标与笛卡尔坐标的互转

基于笛卡尔坐标点积的算法计算地理距离

生成笛卡尔积的两个表之间的连接

两个 SELECT 语句之间的 MySQL 笛卡尔积

对属于同一对象的一组点进行卡尔曼滤波器?