Ma un banale foglio exel dove indichi progetto, data inizio e fine no?
Ciao Luca, potrebbe essere una soluzione.
Ma il mio caso, e penso di molti altri, è quello di modelli che richiedono poche ore, spesso frammentate durante la giornata per altri mille impegni.
Non è poi inconsueto che si lavori su tre, quattro, o anche più modelli contemporaneamente…
Alla sera ti assicuro che non si capisce bene quanto tempo hai dedicato ad uno specifico lavoro.
Sarà, ma a maggior ragione mi sembra la soluzione più semplice.
innanzitutto ringrazio tutti per le varie proposte e idee.
temo che l’una o l’altra non siano completamente veritiere nel monitorare i tempi effettivi.
ho commissionato a un programmatore la stesura di un software per monitorare i tempi con salvataggio file log in base al nome del progetto.
vediamo se riusciamo a tirare fuori un programma che monitori tutte le applicazioni Windows…stay tuned,seguiranno aggiornamenti
Seguo.
mi dispiace rhino non abbia una cosa del genere integrata ma non è neanche una vera “pecca”
Fabio, su Rhino 6 vedo una cosa del genere:
Se sul 7 e’ uguale (o analogo), secondo te non si potrebbe sfruttare per ricavare il tempo che ti serve ?
Ciao Emy.
Potrebbe essere una strada, ho visto che si possono eseguire anche degli script.
Andrebbe quindi bene per “fermare il cronometro”, ma per riavviarlo?
Sai che io di programmazione e script non ci capisco un tubo.
Ciao Fabio !
Si’, pensavo anch’io a uno script … ma ho le idee confuse …
E’ una feature che non ho mai usato, quindi non ho idea come funzioni, bisognerebbe comunque provare.
Avrei una mezza idea, ma basata sul fatto che l’idle processor parta dopo il tempo stabilito di inattivita’, ma poi non parta piu’ finche’ non riprendi a usare Rhino (e poi rifai una pausa).
Se invece parte comunque ogni tot secondi quando Rhino e’ inattivo, devo pensare una cosa diversa …
Vedo di fare poi una prova e ti dico cosa succede …
secondo me, per una soluzione parziale senza andarsi a barcamenarsi troppo
(anche perché credo che le esigenze di ogni persona possono essere le più svariate)
un piccolo codice che traccia la data e ora dell’esecuzione di ogni comando già sarebbe una buona cosa.
(e se fosse possibile anche la conclusione del suddetto comando)
ps poi per essere il più sicuro possibile, avevo pensato che non sarebbe male l’idea di registrarsi, la schermata del desktop anche in qualità low in modo da tener traccia di tutto quanto anche a posteriori.
Grazie innanzitutto.
Ma quindi hai modo di verificare da script lo stato di questo “Idle Processor”?
Un’idea, spero non troppo stupida: cosa ne pensi di usare degli “User Text” per memorizzare il tempo?
Non ci sarebbe da gestire il nome del file ecc, e sarebbe parte integrante del modello.
Boh, pensaci.
Se serve a Fabio, mi accontento …
Intanto, grazie per le idee, ragazzi !
Vorrei provare, giusto per vedere quando parte …
Oggi conto di fare una prova …
Ciao Emi,
è la stessa cosa che stavo pensando ad inizio thread.
Praticamente abbiamo la possibilità di eseguire comandi all’avvio di Rhino, prima o dopo alcuni comandi e quando il programma va in idle.
Quindi,
- Avvio Rhino e marco il tempo di start (lanciando il comando/script)
- Eseguo lo Stop o Parziale prima del comando Save, SaveAs, Incremental Save o Export
- Se il programma va in Idle eseguo comunque un parziale e faccio ripartire all’uscita da Idle
Il discorso di salvare nel Document un array con tutte le “timbrature” ti farebbe mantenere traccia di tutte le sessioni di edit effettuate.
Si potrebbe anche salvare in un file esterno ma la vedo troppo incasinata.
Avevo anche pensato ad un paio di pulsanti per chiedere la situazione di editing (una finestra con l’elenco di tutte le sessioni registrate) e un pulsante di reset che cancella l’array.
Nelle sessioni si potrebbe salvare anche il nome utente con cui è loggato Rhino così da risalire a chi ha lavorato…
Il problema è che le idee su come fare mi vengono… ma non riesco a mettere in pratica perchè non ho tempo… (si sarà notato che intervengo molto meno nel NG… il lavoro mi massacra… gli zebedei).
Comunque tu che sei giovine (inside dentro) e disponibile, insieme al tuo adepto Salvio, dai dai dai che mettete su lo scriptino in quattro e quattrootto!!!
No sta a mandarmi… daiiiii
Ho provato su Rhino 6, con questo comando:
Il testo da scrivere e’ questo:
-runpythonscript
(
print( 'IDLEPROC' )
)
Sembra che, appena smetti di interagire con Rhino, trascorso il tempo impostato, il comando venga eseguito.
E poi non succede niente finche’ non ritorni a fare qualcosa su Rhino.
Come avevo accennato, pensavo di scrivere l’output su dei files, e non ci sarebbero problemi di spazio.
Usando lo UserText di Rhino, non so … si puo’ provare.
Io per il file pensavo di scrivere data e ora a ogni esecuzione.
Con lo UserText non vorrei rischiare di inserire troppi dati nel documento …
Vediamo, il testo potrebbe essere circa 30 bytes.
Scrivendo … diciamo ogni 5 secondi, risulta circa 20 KB ogni ora …
Forse non e’ granche’, sempre che Rhino non abbia problemi con degli user text di queste dimensioni …
Che dici, Fabio, potrebbe andare ?
Poi certo ci vuole uno script per leggere i dati e ricavare le durate.
Basandosi sugli intervalli di tempo tra una registrazione e l’altra.
Potrebbe scartare gli intervalli oltre un certo tempo (da definire) e sommare tutti gli altri.
Che ti sembra, Fabio ?
Ciao Lucio !
Eh … io ci arrivo (quando ci arrivo) sempre con molta calma …
Come ho detto sopra, pensavo a una cosa piu’ semplice, sempre se funziona …
Sai … la pigrizia …
Era la mia idea di partenza … lo so, sono diffidente, ma se non faccio fare troppe cose a Rhino, preferisco …
Comunque Fabio e’ d’accordo con te, quindi credo che proveremo con gli UserText …
Eeeeeh … gia’ fatto !
Hahaha
Dai, comunque, se opti per salvare ogni tot secondi, potresti comunque utilizzare sempre lo stesso Timestamp.
Intendo, fai una rilevazione di start sessione (all’avvio di Rhino) e poi parti a salvare l’ora sempre sulla stessa posizione.
Il tempo totale è la differenza tra l’ora iniziale e quella finale (nel mezzo, durante Idle, il tempo rimane sospeso).
Comunque, io non mi porrei nemmeno il problema di rilevare il tempo continuamente, semplicemente se l’utente salva alla fine della sessione allora viene scritto il tempo nel file, se non salva va comunque perso tutto… ma credo sia anche ovvio, il tuo lavoro è appena andato perso… cavoli tuoi se non hai salvato (pagherà mica il cliente per la tua sbadataggine).
Vorrei evitare di impelagarmi con gli event handlers dei comandi , se non e’ necessario.
Per quello userei l’idle processor per ‘tenere traccia’ del tempo trascorso pacioccando su Rhino.
Senza preoccuparmi di Load, Save e altro.
L’operazione per l’idle processor si limita a scrivere l’ora da qualche parte (file o UsetText)
e il resto lo fa uno script che calcola il tempo … che a occhio mi sembra abbastanza semplice.
Vediamo cosa dice Fabio … che gia’ e un ‘cliente’ abbastanza difficile di suo …
Poi … tu non hai tempo purtroppo …
Ma se Salvio vuole provare a fare qualcosa secondo le sue idee … ovviamente lo aiutiamo.
Ciao Emilio io pensavo agli user text ovviamente perché avresti tutto nel file.
Pensavo però ad un uso “garibaldino”.
Una sola voce.
Se è già stata assegnata sommo il tempo conteggiato in quella sessione.
Se non è stata assegnata la creo e ci scrivo il tempo di quella sessione di lavoro.
A me non serve sapere in quali giorni ci ho lavorato e per quante ore, mi interessa solo il tempo totale.
Un tastino per richiamare la voce e magari convertirla in ore-minuti … cosa dici?
Ma come, ti riduco tutto ad una variabile e mi dici che sono difficile??
Hahaha, intanto ho buttato giù un’idea, poi comunque chi fa le robe decide a gusto suo
Per spiegare:
- All’apertura di Rhino salvo il tempo di start sessione e il nome dell’utente
- In contemporanea salvo l’ora nello start timer
- in occasione di un Idle, salvo lo stop timer e calcolo nel Tempo totale il parziale
- all’uscita dell’idle salvo nuovamente l’orario nello start timer fino al successivo idle
- ad ogni stop timer aggiungo il tempo conteggiato al totale parziale
- al momento di salvare, faccio uno stop timer e riporto nell’array i dati
- se non chiudo Rhino, proseguo la rilevazione fino al successivo save (ad ogni save andrò a sovrascrivere il valore dell’array che avevo scritto in precedenza così da non fare una sessione per ogni salvataggio).
Alla fine quando chiudo Rhino e ho salvato il file, avrò solo i dati salvati nell’array che mi faranno da Log mentre gli altri saranno solo dei valori sovrascrivibili.
Appunto !
Lo so che a te serve il tempo totale, ma io dove lo trovo il tempo totale ?
A me sembrava il modo piu’ sicuro, oltre che piu’ semplice, per registrare il tempo realmente impiegato su Rhino.
Ma se preferisci usare il tempo di apertura file o di load o altro, dimmi cosa vuoi usare … e io provo a vedere se ci riesco.
Scusa Lucio, puoi spiegare come funziona quel Timer, cos’e’, come lo accendo e lo spengo ? Grazie !
Hai ragione, ho postato l’immagine senza mettere la spiegazione… messo tutto sotto all’immagine.
So che è una spiegazione fatta male… porta pazienza…