Fai nascondere le linee (logicamente parlando) nelle applet

1

Sto sviluppando un'applicazione in cui disegno un numero elevato di linee (il colore è dato come nero) e le aggiorno dove devo rimuoverle dallo schermo.

Ho pensato di far corrispondere il loro colore allo sfondo in modo da poterli nascondere. Sembra semplice e funziona, ma nel senso pratico ho 10.000 punti e quasi più di 20000 linee da tracciare e poiché la maggior parte della linea si sovrappone o si incrocia l'una con l'altra è così disgustosa la vista.

Quindi ho bisogno di un qualche tipo di funzione per rimuovere effettivamente quelle linee selezionate tra due punti noti dallo schermo. Anche io ho un problema con il colore di sfondo che posso abbinare al colore predefinito dello sfondo esatto delle applet. Qualcuno mi può suggerire una soluzione o il colore?

    
posta u2425 16.03.2013 - 09:48
fonte

1 risposta

0

Per disegnare il colore usingbackground puoi usare link che restituisce il colore di sfondo, questo può essere impostato sull'oggetto grafico su cui stai dipingendo.

Usa doppio buffering, prima cancella l'area creando un rettangolo usando il colore predefinito:

g.setColor (backgroundColor);    g.fillRect (0, 0, fullWidth, fullHeight);

e quindi disegna solo le linee attive. Quindi nessun algoritmo complicato, basta iniziare da una lavagna pulita e disegnare solo ciò che è richiesto

refernece link

fillRect (int x, int y, int width, int height) sulla stessa pagina

Il doppio buffering è spiegato qui link

e link puoi creare la tua immagine per elaborare fuori dallo schermo

    
risposta data 07.05.2013 - 08:15
fonte

Leggi altre domande sui tag