J'ai remarqué que lors de la création dynamique d'un grand canevas (6400x6400), il ne se passera que très peu de temps, et lorsque le canevas est petit, il fonctionne 100% du temps, Cependant, comme je ne connais pas mieux, je n'ai pas d'autre choix que d'essayer de faire fonctionner correctement la grande toile.HTML5 Large canvas
thisObj.oMapCanvas = jQuery(document.createElement('canvas')).attr('width', 6400).attr('height', 6400).css('border','1px solid green').prependTo(thisObj.oMapLayer).get(0);
// getContext and then drawing stuff here...
Le but de la toile est de tirer simplement une ligne entre deux noeuds (images), qui sont dans un conteneur div qui peut être déplacé autour (je pense que les gens viewport les appellent). Ce que je "pense" peut être que sur une toile redimensionner vide le canevas, et cela interfère avec le dessin du contexte, comme je l'ai dit précédemment, il fonctionne tout le temps quand la toile est beaucoup plus petite.
Est-ce que quelqu'un a déjà vécu cela et/ou connaît des solutions possibles?
C'est pour rendre une carte de 100x100 générée aléatoirement, chaque cellule étant 64x64 (pensez à une starmap où les étoiles sont connectées via des starlanes), une autre approche que j'ai été tentée est de créer une toile par lien (ligne) nécessaire, je pensais juste que ce serait beaucoup plus lent en raison de beaucoup plus d'insertions dans la dom. À l'origine je suis allé avec la bibliothèque de dessin javascript wz_jsgraphics, mais cela a rendu le défilement très lent en raison de la nature de la façon dont cela rend les lignes. – Steve
Je n'ai également jamais réalisé les besoins en mémoire pour ce faire, ce qui le rend en effet irréalisable. Je vais devoir faire ceci dynamiquement avec SVG, merci! – Steve