匹配动态绘制的三角形和区分角度

时间:2013-05-20 20:13:51

标签: actionscript actionscript-2

我正在制作一个游戏,其中用户在网格上绘制三角形并与其他三角形一致。但是,用户获得额外的点以使新三角形与原始三角形不同。我会使用movieclip的rotation属性,但由于三角形被绘制成动态创建的MC,因此它们都具有0度的旋转。

有没有办法做到这一点?我绝对难过。

2 个答案:

答案 0 :(得分:0)

我认为这只是一个数学问题。

首先,如果你有一个等边三角形,你将无法可靠地计算出旋转差异,因为边的大小相同。

否则,你将始终拥有'重要的一面'

假设您的三角形是等腰,那么您的重要一面是与另外两个匹配边长度不同的一面。

假设你有一个斜角三角形,你最重要的一面是最长的一面。

一旦你知道了最重要的一面......

您应该能够使用trig。

计算出用户三角形的重要一面

您还应该知道用户试图绘制的基本三角形的重要一面,因为您正在“制作”它。

然后你基本上有两条线(两条重要的边),再次使用trig来计算两条线之间的旋转差异,然后你就可以了。

答案 1 :(得分:0)

我解决了这个问题。我所做的是让程序挖掘三角形以找到最左边和最高点。然后我用这个点作为原点绘制所有三角形。这确保了无论点击点的顺序如何,所有三角形都将具有相同的原点。

为了检测它们是否匹配,我编写了一个复制三角形并将它们移动到同一点的函数。因为它们现在具有相同的原点,如果它们具有相同的角度,它们将占据相同的空间。使用这个,然后我写了一个函数,检查三角形是否完全重叠。