Patch Slim (patchslim.m)
Patchslim is used when loading matrices with stlread to reduce the vertex matrix size.
Surface meshes often have duplicate vertices listed. This function parses the list of points and finds all vertices with duplicate entries in the 'v' (vertices) matrix. These points are removed and the 'f' (faces) matrix indices are set accordingly.
This reduces the size of patch matrices, often by quite a bit. This program can take quite a while to run on very large meshes. I use this to shrink surface mesh sizes after loading them in with 'stlread.m', at http://www.mathworks.com/matlabcentral/fileexchange/29906-binary-stl-file-reader .
USAGE: [v, f]=patchslim(v, f)
For more info, see:
http://www.esmonde-white.com/home/diversions/matlab-program-for-loading-stl-files
Cite As
Francis Esmonde-White (2024). Patch Slim (patchslim.m) (https://www.mathworks.com/matlabcentral/fileexchange/29986-patch-slim-patchslim-m), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- MATLAB > Data Import and Analysis > Data Preprocessing >
- MATLAB > Graphics > 2-D and 3-D Plots > Surfaces, Volumes, and Polygons > Polygons >
Tags
Acknowledgements
Inspired by: Consolidator, Binary STL file reader
Inspired: stlTools, VoxelPlotter, Show 3D model, Generate U3D files from STL models for making multilayer 3D PDF figures, GJK algorithm distance of closest points in 3D
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.6.0.0 | Patchslim now uses the built-in command unique() and is approximately 30x faster, thanks to John D'Errico for the excellent suggestion! I often use unique(), but hadn't realized that it also has a mode to operate on rows. |
||
1.5.0.0 | I changed the H1 line so that it is more descriptive. |
||
1.0.0.0 |