【发布时间】:2012-06-28 22:42:24
【问题描述】:
我目前正在尝试用 java 制作一个方向计算器,但在旋转各种对象时遇到了一些麻烦。
假设我们有一个具有初始位置的立方体,并且它的每个顶点都是已知的(以及它的中心)。然后立方体从 Y 轴 上的初始位置旋转 angley 弧度(或度数,它不会't matter) 并且在 X 轴 上,弧度为 anglex。为了简单起见,我将不考虑 Z 轴,而且立方体的中心位于图形的原点。
考虑所有已知顶点的坐标,并用 v1 到 v8 以及 标记anglex 和 angley 是已知的,谁能告诉我立方体每个顶点的表达式?
请不要告诉我在 Java 中可能会或可能不会找到的辅助方法。只需告诉我每个点的原始表达式(如果可以节省空间,您可以将它们集成到 for 循环中)。
如果您确实需要初始条件示例,请考虑以下多维数据集:
float vertices[]={
1, 1, -1, //v1 - top front right
1, -1, -1, //v2 - bottom front right
-1, -1, -1,//v3 - bottom front left
-1, 1, -1, //v4 - top front left
1, 1, 1, //v5 - top back right
1, -1, 1, //v6 - bottom back right
-1, -1, 1,//v7 - bottom back left
-1, 1, 1 //v8 - top back left
};
【问题讨论】:
-
如果我们给你一个可以旋转任意点的公式怎么样?这样您就可以将其应用于立方体的每个顶点或任何其他多面体。
-
我们只是告诉你买一本像样的计算机绘图书怎么样? Foley 和 van Dam 不错。
标签: java 3d geometry cube vertex