Syntax
[vvi,fi,VL,FL]=SGchecknonmanifoldvertices(SG)
Input Parameter
Output Parameter
vvi : | | Index list of non manifold vertices / multiple used vertices |
fi : | | index list of faces attached to non manifold vertices |
VL : | | Vertex list of SG |
FL : | | Facet list of SG |
Examples
loadweb JACO_robot.mat;
SG=JC3; SGchecknonmanifoldvertices(SG);
Copyright 2018-2025 Tim C. Lueth. All rights reserved. The code is the property of Tim C. Lueth and may not be redistributed or modified without explicit written permission. This software may be used free of charge for academic research and teaching purposes only. Commercial use, redistribution, modification, or reverse engineering is strictly prohibited. Access to source code is restricted and granted only under specific agreements. For licensing inquiries or commercial use, please contact: Tim C. Lueth
Algorithm (Workflow)
This function, SGchecknonmanifoldvertices
, is designed to identify non-manifold vertices in a given solid geometry (SG). Non-manifold vertices are points that are used in separate surfaces, which can cause issues in 3D modeling and printing.
Input Parameters
- SG: This is the Solid Geometry input, which represents the 3D model or object being analyzed.
Output Results
- vvi: An index list of non-manifold vertices, indicating vertices that are used multiple times across different surfaces.
- fi: An index list of faces attached to non-manifold vertices, showing which faces are connected to these problematic vertices.
- VL: The vertex list of the solid geometry, representing all the vertices in the model.
- FL: The facet list of the solid geometry, representing all the faces or surfaces in the model.
Algorithm Steps
- The function begins by extracting the vertex list (VL) and facet list (FL) from the solid geometry (SG) using the helper function
VLFLofSG(SG)
.
- It checks the number of output arguments requested by the caller:
- If no output is requested (
nargout==0
), it calls VLFLchecknonmanifoldvertices(VL,FL)
to perform the check and print the results using dbprintf
.
- If outputs are requested, it calls
VLFLchecknonmanifoldvertices(VL,FL)
to obtain the indices of non-manifold vertices and the associated faces, storing them in vvi
and fi
respectively.
Example Usage
To use this function, you can load a 3D model, such as a robot, and check for non-manifold vertices:
loadweb JACO_robot.mat;
SG=JC3;
SGchecknonmanifoldvertices(SG);
This example loads a model from a file and checks it for non-manifold vertices, which can help in identifying and fixing issues in the model.
Algorithm explaination created using ChatGPT on 2025-08-19 01:02. (Please note: No guarantee for the correctness of this explanation)
Last html export of this page out of FM database by TL: 2025-09-21