Actionscript 3 flash/actionscript 3.0如何对图像进行逻辑分区

Actionscript 3 flash/actionscript 3.0如何对图像进行逻辑分区,actionscript-3,flash,flash-cs5,Actionscript 3,Flash,Flash Cs5,我不熟悉flash,我正在尝试用actionscript3.0 我已经为电路板创建了背景(棋盘格),现在我必须按每个方框划分背景。我有什么方法可以做到这一点?我想按图中所示逻辑地为每个正方形输入数字 我意识到可以使用套索工具将每一个都转换成符号。但是有什么“懒惰”的方法吗?为了做到这一点,我必须做很多切割 我们可以使用一些简单的计算将一些(x,y)值映射到一个数字。让我们说: widht = width of the image height = height of the image grid

我不熟悉
flash
,我正在尝试用
actionscript3.0

我已经为电路板创建了背景(棋盘格),现在我必须按每个方框划分背景。我有什么方法可以做到这一点?我想按图中所示逻辑地为每个正方形输入数字

我意识到可以使用套索工具将每一个都转换成符号。但是有什么“懒惰”的方法吗?为了做到这一点,我必须做很多切割


我们可以使用一些简单的计算将一些
(x,y)
值映射到一个数字。让我们说:

widht = width of the image
height = height of the image
gridCount = 8
gridWidth = width / gridCount
gridHeight = height / gridCount
现在,我们首先要将用户点击点
(x,y)
映射到某个整数索引
i,j
到逻辑8 x 8矩阵,其中左上角是索引
0,0

i = x / gridWidth
j = y / gridHeight
例如,如果
gridWidth=60
gridHeight=50
并且用户单击
(10,15)
,则
i=0,j=0

i = x / gridWidth
j = y / gridHeight
现在我们必须将这个
i,j
映射到指定的数字。由于底线包含
11,21,31,…
且每列都在增加,因此最终数字将为:

num = (11 + i * 10) + (gridCount - j - 1)

将这些方程转换为AS3代码是很简单的,所以我不会添加它们。

要发布该图像还是该图像的想法?如果这些符号对它们的排列方式有一定的逻辑性,也许你可以简单地@GeorgeProfenza:谢谢你的回答。我加了这幅画。请看一看。@GeorgeProfenza:copyPixels()方法是如何起作用的?我不太明白。你说的逻辑数字是什么意思?您想在图像上实际显示数字,还是想将
(x,y)
转换为整数值?例如,用户单击图像的
(10,15)
位置,您希望将
(10,15)
转换为
18
?@taskinoor:yes。我需要检测哪个方块用户点击并获得相应的数字。但我不想让用户看到这些数字。我该怎么做?这正是我问题的答案。非常感谢。最后,我想再问一件事。我希望这个网格是3D的。然后我怀疑它会破坏每个方块之间的比例。你能不能给我一个提示,让我用那个3D图形达到同样的效果。@shan,3D的基本思想是一样的。您必须首先将
(x,y,z)
映射到
(i,j,k)
,然后根据
(i,j,k)
计算数字。确切的数值取决于你是如何用数字填充3D网格的,但想法是一样的。是的,我明白了。但是,当它在屏幕上占据较远的位置时,每个正方形的大小都会变小,并且会变成菱形或梯形。你明白我的意思吗?但我对几何不太在行。:)@shan,如果形状是菱形或梯形而不是简单的立方体,那么这个计算将不起作用。对不起,如果不检查几何文本,我就说不出菱形或梯形的方程:-(。它们不像矩形/立方体方程那么简单。没关系。非常感谢你的提示。