测试点是否在断开的椭圆上

时间:2015-03-02 07:33:49

标签: c# geometry

我有一个"破坏"椭圆:

enter image description here

让我们说如果我用参数形式表示这个椭圆:

x = h + a cos (t)
y = k + b sin (t)

并且我知道被切断的点的值t (t1, t2)

如何测试点是否位于此椭圆上? (意思是如果该点位于截止区域,则不被认为是真的)

重新排列等式,我尝试使用acos(x)方法,但它不起作用,因为它不包括PI。使用atan2(x,y)解决t也不起作用,因为t = 90 degrees可能存在奇点。

1 个答案:

答案 0 :(得分:0)

创建一个你想要的椭圆,(我相信c#支持了形状)并测试它是否在椭圆上。如果是这样,那么测试它是否在给定y值的两个点之间绘制的线的良好一侧。您没有给我们使用代码,因此这是我们能做的最好的。