[vtk-developers] RE: [vtkusers] Useless triangulation in unstructured grid rendering

John Platt jcplatt at dsl.pipex.com
Tue Oct 10 16:00:58 EDT 2006


John,

As you mentioned, vtkMergeFilter or vtkMergeDataObjectFilter >
vtkAssignAttribute already allow you to separate the geometry and
attribute data. So, is it worth the additional complexity and effort of
adding a new information key for this purpose?

John Platt

-----Original Message-----
From: vtkusers-bounces+jcplatt=dsl.pipex.com at vtk.org
[mailto:vtkusers-bounces+jcplatt=dsl.pipex.com at vtk.org] On Behalf Of
John Biddiscombe
Sent: 10 October 2006 12:57
Cc: vtk-developers; vtkusers at vtk.org; Jacques Charreyron-F264897
Subject: Re: [vtkusers] Useless triangulation in unstructured grid
rendering

I did forget, that you might be able use a vtkMergeFilter to accomplish 
what you want in this case.

JB

> 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


_______________________________________________
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





More information about the vtk-developers mailing list