我有一個三角形網格的表面描述。我還有一個位於表面之外的點P.我怎樣才能找到最接近P的表面上的點?三角形網格上的最近點
我知道如何找到最近的頂點,但最接近的點可能是頂點之間。我也想過做一個光線追蹤,但這並不總是奏效,因爲我不知道方向。
我有一個三角形網格的表面描述。我還有一個位於表面之外的點P.我怎樣才能找到最接近P的表面上的點?三角形網格上的最近點
我知道如何找到最近的頂點,但最接近的點可能是頂點之間。我也想過做一個光線追蹤,但這並不總是奏效,因爲我不知道方向。
找到從這個點到每個三角形的最小距離,並找到它們的最小最小距離是唯一的方法。如果你有很多點來尋找離三角形網格最近的距離(這個網格又可能包含很多很多的三角形),這種蠻力法在計算上會非常昂貴。如果你有多個點,我建議首先爲你的三角形網格創建一個八叉樹。這將加快最小距離計算(多點)。
我找不到任何內置於matlab的內容,但是我找到了可能對您有幫助的說明/視頻。希望別人能找到更有用的東西,如果這還不夠的話。該網站是here。
看起來它必須是一個交互式解決方案。如果鏈接本身沒有幫助,那麼該鏈接中留下了一些可能有用的評論。
希望這會有所幫助。
您可以最小化到這個question中討論的每個三角形的距離。
一種可能性是使用用戶貢獻從FileExchange: