- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试获取鼠标当前悬停的形状的 ID。
我的形状在一个容器里
// creating the layers
gridLayer = new PIXI.DisplayObjectContainer ();
gridLayer.setInteractive(true);
stage.addChild(gridLayer);
我正在像这样创建每个形状;
function drawHexagon(x,y, size, gap,scale, color, iterI, iterJ, type) {
var shape = new PIXI.Graphics();
// set a fill and line style
shape.beginFill(color);
shape.lineStyle(1, 0xa0a0a0, 1);
size = size-gap;
for (i = 0; i < 7; i++) {
angle = 2 * Math.PI / 6 * (i + 0.5);
var x_i = x + size * Math.cos(angle);
var y_i = y + size * Math.sin(angle);
if (i === 0) {
shape.moveTo(x_i, scale *y_i)
}
else {
shape.lineTo(x_i, scale * y_i)
}
};
shape.endFill();
// calculate and save the axial coordinates
var cX = iterJ - (iterI - (iterI&1)) / 2;
var cZ = iterI;
var cY = -1*(cX+cZ);
shape.hexId = cX + "x" + cY + "y" + cZ + "z";
shape.hexPosX = x;
shape.hexPosY = y;
shape.setInteractive(true);
shape.mouseover = function(mouseData){
console.log("MOUSE OVER " + shape.hexId);
}
shape.click = function(mouseData){
console.log("MOUSE CLICK " + shape.hexId);
}
gridLayer.addChild(shape);
}
但是,单击任何形状或将鼠标悬停在其上不会在控制台中显示任何内容。我做错了什么?
我都试过了
shape.setInteractive(true)
和
shape.interactive = true
但似乎都不适合我。
编辑:我添加了一个 jsfiddle。它不起作用(我不知道如何在 jsfiddle 中链接东西)但是你可以在那里看到我的整个代码。 http://jsfiddle.net/9aqHz/1/
最佳答案
要使 PIXI.Graphics 对象具有交互性,您需要设置一个 hitArea 形状(它可以是矩形、圆形或多边形):
shape.hitArea = new PIXI.Polygon([
new PIXI.Point(/* first point */),
new PIXI.Point(/* second point */),
new PIXI.Point(/* third point */),
new PIXI.Point(/* fourth point */),
new PIXI.Point(/* fifth point */)
]);
另一种方法是从形状生成纹理并使用 Sprite,但命中区域将是六边形的整个矩形边界:
var texture = shape.generateTexture();
var sprite = new PIXI.Sprite(texture);
sprite.setInteractive(true);
sprite.anchor.set(0.5, 0.5);
关于javascript - 如何与 Pixijs 中的形状交互?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24852588/
正如标题所说,如何为 PixiJS 设置 25 fps 的固定帧速率? 这是我的设置: g_App = new PIXI.Application(800, 600, { backgroundColor
我正在使用 PIXI.JS 制作一款使用详细像素艺术的游戏。我想设计垂直方向的游戏(非常适合智能手机),但我也希望它能够适合浏览器窗口,并且其比例完好无损。我还需要所有内容都能够扩展并保持完整。 谁能
我正在尝试根据 Angular 属性获得一个简单的随机“旋转”,并希望实现以下目标。 随机旋转,说“旋转”到 500 度 从高速开始,当接近“旋转”的度数时,降低“旋转”的速度,这样就不会瞬间停止。
我想制作一款灯光和声音随心所欲的游戏。我需要可以被物体阻挡的方向灯,例如墙壁或其他玩家(动态明显)。好像我想要这样的东西 PixiJS 可以吗?如果是 - 怎么样?我目前不明白这应该如何实现。我猜 t
根据我能找到的小建议,我有: var btn = new PIXI.Sprite.fromFrame( 'btn_img.png' ); btn.interactive = true; btn.but
我正在尝试使用 PIXI JS 创建一个界面,其中我有一个主 Canvas ,即舞台。之后,我在舞台上有了一个图形元素作为子元素。单击图形元素时,我希望能够放大该元素,使其填满 Canvas 的 80
我能够加载视频纹理并使用 pixi 渲染它 // create an new instance of a pixi stage var stage = new PIXI.Stage(0x
我一直在玩 PixiJS 和 Javascript。现在,我一直在关注兔子教程(http://www.goodboydigital.com/pixi-js-tutorial-getting-start
所以我在 Pixi 中有一个场景,里面有大约 7-8 个纹理。一些只是循环简单的变换(例如像风扇一样旋转等),有些是静态的。 根本没有与它交互(它在一个单独的窗口中),仅仅它的存在就让我的 16BG
大家好,我是 Angular JS 和 Ionic Framework 的新手,我正在使用最新版本 angular2 和 ionic2。 我想使用 PixiJs (2D webGL renderer)
我不想使用多个 Canvas ,我们如何与pixijs一起使用多个 Canvas ? 与此类似的东西 http://jsbin.com/judagah/edit?html,js,output 这里我使
如何为图像下方/上方的文本(Sprite)的某些部分制作不同的颜色?示例:https://clip2net.com/s/43y248h 图像动态移动,文本也应该动态着色。 最佳答案 我建议使用 2 个
我正在尝试获取鼠标当前悬停的形状的 ID。 我的形状在一个容器里 // creating the layers gridLayer = new PIXI.DisplayObjectContainer
我正在尝试使用 PIXIJs 库来显示 SVG 图像,但在智能手机上 SVG 看起来很模糊。 Here is a sample code var $ = window.jQuery;
使用 spritesheet,我试图找到平滑一致地播放所有帧的动画的最佳方式,尽管我需要将 FPS 从 60 降低到 30。 尝试使用 AnimatedSprite 始终默认为 60 fps,这使得我
我是一名 Web 开发新手,正在创建我的第一个个人投资组合页面。我正在尝试将此粒子容器用作一种背景英雄“视频”。 Codepen.io - https://codepen.io/erikterwan/
当我使用 pixi js 画一个圆时,我一直无法获得平滑的圆周。当我画大圆圈时,我已经可以看到几个 Angular ,当我缩小它时,情况变得更糟。 (我需要一个小圆圈)。 这是代码: renderer
我使用pixijs开始了一个小项目。我遵循该教程:https://www.youtube.com/watch?v=FrnXCZmmAZo但这对我不起作用。 HTML:
我目前正在学习 Pixijs。我看了这个人的教程:github.com/kittykatattack/learningPixi顺便说一句,不错。 环境:Xampp、Firefox、Pixijs、HTM
我需要知道给定的 PIXI.Circle 是否部分位于我绘制的 PIXI.Polygon 内部或外部。我该怎么做? 最佳答案 最后做了一个解决方法:构建一个多边形并对照另一个多边形检查其所有顶点 关于
我是一名优秀的程序员,十分优秀!