2016-09-30 136 views
0

我正在尋找一種算法,可以確定最佳角度(表示圓形扇區的中心),以獲得給定扇區大小的最大圓點數。查找圓的給定角度中的點的最大值

實施例:

enter image description here

  • 紅色是扇區(承認大小是已知的)。
  • 綠色是我想找的角度。
  • 黑點座標是已知的。

如果我沒有正確解釋,請提問。 感謝您的回答。

+0

可以「紅」移動嗎?或者你只是想要「綠色」?我認爲無論如何,你所要做的就是爲每一個「黑色」點找出角度並按此排序。這確實是一個一維問題。綠色將是中位數。紅色將成爲點數最多的範圍的起源 - 只是從每一點開始測試(可能有更好的方法,但它是1D) – starmole

回答

0

不,沒有固定數量的扇區。目標是找到具有最大點數的給定最大角度的扇區(以中心角度)。

我找到了解決這個問題的算法。無論如何感謝幫助。還是覺得有更有效的方式,但我不喜歡它:

  • 使用ATAN2的角度得到的角度對每個點
  • 分揀點
  • 關聯點,這是足夠接近是該行業最大角度到點檢查(使用雙循環)
  • 返回與最大關聯點的點的角度。

試過很清楚但不是很容易。如果你有些人感興趣, 可以發佈C++示例。