Vuelta a la página principal

Un interfaz Maxima-VTK

Este es un prototipo para un intefaz de Maxima a las rutinas gráficas VTK.

Gnuplot y VTK son muy diferentes y estoy intentando utilizar la misma sintaxis con ambos programas, los mismos objetos gráficos y opciones. A pesar de mis esfuerzos, algunas veces es muy difícil, incluso imposible, mantener una compatibilidad del 100%. La razón principal para desarrollar este paquete es la de obtener mejores gráficos en 3D con Maxima, pues Gnuplot no es un buen programa para este tipo de tareas.

Este lugar web es la única fuente de información disponible para este interfaz (experimental).

Preparando VTK

Este interfaz es parte del paquete draw de Maxima. El código que se incluye en este sitio web fue probado con VTK 6.3. Maxima ya no es compatible con las versiones 5.* de VTK.

En Windows, desde la version 5.38, el instalador ya contine VTK y no es necesario que el usuario haga nada más para poder trabajar con él desde Maxima.

En Debian Jessie, esnecesario instalar los siguientes dos paquetes:

# apt-get vtk6 tcl-vtk6

En los sistemas Ubuntu tcl-vtk6 está roto y es necesario compilar VTK con soporte TCL. También se puede probar el instalador de Windows via wine. Espero que estos problemas se resuelvan en las próximas versiones de Ubuntu.

No dispongo de información sobre sistemas Mac ni de otras distribuciones Linux.

Dibujando con VTK

Una vez abierta una sesión de Maxima, se debe cargar en memoria el paquete draw y asignarle a la variable global draw_renderer el valor vtk:

load("draw") $
draw_renderer : vtk $

El valor por defecto de draw_renderer es gnuplot. Si no se cambia este valor, draw llamará siempre al programa Gnuplot.

Se recomienda utilizar la versión más moderna de Maxima para replicar estos ejemplos.

Para ver la galería sígase este enlace (el resto de la documentación está en lengua inglesa).


Por Mario Rodríguez Riotorto