explaingit

cnr-isti-vclab/meshlab

5,675C++Audience · researcherComplexity · 3/5LicenseSetup · moderate

TLDR

MeshLab is a free desktop application for cleaning, repairing, and converting 3D mesh files, the kind that come out of 3D scanners and photogrammetry workflows, running on Windows, macOS, and Linux.

Mindmap

mindmap
  root((meshlab))
    What it does
      3D mesh cleaning
      Format conversion
      Polygon reduction
    Inputs
      3D scans
      Photogrammetry
      Downloaded mesh files
    Operations
      Hole filling
      Noise removal
      Mesh repair
    Built on
      VCGlib
      C++ library
    Platforms
      Windows
      macOS
      Linux
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Clean up a 3D scan by removing noise, filling holes, and fixing overlapping faces before sending it to a 3D printer

USE CASE 2

Convert a mesh between formats such as OBJ, PLY, STL, and many others

USE CASE 3

Reduce the polygon count of a high-resolution mesh to make it usable in a game engine or real-time app

USE CASE 4

Use VCGlib in a C++ program to automate large-scale mesh processing in batch without a graphical interface

Tech stack

C++QtVCGlibOpenGL

Getting it running

Difficulty · moderate Time to first run · 30min

Pre-built binaries are available for Windows and macOS, Linux users typically compile from source.

Free to use and modify, but any software you distribute that includes this code must also be released as open source under the same GPL terms.

In plain English

MeshLab is an open source desktop application for working with 3D mesh files. If you have ever scanned a physical object in 3D, received a model from a photogrammetry workflow, or downloaded a mesh file you need to clean up or convert, MeshLab is the kind of tool built for that job. It is written in C++ and runs on Windows, macOS, and Linux. The software is aimed at processing and editing large, unstructured triangular meshes. A triangular mesh is the standard way computers represent 3D surfaces, where the shape is made up of many small triangles stitched together. These files often come out of scanners or reconstruction pipelines with errors, holes, noise, and overlapping faces. MeshLab provides tools to clean, repair, inspect, and convert them into a usable state. Under the hood, MeshLab is built on a C++ library called VCGlib, developed at the Visual Computing Lab of the Italian National Research Council. That library can also be used on its own for automated large-scale mesh processing without a graphical interface. MeshLab wraps it in an interactive application so you can explore its algorithms visually, which is useful for experimenting before committing to a processing pipeline. The repository contains the full source code, build scripts for each platform, sample mesh files for testing, and documentation generated via Doxygen. The project follows a two-branch model: the main branch tracks the current stable release with only bugfixes, while the devel branch collects new features for the next release. The source is released under the GPL license. If you need to prepare a 3D scan for printing, convert between mesh formats, reduce polygon count, fill holes, or perform measurements on a surface model, MeshLab is a well-established free option developed and maintained by academic researchers in Italy.

Copy-paste prompts

Prompt 1
I have an OBJ file from a photogrammetry scan with holes and noise, list the MeshLab filters I should apply in order to clean it up and prepare it for FDM 3D printing.
Prompt 2
Write a MeshLab script file that reduces polygon count by 50 percent, fills holes, and exports the result as an STL.
Prompt 3
How do I use VCGlib in a C++ program to batch-process a folder of PLY files and output cleaned meshes without opening the MeshLab GUI?
Prompt 4
In MeshLab, how do I align two overlapping scans of the same physical object into a single unified mesh?
Prompt 5
What is the best sequence of MeshLab operations to go from a raw point cloud 3D scan to a watertight mesh ready for printing?
Open on GitHub → Explain another repo

← cnr-isti-vclab on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.