Methane image所述,我需要在Java3d中制作一个四面体,任意两个边界之间的角度为109度(H以C为边界,因此线为边界)。
我必须承认,我对应该如何做还一无所知。我以这种方式尝试过:分别在0度与rotX和rotZ绑定。 109度的一个rotX。下一步将是109度的rotZrotX。假设rotX的角度为AngleX,rotZ的角度为AngleZ。我圆柱体的末端将在(cc)处(计算并尝试)。这是合法的,因此显然再次旋转不会有任何好处。

我有4个2f长的圆柱体,一次创建一个,转换为(0,1,0),所以它们的结尾为(0,0,0)。从这一点开始,我将圆柱体绕(0,0,0)点旋转,并尝试实现四面体。左圆柱在{109,0},右圆柱在{109,109}可以很容易地看出,左圆柱与上升圆柱之间的角度和右圆柱与上升圆柱之间的角度不同

我还必须说,通过微积分解决这个问题不会对我有太大帮助,因为在某些情况下我可能需要更改角度,但是我仍然需要它在圆柱体之间具有相同的角度。

有任何想法吗?我该如何解决?

注意:为方便起见,我在程序中从弧度转换为度,因此可以使用度。

最佳答案

我认为您可能会使这一过程变得比需要的复杂。甲烷不是对称的吗?如果是这样,则将氢原子放在立方体的不相邻顶点处,并将碳放在立方体的中心。

为了理解我的意思,谷歌搜索“甲烷对称性”并查看图像。

如果需要非对称变量,我仍然会在程序外部或使用非图形代码来计算原子的位置,仅使用java-3d放置它们。

08-17 11:14