Sto disegnando un grafico su un <canvas>
che richiede calcoli costosi. Mi piacerebbe creare un'animazione (quando si sposta il mouse sulla tela) dove il grafico è immutabile, ma su di esso sono disegnati altri oggetti.Salvare il contenuto <canvas> da ridisegnare in fotogrammi di animazione successivi?
Poiché la tela dovrà essere ridisegnata molto, non voglio eseguire i calcoli per rendere il grafico per ogni fotogramma. Come posso disegnare il grafico una volta, salvarlo, e quindi usare il rendering salvato per ridisegnare i fotogrammi successivi dell'animazione, in modo che i calcoli costosi debbano avvenire solo una volta che ho ridisegnato lo & è il livello di animazione molto più semplice?
Ho provato disegnando il grafico su una seconda tela & quindi utilizzando ctx.drawImage()
renderla sulla tela principale, ma disegnando sulla tela non sembra funzionare a meno che sia nel Regno & non display:none;
. Devo fare qualcosa di hacky come posizionare la tela temp fuori dalla vista, o c'è un modo più pulito per farlo?
Non lo sapevo e non ho mai visto nulla di ciò in tutti i documenti Canvas che ho letto. Buona nota –