## XirusCAD RE Documentation

XirusCAD RE provides a powerful toolset to convert volumetric point clouds or meshes into smooth NURBS surfaces.

**List of Commands**

**XirusREPointCloudToMesh**

**Input: **Point cloud

**Output: **Triangle mesh

**Parameters:**

- LocalSmoothness (default = 10)

*Specifies the size of the neighbourhood for each sample to estimate the tangent plane. If the value is smaller than 10, one risks to have too few samples to estimate an accurate tangent plane. A value larger than 20 might not contribute to better precision.*

- Density (default = 1)

*Specifies the mesh density relative to the point cloud. A value less than 1 generates a denser mesh, whereas a value larger than 1 generates a coarser mesh.*

- Precision (default = 7)

*Specifies precision of the mesh relative to the point cloud. If the output mesh contains artefacts, consider increasing the precision.*

**Illustration:**

**XirusREQuadMesh**

**Input: **Mesh (typically a triangle mesh)

**Output: **Quad mesh (possibly with a few extraordinary vertices)

**Parameters:**

- Iterations (default = 200):

*Specifies the number of maximum iterations to perform mesh optimization that yields a quad mesh.*

- Vertices (default = -1):

Enables to specify the number of target vertices in the output quad mesh.

- Faces (default = -1):

Enables to specify the number of target vertices in the output quad mesh. (If this parameter is set as well as the ‘Vertices’, then the ‘Vertices’ will be taken into account and ‘Faces’ is ignored.)

**Illustration:**

**RECheckMeshQuality**

**Input: **Quad mesh

**Output: **In the Rhino command line, the number of vertices of valences 2,3,4,5,6 or more are displayed. If the quad mesh contains vertices of valence 2, a warning message is displayed as a subsequent mesh-to-NURBS conversion might contain artefacts at these vertex-locations. It is recommended to still try the NURBS conversion and if the quality is not satisfactory, XirusRERemesh or XirusRESimplifyMesh can be considered prior to executing this command.

**XirusRERemesh**

**Input: **Mesh

**Output: **Triangle mesh with a more regular structure than the input mesh

**Parameters:**

- Iterations (default = 200):

*Specifies the number of maximum iterations to perform mesh optimization that yields a smoother triangle mesh.*

- Smoothing (default = 0.01):

*Specifies the smoothing factor. A larger smoothing factor with fewer iterations yields a similar result as more iterations with a smaller smoothing factor.*

**XirusRESimplifyMesh**

**Input: **Mesh

**Output: **Triangle mesh that only contains a fraction of the vertices of the input mesh

**Parameters:**

- PercentageOfVerticesToRemove (default = 50):

*Specifies the percentage of vertices to be removed.*

**XirusREMeshToNURBS**

**Input: **Quad mesh

**Output: **Everywhere smooth NURBS surface that interpolates input mesh (G1 at vertices)

**Illustration:**

### Execution Times

The execution times of the different modules depend on the number of vertices or points involved as well as the hardware specifications of your computer. As an example, we provide execution times for a laptop with the following hardware specs: Intel Core I7-6600U CPU, 2.60 GHz, 16GB RAM.

**XirusREPointCloudToMesh: **0.8s / 1000 vertices

**XirusREQuadMesh: **1s / 3500 vertices

**XirusREMeshToNURBS:** 1min / 1000 vertices