Computational Conformal Geometry Library - CCGL
CCGL logo

Introduction

Getting CCGL
    Download
    Installation


Development Guide
    Architecture
    Performance


Gallery
    Snapshots
    Movies

Mesh Data Structure
    Viewer

Topology
    Cut Graph
    Slicer
    Double Cover
    Homology Basis

Conformal Maps
    Harmonic Map
    Spherical Harmonic Map
    LSCM

Holomorphic 1-Form
    Integration
    Harmonic 1-Form
    Holomorphic 1-Form
    Slit Map

Curvature Flow
    Euclidean Ricci Flow
    Poly Annulus Ricci Flow
    Hyperbolic Ricci Flow
    Yamabe Flow

Documentation
    Reference Book

Acknowledgements
Welcome!

Computational Conformal Geometry Library is a general purposed library for research and education in computer graphics, computer vision, geometric modeling, visualization and medical imaging fields. It is also useful for the study in physics and pure mathematics.

Conformal geometry is more flexible than Riemannian geometry and more rigid than topology. All metric surfaces can be conformally (angle-preserving) deformed to 3 canonical shapes, the sphere, the plane and the hyperbolic disk. Therefore, any 3 dimensional geometric processing problem can be converted to 2D problems.

The source code is available free of charge for research and educational purposes. The code is written entirely in generic C++ with standard template library (STL). Most computational tasks in conformal geometry are equivalent to solve a partial different equation (PDE) on surfaces. By using finite element method (FEM), the problem is converted to solve large scale sparse linear system. Current version uses matlab C++ library to solve the linear system. The linear system can be replaced by any linear system solver, such as Mathematica.

The implementation paid attention to the robustness and efficiency of the algorithm. The library can handle meshes with millions of faces, which are large enough for practical applications. The architectural design is made as simple as possible, only three core data structures, halfedge, trait and sparse linear matrix. Our goal is to provide a simple and efficient and stable library to scientists doing research related to conformal geometric mesh processing.

All the algorithms have been explained in details in the text book "Computational Conformal Geometry" by Gu and Yau. We refer the users to that book for deeper understanding the mathematical theories, algorithmetic designs and implementation details.

A brief summary of its main features:

  • Generic halfedge data structure for general triangular meshes.
  • Computational topological methods for computing cut graph, homology basis etc.
  • Harmonic maps for genus zero surfaces with single boundaries (topological disks).
  • Spherical harmonic maps for genus zero closed surfaces, (topological spheres).
  • Least square conformal mapping method.
  • Holomorphic differential form method for high genus surfaces.
  • Holomorphic differential form method for multi-holed annulus.
  • Euclidean Ricci flow method for general surfaces.
  • Hyperbolic Ricci flow method for surface with negative Euler numbers.
  • Yamabe flow method for general surfaces.

The gallery will give you an idea of what CCGL can do. You can read the text book for more information. Comments, suggestions and critiques are highly appreciated.

News

Release 1.0
July-4th 2008

Initial Release:

  • Halfedge data structure.
  • Computational topology algorithms, such as homology group basis.
  • Harmonic maps, spherical harmonic maps.
  • Holomorphic 1-form algorithms.
  • Discrete curvature flow algorithms.



Please send any comments about this site to gu at cs dot sunysb dot edu.