javascript - Pixi.js 如何将 moveTo 与 OOP 对象一起使用?

标签 javascript oop pixi.js

我使用 OOP 方法创建了一个矩形和一个正方形对象。

接下来,我会将矩形移动到另一个位置。我使用 moveTo 函数。

我的矩形是从其创建位置移动的,而不是从绝对位置移动的。

我必须指定什么才能将此矩形移动到 x=100,y=100 ?

var container = new PIXI.Container();

var renderer = PIXI.autoDetectRenderer(320, 480,{backgroundColor : 0x1099bb});

document.body.appendChild(renderer.view);

requestAnimationFrame( animate );

var blue= 0x00c3ff
 
var red = 0xFF0040

var SHAPE={}

SHAPE.geom = function(posx,posy,width,height,color) {
	PIXI.Graphics.call(this,posx,posy,width,height,color);
	this.beginFill(color);
	this.drawRect(posx,posy,width,height)
}


SHAPE.geom.prototype = Object.create(PIXI.Graphics.prototype);
SHAPE.geom.prototype.constructor = SHAPE.geom;

var square=new SHAPE.geom(10,10,10,10,red)

var rect=new SHAPE.geom(200,400,80,30,blue)

rect.moveTo(100,100)

	container.addChild(square,rect);


	function animate() {

		requestAnimationFrame( animate );
		renderer.render(container);
	}

最佳答案

检查 PIXI 文档中的 moveTo:https://pixijs.github.io/docs/PIXI.Graphics.html#moveTo

它将 DRAWING 位置移动到某个坐标,而不是实际已经存在的对象。因此,如果您使用 moveTo 并在使用图形对象进行绘制之后,它应该从该位置开始绘制。至少在理论上(我从来没有使用过 moveTo)。

您应该使用对象 .x、.y 或 .position 属性来设置显示对象在父容器中的驻留位置。所以像这样: 矩形.x = 100; 矩形.y = 100; 或者 rect.position = new PIXI.Point(100, 100);

如果有任何问题,请告诉我,我会为您制作一个 plunkr,为您提供一个可行的示例。不幸的是,我现在没有时间。

一般来说,在 plunkr 中制作这样的简单示例是个好主意。 , jsfiddle或同等的东西。然后回答您的人可以轻松修改您的代码并向您展示一个可靠的示例。这对双方都更好。

关于javascript - Pixi.js 如何将 moveTo 与 OOP 对象一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38232980/

相关文章:

java - 为什么要返回 Iterator 低耦合 (OOP)?

javascript - .html 在 .getJSON 之后不显示

javascript - Webview 上的自动启动 html5 视频不适用于 Android 4.2.2

javascript - 删除 mongoose 中的嵌入文档

java - 实现中 "optional"方法的接口(interface)隔离原则

javascript - JS : Is it possible "something(arg)" and "something.my_method(arg)" at same time

javascript - 用于构建 Pixi Spritesheet 的数据需要什么格式?

javascript - 如何在 PIXI.js 中绘制同一图元的多个实例?

javascript - ajax 刷新后保留选择下拉值

javascript - Phaser/Pixi 法线贴图过滤器不工作