Domanda

Ho bisogno di dipingere la linea che collega due punti.

Lo sto facendo, in Java. Ho ricevere due punti come parametri e devo calcolare se la linea retta tra di loro, si trova all'interno della figura nera.

ho sviluppato la mia soluzione utilizzando l'equazione linea retta, ma i miei risultati sono diversi da quelli con i programmi "professionali" (come GIMP o anche MS Paint).

Ecco un esempio di quello che voglio:

alt text http://img411.imageshack.us/img411/788/img1q .png

Ma il mio algoritmo fa questo:

alt text http://img267.imageshack.us/img267/1908/img2d .png

* Il punto verde è fuori della figura e questo non è possibile.

Tutte le idee? Conoscete qualcuno che il codice è stato utilizzato per questo, in apps "professionali"?

Grazie! Daniel.

EDIT: Immagini

È stato utile?

Soluzione

Sembra che si sta troncando invece di arrotondamento al pixel più vicino. Difficile da vedere su quelle piccole macchie d'inchiostro nero. Potresti postare il codice?

Altri suggerimenti

programmi "Professional" uso più probabile di Bresenham algoritmo linea .

linee Straignt sono disegnate utilizzando l'algoritmo di Bresenham solito. Non ho ottenuto il vostro punto circa punto verde essere fuori della figura -. c'è ritaglio di non sprecare tempo a disegnare al di fuori dell'area visibile

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top