Question

Je me souviens d'une manière en lisant il y a environ une alternative (aka plus rapide) pour effectuer une méthode getPixel()-ish.

Le problème est, je ne me souviens pas où je l'ai lu, et je l'ai bien cherché .. je pense.

La réponse avait quelque chose à voir avec le verrouillage de la Bitmap en mémoire, ou quelque chose comme ça.

Je dois courir getPixel() plusieurs fois « par-tick », ce qui est il semble très coûteux.

Quelqu'un sait-il ce que je parle?

Était-ce utile?

La solution

Vous pensez probablement à Bitmap.getPixels(), qui copie une partie du bitmap dans un tableau. A partir de ce moment-là, vous pouvez accéder directement à un pixel à l'aide d'un simple accès au tableau, ce qui est beaucoup plus rapide que d'appeler Bitmap.getPixel() plusieurs fois.

Vous serez face à une performance par rapport à la décision de la mémoire ici: Si vous avez besoin d'interroger un grand nombre de pixels et si votre bitmap change rarement, gardez le tableau autour (au détriment d'avoir ce tableau en mémoire). Dans le cas contraire, libérer l'intérêt dans le tableau le plus rapidement possible pour qu'il puisse être recueillie si nécessaire. De toute évidence, éviter d'appeler getPixels() beaucoup -. L'idée est de l'appeler une fois, puis interroger le tableau plusieurs fois

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top