Geogram  Version 1.9.1
A programming library of geometric algorithms
mesh_geometry.h File Reference

Functions for accessing the geometry in a mesh. More...

Go to the source code of this file.

Namespaces

 GEO
 Global Vorpaline namespace.
 
 GEO::Geom
 Geometric functions and utilities.
 

Functions

const vec3 & GEO::Geom::mesh_vertex (const Mesh &M, index_t v)
 Gets a mesh vertex by its index. More...
 
const vec3 & GEO::Geom::mesh_vertex_ref (const Mesh &M, index_t v)
 Gets a mesh vertex by its index. More...
 
vec3 & GEO::Geom::mesh_vertex_ref (Mesh &M, index_t v)
 Gets a mesh vertex by its index. More...
 
const vec3 & GEO::Geom::mesh_corner_vertex (const Mesh &M, index_t c)
 Gets a mesh vertex by an incident corner index. More...
 
vec3 & GEO::Geom::mesh_corner_vertex_ref (Mesh &M, index_t c)
 Gets a mesh vertex by an incident corner index. More...
 
const vec3 & GEO::Geom::mesh_vertex_normal (const Mesh &M, index_t v)
 Gets a mesh vertex normal by vertex index. More...
 
vec3 & GEO::Geom::mesh_vertex_normal_ref (Mesh &M, index_t v)
 Gets a mesh vertex normal by vertex index. More...
 
const vec3 & GEO::Geom::mesh_vertex_normal_ref (const Mesh &M, index_t v)
 Gets a mesh vertex normal by vertex index. More...
 
double GEO::Geom::mesh_facet_area (const Mesh &M, index_t f, index_t dim=0)
 Computes the area of a facet. More...
 
vec3 GEO::Geom::mesh_facet_normal (const Mesh &M, index_t f)
 Computes the normal to a mesh facet. More...
 
vec3 GEO::Geom::mesh_facet_center (const Mesh &M, index_t f)
 Gets the centroid of the vertices of a facet in a mesh. More...
 
vec3 GEO::Geom::mesh_cell_center (const Mesh &M, index_t c)
 Gets the centroid of the vertices of a cell in a mesh. More...
 
vec3 GEO::Geom::mesh_tet_center (const Mesh &M, index_t t)
 Gets the centroid of a tetrahedron in a mesh. More...
 
vec3 GEO::Geom::mesh_corner_vector (const Mesh &M, index_t c1)
 Gets a vector by a mesh corner. More...
 
double GEO::Geom::mesh_normal_angle (const Mesh &M, index_t c)
 Computes the angle between the normal vectors of two mesh facets sharing an edge. More...
 
double GEO::Geom::mesh_unsigned_normal_angle (const Mesh &M, index_t f1, index_t f2)
 Computes the angle between the normal vectors of two mesh facets sharing an edge. More...
 
double GEO::Geom::mesh_area (const Mesh &M, index_t dim)
 Computes the total surface area of a mesh in arbitrary dimension. More...
 
double GEO::Geom::mesh_area (const Mesh &M)
 Computes the total surface area of a mesh. More...
 
double GEO::Geom::mesh_enclosed_volume (const Mesh &M)
 Computes the volume enclosed by a surfacic mesh. More...
 
void GEO::compute_normals (Mesh &M)
 Computes the normals to the vertices, and stores them as additional coordinates. More...
 
void GEO::simple_Laplacian_smooth (Mesh &M, index_t nb_iter, bool normals_only)
 Smoothes a mesh. More...
 
void GEO::get_bbox (const Mesh &M, double *xyzmin, double *xyzmax)
 Gets the bounding box of a mesh. More...
 
double GEO::bbox_diagonal (const Mesh &M)
 Computes the length of the bounding box diagonal of a mesh. More...
 
void GEO::set_anisotropy (Mesh &M, double s)
 Normalizes and scales the stored vertex normals by a factor. More...
 
void GEO::unset_anisotropy (Mesh &M)
 Normalizes the stored vertex normals. More...
 
void GEO::compute_sizing_field (Mesh &M, double gradation=1.0, index_t nb_lfs_samples=0)
 Computes a sizing field using an estimate of lfs (local feature size). More...
 
void GEO::normalize_embedding_area (Mesh &M)
 Computes vertices weights in such a way that triangle areas are normalized. More...
 
double GEO::mesh_cell_volume (const Mesh &M, index_t c)
 Computes the volume of a cell in a mesh. More...
 
double GEO::mesh_cells_volume (const Mesh &M)
 Computes the volume of the cells of a mesh. More...
 
vec3 GEO::mesh_cell_facet_normal (const Mesh &M, index_t c, index_t lf)
 Computes the normal of a cell facet. More...
 
double GEO::surface_average_edge_length (const Mesh &M)
 Computes the average edge length in a surface. More...
 

Detailed Description

Functions for accessing the geometry in a mesh.

Definition in file mesh_geometry.h.