Toro ha scritto:
Avere tutte le coordinate dei pixel che compongono la linea mi serve per poter far selezionare la linea all'utente, ossia quando l'utente fa un click sulla linea.
No, approccio proprio
sbagliato.
Devi tenerti delle apposite strutture dati che mantengono a livello "logico" le informazioni sulle figure che vengono man mano disegnate dall'utente.
Banalmente (ma poi è quello che si fa di solito), una classe astratta es. Figura e poi sottoclassi es. Cerchio, Rettangolo, ecc.... E poi mantieni un List<Figura> . Quando vuoi sapere se un punto "cade" su una delle figure, se hai modellato le figure nel modo giusto lo fai in pochi semplici passi ...
Si tratta solo di "ragionare" in termini di programmazione Object Oriented.
E nota che nel framework esiste già la interfaccia Shape con implementazioni es. Rectangle2D.Double, Ellipse2D.Double, ecc.... Ma se devi aggiungere altri dati es. colore di riempimento, colore del bordo, ecc... HA SENSO fare una
TUA gerarchia di classi che poi magari incapsula un apposito shape.
Toro ha scritto:
In alternativa non esiste una classe o del codice che implementi un algoritmo per disegnare delle linee?
In modo che possa disegnare io punto per punto ogni linea.
Se vuoi implementare tu l'algoritmo, certo si può. Si usa l'algoritmo di Bresenham (
https://it.wikipedia.org/wiki/Algoritmo_della_linea_di_Bresenham). Ma ti devi "sporcare" un po' le mani con molta matematica.
E NON vedo il perché devi farlo ....
P.S. rileggi bene tutto quello che ti è stato risposto.