Python bindings for ITAPS interfaces
PyTAPS requires the following to be installed on your system:
- Python 2.5+
- NumPy 1.3.0+
- At least one of…
Once you have the prerequisites, the easiest way to install PyTAPS is to use Pip (0.7+ recommended):
pip install pytaps
This will download, compile, and install PyTAPS automatically. If you have some but not all of the ITAPS interfaces (e.g. only iMesh), this will only install interfaces for the libraries you have, as described in Autodetection of Libraries.
Like many Python packages, PyTAPS uses Setuptools for installation, so in general setup consists simply of downloading the tarball, extracting it, and typing python setup.py install inside the extracted directory. However, certain ITAPS interfaces may require some additional setup.
Autodetection of Libraries
The PyTAPS setup script supports importing definitions from the iXxx-Defs.inc files, where iXxx is the name of the interface. PyTAPS will attempt to find these files automatically, by searching in some common locations:
- The files specified in the environment variables IXXX_DEFS
- For each directory dir in the environment variables PATH and CPATH, look in dir/../lib
- Each directory in the environment variable LD_LIBRARY_PATH
If the PyTAPS setup script cannot find the iXxx-Defs.inc file, it will assume you do not have that interface installed and automatically disable it in PyTAPS.
If you have the iXxx-Defs.inc files installed but not in any of the above locations, you can specify where they are in the global command-line options --iXxx-path=PATH, like so:
python setup.py --iMesh-path=PATH install
The following example illustrates the basics of using iMesh. This script gets all the faces of a mesh and prints out the coordinates of their vertices:
from itaps import iBase, iMesh mesh = iMesh.Mesh() mesh.load("mesh.vtk") faces = mesh.getEntities() adj = mesh.getEntAdj(faces, iBase.Type.vertex) for i in adj: for j in i: x, y, z = mesh.getVtxCoords(j) print "%f, %f, %f" % (x, y, z) print
Basic tests of the interfaces are located in test/. To run all the tests, run python setup.py test. To run a subset of tests, use -S <suite_name>, e.g. python setup.py -S test.imesh.