我試過看過關於這個話題的所有其他文章,但是我沒有找到任何東西。我的問題是,如果給定矩形的四個角點,我怎麼能夠找到任何位於矩形內部或矩形上的點,而不管它是否旋轉。我的目的是,我有一個數組代表一個地圖,每個索引代表一個點位置,我希望能夠在這個地圖上放置一個矩形並填充它覆蓋的任何點。如果可以提供僞代碼以及數學,我將不勝感激。我熟悉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. 查找所選矩形的座標pdf
- 3. 查找矩形包含矩形數組中的點
- 4. 在凹/凸多邊形內部查找有界矩形
- 5. 給出一個矩形列表,如何找到完全包含在其他矩形內的所有矩形?
- 6. 從不在矩形中間的點以角度查找矩形邊界點
- 7. 給定左上角和右下角的點,如何找到矩形內的所有點?
- 8. 查找具有條件的矩形中的最大正方形
- 9. 在PostGIS中,如何查找多邊形中的所有點?
- 10. 找到一個旋轉的矩形內的一個點
- 11. 找出矩形內的長/長
- 12. 旋轉矩形內的幾個點
- 13. 查找圓的內部矩形的大小
- 14. 添加矩形以獲得所有矩形邊界的方法
- 15. 如何查找圖像中矩形的角點座標
- 16. 如何查找直線和矩形之間的交點?
- 17. 查找點是否與旋轉的矩形相交?
- 18. 在給定角度的矩形上查找點
- 19. 在三維座標系中查找矩形中的角度點
- 20. 另一個點30m以內選擇矩陣中的所有點
- 21. 查找旋轉矩形的邊角
- 22. 矩形內最大的空矩形
- 23. 另一個矩形內的矩形
- 24. 鉗矩形內較大的矩形
- 25. 如何查找實際內容的CStatic(文本)邊界矩形?
- 26. 如何查找所有圖形卡? C#
- 27. 算法..查找最接近的相鄰矩形..在所有4個方向上
- 28. 查找飛機上的所有點
- 29. 查找所有線段的交點
- 30. 查找路徑上的所有點AS3
可能的重複http://stackoverflow.com/questions/17136084/checking-if-a-point-is-inside-a-rotated-rectangle。 – lhf