【发布时间】:2011-05-05 21:25:37
【问题描述】:
我在这件事上花了这么多小时,我感觉我的理智在慢慢滑落。因此,任何帮助将不胜感激。 我会尽量简洁。
我在 2D 平面上有一个圆。我知道它的中心点(C)和半径(R)的笛卡尔坐标。
我的困惑源于这个问题。当在圆外的平面上提供一个点时;我可以计算最接近该点的圆周上的点(P)。
我想要做的是确定圆周上 2 个点的 (x,y) 坐标。我们称它们为 P1 和 P2。 P1和P2是圆弧的两端。弧的长度是固定的(X)。 P 是 P1 和 P2 之间的中点。因此,P 到 P1 和 P 到 P2 的弧长都是 X/2。
简而言之: 给定 C、R、P、X;我需要计算 P1 和 P2。
我正在尝试用 c++ 编写代码,但任何建议或伪代码都会很棒。
编辑: X 是弧长,不是 P1 和 P2 之间的直线
【问题讨论】:
-
下面的一些例子怎么样:codeproject.com/KB/recipes/Wykobi.aspx 它们非常高效且有点优雅,寻找“从外部点到圆上的最近点”和“圆切线段”
标签: c++ c trigonometry geometry geometric-arc