[vtkusers] vtkLoopSubdivisionFilter problem

Gerald Dalley dalleyg at dma.org
Mon Sep 17 22:27:42 EDT 2001

For this discussion, I am using the release version of vtk3.2 (e.g. not a
nightly build).

The subdivision filters unfortunately appear to be a bit brittle.  I have
been trying to use vtkButterflySubdivision filter and have been running into
problems too.  From what I can see, these filters are very picky about the
topology of your input mesh.  Fortunately, this pickiness seems to be mostly
due to the current implementation.

vtkLoopSubdivisionFilter seems to require that every point belong to at
least one cell.  That is what is probably causing your crashes.
Unfortunately, it looks like there are no filters that will clean out extra
vertices for you--neither vtkCleanPolyData nor vtkTriangleFilter will do
this.  I don't know if some hacks to the cxx source would allow you to help
vtkLoopSubdivisionFilter skip over those points that do not belong to any

Both it and vtkButterflySubdivisionFilter assume that any given edge will be
shared by at most one other triangle.
vtkApproximatingSubdivisionFilter::FindEdge and
vtkInterpolatingSubdivisionFilter::FindEdge have slight bugs.  In their
inner loops, they fail to exit the outer loop when the first edge is found.
This allows edges to be selected that have not yet been processed.  This one
is easy to fix.

vtkButterflySubdivisionFilter also seems to assume that any given triangle
will have at least one shared edge.  I have verified this only
experimentally--I don't know what part of the source creates this

Does anyone know if there is either any easy fix to these problems or if
there is some cleaning filters we can use to make the data be in a form that
these filters like?  vtkCleanPolyData to vtkTriangleFilter to
vtkXXXSubdivisionFilter doesn't seem to do the trick, at least for me.

--Gerald Dalley
  dalleyg at ee.eng.ohio-state.edu
  -----Original Message-----
  From: vtkusers-admin at public.kitware.com
[mailto:vtkusers-admin at public.kitware.com]On Behalf Of Charlie H. Chang
  Sent: Tuesday, 11 September 2001 9:27 PM
  To: VTKMailing List (E-mail)
  Subject: [vtkusers] vtkLoopSubdivisionFilter problem

  I am encounting a problem when using vtkLoopSubdivisionFilter,
  my program core-dumps with message :
    numCellInLoop < 1: 0
  But when I set the subdivision number to 0, it is OK.
  There are five actors in my app. Three of them work well,
  while two of them will give me core dump when Subdivision
  number is set to numbers greater than 0.
  Any idea how to debug this problem?
  Thank you in advance!

  Charlie H. Chang charlie.chang at nchc.gov.tw
  Software Development Group
  National Center for High-performance Computing
  Tel: +886-3-5776085 x362;  Fax: +886-3-3538

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20010917/74788c1f/attachment.htm>

More information about the vtkusers mailing list