datastructures
Classes
Base class for all data structures. 

Base graph data structure for describing the topological relationships between nodes connected by edges. 

Base halfedge data structure for representing the topology of open oor closed surface meshes. 

Base halfface data structure fore representing volumetric meshes. 

Geometric implementation of a half edge data structure for polygon meshses. 

Geometric implementation of an edge graph. 

Geometric implementation of a face data structure for volumetric meshes. 

A data structure for managing the connections between different parts of an assembly. 

A data structure for representing assembly parts. 
Functions
Network
Generate the complement network of a network. 

Count the number of crossings (pairs of crossing edges) in the network. 

Get the disconnected edge groups in a network. 

Get the disconnected node groups in a network. 

Embed the network in the plane. 

Explode a network into its connected components. 

Identify all pairs of crossing edges in a network. 

Find the faces of a network. 

Verify that the network is connected. 

Verify if a network has crossing edges. 

Verify that a network is embedded in the plane without crossing edges. 

Check if the network is planar. 

Verify that a network lies in the XY plane. 

Join the edges incidental on the given node, if there are exactly two incident edges. 

Join network edges into polylines. 

Find the shortest path between two nodes of the network. 

Smooth a network by moving every free node to the centroid of its neighbors. 

Split and edge by inserting a node along its length. 

Transform a network. 

Return a transformed copy of the network. 
Creates a node adjacency matrix from a Network datastructure. 

Creates a connectivity matrix from a Network datastructure. 

Creates a node degree matrix from a Network datastructure. 

Construct a Laplacian matrix from a Network datastructure. 
Mesh
Add an existing vertex of the mesh to an existing face. 

Compute the (axis aligned) bounding box of a projection of the mesh in the XY plane. 

Compute the (axis aligned) bounding box of a mesh. 

Collapse an edge to its first or second vertex, or to an intermediate point. 

Find the connected components of the mesh. 

Generates the ambo mesh from a seed mesh. 

Generates the bevel mesh from a seed mesh. 

Generates the dual mesh from a seed mesh. 

Generates the expand mesh from a seed mesh. 

Generates the gyro mesh from a seed mesh. 

Generates the join mesh from a seed mesh. 

Generates the kis mesh from a seed mesh. 

Generates the meta mesh from a seed mesh. 

Generates the needle mesh from a seed mesh. 

Generates the ortho mesh from a seed mesh. 

Generates the snub mesh from a seed mesh. 

Generates the truncate mesh from a seed mesh. 

Generates the zip mesh from a seed mesh. 

Cull all duplicate vertices of a mesh and sanitize affected faces. 

Get the disconnected face groups in a mesh. 

Get the disconnected vertex groups in a mesh. 

Construct the dual of a mesh. 

Explode a mesh into its disconnected parts. 

Build a face adjacency dict. 

Compute mesh flatness per face. 

Flip the cycle directions of all faces. 

Insert a vertex in the faces adjacent to an edge, between the two edge vertices. 

Verify that the mesh is connected. 

Merge two faces of a mesh over their shared edge. 

Offset a mesh. 

Planarise a set of connected faces. 

Convert all quadrilateral faces of a mesh to triangles by adding a diagonal edge. 

Slice a mesh with a plane and construct the resulting submeshes. 

Smooth a mesh by moving each vertex to the barycenter of the centroids of the surrounding faces, weighted by area. 

Smooth a mesh by moving every free vertex to the center of mass of the polygon formed by the neighboring vertices. 

Smooth a mesh by moving every free vertex to the centroid of its neighbors. 

Split and edge by inserting a vertex along its length. 

Split a face by inserting an edge between two specified vertices. 

Split the srip of faces corresponding to a given edge. 

Subdivide a mesh using the CatmullClark algorithm. 

Subdivide a mesh by cutting corners. 

Subdivide a mesh following the doosabin scheme. 

Subdivide a mesh by creating offset frames and windows on its faces. 

Subdivide a mesh such that all faces are quads. 

Subdivide a mesh using simple insertion of vertices. 

Subdivide the input mesh. 

Substitute in a mesh a vertex by another one. 

Thicken a mesh. 

Transform a mesh. 

Return a transformed copy of the mesh. 

Unify the cycle directions of all faces. 

Unwelds a mesh along edges. 

Unweld a face of the mesh. 

Weld vertices of a mesh within some precision distance. 

Join and and weld meshes within some precision distance. 

Join meshes without welding. 

Collapse an edge to its first or second vertex, or to an intermediate point. 

Get data on circumcentre of triangular face. 

Compute the gaussian curvature at the vertices of a triangle mesh using the angular deficit. 

Remesh until all edges have a specified target length. 

Split an edge of a triangle mesh. 

Subdivide a triangle mesh using the Loop algorithm. 

Replace an edge of the mesh by an edge connecting the opposite vertices of the adjacent faces. 
Creates a vertex adjacency matrix from a Mesh datastructure. 

Creates a connectivity matrix from a Mesh datastructure. 

Compute the contours of the mesh. 

Creates a vertex degree matrix from a Mesh datastructure. 

Construct the face matrix from a Mesh datastructure. 

Compute geodesic from the vertices of a mesh to given source vertices. 

Compute the isolines of a specified attribute of the vertices of a mesh. 

Construct a Laplacian matrix with uniform weights from a mesh data structure. 

Compute the (axis aligned) bounding box of a mesh. 

Compute the (axis aligned) bounding box of a projection of the mesh in the XY plane. 

Transform a mesh. 

Return a transformed copy of the mesh. 

Construct the Laplacian of a triangular mesh with cotangent weights. 

Compute the gradient per face of the heightfield of the vertices of the mesh. 

Pull points onto a mesh by computing the closest point on the mesh for each of the points. 

Compute sample points on a triangle mesh surface. 

Smooth a triangle mesh using a laplacian matrix with cotangent weights. 

Compute the n x n diagonal matrix of pervertex voronoi areas. 
VolMesh
Compute the (axis aligned) bounding box of a volmesh. 

Transform a mesh. 

Return a transformed copy of the volmesh. 