2010-12-15 41 views
2

我正在處理用戶通過單擊3d空間中的圖標導航的項目。當用戶使用其中一個圖標時,攝像機應該平移和縮放,以便所選圖標以其原始高度和大小出現在屏幕中央(這是在圖標上創建2D疊加時的情況,同樣大小的3D對應計算視圖中3D對象的渲染大小

我的問題是如何計算的大小渲染對象在三維視圖中,我要指出,這是使用Alternativa 3D平臺。

所以這是一個攝像頭,在(。 x1,y1,z1),視場角爲f,指向(x2,y2,z2)的圖標,所有圖像都在維度w和h的視圖中呈現,這是我努力想出來的任何東西,任何幫助將不勝感激。

+0

以及使用BitmapData繪製3D對象投影並通過getPixel獲取其大小和形狀? – www0z0k 2010-12-15 00:45:09

+0

您是否可以取消投影視圖或以其他方式獲取對象的(世界或對象相對)邊界框?這通常是正確的做法。 – MrGomez 2010-12-15 01:27:45

+0

如果在舞臺上繪製對象,應該可以對它進行截圖。截圖截圖時,3d對象應該變成白色,剩下的部分變成黑色。並且計算白色區域的大小,位置和形狀將會相當容易。 **順便說一句 - 你的3D物體是如何塑造的?** – www0z0k 2010-12-15 02:19:22

回答

0

我在另一個論壇上找到了答案,我真正想要的是如何獲得一個3d對象以1:1的大小比例在視圖中呈現。

我曾遇到的計算公式3D相機的焦距:

F = d /黃褐色(FOV/2)

其中d是一個一半的視圖高度的平方根^ 2 + width^2

F的值是攝像機距離物體應該以1:1大小呈現的距離。

希望這會有所幫助!