Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator
Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator
Dopo oltre 4 anni si rinnova la serie Sony Alpha 7 con la quinta generazione, che porta in dote veramente tante novità a partire dai 30fps e dal nuovo sensore partially stacked da 33Mpixel. L'abbiamo provata per un breve periodo, ecco come è andata dopo averla messa alle strette.
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme e Aston Martin Aramco F1 Team si sono (ri)unite dando alla vita un flagship con chip Snapdragon 8 Elite Gen 5 e design esclusivo ispirato alle monoposto di Formula 1. La Dream Edition introduce la nuova colorazione Lime Essence abbinata al tradizionale Aston Martin Racing Green, decorazioni intercambiabili personalizzate e una confezione a tema F1, intorno a uno smartphone dall'ottima dotazione tecnica con batteria da 7000mAh ricaricabile a 120W e isola fotografica intercambiabile
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
Abbiamo partecipato all'OVHcloud Summit 2025, conferenza annuale in cui l'azienda francese presenta le sue ultime novità. Abbiamo parlato di cloud pubblico e privato, d'intelligenza artificiale, di computer quantistici e di sovranità. Che forse, però, dovremmo chiamare solo "sicurezza"
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-02-2008, 01:39   #1
Utone
Senior Member
 
L'Avatar di Utone
 
Iscritto dal: Jun 2007
Messaggi: 1805
[Python] Spirali di prova

Ciao a tutti,
è la prima volta che scrivo in questa sezione...
io sono un ragazzo all 3° anno all ITIS corso elettronico.
Facendo il python in sistemi ho visto che aveva questa interfaccia grafica allora ho provato a implementare un programmino...
Sembra funzionare tutto ma se badate bene nella seconda spirale la curva iniziale è meno accentuata di quella della prima spirale.
C'è un errore?

Il programma è allegato in zip...


Saluti
Allegati
File Type: zip spirale.zip (739 Bytes, 12 visite)
Utone è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2008, 12:56   #2
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
così sulla fiducia senza guardare il codice ma solo le spirali direi che la tartaruga della seconda spirale parte con orientazione shiftata di 90 gradi in senso anti-orario....
quindi è come se si perdesse il primo step penso....
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2008, 12:59   #3
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
visto il codice...
ma usare una funzione per disegnare la spirale in modo da richiamarla due volte con i parametri corretti anzichè scrivere due volte lo stesso codice?
In quel modo sei anche sicuro che le due spirali ti vengano identiche (se hai scritto correttamente il codice di inizializzazione nella funzione) e il tuo codice ne guadagna MOLTO in leggibilità
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2008, 13:00   #4
Utone
Senior Member
 
L'Avatar di Utone
 
Iscritto dal: Jun 2007
Messaggi: 1805
scusa ma come faccio a usare la stessa funzione per disegnarne 2??

Ultima modifica di Utone : 23-02-2008 alle 13:11.
Utone è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2008, 18:56   #5
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
Quote:
Originariamente inviato da Utone Guarda i messaggi
scusa ma come faccio a usare la stessa funzione per disegnarne 2??
basta che gli passi i parametri corretti (tipo velocità e numero di giri).
Codice:
def drawSpiral(speed, revolutions):
    ...
end
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2008, 20:02   #6
Utone
Senior Member
 
L'Avatar di Utone
 
Iscritto dal: Jun 2007
Messaggi: 1805
ah...
queste funzioni non le conosco ancora...
Utone è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2008, 20:14   #7
Utone
Senior Member
 
L'Avatar di Utone
 
Iscritto dal: Jun 2007
Messaggi: 1805
Il prof mi ha detto di fare cosi:
Quote:
Originariamente inviato da mio_prof Guarda i messaggi
Hai spostato la tartaruga, ma non hai rimesso l'angolo iniziale a zero.
Il disegno diverso dipende solo dall'angolo iniziale che è diverso per le due spirali.

Cambia le istruzioni

turtle.color('white')
turtle.sety(-100)
turtle.setx(100)
turtle.sety(0)

con

