To begin with, please first download the package from, https://github.com/group-gu/geometry-processing-package. Unzip to folder, assume the path is PATH = "geometry-processing-package-master" " PATH │ .gitattributes │ .gitignore │ contents.m │ LICENSE │ README.md │ template.m │ ├───algebra │ compute_adjacency_matrix.m │ compute_bc.m │ ...│ ├───data │ bunny.obj │ bunny.off │ ... │ ├───graphics │ plot_mesh.m │ plot_path.m │ ├───io │ read_obj.m │ read_off.m │ ... │ ├───misc │ csc_to_sparse.m │ csr_to_sparse.m │ ... │ ├───parameterization │ disk_harmonic_map.m │ ... ├───topology │ clean_mesh.m │ ...│ └───tutorial

tutorial0.m
tutorial1.m
tutorial2.m

"

"

Data Struct and Data I/O

Data Struct

Mesh Data is usually stored as Faces and Vertices.

Similary, to read from off file,

Save Mesh

To write mesh file,
write_obj('out.obj',F,V)
Similary, to write off file,
write_off('out.off',F,V)

Mesh View

plot_mesh(F, V) algebra

Find Boundary of a mesh

Find boundary inds.
bdind = compute_bd(F);
We can further show the boundary by:
plot_path(F,V, bdind) Compute Dual Graph

In the mathematical discipline of graph theory, the dual graph of a plane graph G is a graph that has a vertex for each face of G. Each face in original mesh corresponds to a vertex in dual graph, vertex position be the centroid of the original face. [DualConnectMat, dual_vertex]=compute_dual_graph(F,V)

Others

• compute_edge.m
• compute_face_ring.m
• compute_halfedge.m
• compute_vertex_face_ring.m
• compute_vertex_ring.m
• face_area.m
• generalized_laplacian.m
• laplace_beltrami.m
• vertex_area.m parameterization

Disk Harmonic Mapping

A (smooth) map $$\phi : M \rightarrow N$$ between Riemannian manifolds M and N is called harmonic if it is a critical point of the Dirichlet energy functional $$E(\phi)=\int_{M}|d \phi|^{2} d \mathrm{Vol}$$  