Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help

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

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

       Polymerge eliminates redundancies from polyhedral objects in OOGL's OFF
       format, and writes another OFF object to	its standard output.  (Option-
       ally  it	 can  produce  instead	an  input  file	for Brakke's Evolver.)
       Specifically, it	combines nearly-coincident 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.   Thresh-
       olds  for  approximate  equality	 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 corresponding vertex is removed.

       -E     Don't attempt to merge edges.  (4OFF edges are never 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.  Messages include:

       # Vtx nnn->mmm
	      Merged vertices nnn and mmm (both	indices	in  the	 original  ob-

       # Merged	face nnn into mmm (vertices vvv	www) n1.n2 s
	      Faces nnn	and mmm	in the original	object were merged; their com-
	      mon 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 (num-
	      ber 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.

       Stuart Levy, Geometry Center, University	of Minnesota

       anytooff(1), offconsol(1)

       Coplanar	faces are merged even if they were assigned different  colors.
       Should  be  able	 to  handle  binary  OFF objects, but this hasn't been

Geometry Center			 25 July 1993			POLYMERGE(1gv)


Want to link to this manual page? Use this URL:

home | help