[vtkusers] vtkParticleReader and vtkGlyph3D
Sebastien Jourdain
sebastien.jourdain at kitware.com
Tue Apr 3 15:26:33 EDT 2018
You can try to see what the GetOutput() contains as my assumption it would
be empty (No points => Number of Points: 0).
reader->GetOutput()->PrintSelf(cout, vtkIndent(2));
What I mean was
glyph3D->SetInputConnection(reader->GetOutputPort());
On Tue, Apr 3, 2018 at 1:23 PM, Sgouros, Thomas <thomas_sgouros at brown.edu>
wrote:
> Hi Sebastien:
>
> Sorry if that was unclear. The third block of code comes first, and
> reader->Update() is called before I use its GetOutput(). In situ, it looks
> like this:
>
> ...
> vtkSmartPointer<vtkParticleReader> reader =
> vtkSmartPointer<vtkParticleReader>::New();
> reader->SetFileName ( filePath.c_str() );
> reader->SetDataByteOrderToBigEndian();
> reader->Update();
>
> // Create anything you want here, we will use a cube for the demo.
> vtkSmartPointer<vtkCubeSource> cubeSource =
> vtkSmartPointer<vtkCubeSource>::New();
>
> vtkSmartPointer<vtkGlyph3D> glyph3D = vtkSmartPointer<vtkGlyph3D>::N
> ew();
> glyph3D->SetSourceConnection(cubeSource->GetOutputPort());
> glyph3D->SetInputData(reader->GetOutput());
> glyph3D->Update();
>
> ...
>
> I don't think I understand what you mean by the connection instead of the
> dataset directly.
>
> Is there a way to peek inside glyph3D and see what it thinks it has?
>
> Thank you,
>
> -Tom
>
>
> On Tue, Apr 3, 2018 at 2:53 PM, Sebastien Jourdain <
> sebastien.jourdain at kitware.com> wrote:
>
>> Tom,
>>
>> Just make sure that reader->Update(); was called before
>> glyph3D->SetInputData(reader->GetOutput());
>> But it would be better to use the connection instead of the dataset
>> directly.
>>
>> Seb
>>
>> On Tue, Apr 3, 2018 at 12:27 PM, Sgouros, Thomas <
>> thomas_sgouros at brown.edu> wrote:
>>
>>> Hello all:
>>>
>>> Can someone help me understand why this code works:
>>>
>>> vtkSmartPointer<vtkGlyph3D> glyph3D = vtkSmartPointer<vtkGlyph3D>::N
>>> ew();
>>> glyph3D->SetSourceConnection(cubeSource->GetOutputPort());
>>> glyph3D->SetInputData(polydata);
>>> glyph3D->Update();
>>>
>>> And this does not (nothing displayed)?
>>>
>>> vtkSmartPointer<vtkGlyph3D> glyph3D = vtkSmartPointer<vtkGlyph3D>::N
>>> ew();
>>> glyph3D->SetSourceConnection(cubeSource->GetOutputPort());
>>> glyph3D->SetInputData(reader->GetOutput());
>>> glyph3D->Update();
>>>
>>> The first clip is from https://www.vtk.org/Wiki/
>>> VTK/Examples/Cxx/Filtering/Glyph3D
>>>
>>> The 'reader' object is stolen from the ParticleReader example:
>>>
>>> vtkSmartPointer<vtkParticleReader> reader =
>>> vtkSmartPointer<vtkParticleReader>::New();
>>> reader->SetFileName ( filePath.c_str() );
>>> reader->SetDataByteOrderToBigEndian();
>>> reader->Update();
>>>
>>> The program compiles, but no data appears. It works fine (data appears)
>>> in the context of the ParticleReader example, where it shows all the data
>>> points. But I want to see them as glyphs, not little squares. I seem to be
>>> misunderstanding something fundamental, but not seeing what it could be.
>>>
>>> Many thanks,
>>>
>>> -Tom
>>>
>>>
>>>
>>> _______________________________________________
>>> 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 VTK FAQ at:
>>> http://www.vtk.org/Wiki/VTK_FAQ
>>>
>>> Search the list archives at: http://markmail.org/search/?q=vtkusers
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> https://vtk.org/mailman/listinfo/vtkusers
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://vtk.org/pipermail/vtkusers/attachments/20180403/2e919a92/attachment.html>
More information about the vtkusers
mailing list