Disegnare in una DrawingArea linee mediante codice: differenze tra le versioni
(Creata pagina con "La definizione di una linea è costituita da due punti di riferimento: quello iniziale (di origine) e quello finale. Per disegnare in una ''DrawingArea'' linee mediante il co...") |
Nessun oggetto della modifica |
||
| (Una versione intermedia di uno stesso utente non è mostrata) | |||
| Riga 5: | Riga 5: | ||
Il Metodo ".LineTo()" possiede due parametri che rappresentano le coordinate del punto finale della linea. <BR>Il punto d'origine, invece, è predefinito ed è pari a x=0, y=0, se il Metodo ".LineTo()" è all'inizio della funzione Paint (ossia se <SPAN Style="text-decoration:underline">non</span> è preceduto da altro Metodo ".LineTo()" o dal Metodo ".MoveTo()". | Il Metodo ".LineTo()" possiede due parametri che rappresentano le coordinate del punto finale della linea. <BR>Il punto d'origine, invece, è predefinito ed è pari a x=0, y=0, se il Metodo ".LineTo()" è all'inizio della funzione Paint (ossia se <SPAN Style="text-decoration:underline">non</span> è preceduto da altro Metodo ".LineTo()" o dal Metodo ".MoveTo()". | ||
<BR>Così questo codice: | <BR>Così questo codice: | ||
Public Sub DrawingArea1_Draw() | |||
With Paint | With Paint | ||
.<FONT Color=#B22222>LineTo</font>(200, 100) | .<FONT Color=#B22222>LineTo</font>(200, 100) | ||
.Stroke | .Stroke | ||
End With | End With | ||
End | |||
disegnerà nella ''DrawingArea'' una linea che ha come punto di origine le coordinate x=0, y=0, e come punto finale le coordinate impostate nel Metodo ".LineTo()". | disegnerà nella ''DrawingArea'' una linea che ha come punto di origine le coordinate x=0, y=0, e come punto finale le coordinate impostate nel Metodo ".LineTo()". | ||
| Riga 20: | Riga 19: | ||
Se si intende far impostare il punto di origine di una linea in coordinate diverse da quelle predefinite 0,0, è necessario premettere il Metodo ".MoveTo()" al Metodo ".LineTo()". | Se si intende far impostare il punto di origine di una linea in coordinate diverse da quelle predefinite 0,0, è necessario premettere il Metodo ".MoveTo()" al Metodo ".LineTo()". | ||
<BR>Così questo codice: | <BR>Così questo codice: | ||
Public Sub DrawingArea1_Draw() | |||
With Paint | With Paint | ||
| Riga 26: | Riga 25: | ||
.LineTo(200, 100) | .LineTo(200, 100) | ||
.Stroke | .Stroke | ||
End With | End With | ||
End | |||
disegnerà nella ''DrawingArea'' una linea che ha come punto di origine le coordinate x=20, y=40, e come punto finale le coordinate impostate nel successivo Metodo "''.LineTo()''". | disegnerà nella ''DrawingArea'' una linea che ha come punto di origine le coordinate x=20, y=40, e come punto finale le coordinate impostate nel successivo Metodo "''.LineTo()''". | ||
| Riga 37: | Riga 35: | ||
<BR>Va sottolineato che, quando si utilizzano due o più Metodi ".LineTo()", il punto di origine di ciascuna linea, che sarà disegnata da ogni Metodo ".LineTo()" a cominciare dal secondo in poi, ha le sue coordinate d'origine nel punto finale della linea precedente. | <BR>Va sottolineato che, quando si utilizzano due o più Metodi ".LineTo()", il punto di origine di ciascuna linea, che sarà disegnata da ogni Metodo ".LineTo()" a cominciare dal secondo in poi, ha le sue coordinate d'origine nel punto finale della linea precedente. | ||
<BR>Così questo codice: | <BR>Così questo codice: | ||
Public Sub DrawingArea1_Draw() | |||
With Paint | With Paint | ||
| Riga 45: | Riga 43: | ||
.LineTo(100, 200) | .LineTo(100, 200) | ||
.Stroke | .Stroke | ||
End With | End With | ||
End | |||
prevede il disegno di tre linee. | prevede il disegno di tre linee. | ||
In particolare: | In particolare: | ||
| Riga 69: | Riga 68: | ||
.LineTo(100, 200) | .LineTo(100, 200) | ||
.Stroke | .Stroke | ||
End With | End With | ||
End | End | ||
Versione attuale delle 04:37, 9 ago 2025
La definizione di una linea è costituita da due punti di riferimento: quello iniziale (di origine) e quello finale.
Per disegnare in una DrawingArea linee mediante il codice, si utilizza il Metodo ".LineTo()" della Classe Paint. Per ottenere il disegno è necessario usare poi anche il Metodo ".Stroke".
Il Metodo ".LineTo()" possiede due parametri che rappresentano le coordinate del punto finale della linea.
Il punto d'origine, invece, è predefinito ed è pari a x=0, y=0, se il Metodo ".LineTo()" è all'inizio della funzione Paint (ossia se non è preceduto da altro Metodo ".LineTo()" o dal Metodo ".MoveTo()".
Così questo codice:
Public Sub DrawingArea1_Draw() With Paint .LineTo(200, 100) .Stroke End With End
disegnerà nella DrawingArea una linea che ha come punto di origine le coordinate x=0, y=0, e come punto finale le coordinate impostate nel Metodo ".LineTo()".
Impostare il punto iniziale di una linea da coordinate diverse da 0,0
Se si intende far impostare il punto di origine di una linea in coordinate diverse da quelle predefinite 0,0, è necessario premettere il Metodo ".MoveTo()" al Metodo ".LineTo()".
Così questo codice:
Public Sub DrawingArea1_Draw() With Paint .MoveTo(20, 40) .LineTo(200, 100) .Stroke End With End
disegnerà nella DrawingArea una linea che ha come punto di origine le coordinate x=20, y=40, e come punto finale le coordinate impostate nel successivo Metodo ".LineTo()".
Disegnare più linee a formare un'unica linea spezzata
Per disegnare più linee a formare un'unica linea spezzata, bisognerà combinare adeguatamente i già visti Metodi ".MoveTo()" e ".LineTo()".
Va sottolineato che, quando si utilizzano due o più Metodi ".LineTo()", il punto di origine di ciascuna linea, che sarà disegnata da ogni Metodo ".LineTo()" a cominciare dal secondo in poi, ha le sue coordinate d'origine nel punto finale della linea precedente.
Così questo codice:
Public Sub DrawingArea1_Draw() With Paint .MoveTo(20, 40) .LineTo(200, 100) .LineTo(10, 150) .LineTo(100, 200) .Stroke End With End
prevede il disegno di tre linee.
In particolare:
- il punto d'origine della prima linea è impostato alle coordinate fissate nel Metodo ".MoveTo()";
- il punto finale della prima linea è impostato alle coordinate fissate nel primo Metodo ".LineTo()";
- il punto d'origine della seconda linea è impostato alle medesime coordinate del punto finale della prima linea (quindi comincerà esattamente dove è terminata la prima linea);
- il punto finale della seconda linea è impostato alle coordinate fissate nel secondo Metodo ".LineTo()";
- il punto d'origine della terza linea è impostato alle medesime coordinate del punto finale della seconda linea (quindi comincerà esattamente dove è terminata la seconda linea);
- il punto finale della terza linea è impostato alle coordinate fissate nel terzo Metodo ".LineTo()";
Interporre il Metodo ".MoveTo()" fra due Metodi ".LineTo()"
E' ovvio che, ponendo fra i due Metodi ".LineTo()", un Metodo ".MoveTo()", si possono ottenere due linee disgiunte e separate.
Esempio pratico:
Public Sub DrawingArea1_Draw() With Paint .MoveTo(20, 40) .LineTo(200, 100) .MoveTo(150, 40) .LineTo(10, 150) .LineTo(100, 200) .Stroke End With End