Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
te lo spiego a parole e vediamo se mi capisci
per spiegarmi meglio dato che non posso disegnare immagina un orologio, mi interessano le quattro posizioni
12
9 3
6
Vedi se riesci ad organizzarti con dei cicli for in modo che:
parti (ad esempio) dalla coordinata X del 12 (nell'orologio) fino ad arrivare alla X del 3. Nel ciclo (dove chiaramente la X aumenta) fai aumentare gradualmente la Y delle label. Poi vai dal 3 al 6 (quindi la X si va abbassando) e la Y va aumentando). Poi da 6 a 9 (la X si abbassa) e la Y va diminuendo. Poi dal 9 al 12 (aumenta la X) e la Y va crescendo.
Se hai dubbi chiedi pure
io ti posto il procedimento ma me l'aspettavo più semplice, infatti non viene un cerchio perfetto:
Codice sorgente - presumibilmente VB.NET
Dim x As Int32
Dim s AsDouble
PrivateSub Button1_Click()'ad esempio
x = tre.X
s = 1
For Y As Int32 = tre.YTo sei.YStep(sei.Y- tre.Y)/22
'disegna label
s -= 0.4
x += s
Next
s = 1
x = nove.X
For y As Int32 = nove.YTo sei.YStep(sei.Y- nove.Y)/22
'disegna label
s -= 0.4
x -= s
Next
EndSub
Allora...al posto di disegna label chiaramente va il codice per disegnare la label e poi il codice così come è non funziona, perchè trovi quei nove.Y, sei.y e tre.Y che daranno errore. Ti spiego cosa indicano. Dato che sei tu a scegliere la grandezza del cerchio, una volta che avrai deciso dove posizionare il 12, il 3, il 6 ed il 9 (parlo sempre del cerchio come un orologio), nove.Y (ad esempio) indicherà la coordinata Y del punto del 9, così come tre.Y indicherà la coordinata Y del punto dove si trova il 3 (ho fatto così perchè programmo in VB.NET e lì è un po' diverso).
Ti consiglio comunque di aspettare ancora un po' (se non è urgentissimo) che intanto cerco di trovare una soluzione più leggera e semplice. Tra poco posterò di nuovo per dirti se ho trovato una soluzione migliore.
EDIT: Scarica questo sorgente di orologio analogico proprio da pierotofy.it: http://www.pierotofy.it/pages/download.php?filename=100p97 ... Utilizza la trigonometria (seno e coseno di angoli) per far girare le lancette intorno al proprio estremo (considerando le lancette come segmenti). Nel sorgente troverai due coordinate x e y. Queste coordinate girano in cerchio quindi prova a sfruttarle (chiaramente togliendo tutto il codice che non serve perchè fa parte dell'orologio) per posizionare le tue label. Dimmi se ci riesci.
Ultima modifica effettuata da ruggy94 il 12/04/2009 alle 15:38