Re: [Paraview] [vtkusers] vtkDistributedDataFilter and ghost cells

2012-11-07 Thread George Zagaris
Hello, Since the data is essentially structured (rectilinear grids), I think the best way to get the global/local mapping is to use extent information. Specifically, you need the whole extent of the grid and the global extent of each partition. Then from the global IJK of a point or cell, and the

Re: [Paraview] [vtkusers] vtkDistributedDataFilter and ghost cells

2012-11-07 Thread Andrew Parker
Many thanks for that. I perform some threshold stuff early on, so basically I'm working with unstructured grids pretty much from zero. I think I need to try to populate the ghost cells using the approach Ken suggested, but I'm not sure how to do that both from a conceptual point of view - I'd jus

Re: [Paraview] [vtkusers] vtkDistributedDataFilter and ghost cells

2012-11-07 Thread George Zagaris
On Wed, Nov 7, 2012 at 9:34 AM, Andrew Parker wrote: > Many thanks for that. I perform some threshold stuff early on, so basically > Perhaps an easy solution is to append a "GlobalCellID" and "GlobalNodeID" before thresholding. To the best of my knowledge, threshold will extract vtkUnstructuredG

Re: [Paraview] [vtkusers] vtkDistributedDataFilter and ghost cells

2012-11-07 Thread Paul Edwards
Hi Andy, I've had a few problems with D3. The limitation I find is that global node ids are slow to generate and the point merging (I think) is only performed in single precision. Also, remember that everything will be redone each time the number of ghost levels that are requested changes - this

Re: [Paraview] [vtkusers] vtkDistributedDataFilter and ghost cells

2012-11-08 Thread Andrew Parker
Hi mate, how goes it? How do you set the ghost level to be one rather than default zero then? Have you written your own "downstream" filter to update the number of ghost levels? If so any tips? "If you know the name of a global node ID array in the input dataset, set that name with this method"

Re: [Paraview] [vtkusers] vtkDistributedDataFilter and ghost cells

2012-11-08 Thread Paul Edwards
What I have done is used D3 internally in my reader to partition the data and always have just 1 ghost level. This could mean issues if more were needed but it's not necessary for the usual post-processing tasks of users. To add global ids just create the array and call SetGlobalIds on your datas

Re: [Paraview] [vtkusers] vtkDistributedDataFilter and ghost cells - PROGRESS

2012-11-07 Thread Andrew Parker
So I've added this in an .cpp file and complied it: vtkStandardNewMacro(MyD3) MyD3::MyD3() : vtkDistributedDataFilter() { } void MyD3::PrintSelf(ostream& os, vtkIndent indent) { this->Superclass::PrintSelf(os,indent); } int MyD3::RequestUpdateExtent(vtkInformation *vtkNotUsed(request),

Re: [Paraview] [vtkusers] vtkDistributedDataFilter and ghost cells - PROGRESS

2012-11-07 Thread Moreland, Kenneth
The instructions I gave were for a downstream filter separate from D3. If you want to modify D3 itself (which sounds like a reasonable good idea for your purposes) then you will have change the value for UPDATE_NUMBER_OF_GHOST_LEVELS that the RequestData reads. If you want to go with this appr

Re: [Paraview] [vtkusers] vtkDistributedDataFilter and ghost cells - PROGRESS

2012-11-07 Thread Andrew Parker
Ok thanks again for the advice. Think it's really clear I'm confused between the "downstream" nomenclature. Do mean just a class that constructs or takes a D3 as input that I write from scratch outside of vtk? Or do you mean something totally different? Clearly my understanding of "it was to inh

Re: [Paraview] [vtkusers] vtkDistributedDataFilter and ghost cells - PROGRESS

2012-11-07 Thread Moreland, Kenneth
By "downstream" I mean a separate filter that is connected to the output of vtkDistributedDataFilter or further down the output ancestry. In your original example you had the chain of filters vtkDistributedDataFilter -> vtkPieceScalars -> vtkDataSetSurfaceFilter. vtkPieceScalars and vtkDataSe