我試過看過關於這個話題的所有其他文章,但是我沒有找到任何東西。我的問題是,如果給定矩形的四個角點,我怎麼能夠找到任何位於矩形內部或矩形上的點,而不管它是否旋轉。我的目的是,我有一個數組代表一個地圖,每個索引代表一個點位置,我希望能夠在這個地圖上放置一個矩形並填充它覆蓋的任何點。如果可以提供僞代碼以及數學,我將不勝感激。我熟悉java和RBX.Lua查找矩形內的所有點?
0
A
回答
0
只是谷歌「填充矩形算法」,你會發現很多的解決方案和例子。
一個簡單的方法:
爲了您的光柵(圖像)的每一行(或列),計算與矩形的交叉點。
這會給您留下一套您必須填寫的時間間隔。
也許讀這也有助於http://fivedots.coe.psu.ac.th/~montri/Teaching/240-422/filling1.pdf
0
我不知道如果這是你在找什麼...
但仍然是一個簡單的方法來解決這個問題將是,連接四點使用線條繪製算法並應用簡單的填充填充或邊界填充算法。
注意:所有這些算法都屬於計算機圖形學。 同樣,這種技術比逐個填充內點要快得多,同時也消除了矩形外點的計算。
在應用填充之前,您必須使用畫線算法繪製邊界線並將邊界值設置爲newcol(newcolour),然後可以使用下面的填充算法。
void floodfill(int x,int y,int old,int newcol)
{
int current;
//assign current with the color of x,y point
if(current==old)
{
//assign x,y point with newcol
floodfill(x+1,y,old,newcol);
floodfill(x-1,y,old,newcol);
floodfill(x,y+1,old,newcol);
floodfill(x,y-1,old,newcol);
}
}
您可以用上面的方法,你只需要通過矩形老色是用新的顏色替換的任何內部點(X,Y)。 假設顏色值是您提到的數組中的整數值。
0
使用Point-In-Polygon(Java sample code)來檢查點的區域內或沒有。對於你的情況,該區域是一個矩形。如果有多個點,需要循環並逐點檢查。
相關問題
- 1. 在矩形上查找點
- 2. 矩形內的點
- 3. 查找所選矩形的座標pdf
- 4. 找到所有點四邊形(不是矩形)
- 5. 查找矩形包含矩形數組中的點
- 6. 獲取矩形的所有頂點
- 7. 在凹/凸多邊形內部查找有界矩形
- 8. 查找線段矩形交點
- 9. 查找包含空間中所有點的最大空矩形的集合
- 10. 給出一個矩形列表,如何找到完全包含在其他矩形內的所有矩形?
- 11. 從不在矩形中間的點以角度查找矩形邊界點
- 12. 如何找到交點矩形(點)的交錯矩形
- 13. 查找矩陣的所有下標
- 14. 點是內圓角矩形?
- 15. 如何查找矩形周長到給定點的最近點?
- 16. 查找矩形中心
- 17. 給定左上角和右下角的點,如何找到矩形內的所有點?
- 18. 查找具有條件的矩形中的最大正方形
- 19. 在PostGIS中,如何查找多邊形中的所有點?
- 20. 找到一個旋轉的矩形內的一個點
- 21. 查找另一個表格內的所有多多邊形
- 22. 查找給定矩陣的所有子矩陣
- 23. 如何找出給定的點是否在矩形內
- 24. 找出矩形內的長/長
- 25. 找到具有特定屬性的所有矩形區域以矩陣
- 26. 在Python中檢查矩形內的矩形
- 27. 查找圓的內部矩形的大小
- 28. 旋轉矩形內的幾個點
- 29. 矩形約束沒有內
- 30. 添加矩形以獲得所有矩形邊界的方法
可能的重複http://stackoverflow.com/questions/17136084/checking-if-a-point-is-inside-a-rotated-rectangle。 – lhf