примечание: я только хочу, чтобы переместить 1 форму в то времяМожно ли переместить уже нарисованные фигуры на холст html5?
Circle.prototype.create = function(){
if (this.canvas === null){
throw "Circle has no canvas";
}
if (this.canvas.getContext){
this.context = this.canvas.getContext("2d");
this.context.fillStyle = this.color;
this.context.beginPath();
this.context.arc(this.x,this.y,this.r,0,Math.PI*2);
this.context.closePath();
this.context.fill();
}
}
Это рисует круг, Обратите внимание, что переменная context
сохраняется как свойство объекта
я написал эту функцию, чтобы переместить этот существующий круг с использованием оригинальных кругов context
Circle.prototype.move_to = function(x,y){
if (this.context === null){
throw "Circle has no context to move";
}
this.x = x; this.y = y;
this.context.translate(x, y);
this.context.beginPath();
this.context.arc(this.x,this.y,this.r,0,Math.PI*2);
this.context.closePath();
this.context.fill();
}
Однако это только привлекает еще один круг.
Как я могу заставить его перемещать существующие?
БЕЗ ОЧИСТКИ ОРИГИНАЛ И ЧЕРТЕЖ ДРУГОГО!
Вы не можете, что вам нужно (например), чтобы иметь холст в памяти, которая будет очищена, перерисованы и скопированный в видимой части холста каждый кадр. Отъезд - https://developer.mozilla.org/en/Canvas_tutorial/Basic_animations – Yaniro
Взгляните на библиотеку холста, такую как [Fabric.js] (http://fabricjs.com) – kangax