Mesh

This section describes operators belonging to the Mesh category.

This page discusses:

Closest Mesh Element

Finds the closest vertex from a point provided as a vector or the closest mesh element among a provided list.

Inputs

Name Type Description
Mesh Mesh
Among MeshElement Optional input : you can find the closest element in this list
Point Vector

Outputs

Name Type Description
V MeshElement

Mesh Boundaries

Extracts the mesh boundaries. result is a list of set of edges object.

Inputs

Name Type Description
Mesh Mesh
Split Angle Angle The boundary operator outputs objects of type setofmeshedges that contain the edges for a given boundary. this option allows to split those sets according to an angle between consecutive edges

Outputs

Name Type Description
Boundaries List Outputs a list of setofmeshedges

Mesh Curvature

Compute different curvature values and applies a texture on the mesh according to those curvatures.

Inputs

Name Type Description
Mesh Mesh
Type Integer Sets the type of curvature analysis to be computed: classical curvature analysis or tensor one
Smooth Iterations Integer Number of curvature smoothing iterations to be done. curvature computation on a mesh is an approximation of the surface curvature, and smoothing it can provide more accurate results depending on the shape of the surface
Display Integer Specify the curvature value to be used to apply the texture : max curvature, mean curvature or gaussian curvature

Outputs

Name Type Description
Om Mesh
Maxcurv List
Meancurv List
Gaussiancurv List

Mesh Decimate

Simplifies a mesh trying to preserve its shape.

Inputs

Name Type Description
Mesh Mesh
Ratio Real Ratio of the decimation. if 0.1, the number of vertices should be divided by around 10
Angle Angle Sharp edge detection angle. decimation process tries to preserve sharp edges whose angle are greater than this input
Selection MeshElement The decimation process can be applied only on selected elements
Preserve MeshElement The decimation process will preserve the elements passed in this input

Outputs

Name Type Description
S Mesh

Mesh Dual

Creates the dual of a mesh.

Inputs

Name Type Description
Mesh
With Bound Boolean

Outputs

Name Type Description
S

Mesh Edges

Retrieves the edges of a mesh or a mesh element - for a mesh : all the edges - for a mesh vertex : the incident edges - for a mesh edge : nothing - for a mesh face : the face boundary edges - for a set of vertices : all the edges whose both vertices are in the set - for a set of edges : the list of edges in the set - for a set of faces : the list of boundary edges of the faces with no duplicates.

Inputs

Name Type Description
M MeshBase A mesh or a mesh element

Outputs

Name Type Description
E List

Mesh Faces

Retrieves the faces of a mesh or a mesh element - for a mesh : all the faces - for a mesh vertex :all faces bounding the vertex - for a mesh edge : the faces bounding the edge - for a mesh face : the face vertices - for a set of vertices : the list of faces whose all vertices are in the set - for a set of edges : the list of faces whose all edges are in the set - for a set of faces : the list of faces in the set.

Inputs

Name Type Description
M MeshBase A mesh or a mesh element

Outputs

Name Type Description
F List

Mesh Fairing

Mesh fairing is a kind of smoothing operation. it changes the position of vertices in order to minimize either the area or the curvature. it works only if there are mesh boundaries (non closed mesh) or if some selection is provided.

Inputs

Name Type Description
Mesh Mesh
Ratio If provided ratio is 0, it minimizes the curvature. if it is 1 it minimizes the area. in between, interpolation between two modes is made
Selection MeshElement Applies the mesh fairing only on the selected mesh elements
Preserve MeshElement Applies the mesh fairing on the mesh elements that are not preserved

Outputs

Name Type Description
S Mesh

Mesh From File

Creates a mesh from a file (obj, off, stl, xyz formats).

Inputs

Name Type Description
Path String

Outputs

Name Type Description
Mesh

Mesh Neighbours

Finds the neighbours of a list of mesh elements.

Inputs

Name Type Description
Mesh Elements MeshElement
Among MeshElement If you provide a list of mesh elements in this input, the result will be the intersection of computed neighbours and of the elements in this list
Dim Integer Expected output type : vertex, edge, face, set of vertices, set of edges, set of faces
Min Distance Length Neighbours farther than this length are removed from the output
Max Distance Length Neighbourds closer than this distance are included in the output

Outputs

Name Type Description
L MeshElement

Mesh Sharp Edges

Extracts mesh sharp edges.

Inputs

Name Type Description
Mesh Mesh
Angle Angle Sharp edges detection angle
Split Angle Angle The sharp edges operator outputs objects of type setofmeshedges that contain the edges for a given sharp edge. this option allows to split those sets according to an angle between consecutive edges

Outputs

Name Type Description
Edges List Outputs a list of setofmeshedges

Mesh To Polyhedral Surface

Creates polyhedral surfaces from a mesh. the creation process starts by splitting the mesh into its domains, and for each domain tries to create a polyhedral surface. it can fail for many reasons depending on the quality of the mesh passed in input (auto-intersection, duplicate vertices, naked vertices, ...).

Inputs

Name Type Description
Mesh Mesh

Outputs

Name Type Description
Result The list of polyhedral surfaces created

Mesh Topological Faces

Extracts the set of faces separated by sharp edges in the mesh.

Inputs

Name Type Description
Mesh Mesh
Angle Angle Sharp edge detection angle

Outputs

Name Type Description
Faces List Outputs a list of setofmeshfaces

Mesh Vertices

