0
我正在尋找使用Java找出兩個3D細分(和/或兩條3D直線)之間交集的最佳方法。Java 3D細分交叉點
對於我在通過Google查找時瞭解的內容,似乎最好的做法是使用Java3D library。
但即使使用我真的不知道如何,庫的相交類是不推薦使用的,當我通過Google尋找解決方案時,我總是最終找到一些令人困惑的代碼來解決更多的問題比我的更大的問題。
非常感謝您的幫助。
我正在尋找使用Java找出兩個3D細分(和/或兩條3D直線)之間交集的最佳方法。Java 3D細分交叉點
對於我在通過Google查找時瞭解的內容,似乎最好的做法是使用Java3D library。
但即使使用我真的不知道如何,庫的相交類是不推薦使用的,當我通過Google尋找解決方案時,我總是最終找到一些令人困惑的代碼來解決更多的問題比我的更大的問題。
非常感謝您的幫助。
個人而言,我喜歡使用Apache公共圖書館
import org.apache.commons.math3.geometry.euclidean.threed.Line;
和
import org.apache.commons.math3.geometry.euclidean.threed.Vector3D;
,你需要進口。做一個十字路口,聲明線條很簡單,只需製作一條線並做一個.intersection()
你見過「3D中兩條線之間最短的線」這一章http://paulbourke.net/geometry/ pointlineplane /? – MBo
嗯,我想我可以嘗試找到最短的線,然後如果線的長度爲0,我可以使用它的一個點來知道交點的位置。 但我試圖找到的是一個「更清晰」的方法,可能是一個由圖書館管理的方法。 但是,無論如何,謝謝你的幫助。 – user3170923
無論如何,你必須檢查線是否位於同一平面(不傾斜),即混合產品(行列式)爲零(http://en.wikipedia.org/wiki/Skew_lines),這也需要大量計算 – MBo