2012-08-23 72 views
2

编辑2:似乎大数字创建是因为movieclip不包含任何bipmapdata,但我仍然不确定它,但我真正的错误是,我忘记了“这”的盈方一个“getBounds”...项目大小是巨大的,我无法找到bug =)AS3:怪异的getBounds()结果

编辑:试图使用单独的容器,为movieclips,并做了所有这些在根类...一切工作正常,当我使用单独的容器并将所有东西附加到charakter类时,它又重新拧起来了

旧: 嘿,我现在正在制作一个游戏,我希望获得charakter机身的边界。 为了理解我是如何设置整个事情的,我解释了这个问题。

我的Flash文档的类是“game.as”。 “game.as”增加了一个Charakter类的儿童 我的Charakterclass对每个身体部位都有一个Movieclip,例如每个bodypart的“head” 有一个movieclip,其中包含正文部分的图片,在这种情况下是“head”。

当我现在尝试在“head”类中使用getBounds(head.mc)时,我得到了非常奇怪的结果。在x = 64001,y = 64001,宽度= 0,高度= 0;

我发现了一种方法,如何通过简单地使用getBounds(head.mc)函数来解决这个问题,而不是在头部内部,但是在Charakter类中......但是这不是我真正想要做的,我想要在head类中使用getBounds(head.mc)函数。

任何想法为什么结果如此奇怪或我必须做什么?林非常感谢每一个意见,因为这对我来说似乎不合逻辑xD

回答

2

从里面head_mc,尽量getBounds(this.parent);(您可能需要测试,看看是否存在父第一) - 这应该给你的边界你head_mc作为它的容器看到它,我认为这是你想要的,但是根据你的要求在head_mc里调用。

bitmapdata是正确的,虽然 - getBounds()有时可以给一些奇怪的结果。它看起来像你在将head_mc添加到舞台之前可能会问这个问题,因此会得到width/height/x/y的未定义值。

+0

多数民众赞成我以为也是,我要求早,我正在处理这个问题最后几个小时......可能我应该休息几个小时后再尝试一下,因为我确信我完全理解了getBounds()如何工作......无论如何,man = =) – tschery

3

getBounds()是不准确的。请阅读以下文章以了解问题。

的getBounds“错误”的结果Source

当物体相对于它自己的的界限越来越坐标系, 这些值不会调整。

的getBounds()返回不正确的高度Source

+2

最好在这里包含答案的基本部分,并提供参考链接。 – Florent

+0

哦,谢谢...好的建议。 :) –

+0

哦谢谢这不是我正在寻找,但非常有帮助反正,我确定这将解决我即将遇到的问题即将= D – tschery