Quando inizio a dipingere, colora l'intero sfondo, cioè deve solo dipingere le macchie bianche. Lo screenshot dell'applicazione è il seguente. Utilizzando Android Paint, voglio dipingere solo macchie bianche su sfondo disegnabile [Panda] e saltare qualsiasi altro colore.Rilevamento del colore dell'immagine di sfondo con Android Paint
funzioneonDraw()
è:
protected void onDraw(Canvas canvas) {
canvas.drawPath(path, paint);
canvas.drawPath(circlePath, circlePaint);
for (Pair<Path,Integer> path_clr : path_color_list){
paint.setColor(path_clr.second);
canvas.drawPath(path_clr.first, paint);
}
for (Pair<Path,Integer> path_clr : circular_path_color_list){
circlePaint.setColor(path_clr.second);
canvas.drawPath(path_clr.first, paint);
}
}
e onTouchEvent
funzione è:
public boolean onTouchEvent(MotionEvent event) {
float pointX = event.getX();
float pointY = event.getY();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
circlePath.reset();
path.moveTo(pointX, pointY);
return true;
case MotionEvent.ACTION_MOVE:
path.lineTo(pointX, pointY);
circlePath.reset();
circlePath.addCircle(pointX, pointY, 10, Path.Direction.CW);
break;
case MotionEvent.ACTION_UP:
circlePath.reset();
break;
default:
return false;
}
postInvalidate();
return true;
}
dispiace ma io non ho alcuna conoscenza di bitmap mascheramento. Quale valore sarebbe 'Bitmap whiteAreas' essere inizializzato con! lo stesso è il problema con 'Tracce bitmap ' –
whiteAreas è proprio quello che dice il nome: una bitmap grande come l'immagine panda, con lo sfondo trasparente e con la pancia e il volto del panda disegnato. bitmap tratti viene utilizzato per contenere i disegni eseguiti da un utente. Ho preparato un'immagine per te – Zielony
Scusa ancora, ma non ho capito :(, voglio dire come creo maschera e tratti bitmap dalla classe 'view'? Lo sfondo, stiamo dipingendo, è una classe esteso da 'view'. –