如何簡單判斷乙個點是否在某個區域之中

2021-08-19 15:13:04 字數 615 閱讀 6541

具體原理:射線法(但是本人也並不是很理解為什麼在某個區域內則會說交點為奇數個,不過通過畫圖的確沒法畫出那種情況)

下面是本人根據理解寫的**,有問題歡迎批評指正

public boolean isinregion(point p, listboundary) 

} int count = 0;

point p1;

point p2;

int x1, y1, x2, y2;

for (int i = 0; i < size; i++)

if (p.gety() < math.min(y1, y2))

if (p.gety() > math.max(y1, y2))

int x = x2 - ((x2 - x1) * (y2 - p.gety()) / (y2 - y1));

// 這裡考慮往x正方向做射線

if (x < p.getx())

count++;

} //如果是奇數則說明該點在區域之中

return count % 2 == 1;

}

具體應用的話:像判斷乙個建築物屬於哪乙個城市,行政區或是街道的話應該都能使用

iOS開發 判斷乙個點是否在某個區域

ios有時候需要判斷是否touch到某個圖的區域中。也就是touch到的這個點是否在某個圖的區域範圍內。解決問題的辦法很多,這裡簡單介紹一種。我們可以通過cgpath建立乙個區域,區域是由路徑做兩點間線段並閉合成的區域,然後就可以用cgpath相關函式cgpathcontainspoint判斷點是否...

Halcon判斷乙個點是否在某個區域內

halcon判斷乙個點是否在某個區域內,如果在區域內,選取該區域 draw rectangle1 3600,row1,column1,row2,column2 gen rectangle1 rectangle,row1,column1,row2,column2 partition dynamic r...

判斷乙個點是否在RotatedRect中

opencv函式pointpolygontest c double pointpolygontest inputarray contour,point2f pt,bool measuredist 用於判斷乙個點是否在輪廓中 當measuredist設定為true時,若返回值為正,表示點在輪廓內部,返...