随机模拟真实模具

时间:2016-03-21 22:59:15

标签: random logic pseudocode

我想模拟真实模具的3D配置。我知道对面的总和等于7(顶部:1 +底部:6 = 7)。让我们说顶面是1,正面是5,右边是4,背面是2,左边是3,底部是6,as this image suggests

真正的位置对我的代码很重要,那么如何正确地随机化模具呢?例如,如果随机化结果top为1且front为5,则右侧 为4.它不能为3,因为在实际模具中,3将在左边。 该程序必须随机化2个相邻的面,其他面必须根据2个随机相邻面放置。

Pseudocode很好,但如果你能用文字解释我,我也很感激。

1 个答案:

答案 0 :(得分:0)

从立方体的八个角来看,这可能是最容易的。大多数情况下,最靠近观察者的角落会有一个角落,因此该角落周围的三个面将会显示出来。有时两个角落距离相等,所以只会出现两个面。很少(可能永远不会,如果你的视角不与桌子平齐),四个角将同样遥远,只有一个面会显示。

保留一个预先计算的列表,该列表由立方体顶点索引,每个顶点包含三个面围绕它的面,以及每个面的哪个角。然后滚动,随机化上面,然后随机旋转,并查找表中的面。

美国骰子在一个角落顺时针方向有ace,deuce和trey,而 点的线指向那个角落(所以pips在角落周围形成一个三角形)。我不知道六人的方向是否标准化。东方骰子是不同的。