2012-10-04 52 views
1

enter image description here我創建了一個形狀。這將是一個房間。檢測動作腳本3中物體的最近線條

這裏是代碼:

 room = new Sprite(); 
     room.graphics.beginFill(0xFFFF00, 1); 
     room.graphics.moveTo(0, 0); 
     room.graphics.lineTo(0, 500); 
     room.graphics.lineTo(500, 500); 
     room.graphics.lineTo(500, 250); 
     room.graphics.lineTo(300, 250); 
     room.graphics.lineTo(300, 0); 
     room.graphics.endFill(); 
     addChild(room); 

和我在中間的紅色矩形。我想知道哪個牆和兩個點靠近這個矩形。例如:在此屏幕截圖中,最左邊的牆是最近的。

謝謝

回答

3

這不是一個動作問題。你只需要一個算法。

簡單的解決方案:找到對象的中心,然後使用任何行距離算法可以找到這個中心點到所有房間邊緣的距離。

例如這樣的:Shortest distance between a point and a line segment

+1

我想補充一點,才能夠檢查你的房間,紅色矩形,你需要把它作爲存儲,然後你就可以通過運行和比較點的集合。 –