VI10AddArc3
V = Vector
I = Image
Funzione utilizzata per la gestione della funzionalità Vector Image (oggetto presente su alcune versioni di Qpaint).
La funzione VI10AddArc3 aggiunge il comando ARC3 in coda alle istruzioni da processare nel Buffer per eseguire il disegno.
Il comando ARC3 traccia un arco su di una circonferenza il cui centro si trova alle coordinate Xo e Yo passate alla funzione. Questo arco va dalle coordinate attuali alle coordinate X e Y, anche queste passate alla funzione.
Le coordinate X e Y vengono inoltre impostate, a fine istruzione, come coordinate attuali.
Buffer |
IMPLEMENTAZIONE
VI10AddArc3 (awBuffer, Coord_X, Coord_Y, Centre_Xo, Centre_Yo, Radius)
Parametri:
IN/OUT | TIPO VARIABILE | NOME DI ESEMPIO | DIM | |
---|---|---|---|---|
IN | ARRSYS / ARRGBL | awBuffer | W | Array che funge da buffer per istruzioni/dati |
IN | CONST/ GLOBAL | Coord_X | W | Variabile contenente il valore della coordinata X del punto finale dell'arco, all'interno dell'oggetto Vector Image. |
IN | CONST/ GLOBAL | Coord_Y | W | Variabile contenente il valore della coordinata Y del punto finale dell'arco, all'interno dell'oggetto Vector Image. |
IN | CONST/ GLOBAL | Centre_Xo | W | Variabile contenente il valore della coordinata Xo del centro della circonferenza sulla quale viene tracciato l'arco. |
IN | CONST/ GLOBAL | Centre_Yo | W | Variabile contenente il valore della coordinata Yo del centro della circonferenza sulla quale viene tracciato l'arco. |
IN | CONST/ GLOBAL | Radius | W | Variabile contenente il valore del raggio della circonferenza sulla quale si vuole tracciare l'arco. |
Esempio
TASK_00
MAIN: VI10InitBuffer (awBuffer) ;Inizializza il Buffer Color = 0 ;Imposta colore nero VI10AddPen (awBuffer, Color) ;Aggiunge il comando PEN Coord_X = 0 ;Imposta le coordinate per il MOVE Coord_y = 70 VI10AddMove (awBuffer, Coord_X, Coord_Y) ;Aggiunge il comando MOVE Coord_X = 20 ;Imposta le coordinate del punto finale dell'arco Coord_y = 50 Centre_Xo = 0 ;Imposta le coordinate del centro circonferenza Centre_Yo = 50 Radius = 20 ;Imposta il Raggio della circonferenza VI10AddArc3 (awBuffer, Coord_X, Coord_Y, Centre_Xo, Centre_Yo, Radius) ;Aggiunge comand ARC3 .... WAIT 1 JUMP MAIN END
Note
-
Considerata la figura sottostante:
il comando ARC3 traccia un arco di cerchio dal punto A al punto B, su una circonferenza che ha il proprio centro in Co (Xo, Yo).