如何在bitmapData和对象之间正确使用hitTest?

atm*_*tmd 1 flash actionscript-3 bitmapdata

我已将PNG转换为位图,然后将其转换为bitmapData.

我有一个名为的对象_player,我希望添加碰撞检测,但我似乎可以让它工作.

我的代码是:

if(bmd1.hitTest(new Point(_player.x, _player.y))){
trace("hit");
}
Run Code Online (Sandbox Code Playgroud)

bmd1是我的bitmapData,_player是希望测试的对象.

我收到以下错误:

1136: Incorrect number of arguments, Expected 3
Run Code Online (Sandbox Code Playgroud)

我环顾四周但是却找到了我所缺少的论点

有任何想法吗?

更新

我试过了

if(bmd1.hitTest(new Point(_player.x, _player.y), 50, _player)){
trace("hit");
}
Run Code Online (Sandbox Code Playgroud)

没有快乐

更新2

对不起,我应该提一下,我采用这种方法的原因是我有一个PNG,有透明区域,我需要测试非透明区域的碰撞,这就是我使用这种方法的原因

我有一个PNG,我导入并转换为位图,然后转换为 bitmapData

我可能完全错了.你能告诉我问题出在哪里吗?

Kod*_*iak 6

hitTest有3个必需参数:

public function hitTest(firstPoint:Point, firstAlphaThreshold:uint, secondObject:Object, secondBitmapDataPoint:Point = null, secondAlphaThreshold:uint = 1)
Run Code Online (Sandbox Code Playgroud)

检查文档