2012-09-03 87 views
0

Rectangle如何計算三維矩形的深度座標?

我有3D矩形,如圖所示。

這裏我知道一端的深度距離和x和y座標。基於這兩個值,我想在另一端計算座標。

爲了清晰視圖,我附加了一個屏幕。

+1

我想你會需要一些參數。你使用什麼類型的投影,視角是什麼等等? – pimvdb

+0

甚至角度也是未知的:( – flex

+0

我猜你不走運,如果你只知道二維座標,並且你想要它代表3D,那麼你需要某個維度的信息,如果你不知道其他座標如果你甚至不知道投影類型 – pimvdb

回答

2

如果您不知道二維和三維之間的關係(即使用投影公式),則無法應用深度。

這就是說,如果進行以下假設:

  • 投影型爲正交
  • 深度線被投影爲45度線
  • 45度線的長度是該一樣的,如果它是一個正常的線

...那麼你可以用畢達哥拉斯定理計算,如下所示:

Triangle

紅線是相等的(在45度線的情況下),所以:

x1 = 100 + 50 * (1/sqrt(2)) 
y1 = 50 - 50 * (1/sqrt(2)) 
+0

謝謝,它給出了正確的方向,需要找出另一端的確切座標任何想法如何將3D點轉換爲2D – flex

+0

@flex:3D思想超出了範圍,因爲您沒有en足夠的信息。 – pimvdb

+0

我試過上面的公式,x1,y1值沒有完全映射到邊緣,但是座標繪製的方向完全相同。我在這個論壇上提出了另一個問題,它可能會給出完整的想法。請看看這個http://stackoverflow.com/questions/12267839/how-to-draw-line-in-3d-rectangle-based-on-x-y-and-z – flex