PDA

Visualizza Versione Completa : LW Python



SlowMan
20-02-12, 11:37
Adesso che la versione 11 di LW è stata rilasciata ufficialmente,
penso che sia una buona idea discutere apertamente di questa nuova caratteristica:

Python

Per chi non lo sapesse,
trattasi di un linguaggio di scripting universale,
già supportato da altre piattaforme 3D,
come Blender per esempio.

Attenzione!
Le ultime versioni di Blender utilizzano la versione 3.x di Python,
mentre LW 11 supporta la versione 2.7.2,
ciò comporta differenze non solo di software ma anche di codice:
Python 2.x e Python 3.x seguono sviluppi separati.

A differenza del linguaggio di scripting nativo di LW,
LScript,
ancora presente nella versione 11,
Python ha dalla sua una grandissima disponibilità di risorse,
molte anche in italiano,
reperibili in rete e non solo:
esistono anche pubblicazioni cartacee relative alla programmazione in questo linguaggio.

N.B. LW 11 utilizza una versione incorporata di Python perciò non occorre installare la versione autonoma di Python,
tranne ne caso si voglia approfondire ulteriormente questo linguaggio al di fuori di LW 11.

------

Risorse:

Per cominciare riporto i links di riferimento a Python
già presentati nella documentazione aggiuntiva di LW 11:

http://docs.python.org/tutorial/index.html

http://wiki.python.org/moin/BeginnersGuide/NonProgrammers

http://www.diveintopython.net/

http://it.diveintopython.net/ (versione italiana del precedente link)

http://www.learnpython.org/


Qui un canale YouTube dove un ardito LW user propone i sui tutorials sulla programmazione di Python in LW 11:

http://www.youtube.com/user/mediadentist?feature=watch

e qui il relativo thread di riferimento sul forum di NT:

http://forums.newtek.com/showthread.php?p=1220312#post1220312


qui invece un link ad un PDF che introduce alla programmazione di Python in LW 11:

http://forums.newtek.com/attachment.php?attachmentid=101838&d=1329450706

e qui il relativo thread di riferimento sul forum di NT:

http://forums.newtek.com/showthread.php?p=1219909#post1219909

------

Un appunto per l'amministrazione di LWITA:

sarebbe utile aggiornare nella categoria Risorse (http://www.lwita.com/vb/forumdisplay.php?f=5) del forum la voce:

LW Plugins & LScripts (http://www.lwita.com/vb/forumdisplay.php?f=16)

in

LW Plugins, LScripts & Python (http://www.lwita.com/vb/forumdisplay.php?f=16)

così da avere un punto di riferimento più diretto dove postare e discutere di questa novità...
evitando anche di gonfiare ulteriormente questo semplice thread introduttivo. ;)

Grazie. :D

Fabio
20-02-12, 12:02
Mi sembra un'ottima iniziativa SlowMan,

grazie.

lw_render
20-02-12, 14:32
Bellissimo post Slowman complimenti :g1:

Slade
20-02-12, 15:19
Grazie per aver riportato le varie risorse :g1:

SlowMan
20-02-12, 16:20
Bene, lieto che l'idea piaccia. :)

Dimenticavo un'altro importantissimo link:

http://www.python.it/

è il sito ufficiale della comunità italiana di Python. :cool:

SlowMan
25-02-12, 15:26
Ecco un'idea intelligente e utile,
specialmente per chi già conosce il linguaggio LScript di LW
e vuole cimentarsi anche con Python:

LScript-2-Python (http://www.lucidgears.com:21134/) <- cliccare

è una utility on-line che serve per convertire gli script LS in script PY.

Si usa così:

1 - Nella barra "LScript file name: (required)" si inserisce il nome dello script (senza estensione)

2 - Nella finestra "Paste your valid LScript code here:" si inserisce il codice LS

3 - Si clicca sul pulsante Convert! e...

... Voilà! Il codice PY è servito. :D

Questo è il thread di riferimento sul forum NT:

http://forums.newtek.com/showthread.php?p=1222138

SlowMan
06-05-13, 11:15
Solo di recente ho scoperto un interessante trucchetto che aggiungo a questa discussione (anche per tenerla viva). :)

Nella cartella BIN di LW è presente un file ZIP chiamato:

python27.zip

se non ho capito male dovrebbe contenere i files di libreria per l'interprete Python incorporato in LW.

Leggendo alcune note a questi link:

http://www.clintons3d.com/plugins/lightwave/index.html
(script PY e LS per LW messi a disposizione da Clinton Reese)

http://forums.newtek.com/showthread.php?127053-xml-dom-minidom-module-not-found&p=1235610&viewfull=1#post1235610

sembra che gli script Python che utilizzano moduli aggiuntivi e che sono presenti nella libreria,
non funzionino correttamente perché la versione di LW Python (2.7.2)
non è in gradi di gestire tali moduli direttamente dal file python27.zip;
perciò il contenuto del file python27.zip può essere scompattato in una cartella nominata LIB
(successivamente python27.zip andrebbe rinominato o cancellato)
questa operazione dovrebbe consentire a script PY di sfruttare direttamente le suddette librerie.

------

P.S.
Mi chiedo se sia possibile aggiungere nuovi moduli alla libreria LW Python per estenderne le potenzialità,
un po' come si fa nel Python stand-alone. :confused: