Archives

Stuff

Powered by Pivot - 1.40.5: 'Dreadwind'
XML Feed (RSS 1.0)
XML: Atom Feed
Valid XHTML 1.0 Transitional
Valid CSS
template by i-marco's choice

Solar System in python (vpython)

Il modulo Visual di Python permette di elaborare oggetti e animazioni tridimensionali in maniera semplice e rapida.

Attenzione non è un motore 3d, per quello c'è ad esempio Python Ogre, qua si parla di semplici rappresentazioni tridimensionali: grafici, balistica, campi elettromagnetici, etc etc.

La semplicità di utilizzo è disarmante:

from visual import *

sphere()

e avete di fronte a voi una finestra con una sfera bianca. Il modulo fornisce di utilizzare il mouse per controllare la "scena" (zoom o spostamento). Se poi aggiungete qualche parametro in più potete ottenere una palletta più grossa e colorata.

Le primitive tridimensionali sono parecchi, ma nessuno vi proibisce di crearne di nuove (frame) oppure di unire più oggetti in uno solo.

Per sollazzo ho provato a creare un mini sistema solare, la parte più noiosa è come al solito l'animazione (un po' di trigonometria non guasta...)

Non utilizzando accelerazione 3d si possono fare dei test anche con una macchina virtuale. (Testato su Ubuntu 7.04 e VirtualBox)

Nota: Beta molto rozza e lineare. Va modularizzato tutto. Per gestire al meglio le animazioni sono necessari poi i thread

meglio pydot di pygraphviz

  • Python 2.5 e il pacchetto NetworkX su Windows si installano bene.
  • Anche Graphviz si installa bene (certo non ha la bellezza della versione per Mac...)
  • Pygraphviz, il modulo per utilizzare le librerie di graphviz invece è un "pain in the ass".

Esasperato e costretto ad utilizzare il Mac oppure una Ubuntu su VirtualBox per trasformare 4 liste di adiacenza morte dal sonno in file dot, questa sera ho trovato per caso un progetto su Google Code: Pydot.

Si installa dai sorgente (estratto il tar.gz basta un banale python setup.py install) e voilà, vai di write_dot() etc etc!

recovery da kernel panic o crash su Linux (REISUB)

You finally got your Linux environment to crash. Ctrl+Alt+Backspace does nothing, nor do the F-keys. You know you shouldn’t have installed that bad driver, but you did it anyway.

Ogni tanto anche Linux crasha. Se  non funziona c'è una soluzione poco nota che prevede l'uso di una combinazione di tasti poco nota.

Tenete premuto Alt e SysRq/R Sist (Print Screen/Stamp) digitate R-E-I-S-U-B

  • R gives back control of the keyboard
  • S issues a sync
  • E sends all processes but init the term singal
  • I sends all processes but init the kill signal
  • U mounts all filesystem ro to prevent a fsck at reboot
  • B reboots the system

Attenzione! 

In alcune distribuzioni (Fedora, Red Hat, CentOS) la combinazione Alt-SysRq è disabilitata di default. Al fine di abilitarla bisogna editare /etc/sysctl.conf settanto la variabile kernel.sysrq ad 1. L'impostazione si attiva con "sysctl -p".