2017-03-20 77 views
0

我想知道是否有算法或從變形立方體開始的數學函數獲取最遠頂點並將立方體重塑爲正常立方體位於最遠的頂點上。算法將變形的立方體重塑爲具有最大尺寸(最遠頂點)的法線立方體

爲了使我的問題更清楚,看看下面的圖片:

所以我先從左側變形的立方體,我想改變它,使得它看起來就像在第2個方塊對。既然頂點(2,2,3)是其中最遠的,我相信說所有其他頂點的值都應該是3作爲它們的座標是正確的,這會導致右邊的立方體?

enter image description here

要做到這一點,是沒有辦法,我可以在我的編程語言,應用現有的公式?或者我應該自己編寫一個類似於:「的循環遍歷所有頂點以找到最遠的一個,然後從這個頂點獲得最高值的x,y,zcoördinates(在這種情況下,z:3)。這個值作爲相應的X,Y,所有其他頂點

更新 的Z座標Ofcourse我知道,如果最遠的頂點具有負座標同樣要適用,但是這很容易計算出來。

+0

有兩件事:它被稱爲座標(sry爲語法納粹,但這個真的搞砸了我)。你應該首先對這種情況下最有效的手段作出明確的定義。例如。距立方體中心的距離,座標系的原點,最長對角線等。 – Paul

+0

對不起,我的錯誤,但我的母語不是英語。最遠的頂點是離原點座標系最遠的頂點。 – RazorAlliance192

回答

0

3不是尺寸,因爲您的變形立方體的中心不是(0,0,0) !!!您應該說明您需要保留的屬性

  • 大小
  • 位置
  • 方向(什麼)

有更多的方式來做到這一點,但如果你需要保留上述所有(與約束到最大尺寸) :

  1. 計算中心(平均點)
  2. 找出最大的對角線,並從中計算您的立方體的一半大小。
  3. 計算基向量

    所以只是邊緣3軸系你的辦公隔間,並設置他們正確的尺寸,也使他們利用垂直交叉產品

  4. 構建新頂點

    所以只是沿着每個基矢量以兩個方向中間部位,這就是它。如果您不需要保留輪換,則可以跳過#3並直接使用(1,0,0),(0,1,0),(0,0,1)作爲基準向量。