Kineticjsを使用してラスターを描画しています。これは Kinetic.Rect を使用して機能します。ここで、 Kinetic.Rect以外のオブジェクトを使用したいと考えています。このオブジェクトでは、ラスター内の位置の x と y を保存できるはずです。私は次のコードを持っています:
function Tile(rasterX, rasterY, occupied, config) {
Kinetic.Rect.call(this, config);
this.rasterX = rasterX;
this.rasterY = rasterY;
this.occupied = occupied;
}
Tile.prototype = new Kinetic.Rect();
Tile.prototype.constructor = Tile;
ここで、Kinetic.Rect 作成のコードを変更します (これは機能します)。
var tile = new Kinetic.Rect({
width: drawWidth,
height: drawHeight,
stroke: 'black',
fill: 'grey',
x: x,
y: j * drawHeight
});
に:
var tile = new Tile(j, i, false, {
width: drawWidth,
height: drawHeight,
stroke: 'black',
fill: 'grey',
x: x,
y: j * drawHeight
});
作成されたすべてのタイルの x と y が同じであるため、構成が Kinetic.Rect コンストラクターに正しく渡されません (キャンバスの右下隅)。しかし、色はそこにあります。