API Reference
This section provides detailed API documentation for all public classes and functions in mmgpy.
Quick Reference
Core Classes
| Class |
Description |
Mesh |
Unified mesh class with auto-detection |
MeshKind |
Enumeration of mesh types |
Options Classes
Result Classes
Sizing Constraints
I/O Functions
Modules
Module Structure
mmgpy
├── Core Classes
│ ├── Mesh # Unified mesh class (auto-detects type)
│ └── MeshKind # Mesh type enumeration
│
├── Options
│ ├── Mmg3DOptions # 3D options
│ ├── Mmg2DOptions # 2D options
│ └── MmgSOptions # Surface options
│
├── Results & Validation
│ ├── RemeshResult # Operation statistics
│ ├── ValidationReport # Validation results
│ ├── ValidationIssue # Individual issues
│ └── QualityStats # Quality metrics
│
├── Sizing
│ ├── SphereSize # Spherical region
│ ├── BoxSize # Box region
│ ├── CylinderSize # Cylinder region
│ └── PointSize # Point-based sizing
│
├── I/O Functions
│ ├── read() # Load mesh
│ ├── from_pyvista() # From PyVista
│ └── to_pyvista() # To PyVista
│
├── mmgpy.metrics # Metric operations
│ ├── create_isotropic_metric()
│ ├── create_anisotropic_metric()
│ └── intersect_metrics()
│
└── mmgpy.lagrangian # Mesh motion
├── move_mesh()
└── propagate_displacement()
Basic Usage Pattern
import mmgpy
# Load mesh
mesh = mmgpy.read("input.mesh")
# Configure options
opts = mmgpy.Mmg3DOptions(hmax=0.1)
# Remesh
result = mesh.remesh(opts)
# Validate
report = mesh.validate(detailed=True)
# Save
mesh.save("output.vtk")
Type Hints
All public APIs are fully typed. Use with a type-aware IDE for autocomplete:
from mmgpy import Mesh, Mmg3DOptions, RemeshResult
mesh: Mesh = Mesh("input.mesh")
opts: Mmg3DOptions = Mmg3DOptions(hmax=0.1)
result: RemeshResult = mesh.remesh(opts)
import mmgpy
print(f"mmgpy version: {mmgpy.__version__}")
print(f"MMG version: {mmgpy.MMG_VERSION}")