AreaMap 组件

这个组件用于鼠标和触摸。也可以添加到其他组件和 Crafty.findClosestEntityByComponent 方法配合使用。

方法

Back to top

.areaMap()

事件

NewAreaMap [Data = {Crafty.polygon}]
当一个新的区域地图被分配
public this .areaMap(Crafty.polygon polygon)
polygon

Crafty.polygon 的实例,用于检查鼠标是否在指定的区域内。

public this .areaMap(Array coordinatePairs)
coordinatePairs

用于生成多边形的 xy 坐标对数组

public this .areaMap(x1, y1,.., xN, yN)
point#

生成多边形的 xy 坐标对的列表

分配一个多边形到实体,用于指定指针(鼠标或触摸)事件仅在多边形范围内时触发。

例子

Crafty.e("2D, DOM, Color, Mouse")
    .color("red")
    .attr({ w: 100, h: 100 })
    .bind('MouseOver', function() {Crafty.log("over")})
    .areaMap(0, 0, 50, 0, 50, 50, 0, 50);

Crafty.e("2D, Mouse")
    .areaMap([0, 0, 50, 0, 50, 50, 0, 50]);

Crafty.e("2D, Mouse").areaMap(
    new Crafty.polygon([0, 0, 50, 0, 50, 50, 0, 50])
);