PyGEL3D
PyGEL 3D (Python Bindings for GEL) contains tools for polygonal mesh based geometry processing
Decision gist · record as of 2026-08-14
Yes, if you need production-grade mesh processing with specialized algorithms (skeletonization, SDF, simplification) and Jupyter integration. Active maintenance, MIT license, and zero known vulnerabilities support adoption. Medium install friction (compiled bindings, OpenGL dependency) is acceptable for graphics-focused work. Not suitable if you cannot satisfy OpenGL and GLFW system requirements.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires OpenGL and GLFW libraries; on Ubuntu, install with `sudo apt-get install libglu1 libgl1`.
- For Jupyter visualization, numpy and plotly must be available.
- Medium install friction due to compiled C++ bindings; prebuilt wheels exist for macOS, Windows, and Linux but require a recent C++ compiler if building from source.
License · maintenance · safety
MIT (permissive) — MIT license permits unrestricted use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects.
last release 2026-08-14 (0 days) · last repo commit 2026-08-14 · 120 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 87,828 downloads/mo, #13,766 on PyPI
Alternatives
Verify before relying
pip install PyGEL3D
import PyGEL3D
# Create and manipulate mesh geometry
mesh = PyGEL3D.Manifold()- Performance characteristics on very large meshes (millions of polygons) with the half-edge data structure.
- Completeness of Python binding coverage relative to the full C++ GEL library feature set.
- Availability of worked examples for Local Separator Skeletonization and Rotation System Reconstruction.
What it is and what it does
PyGEL3D is a Python interface to GEL, a C++ geometry processing toolkit designed for computer graphics. It exposes a half-edge polygonal mesh data structure with extensive mesh modification methods, spatial data structures (BSP trees, bounding box hierarchies, kD-trees), voxel grids, and a linear algebra library for small vectors and matrices. The package includes specialized algorithms like Local Separator Skeletonization (for meshes, voxel data, and point clouds), Inverse Skeletonization via Face Extrusion Quad meshes, Garland-Heckbert mesh simplification, signed distance field computation, and topological analysis.
Visualization is built in: PyGEL3D can render 3D geometry using OpenGL in standalone mode or via plotly widgets in Jupyter notebooks, with exported HTML preserving the interactive 3D view. This makes it useful for teaching geometry processing and exploratory work in notebooks. The library depends on numpy, plotly, and scipy at runtime, and requires OpenGL and GLFW system libraries for graphics support.
Use it for
- Simplify and optimize triangle meshes using Garland-Heckbert simplification or edge-flipping optimization.
- Extract skeletons from 3D meshes, voxel grids, or point clouds using Local Separator Skeletonization for shape analysis.
- Compute signed distance fields from triangle meshes for level-set methods or collision detection.
- Visualize mesh processing results in Jupyter notebooks with interactive plotly 3D views that persist in HTML exports.
- Reconstruct surface geometry from point clouds using combinatorial Rotation System Reconstruction methods.
- Analyze mesh topology by splitting into connected components and computing topological properties.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need production-grade mesh processing with specialized algorithms (skeletonization, SDF, simplification) and Jupyter integration.
Active maintenance, MIT license, and zero known vulnerabilities support adoption. Medium install friction (compiled bindings, OpenGL dependency) is acceptable for graphics-focused work. Not suitable if you cannot satisfy OpenGL and GLFW system requirements.
Install
pygel3d on PyPI
Before you install
Medium install friction due to compiled C++ bindings; prebuilt wheels exist for macOS, Windows, and Linux but require a recent C++ compiler if building from source. Active maintenance with a recent release and no known vulnerabilities.
Requires OpenGL and GLFW libraries; on Ubuntu, install with `sudo apt-get install libglu1 libgl1`. For Jupyter visualization, numpy and plotly must be available.
License in practice
MIT license permits unrestricted use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects.
Quickstart
pip install PyGEL3D
import PyGEL3D
# Create and manipulate mesh geometry
mesh = PyGEL3D.Manifold()
Verify before relying
- Performance characteristics on very large meshes (millions of polygons) with the half-edge data structure.
- Completeness of Python binding coverage relative to the full C++ GEL library feature set.
- Availability of worked examples for Local Separator Skeletonization and Rotation System Reconstruction.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.11 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | 3 packagesnumpyplotlyscipy |
| Maintenance | Actively maintained 0 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 87,828 / month, #13,766 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: MIT LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13 |
Evidence: pygel3d-0.7.0-cp313-cp313-macosx_26_0_arm64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “polygon mesh editing”
- PyGEL3DPyGEL3D provides Python bindings for a C++ geometry processing…
- mapbox-earcutFast 2D polygon triangulation using the Mapbox Earcut algorithm, with…
- pymeshfixPyMeshFix repairs triangular meshes by removing defects like…
Give your agent the search over MCP, or paste the wish link into any chat.
More Graphics packages
Pillow adds image processing capabilities to Python, providing file format support, efficient pixel data handling, and image manipulation operations.
Install it if you need to work with images in Python—it is the de facto standard for this task.
fonttools manipulates font files in multiple formats (TrueType, OpenType, AFM, Type 1, Mac-specific) and includes TTX, a tool to convert fonts to and from XML text format.
Install it if you need to read, write, or manipulate fonts programmatically or via the TTX command-line tool.
Enables matplotlib figures to display inline directly within Jupyter notebooks and IPython environments instead of in separate windows.
PyMuPDF extracts, renders, converts, and manipulates PDF and other document formats (XPS, EPUB, images, Office files via Pro) with high performance, providing text, tables, images, and metadata with precise layout information.
The AGPL license requires careful review if you are building proprietary software—commercial licensing is available from Artifex.
pypdfium2 is a Python binding to PDFium that enables PDF rendering, inspection, manipulation, and creation through a ctypes interface to Google's PDFium library.
Install it if you need PDF rendering, inspection, or manipulation in Python; the medium install friction is offset by comprehensive platform support.
Altair is a declarative Python library for creating interactive statistical visualizations by writing simple, readable code that compiles to Vega-Lite specifications.
See also pymeshlab · rhino3dm · open3d · open3d-cpu · manifold3d · pyglm · plyfile · pipablepytorch3d · py-lib3mf · fast-simplification