2017-03-20 41 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)作为基准向量。