admesh (1) - Linux Manuals

admesh: a program for processing triangulated solid meshes


ADMesh - a program for processing triangulated solid meshes


admesh [OPTION]... file


ADMesh is a program for processing triangulated solid meshes. Currently, ADMesh only reads the STL file format that is used for rapid prototyping applications, although it can write STL, VRML, OFF, and DXF files.

By default, ADMesh performs all of the mesh checking and repairing options on the input file. This means that is checks exact, nearby, remove-unconnected, fill-holes, normal-directions, and normal-values. The file type (ASCII or binary) is automatically detected. The input file is not modified unless it is specified by the --write option. If the following command line was input:

admesh sphere.stl

The file sphere.stl would be opened and read, it would be checked and fixed if necessary, and the results of processing would be printed out. The results would not be saved.

The default value for tolerance is the length of the shortest edge of the mesh. The default number of iterations is 2, and the default increment is 0.01% of the diameter of a sphere that encloses the entire mesh.

If any of the options --exact, --nearby, --remove-unconnected, --fill-holes, --normal-directions, --reverse-all, --normal-values, or --no-check are given, then no other checks besides that one will be done unless they are specified or unless they are required by ADMesh before the specified check can be done. For example the following command line:

admesh --remove-unconnected sphere.stl

would first do an exact check because it is required, and then the unconnected facets would be removed. The results would be printed and no other checks would be done.


Rotate CCW about x-axis by angle degrees
Rotate CCW about y-axis by angle degrees
Rotate CCW about z-axis by angle degrees
Mirror about the xy plane
Mirror about the yz plane
Mirror about the xz plane
Scale the file by factor (multiply by factor)
Translate the file to x, y, and z
Merge file called name with input file
-e, --exact
Only check for perfectly matched edges
-n, --nearby
Find and connect nearby facets. Correct bad facets
-t, --tolerance=tol
Initial tolerance to use for nearby check = tol
-i, --iterations=i
Number of iterations for nearby check = i
-m, --increment=inc
Amount to increment tolerance after iteration=inc
-u, --remove-unconnected Remove facets that have 0 neighbors
-f, --fill-holes
Add facets to fill holes
-d, --normal-directions
Check and fix direction of normals(ie cw, ccw)
Reverse the directions of all facets and normals
-v, --normal-values
Check and fix normal values
-c, --no-check
Don't do any check on input file
-b, --write-binary-stl=name
Output a binary STL file called name
-a, --write-ascii-stl=name
Output an ascii STL file called name
Output a Geomview OFF format file called name
Output a DXF format file called name
Output a VRML format file called name
Display this help and exit
Output version information and exit

The functions are executed in the same order as the options shown here. So check here to find what happens if, for example, --translate and --merge options are specified together. The order of the options specified on the command line is not important.


To perform all checks except for nearby, the following command line would be used:

admesh --exact --remove-unconnected --fill-holes --normal-directions --normal-values sphere.stl

Actually, since the exact check is required by ADMesh before remove-unconnected, and remove-unconnected is required before --fill-holes, the above command line could be shortened as follows with the same results:

admesh --fill-holes --normal-directions --normal-values sphere.stl

And again the same results could be achieved using the short options:

admesh -fudev sphere.stl


admesh -fdv sphere.stl
The following command lines do the same thing:

admesh sphere.stl

admesh -fundev sphere.stl

admesh -f -u -n -d -e -v sphere.stl

since the -fundev options are implied by default. To eliminate one of the checks, just remove the letter of the check to eliminate from the "word" fundev.


Copyright (C) 1995, 1996 Anthony D. Martin <amartin [at]>

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.


For more information about the options and output read admesh-doc.txt - it is usually located in /usr/share/doc/admesh-x.xx dir.