Retrieves the vertices of a mesh or a mesh element - for a mesh : all the vertices - for a mesh vertex :neighbour vertices - for a mesh edge : the edge vertices - for a mesh face : the face vertices - for a set of vertices : the list of vertices - for a set of edges : the list of vertices of the edges with no duplicates - for a set of faces : the list of vertices of the faces with no duplicates.

Inputs

Name Type Description
M MeshBase A mesh or a mesh element

Outputs

Name Type Description
V List

Mesher

Creates a mesh from an exact surface.

Inputs

Name Type Description
Surface Surface Input surface
Type Integer Type of mesh to be created : only quadrangular, mostly quadrangular, triangular
Option Integer Tells if the meshing process should adapt to curvature : isometric will create a regular mesh, adaptative will create a mesh where mesh size adapts to surface curvature. currently this option only applies for triangular meshes
Mesh Size Length
Min Max Ratio Real For adaptative meshes, defines the ratio between mesh size and min mesh size. the lower it is, the smaller the minimum mesh size
Error Ratio Real This parameter is only used when using adaptative meshing. the lower it is, the closer the mesh is from the surface and the lower the mesh size is in highly curved areas. it's advised not to define this parameter lower than 0.01
Angle Angle This parameter defines the angle for sharp edges detection. detected sharp edges are kept in mesh result

Outputs

Name Type Description
Mesh

Move Mesh Vertices

Allows to modify the position of mesh vertices. the mesh is implicit : it's retrieved from the list of vertices.

Inputs

Name Type Description
V MeshVertex List or vertices. they must all belong to the same mesh
Pos Vector List of vectors providing the new position of the vertices

Outputs

Name Type Description
S Mesh

Offset Mesh

Creates an offset mesh. it may create a self-intersecting mesh.

Inputs

Name Type Description
Mesh Mesh
Offset Length Offset length to apply
Mode Integer Raw or curvature mode: the second one tries to take into account the local curvature to make the offset vary in order to keep the mesh sharp angles. as curvature on a point of a mesh is an approximation, result cannot be perfect
Fixed Boolean If false, the offset is locally modified to take into account the local mesh size. the smaller the mesh size, the smaller the applied offset.
Orientation Boolean A mesh surface has an orientation. this input changes the default orientation of the mesh

Outputs

Name Type Description
S Mesh

Polyhedral To Mesh

Converts a polyhedral surface into a mesh.

Inputs

Name Type Description
Surface Surface Input polyhedral surface

Outputs

Name Type Description
Mesh

Remesh

Creates a new triangular mesh from a mesh according to different options.

Inputs

Name Type Description
Mesh Mesh
Type Integer
Size Length Mesh size
Min Max Ratio Real Ratio between the mesh size and the minimum mesh size in case of adaptative meshes
Error Ratio Real Error ratio to be reached to be as closed as the initial mesh as possible. only used for adaptative meshes. the lower it is, the greater the number of faces in case of adaptative meshes
Angle Angle Sharp edge detection angle. sharp edges are kept during the meshing process
Iter Integer Number of iterations fot the meshing process
Selection MeshElement If non empty, this input defines the mesh elements that need to be remeshed : you can remesh only part of a mesh
Preserve MeshElement If set, this input defines the mesh elements that should not be modified during the remeshing process

Outputs

Name Type Description
S Mesh

Smooth Mesh

Smoothes a mesh.

Inputs

Name Type Description
Mesh Mesh
Type Integer Defines the smoothing algorithm to use
Laplacian Boolean Uniform laplacian smoothing or cotan laplacian. second one usually provides the best results
Step Ratio Real Input only used for implicit smoothing. ratio influencing the typical change of position. the greater it is, the smoother the result
Iterations Integer Number of smoothing iterations. only used in explicit smoothing case

Outputs

Name Type Description
S Mesh

Subdivide Mesh

Subdivides a mesh, making it smoother but with more mesh elements.

Inputs

Name Type Description
Mesh Mesh
N Integer Number of subdivision iterations
T Integer Subdivision scheme: catmull clark, loop or sqrt3
Detect Angles Boolean Activates this option if you want to keep sharp edges where curvature is greater than a given angle
Angle Angle Sharp edges with curvarture angle greater than this value will be kept
Preserve MeshElement List of mesh elements that should not be modified by subdivision operator

Outputs

Name Type Description
S Mesh

Thicken Mesh

Thickens a mesh. it cannot be used on a closed mesh.

Inputs

Name Type Description
Mesh Mesh
Offset Length Offset length to be applied
Mode Integer Raw or curvature mode: the second one tries to take into account the local curvature to make the offset vary in order to keep the mesh sharp angles. as curvature on a point of a mesh is an approximation, result cannot be perfect
Fixed Boolean If false, the offset is locally modified to take into account the local mesh size. the smaller the mesh size, the smaller the applied offset.
Triangular Boolean Basically, a thicken operation is an offset and then a seam between two parts. this defines is the seam should use triangles or quadrangular faces

Outputs

Name Type Description
S Mesh

Thicken Mesh Wireframe

Creates a closed volumic mesh from a mesh wireframe.

Inputs

Name Type Description
Mesh
Radius Length Radius of the wireframe thickening process
Fixed Boolean Indicates if the thickening process should use a fixed radius or make it vary based on edge lengths

Outputs

Name Type Description
S

Triangulate Mesh

Triangulates a non triangular mesh. .

Inputs

Name Type Description
Mesh Mesh
T Integer Two modes : minarea or maxangle : finds the triangulation that minimizes the triangle areas or maximizes the minimum angle

Outputs

Name Type Description
S Mesh