Expérience sur le kit d’animation sur toile & # 8230; "Comment effacer la toile?"
-
07-07-2019 - |
Question
Je peux créer un objet pour utiliser le canevas comme suit:
MyObj.myDiv = new Canvas($("effectDiv"), Setting.width, Setting.height);
Ensuite, je l’utilise pour dessiner un rectangle sur la toile:
var c = new Rectangle(80, 80,
{
fill: [220, 40, 90]
}
);
var move = new Timeline;
move.addKeyframe(0,
{
x: 0,
y: 0
}
);
c.addTimeline(move);
MyObj.myDiv.append(c);
Mais après avoir dessiné le rectangle, je veux vider le canevas, mais je ne sais pas quelle méthode et comment faire cela ... ...
O ... encore une chose: c'est le site web de CAKE: Lien
La solution
Effacement du canevas:
canvas.clear = true; // makes the canvas clear itself on every frame
canvas.fill = somecolor; // fills the canvas with some color on every frame
// with canvas.clear = false and low-opacity fill, fancy motion blur effect
Removing the rectangle from the canvas:
rectangle.removeSelf();
or
canvas.removeChild(rectangle);
Autres conseils
Vous pouvez essayer cette méthode:
MyObj.myDiv.clearRect(0, 0, canvas.width, canvas.height);
Qui colore efficacement la totalité de la toile dans la couleur d'arrière-plan.
Le moyen le plus simple est:
MyObj.myDiv.width = MyObj.myDiv.width;
J'ai constaté que le redimensionnement de la toile fonctionnait comme par magie, même si vous ne modifiez pas vraiment la taille:
canvas.width = canvas.width
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow