1. 程式人生 > >3D場景鼠標點選擇物體

3D場景鼠標點選擇物體

距離 獲得 點雲 計算 根據 函數 針對 排序 鼠標

對於以下幾種選擇:

(1)點雲;

(2)線框;

(3)網格;

針對以上準備三個函數:

(1)獲取點和線段最短距離函數;

(2)獲取線段和線段最短距離函數;

(3)獲取三角面片和線段最短距離函數;

算法:

(1)2D鼠標點轉換為遠近平面上的鼠標點,獲得鼠標線段;

(2)通過計算獲得所有與鼠標線段距離在一定範圍內的點、線段或網格;

(3)根據點、線段或網格距離近平面鼠標點的距離排序,取最近的那個,即為選中物體。

3D場景鼠標點選擇物體