ステージに2つのレイヤーを入れています。最初のレイヤーには長方形しかありません。もう一方のレイヤーには、いくつかの線オブジェクトがあります。これらの線を非常に高速に描画する必要があるため、すべての線を一度に描画しようとしていますが、うまくいきませんでした。これが私のコードです:
var line = new Kinetic.Line({
points : line_points,
stroke : 'black',
strokeWidth : 5,
lineCap : 'round'
});
layer.add(line);
layer.draw();
});
};
});
stage.add(layer);
このコードは、作成後にすべての線を個別に描画するため、少し時間がかかります。一度にすべての線を引くにはどうすればよいですか?
ここに私の機能の残りの部分があります:
function draw_ways(db, minLon, maxLon, minLat, maxLat, stage) {
var layer = new Kinetic.Layer();
get_interval_ways(db, minLon, maxLon, minLat, maxLat, function(result) {
for (var i = 0; i < result.length; i++) {
get_interval_nodes(db, result[i].way_id, function(result2) {
var line_points = new Array();
for (var j = 0; j < result2.length; j++) {
line_points.push(getLocationX(result2[j].lon, minLon, maxLon, MAP_WIDTH));
line_points.push(getLocationY(result2[j].lat, minLat, maxLat, MAP_HEIGHT));
};
var line = new Kinetic.Line({
points : line_points,
stroke : 'black',
strokeWidth : 5,
lineCap : 'round'
});
layer.add(line);
layer.draw();
});
};
});
stage.add(layer);
console.log(stage);
}