Vai al contenuto

CP – Cerchio

  • Senza categoria

Prova a disegnare un cerchio senza utilizzare la funzione predefinita GraphicsWindow.DrawEllipse().

Sarà necessario utilizzare le funzioni seno e coseno con angolo variabile da 0 a 360 gradi

Il codice è piuttosto lungo perché sarà utilizzato in seguito per realizzare molte figure

'------------------------------------------------------ Scelte grafiche
DIM=800             ' Finestra
COLORE1="#10000000" ' Raggio
SPESSORE=1          '
COLORE2="#60000000" ' Punto nero
r=2                 ' --- Raggio
'------------------------------------------------------ Scelte specifiche
RAGGIO=0.4*DIM      ' Fattore di scala 
GIRI=1              ' Numero di giri
RITARDO=10          ' Per rallentare l'animazione
'------------------------------------------------------ FINESTRA GRAFICA
GraphicsWindow.Title     ="Cerchio"
GraphicsWindow.Width     =DIM
GraphicsWindow.Height    =DIM
GraphicsWindow.PenWidth  =SPESSORE
GraphicsWindow.PenColor  =COLORE1 
GraphicsWindow.BrushColor=COLORE2
'------------------------------------------------------ COSTANTI DI SERVIZIO
W2=DIM/2             ' Origine 
H2=DIM/2
pi2=2*Math.Pi        ' 2 pi greco
d=2*r                ' diametro del punto nero
angolo=0             ' valore iniziale
deltaAngolo=1        ' incremento di 1°
NUMERO=360*GIRI      ' numero totale di punti neri
'------------------------------------------------------
For i=1 to NUMERO 
    phi=Math.GetRadians(angolo)+pi2*Math.Floor(angolo/360)
    '---------------------------------------- FUNZIONE!
    ro=1                                    ' ro=f(phi)
    '----------------------------------------
    x=W2+ro*RAGGIO*Math.Cos(phi)            ' Coordinate
    y=H2-ro*RAGGIO*Math.sin(phi) 
    GraphicsWindow.DrawLine(W2,H2, x,y)     ' Raggio grigio
    GraphicsWindow.FillEllipse(x-r,y-r,d,d) ' Punto nero
    '----------------------------------------
    angolo=angolo+deltaAngolo
    Program.Delay(RITARDO)
EndFor


Nelle prossime pagine dovrai variare soltanto la FUNZIONE

ro=...

e di conseguenza fare le Scelte specifiche per rendere significativa la rappresentazione

RAGGIO=0.4*DIM ' Fattore di scala 
GIRI=1         ' Numero di giri

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.