2010-06-02 269 views
0

我有一张或多或少看起来像附加图像的绘图。 imageFlex Sprite xy坐标

橙色正方形是当前选定的精灵。

这些精灵都是从我从XML接收的坐标中绘制的。

var sprObject:Sprite = new Sprite(); 

sprObject.graphics.beginFill(itemList.c.toString()); 
sprObject.name = strName; 

sprObject.graphics.moveTo(iX, iY); 
sprObject.graphics.lineTo(iX2, iY2); 
sprObject.graphics.lineTo(iX3, iY3); 
sprObject.graphics.lineTo(iX4, iY4); 
sprObject.graphics.lineTo(iX, iX); 
sprObject.graphics.endFill(); 
mainUI.addChild(sprObject);  // mainUI is a mx:UIComponent 
g_Sprite.push(sprObject);  // array of sprites. 

我想要做的是以下几点。 如果我目前在橙色方块上,并使用我的键盘方向按钮(上/下/左/右)。 我想取消选择当前精灵,并选择适当方向的下一个精灵。

我遇到的问题是我无法获取绘制的精灵的x和y坐标。 如果我查看数组,则精灵的x和y坐标全部为0. 如果我可以检索到,我可以编写算法来确定要选择的下一个精灵。

任何帮助,将不胜感激。

回答

0

您可以尝试使用DisplayObject类的localToGlobalglobalToLocal方法。检查出来here