如何用代數運算判斷點與矩形的位置關係

時間 2021-09-01 23:08:11

1樓:電燈劍客

如果你事先知道矩形的邊和座標軸平行,那麼可以

x_l = min(x1,x2,x3)

x_r = max(x1,x2,x3)

y_l = min(y1,y2,y3)

y_r = max(y1,y2,y3)

然後用x_l<=x<=x_r, y_l<=x<=y_r來判斷點是否在矩形內(包含邊界)

如果事先不知道矩形的邊是否和座標軸平行,那麼要略微麻煩一點,下面是一種做法

記p=(x,y), p1=(x1,y1), p2, p3類似

首先,你要確定已知的三個頂點構成的三角形裡哪個是直角頂點(算一下哪條邊最長),這裡不妨設p2是直角頂點

然後可以由此可以算出第四個頂點p4=(x4,y4)=(x1+x2+x3-2*x2,y1+y2+y3-2*y2)

接下來可以算一下四個三角形的面積和|pp1p2|+|pp2p3|+|pp3p4|+|pp4p1|,這裡不要用有向面積,直接把絕對值算出來(三角形面積可以用行列式來算)

再和矩形面積比較一下,如果一樣大則表示p在矩形內(含邊界),否則四個三角形的面積和總會大於矩形面積

如果還想判斷p是否在邊界上,只要看四個三角形的面積裡是否出現過0就行了

2樓:匿名使用者

1、由矩形的4個頂點得到矩形4條邊的直線方程。兩組平行的直線。

y1=k1x+b1

y2=k1x+b2

y3=k2x+b3

y4=k2x+b4

2、設需要判定的點p座標為(x,y)。計算y-k1*x和y-k2*x如果y-k1*x的值在b1和b2之間,且y-k2*x的值在b3和b4之間,則p在矩形內;

否則p在矩形外。

特殊情況下矩形的邊與所選取座標軸平行。邊直線方程為:

y1=b1

y2=b2

x1=b3

x2=b4

此時如果y的值在b1和b2之間,且x的值在b3和b4之間,則p在矩形內;

否則p在矩形外。

如何判斷一個點在一個矩形裡邊,一直點和矩形的座標點位置。

3樓:匿名使用者

設矩形復的左上角的點坐

制標為(x1, y1),右下角的點bai座標為(dux2,y2),需要判斷的點坐zhi標為(x0, y0).

判斷點(x0, y0)是dao

否在矩形內,只需要做如下判斷:

if(x0 > x1 && x0 < x2 && y0 > y1 && y0 < y2)

如何判斷一個點在矩形範圍內 unity

4樓:

1,給這個矩形增加一個同尺寸的cube碰撞體,用ontriggerenter函式判斷物品是否在碰撞體內,相當於判斷物體是否在矩形範圍內

2,用unity座標來判定

這2個是最簡單的辦法

如何判斷點火線圈必須更換了啦,怎樣判斷點火線圈該換了

一點火線圈是由主線圈,次級線圈,磁芯,開關三極體及其他輔助原件組成,主線圈由電瓶充電,次級線圈放電火花塞點火,三極體負責開關。充電時間由電瓶電壓和發動機轉速控制,確保每次充電能量一致,點火線圈有3線和4線兩種,3線為電源正,負,開關控制 ecu指令 4線多了一條點火檢測線,能夠檢測火花塞是否點火,次...

平面如何判斷點在哪三角形內,平面如何判斷點在哪一個三角形內

披著人皮的神 放在座標系中解決 設 abc頂點為a,某點m設a x1,y1 b x2,y2 c x3,y3 m x0,y0 若有向量am 向量ab 向量ac 且滿足0 1即滿足題意。為常數 在工程製圖中,如何判斷一個點是否在三角形上 1,在三角形平面內,作過該點的輔助直線。2,求出輔助線的另一面投影...

抽象代數 怎麼判斷奇置換,如何理解抽象代數中的「置換」

數學好玩啊 看每個因子k迴圈可以用k 1個交換表示,所以前者可以用3 2 5個交換表示,為奇置換 後者可用2 1 1 4個交換表示,為偶置換 如何理解抽象代數中的 置換 數學好玩啊 就是某個集合上的一一對應全體,一個對應就是一個置換。特別地,對階為n的有限集a,所有置換有n 個 就是一個對映,把集合...