Community › Forum › Coding › Tutorial Python › Corso Python Alek Mugnozzo – Lezione 5 Ricerca per: Taggato: corso, Python, scripting Questo topic ha 11 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 3 anni, 6 mesi fa da BruDem. Stai visualizzando 12 post - dal 1 a 12 (di 12 totali) Autore Post 3 Maggio 2021 alle 23:10 #849007 Alek MugnozzoPartecipante @mugnozzo Ciao! Ecco il file della lezione di stasera: lezione-5 Effettuare il login per mettere i like 4 Maggio 2021 alle 9:37 #849008 BruDemMembro @brunodemasi Ciao Alek, volevo chiederti se, nelle prossime lezioni, puoi mostrarci come importare, all’interno nello script, una sedia modellata nella scena (per praticità può essere anche un cubo). Effettuare il login per mettere i like 5 Maggio 2021 alle 9:11 #849063 Alek MugnozzoPartecipante @mugnozzo Ciao Bruno! Cosa intendi dire di preciso con importare all’interno dello script? Vuoi trasformare in codice python una cosa già modellata? Di preciso per cosa ti servirebbe? Ti faccio queste domande per capire al meglio il tuo problema e trovare la soluzione migliore. Effettuare il login per mettere i like 5 Maggio 2021 alle 9:17 #849064 BruDemMembro @brunodemasi Ciao Alek, volevo vedere come fai a leggere i dati nella scena: vertici , edge, face per inglobarli nello script. Immaginavo un processo inverso, invece di creare l’oggetto nello script lo crei nella scena e poi lo porti nello script per renderlo ripetibile. Effettuare il login per mettere i like 5 Maggio 2021 alle 15:24 #849078 BruDemMembro @brunodemasi Alek, l’idea è quella di avere un unico oggetto con un’unica origine, così è più facile da posizionare. Nella lezione precedente, la tua sedia era composta da 5 oggetti con 5 origini . Strategia che per imparare è ottima ma un po’ macchinosa. Inoltre è molto facile confondersi. Dal mio punto di vista è molto più semplice modellare nella scena perchè ho tutta una serie di strumenti che mi aiutano a visualizzare e controllare quello che faccio. Effettuare il login per mettere i like 7 Maggio 2021 alle 10:09 #849152 Alek MugnozzoPartecipante @mugnozzo Ciao Bruno, Scusa se ti rispondo solo ora. Per quanto riguarda la tua prima domanda, se vuoi creare un oggetto in una scena e renderlo ripetibile ti conviene non importarlo vertice per vertice nello script (cosa che potresti fare semplicemente andando a leggere dentro bpy.data.object[‘nomeoggetto’].data) ma andare a duplicarlo in Python, senza stare ad accedere a tutti i singoli vertici/spigoli/facce. La questione dell’oggetto unico o oggetti multipli è un po’ soggettiva. Puoi fare in entrambi i modi ma devi vedere quale torna meglio a te. Io personalmente ritengo molto migliore fare oggetti diversi (al massimo raggruppati in collezioni e sottocollezioni per accedere meglio ad essi e spostarli/posizionarli). Riconosco che creare varie sedie al centro della scena come oggetti unici e posizionarle poi nei punti intorno al tavolo possa essere più veloce, però con un piccolo sforzo in più posso crearla (sempre al centro) con oggetti separati, raggrupparli dentro un Empty e muovere quello. Questo comporta una piccola azione in più (il raggruppamento nell’Empty) ma mi da il vantaggio di poter accedere poi alle singole parti della sedia. Mettiamo che io voglia rompere un gambo, staccare un pezzo, o roba simile. Con un oggetto unico devo andare a ricercare i vertici giusti da muovere, mentre con gli oggetti separati ho accesso alle singole parti della sedia. Ti ripeto, è una cosa molto soggettiva, quindi comprendo il tuo punto di vista. Dipende molto sia da chi scrive il codice che dall’uso che poi dovrà fare dell’oggetto. Nella prossima lezione useremo le classi per creare il sistema tavolino/sedie e useremo gli empty per raggruppare le parti di un tavolo o di una sedia e muoverli meglio. Effettuare il login per mettere i like 7 Maggio 2021 alle 10:51 #849155 BruDemMembro @brunodemasi Ciao Alek, grazie per la risposta. Ti ho chiesto quella soluzione perchè occupandomi si stampa 3D, legata alla ceramica, per me è vitale l’ordine dei vertici perchè determinano i percorsi di stampa. Quindi sono interessato a capire come funziona il modulo Bmesh di Blender per potere manipolare i vertici e ordinarli secondo delle regole. Effettuare il login per mettere i like 7 Maggio 2021 alle 11:33 #849164 Alek MugnozzoPartecipante @mugnozzo Ciao! Nella lezione di Lunedì prossimo lavoreremo anche sulle mesh che, ti anticipo, si trovano sotto bpy.data.meshes. Prova intanto a navigare bpy.data.meshes, i suoi sotto-oggetti e i suoi metodi. Noterai che dentro bpy.data.meshes[‘nomeoggetto’].polygons trovi le facce, mentre sotto edges e vertices trovi gil edge e i vertici. Fammi sapere se hai difficoltà. Poi Lunedì vediamo. Effettuare il login per mettere i like 7 Maggio 2021 alle 12:35 #849167 BruDemMembro @brunodemasi Ciao Alek, un po’ ci ho già guardato però il problema da risolvere non è così immediato perchè l’ordine dei vertici e la direzione determinano i percorsi di stampa. Capisco che è un problema che esula dal corso però sarei curioso di vedere come approcci il problema. https://blender.stackexchange.com/questions/36577/how-are-vertex-indices-determined Effettuare il login per mettere i like 7 Maggio 2021 alle 14:38 #849176 Alek MugnozzoPartecipante @mugnozzo Comunque da Python puoi (ri)assegnare l’ordine dei vertici. È macchinoso ma una volta automatizzato è facile. Più tardi faccio 2 prove e ti scrivo. Però con i software di slicing che ho usato io il gCode viene creato in maniera ottimizzata per la stampa, senza guardare come sono messi i vertici. Effettuare il login per mettere i like 9 Maggio 2021 alle 8:11 #849268 DIAPASON76Partecipante @maurola76 Salve a tutti ! E’ possibile utilizzare il comando input per inserire dati dalla console ? Se lo utilizzo mi da RuntimeError lost sys.stdin ! Effettuare il login per mettere i like 9 Maggio 2021 alle 9:50 #849271 BruDemMembro @brunodemasi Asking for user input in using scripting byu/Trixworld inblenderpython Effettuare il login per mettere i like Autore Post Stai visualizzando 12 post - dal 1 a 12 (di 12 totali) Devi essere connesso per rispondere a questo topic. Accesso Nome utente: Password: Mantienimi connesso Accesso