ShapeTouch 该Javascript库用于实现H5中不规则图形按钮可点击区域的判断,特别用于H5游戏中的某些场景。
king.shape.touch(src,x,y,callback) king.shape.touchPoint(src,point,callback)
point对象示例: The point object like this:
{x:9,y:25}
Object {touch: true, alpha: 255} Or Object {touch: false, alpha: 0}
touch为true时,该点非透明,点击生效,alpha值大于0,touch为false时,该点透明,alpha为0. (开发者也可以根据alpha的值自行判断点击是否生效) The touch is true, the point is not transparent, the alpha value is greater than 0.
Html:添加引用后直接使用
<script type="text/javascript" src="ShapeTouch-min.js"></script> <script type="text/javascript"> (function() { king.shape.touch('images/logo.png',20,40,function(result){ console.log(result); }); }); </script>
Cocos creator:将文件放入assets即可,不需require
this.node.on('touchend', function (event) { var touchPoint = event.getLocation(); var node = event.currentTarget; var nodePoint = node.convertToNodeSpace(touchPoint); var nodeSrc = node.getComponent(cc.Sprite).spriteFrame.getTexture().url; king.shape.touchPoint(nodeSrc,nodePoint,function(result){ console.log(result); }); }, this);