[Paraview] Write a reader plugin

Utkarsh Ayachit utkarsh.ayachit at kitware.com
Fri Jan 21 15:32:19 EST 2011


vtkStructuredGridReader is a vtkDataReader subclass. So, unless you
are writing a reader that reads a file similar to the legacy VTK
files, I'd simply subclass vtkStructuredGridAlgorithm making sure that
you set the NumberOfInputPorts to 0 in the constructor of your
subclass.

The information widget will only show any fields after you've hit
apply. Does it still now show anything? Is so, try putting a break
point in your RequestData() function, is that being called? Are you
producing valid data there? You might always want to verify that you
are reporting correct WHOLE_EXTENT() etc. in the RequestInformation
function.

Utkarsh.

On Sat, Jan 15, 2011 at 5:43 PM, Xunlei Wu <xunlei at renci.org> wrote:
> Hi David and all,
> I am writing a reader plugin for ParaView. A test program without the VTK wrapping approves that I can get all the header (metadata) and grid data correctly. However, when I following the examples posted in
> http://www.vtk.org/Wiki/ParaView/Examples/Plugins/Reader
> http://www.kitware.com/products/html/WritingAParaViewReaderPlug-in.html
> and vtkStructuredGridReader.h/.cxx
>
> I got confused. Shall I subclass vtkStructuredGridAlgorithm or vtkStructuredGridReader? What are the differences? With minor differences in the code, i.e. defining char* FileName, I have both scenarios built fine.
>
> Let's say, we are subclassing vtkStructuredGridAlgorithm for now on. After I populate values as the following
>
> int vtkGRIB2Reader::RequestInformation(vtkInformation* vtkNotUsed(request),                                                             vtkInformationVector** vtkNotUsed(inputVector),                                                 vtkInformationVector *outputVector)
> {
>        ...
>        vtkInformation* outInfo = outputVector->GetInformationObject(0);
>
>        outInfo->Set(vtkStreamingDemandDrivenPipeline::WHOLE_EXTENT(),  ext, 6);
>        outInfo->Set(vtkDataObject::SPACING(),  this->Spacing, 3);
>        outInfo->Set(vtkDataObject::ORIGIN(),   this->Origin, 3);
>
>        return 1;
> }
>
> In ParaView Object Inspector / Information widget, I did not see any update in all the fields except Statistics / Type: Structured (Curvilinear) Grid. Would you please help me? Did I populate outInof in the wrong place? Thanks a lot.
>
> Best,
> xunlei
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the ParaView Wiki at: http://paraview.org/Wiki/ParaView
>
> Follow this link to subscribe/unsubscribe:
> http://www.paraview.org/mailman/listinfo/paraview
>


More information about the ParaView mailing list