Skip to content

zishun/awesome-geometry-processing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 

Repository files navigation

Libraries for Geometry Processing (GP)

General Libraries

  • Boost.Geometry cpp star : convex hull, intersection (clipping), within (point in polygon), distance, envelope (bounding box), simplify, transform, and much more. supports high precision arithmetic numbers, such as ttmath. doc
  • Boost.Polygon cpp star : the polygon set operations (intersection, union, difference, disjoint-union) and related algorithms such as polygon connectivity graph extraction, offsetting and map-overlay. doc
  • CGAL cpp star : The Computational Geometry Algorithms Library.
  • cg3lib cpp star : a GP library developed by the CG3HCI Group of the University of Cagliari.
  • CinoLib cpp star : a generic programming header-only C++ library for processing polygonal and polyhedral meshes.
  • DGtal cpp star : A library for digital geometry processing and analysis.
  • Easy3D cpp star : A lightweight and easy-to-use 3D mesh processing library.
  • Embree cpp star : a ray tracing library with GP modules including geometry objects, ray/point queries, collision detection, BVH, etc.
    • python bindings in Open3D and others.
  • Euclid cpp star : A C++ library for computational geometry and mesh processing.
  • Geogram cpp star : contains the main results in GP from the former ALICE Inria project.
  • Geometric Tools cpp star : website
  • Geometry Central cpp star : doc
  • GEOS cpp star : Geometry Engine, Open Source. Computational geometry library with a focus on algorithms used in geographic information systems (GIS). website
  • gproshan cpp star : using Compact Half–Edge (CHE) data structure.
  • gptoolbox matlab star : A MATLAB toolbox for geometry processing tasks.
  • gpytoolbox python star : A Python toolbox for geometry processing.
  • Graphite cpp star : an experimental 3D modeler, built around geogram.
  • GTS C : GNU Triangulated Surface Library.
  • GUDHI cpp python : Geometry Understanding in Higher Dimensions, a generic open source library for Topological Data Analysis (TDA).
  • Hugues Hoppe's library cpp star : libraries and programs demonstrating mesh processing research published in ACM SIGGRAPH (1992-1998)
  • Lagrange (Adobe) cpp star : A robust GP library. Doc.
  • LibIGL cpp star : A simple C++ geometry processing library.
  • Manifold cpp star : a geometry library dedicated to creating and operating on manifold triangle meshes.
  • MatGeom matlab star : Matlab geometry toolbox for 2D/3D geometric computing.
  • MeshLab cpp star : An open-source system for processing and editing 3D triangular meshes.
  • MeshLib cpp star : A C++ library for mesh processing and analysis by MeshInspector.
  • MeshPipe : a python-based tool for easy automation and demonstration of GP pipelines (Fons et al., 2020).
  • MeshUtility python star : A Python library for mesh utility functions.
  • MPI-IS Mesh python star : A Python library for mesh processing.
  • Numerical Tours python matlab star : includes some topics about mesh processing, mesh parameterization and deformation, and multiscale mesh processing. website
  • Open3D cpp python star : A modern library for 3D data processing.
  • OpenGeode cpp python star : doc
  • OpenGP cpp star : deprecated.
  • OpenMesh cpp python : Half-edge data structure for surface meshes.
  • OpenSubdiv cpp star : An Open-Source subdivision surface library.
  • OpenVDB cpp star : Sparse volume data structure and tools
  • OpenVolumeMesh cpp : a data structure for arbitrary polytopal meshes. Its concepts are closely related to OpenMesh.
  • PMP Library cpp star : A C++ library for polygon mesh processing.
  • Point Cloud Library (PCL) cpp star : A standalone, large scale, open project for 2D/3D image and point cloud processing.
  • Point Cloud Utils (pcu) python star : a utility library for 3D processing point clouds and triangle meshes.
  • potpourri3d python star : mainly bindings to C++ tools from geometry-central.
  • PyMesh(2) python star : A rapid prototyping platform for geometry processing research.
  • pyntcloud python star : making point clouds fun again
  • PyVista python star : A Python package for 3D plotting and mesh analysis.
  • Shapely python star : for manipulation and analysis of planar geometric objects.
  • Thea cpp star : A C++ library for computer graphics and geometry processing.
  • trimesh python star : documentation
  • trimesh2 cpp : different from the trimesh library above.
  • TTK cpp python star : The Topology ToolKit for efficient, generic, and easy topological data analysis and visualization.
  • UltiMaille cpp star : allow representing: point set, polyline, triangles, quads, polygons, tetrahedra, hexahedra, wedges, pyramids.
  • VCGLib cpp star : used by MeshLab.
  • vedo python star : A python module for scientific analysis and visualization of 3d objects.
  • VTK cpp python star : The Visualization Toolkit (VTK) is open source software for manipulating and displaying scientific data. It comes with state-of-the-art tools for 3D rendering, a suite of widgets for 3D interaction, and extensive 2D plotting capability.

GUI for GP

  • starlab cpp star : A framework for developing geometry processing algorithms.
  • OpenFlipper cpp : An open source multi-purpose 3D software.
  • polyscope cpp python star : a 3D data viewer
  • Some libraries in the general list above also include GUI or viewer.
more

Mesh Generation

  • Gmsh cpp python : A three-dimensional finite element mesh generator with built-in pre- and post-processing facilities.
  • jigsaw cpp star python star : an unstructured mesh generator and tessellation library; designed to generate high-quality triangulations and polyhedral decompositions of general planar, surface, and volumetric domains.
  • MeshPy python star : Python interfaces to Triangle, TetGen, and gmsh.
  • netgen cpp star : an automatic 3d tetrahedral mesh generator.
  • Qhull cpp star : Convex hull, Delaunay triangulation, Voronoi diagrams, Halfspace intersection
  • Quartet cpp star : A tetrahedral meshing algorithm.
  • scipy.spatial python : Delaunay triangulation, convex hulls, and Voronoi diagrams.
  • TetGen cpp : A quality tetrahedral mesh generator and a 3D Delaunay triangulator.
  • Triangle cpp : A two-dimensional quality mesh generator and Delaunay triangulator.
  • Voro++ cpp : 3D computations of the Voronoi tessellation.
  • WildMeshing : A collection of tools for robust mesh generation.

Boolean Operations

Geodesic Distance

Survey paper: Crane et al., 2020

Others

  • Directional cpp star : creating, manipulating, and visualizing directional fields on 3D meshes, based on both libigl and Eigen.
  • Instant Meshes cpp star : Interactive field-aligned mesh generator
  • mmg cpp star : 2D and 3D surface and volume remeshing.
  • ShapeOp cpp : discrete geometry shaping with projections.
  • Draco: cpp star : an open-source library for compressing and decompressing 3D geometric meshes and point clouds.
  • Robust Geometric Predicates: adaptive precision floating-point arithmetic and fast robust predicates for computational geometry

Books

Courses

Data

Other Lists on Geometry Processing (GP)

Lists on Other Computer Graphics Topics

Lists from Other Communities