Rysowanie nakładających się bitmap

Rysowanie nakładających się bitmap
Kamil9132
  • Rejestracja:prawie 14 lat
  • Ostatnio:prawie 4 lata
  • Postów:173
0

Witam.
W jaki sposób można narysować kilka bitmap nakładających się na siebie, tak żeby kolor każdego pixela na wynikowej bitmapie był równy średniej ważonej źródłowych bitmap?

Kopiuj
        Paint paint = new Paint();
	paint.setAlpha(Alpha)
	canvas.drawBitmap(Bitmap, 0, 0, paint);

Jeśli się nie mylę to obliczanie koloru pixela wygląda w uproszczeniu na zasadzie:
Color_Result = Color_Last * (255 - Alpha_This) + Color_This * Alpha_This

Czy jest możliwe zmienienie powyższej formuły na poniższą?
Color_Result += Color_This * Alpha_This

Przykładowo, dla 3 bitmap o kolorze pixeli X = (0, 10, 0), Y = (0, 100, 0), Z = (0, 200, 0) chciałbym otrzymać bitmapę o kolorze (0, 110, 0).

Najprostszym wyjściem wydaje mi się ręczne ustawianie koloru każdego pixela na bitmapie, a następnie rysowanie tej bitmapy, jednak takie rozwiązanie jest prawdopodobnie złe pod względem wydajnościowym, czy istnieje lepsze rozwiązanie?

spartanPAGE
  • Rejestracja:prawie 12 lat
  • Ostatnio:około miesiąc

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.