Chapter 5. Information for Developers

Table of Contents

Source Organization
Extending MayaVi
User defined sources, modules and filters
General guidelines and information

This chapter covers a few points that developers should note while creating their own filters and modules. The word component in the following discussion refers to either a Source or Module or a Filter or any other class relevant to MayaVi.

Source Organization

The MayaVi sources are organized in the following fashion.

Base/

The Base/ directory contains classes that define the basic objects that populate MayaVi (in Objects.py). It also contains files that define the ModuleManager and the DataVizManager.

Common.py

This contains useful functions and classes that are commonly used. It also contains some variables that are used by all the other source.

Filters/

This directory contains files that define the various filters.

Modules/

This directory contains files that define the various modules.

Main.py

This defines the main GUI class for MayaVi.

doc/

This directory contains documentation for MayaVi.

examples/

This directory contains a few simple examples for VTK. Currently a simple VTK data file, a visualization based on this data file and a customized lookup table are included.

tools/

This directory is actually a sub-package of MayaVi. It contains useful modules that use MayaVi or are useful along with MayaVi. The packages in the tools are described in the tools section.

vtkPipeline/

This directory contains files for the vtkPipeline browser and associated tools. These include a Tkinter based pipeline browser for VTK, a segmented pipeline browser, a simple pickler for VTK objects and a Tkinter based VTK object GUI configurator. The pipeline browser can be used independently of MayaVi.