[vtkusers] Useless triangulation in unstructured grid rendering
John Biddiscombe
biddisco at cscs.ch
Tue Oct 10 06:12:19 EDT 2006
cc'd developers list for comments/reference
When datasets are modified the filters downstream of them must recompute
their outputs. In this case the DataSetSurface filter detects that
something has changed, but it isn't clever enough to know that only the
scalars have been modified. To solve this problem would require quite
significant changes in the way pipeline modified time is passed around
and examined.
For filters which change their outputs over time, but do not change
their geometry (ie changing scalars), I am going to add something like a
DATA_GEOMETRY_TIME_INVARIANT key to the information passed in the
pipeline. This will allow a filter downstream like a surface filter to
know that only the scalars will change as the input is modified, but it
will still require some extra knowledge (for example, if the timestep
changes, the scalars will change, but the filename might also have
changed and invalidated the geometry...), by default this key would not
be copied and only filters which are geometry invariant under time would
set it.
In principle, breaking the modified time into two components - geometry
and scalars - would be the most direct way of handling the situation,
but it will take some time to 1) implement this and 2) add support into
the filters which can take advantage of it.
in short, you'll have to live with it for now, but you can simply modify
DatasetGeometry filter to not recompute the mesh and just update the
scalars by adding some flag like SetKeepPreviousMeshResult(1) and
editing the execute method to not do the triangulation unless it really
'needs' to.
JB
> Dear vtkUsers,
>
> I have noticed that when in an ugrid point values are are modified with
> grid->GetPointData()->SetScalars(pointScalars) a triangulation is done in
> vtkDataSetSurfaceFilter. Which is, I guess, useless and very time consuming. I
> understand that glList of vertex has to be reconstruct to set new colors but
> triangulation result should be taken directly from the filter.
>
> Does anyone know why this triangulation is done ?
>
> Yours,
>
> Jacques Charreyron
>
>
> __________________________________________________________
> \
> \ Jacques Charreyron
> \ Société Michelin
>
> _______________________________________________
> This is the private VTK discussion list.
> Please keep messages on-topic. Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
> Follow this link to subscribe/unsubscribe:
> http://www.vtk.org/mailman/listinfo/vtkusers
>
--
John Biddiscombe, email:biddisco @ cscs.ch
http://www.cscs.ch/about/BJohn.php
CSCS, Swiss National Supercomputing Centre | Tel: +41 (91) 610.82.07
Via Cantonale, 6928 Manno, Switzerland | Fax: +41 (91) 610.82.82
More information about the vtkusers
mailing list