turtle.up() # alza la penna
turtle.goto(100,0) # spostata la tartaruga nel seguente punto (x,y)
turtle.setheading(0) # setta l'algolo della tartaruga a zero (uguale all'angolo iniziale)
turtle.down() # abbassa la penna

giustamente le spirali vengono uguali ma i tempi mettendo stesso numero di giri e stessa veloità vengono diversi
Utone è offline   Rispondi citando il messaggio o parte di esso
Old 24-02-2008, 20:30   #8
Utone
Senior Member
 
L'Avatar di Utone
 
Iscritto dal: Jun 2007
Messaggi: 1805
up
Utone è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 11:05   #9
Utone
Senior Member
 
L'Avatar di Utone
 
Iscritto dal: Jun 2007
Messaggi: 1805
ho rifatto il programma con gli accorgimenti che mi hai detto...

eccolo
Utone è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 11:17   #10
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
meglio, vero?
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 15:10   #11
Utone
Senior Member
 
L'Avatar di Utone
 
Iscritto dal: Jun 2007
Messaggi: 1805
sisi molto meglio...
il mio prof ha detto che i tempi non vengono uguale perchè windows non è un os real time e si accumulano vari errori..
Utone è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 16:13   #12
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
ROTFL: questa mi mancava. Aspetta che annoto.

Quindi il tuo prof. queste prove le avrà fatte con s.o. come QNX immagino. Roba alla portata della gente comune, insomma...
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 01-03-2008, 21:02   #13
Utone
Senior Member
 
L'Avatar di Utone
 
Iscritto dal: Jun 2007
Messaggi: 1805
forse mi sono spiegato male...
ecco quello che mi ha scritto
Quote:
Originariamente inviato da mio_prof Guarda i messaggi
Quote:
Originariamente inviato da io
impostando stessa velocita e stesso numero di giri i tempi risultano simili ma non uguali....
Quando vale il tempo complessivo ?
Quanto vale l'errore percentuale ? 100*(t1-t2)/t2

I tempi diversi dovrebbero essere causati dal fatto che, per rallentare la tartaruga, viene richiamata una funzione che chiede al sistema operativo di avvertire quando è passato un determinato intervallo di tempo.

In pratica l'algoritmo esegue tante sequenze: traccia - aspetta .
Tanto più piccolo è l'intervallo di attesa, tanto più veloce è la tartaruga.

Il sistema operativo avverte l'applicazione della fine dell'intervallo desiderato con una certa imprecisione (normalmente >20ms).
Tale imprecisione è sempre presente nei sistemi operativi utilizzati dai PC, che non sono "real time".

La somma di tante piccole imprecisioni può diventare misurabile.

Se sei curioso e desideri maggiori informazioni, prova a leggere i seguenti articoli:

http://it.wikipedia.org/wiki/Multitasking
http://it.wikipedia.org/wiki/Scheduler
http://it.wikipedia.org/wiki/Sistema...tivo_real-time

