1、元素位置 支持的属性
名称 | 类型 | 默认值 | 描述 |
x | Float | 0 | 相对父对象的x坐标 |
y | Float | 0 | 相对父对象的y坐标 |
w | Float | 0 | 宽度,如果没有设置,从激活的纹理继承 |
h | Float | 0 | 高度,如果没有设置,从激活的纹理继承 |
mount | Float | 0 | 相对坐标(与x,y相等)的纹理对齐 |
mountX | Float | 0 | 水平轴的纹理挂载点 |
mountY | Float | 0 | 竖直轴的纹理挂载点 |
- https://lightningjs.io/docs/#/lightning-core-reference/RenderEngine/Elements/Positioning
- https://lightningjs.io/docs/#/lightning-core-reference/Animations/index
- https://lightningjs.io/docs/#/lightning-core-reference/Transitions/index
- https://lightningjs.io/docs/#/lightning-core-reference/RenderEngine/Textures/Image
const app = new PIXI.Application();
document.body.appendChild(app.view);
app.stage.interactive = true;
const bg = PIXI.Sprite.from('examples/assets/bg_plane.jpg');
app.stage.addChild(bg);
const cells = PIXI.Sprite.from('examples/assets/cells.png');
cells.scale.set(1.5);
const mask = PIXI.Sprite.from('examples/assets/flowerTop.png');
mask.anchor.set(0.5);
mask.x = 310;
mask.y = 190;
cells.mask = mask;
app.stage.addChild(mask, cells);
const target = new PIXI.Point();
reset();
function reset() {
target.x = Math.floor(Math.random() * 550);
target.y = Math.floor(Math.random() * 300);
}app.ticker.add(() => {
mask.x += (target.x - mask.x) * 0.1;
mask.y += (target.y - mask.y) * 0.1;
if (Math.abs(mask.x - target.x) < 1) {
reset();
}
});
使用lightningJS中的Transition的x,y属性以及事件finish,代码参考:
https://github.com/wuli2496/OJ/tree/master/topcoder/lightningjs/com.medium
参考资料:
【javascript|lightningJS之动画】https://rdkcentral.github.io/Lightning/docs/player/player
推荐阅读
- Web|前端三剑客 HTML、CSS、JavaScript 入门到上手
- html|前端三大基础语言------学习前先了解
- 前端|26自学转行前端(写给和1年前一样迷茫的我的你)
- leetcode|【LeetCode】118. 杨辉三角(js 实现)
- java|vue - ES6模块化、promise、webpack打包(所在在学的朋友们先看这篇,看了不吃亏)...
- AutoJs|薅羊毛专业版第四十一次更新
- AutoJs|基于autojs7的悟空浏览器辅助
- AutoJs|Autojs7实戦---薅羊毛时间版APK
- 浏览器工作原理与实践(四)