Public | Automated Build

Last pushed: 5 months ago
Short Description
Geometry Processing Library for Python.
Full Description

About PyMesh

PyMesh is a code base developed by Qingnan Zhou for his PhD research at New
York University. It is a rapid prototyping platform focused on geometry
processing. PyMesh is written using both C++ and python, where
computational intensive functionalities are realized in C++, and Python is used
for create minimalistic and easy to use interfaces.


Latest documentation

Download Source

To retrieve the code:

git clone
git submodule update --init

Be sure to save the root directory of PyMesh in the environment variable

export PYMESH_PATH=/path/to/PyMesh/

Unit tests relies on this environment variable to load relevant libraries.


PyMesh depends on the following tools/libraries:

Optional library:

Libraries marked with * are included in $PYMESH_PATH/third_party directory.

Environment Variables

If any of the dependent library is not installed in standard locations
(/usr/local/, /opt/local), one needs to set environment variables that
point to the correct directories. PyMesh check the following environment

  • EIGEN_INC: directory containing the Eigen library.
  • GOOGLEHASH_INCLUDES: directory containing sparse hash.
  • CGAL_PATH: path to CGAL library
  • BOOST_INC: directory containing boost.
  • LIBIGL_PATH: path to libigl.
  • CORK_PATH: path to cork.
  • TETGEN_PATH: path to tetgen
  • TRIANGLE_PATH: path to triangle
  • QHULL_PATH: path to qhull
  • CLIPPER_PATH: path to clipper
  • CARVE_PATH: path to carve
  • GEOGRAM_PATH: path to GeoGram
  • QUARTET_PATH: path to quartet


The first step is to compile the optional third party dependencies:

cd $PYMESH_PATH/third_party
mkdir build
cd build
cmake ..
make install

Third party dependencies will be installed in
$PYMESH_PATH/python/pymesh/third_party directory.

Now we can build the main project. It is recommended to build out of source:

mkdir build
cd build
cmake ..

To only build the C++ libraries without the swig python modules, change the last
command to


To build the main PyMesh library:

make src_tests

To build all available tools:

make tools
make tools_tests

Make sure all unit tests are passed before using the library.


The output of building PyMesh consists a set of C++ libraries and a python
module. Installing the C++ library is currently not available. However,
installing the python package can be done:

./ build # This an alternative way of calling cmake/make
./ install

To check PyMesh is installed correctly, run the following python unit tests::

python -c "import pymesh; pymesh.test()"

Once again, make sure all unit tests are passed, and report any unit test

Docker Pull Command
Source Repository

Comments (1)
4 months ago

After pulling pymesh on docker, I run a test with a python script but it shows an error
"ImportError: cannot open shared object file: No such file or directory"

Do you have an idea?
Thank you for your help.
Huu Phuoc BUI