Ciao
Utone è offline   Rispondi citando il messaggio o parte di esso
Old 01-03-2008, 21:43   #14
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Rimane il fatto che anche un s.o. "real-time" ha un suo "tempo di risposta" che comporterà anch'esso una perdita di precisione che sarà, a sua volta, anch'essa misurabile (bisognerà semplicemente attendere più tempo per l'accumularsi degli errori).

Altra cosa, qui parla dell'intervallo di attesa e questo, più che sul fatto che il s.o. sia "real-time" o meno, dipende dalla precisione del timer interno utilizzato dal s.o. per dispatching degli eventi time-based.

In soldoni: possono esistere s.o. "non real-time" che, però, offrono timer a precisione molto elevata.

Per inciso: anche su Windows esistono timer come questi. Ecco qui http://www.mtsu.edu/~csjudy/directX/...anceTimer.html il primo link che ho recuperato sull'argomento.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 04-03-2008, 20:24   #15
Utone
Senior Member
 
L'Avatar di Utone
 
Iscritto dal: Jun 2007
Messaggi: 1805
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Rimane il fatto che anche un s.o. "real-time" ha un suo "tempo di risposta" che comporterà anch'esso una perdita di precisione che sarà, a sua volta, anch'essa misurabile (bisognerà semplicemente attendere più tempo per l'accumularsi degli errori).
Tutti i sistemi di misura hanno una loro imprecisione

Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Altra cosa, qui parla dell'intervallo di attesa e questo, più che sul fatto che il s.o. sia "real-time" o meno, dipende dalla precisione del timer interno utilizzato dal s.o. per dispatching degli eventi time-based.
Il tempo può essere misurato con molta precisione anche con un sistema operativo normale, al limite si può utilizzare un orologio hardware che lavora per conto suo, magari sincronizzato con un orologio atomico.

Ma quello che ci interessa non è l'errore della misura di tempo, ma il ritardo con cui il sistema operativo richiama i vari task.

L'errore dipende dal tempo massimo che impiega il sistema operativo a restituire il controllo al programma che fa la misura. Nel caso di windows, tale errore può essere > 20ms.

E' vero che la precisione della misura dipende dal "timer interno" utilizzato, però occorre sempre aggiungere il ritardo (casuale) introdotto dal multitasking.

Se gli intervalli di tempo sono molto piccoli e si devono sommare fra di loro, come nel caso della misura di tante azioni "traccia-aspetta" che portano al disegno della spirale, la differenza di tempi fra due disegni diventa misurabile e significativa, indipendentemente dalla precisione del "timer interno".



Quote:
Originariamente inviato da cdimauro Guarda i messaggi
In soldoni: possono esistere s.o. "non real-time" che, però, offrono timer a precisione molto elevata.
Vero, però la differenza di tempo che hai osservato nel movimento a spirale della tartaruga, non è causata dalla imprecisione del timer utilizzato, ma dell'inevitabile errore introdotto dal multitasking. Tale errore diventa grande quando si sommano tante misure di tempo.
Utone è offline   Rispondi citando il messaggio o parte di esso
Old 04-03-2008, 21:45   #16
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Indubbiamente, ma l'errore introdotto dal multitasking è praticamente ineliminabile (a meno che tu non abbia il pieno controllo del sistema, come quando su AmigaOS si eseguiva una chiamata all'API Disable() che disabilitava qualunque interrupt) anche in un s.o. realtime.

L'unica cosa che puoi fare è verificare mediamente a quanto ammonta il ritardo dovuto all'esecuzione dello scheduler e regolarti di conseguenza.

Altra cosa molto utile, puoi anche elevare la priorità del tuo processo a "real-time", mettendolo al di sopra persino di quasi tutti i processi del s.o. e, quindi, garantendoti praticamente quasi tutta la CPU.

Cose che, ad esempio, si fanno generalmente nei giochi per PC.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 04-03-2008, 21:52   #17
Utone
Senior Member
 
L'Avatar di Utone
 
Iscritto dal: Jun 2007
Messaggi: 1805
eh già!
sotto windows non si può avere un risultato perfetto...
comunque era solo una curiosità..
Grazie per il supporto!...
Utone è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator Sony Alpha 7 V, anteprima e novità della ...
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1 realme GT 8 Pro Dream Edition: prestazioni da fl...
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum OVHcloud Summit 2025: le novità del cloud...
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI C...
DJI Neo 2 in prova: il drone da 160 grammi guadagna il gimbal e molto altro DJI Neo 2 in prova: il drone da 160 grammi guada...
AWS rinnova lo stack dell’IA: Trainium3,...
AWS entra nell'era degli agenti: il keyn...
Roscosmos: inventario a bordo della ISS ...
Arduino viene acquisita da Qualcomm e ca...
Un razzo spaziale Arianespace Vega C ha ...
Terra Next dà il via a Scale-Up P...
Il veicolo riutilizzabile ESA Space Ride...
Un Mousepad per mirare meglio: uno youtu...
Tokyo Electron sotto accusa: Taiwan cont...
L'ESA sta cercando alternative all'utili...
iliad TOP 250 PLUS e TOP 300 PLUS: valan...
FRITZ! a Sicurezza 2025: connessioni WiF...
I 18enni di oggi non fanno più la...
Super offerte Apple: iPhone 16e a 529€ e...
Torres EVT arriva in Italia con listino ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 01:39.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v