polymerge(1)

NAME

polymerge - merge coincident vertices, collinear edges,
coplanar faces in an OOGL OFF object

SYNOPSIS

polymerge   [-v   vertex_thresh]   [-e   edge_thresh]  [-f
face_thresh] [-V] [-E] [-F] [-d] [-b] [inputfile.off]

DESCRIPTION

Polymerge eliminates redundancies from polyhedral objects
in OOGL's OFF format, and writes another OFF object to its stan
dard output. (Optionally it can produce instead an input file
for Brakke's Evolver.) Specifically, it combines nearly-coinci
dent vertices, nearly-collinear edges, and nearly-coplanar faces.
Vertices which aren't used on any face are deleted, as are faces
with less than three vertices. Thresholds for approximate equal
ity are adjustable from the command line. Options are:
-v vertex_thresh
Merge vertices when they're closer than
vertex_thresh apart; the default is .00001.
-V Don't attempt to merge vertices.
-e edge_thresh
Merge edges where |sin(vertex_angle)| <
edge_thresh; the default is When edges are merged, the corre
sponding vertex is removed.
-E Don't attempt to merge edges. (4OFF edges are nev
er merged.)
-f face_thresh
Merge faces sharing an edge where the faces are
nearly coplanar: when |sin(angle_between_face_normal_vectors)| <
face_thresh. The default is .03, or about two degrees. Note
that merging can create faces which are concave polygons.
-F Don't attempt to merge faces. (4OFF faces are never
merged.)
-b Produce an output file in .fe format for Brakke's
Surface Evolver, instead of a new OFF file.
-d Include debugging information as comments in the
new OFF object. The comments indicate which vertices and faces
in the original object correspond to which in the new one. Mes
sages include:
# Vtx nnn->mmm
Merged vertices nnn and mmm (both indices in the
original object).
# Merged face nnn into mmm (vertices vvv www) n1.n2 s
Faces nnn and mmm in the original object were
merged; their common edge joined original vertices vvv and www.
The cosine of the angle between the face normals was s.
vertex coordinates # newvertno [order] # oldvertno
Each vertex written appears with its new index, its
order (number of edges touching that vertex), and its old index
(index of a corresponding vertex in the original object).
face description # oldvertno ...
For each new face, with N vertices after reduction,
the comment indicates N corresponding vertices in the original
object.

AUTHOR

Stuart Levy, Geometry Center, University of Minnesota

SEE ALSO

anytooff(1), offconsol(1)

BUGS

Coplanar faces are merged even if they were assigned dif
ferent colors. Should be able to handle binary OFF objects, but
this hasn't been tested.
Geometry Center 25 July 1993
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout