[vtkusers] Polydata input to filter is not set
Nico Schertler
nico.schertler at studentpartners.de
Wed Nov 21 17:54:10 EST 2012
Hi Alex,
to answer your questions. Of course, I provided input to the Delaunay filter. But because this is not directly connected to the problem and it would require introduction to some other classes and so on, I decided to omit this in the question. But I stated that the filter has an output which I could render. Furthermore, I am able to work on the output (as I would do in the filter) and produce a vtkImageData directly (without the filter). So there must be something wrong with passing the output to the filter.
I will implement the static New() if everything else works. For now, it is just a test class.
Nico
Von: vtkusers-bounces at vtk.org [mailto:vtkusers-bounces at vtk.org] Im Auftrag von Alex Malyushytskyy
Gesendet: Mittwoch, 21. November 2012 23:34
An: vtkusers at vtk.org
Betreff: Re: [vtkusers] Polydata input to filter is not set
There is no enough information in your post to reproduce or understand the problem.
For example I believe there are cases when vtkDelaunay2D
will produce empty output.
More of that it is not even clear that you provide any input to vtkDelaunay2D and update it.
And I am not great in guessing.
What I would highly recommend, if you derive class from vtk class,
follow the vtk guidelines.
If you did this you would never be able to write:
MeshToRGBFilter* rgbFilter = new MeshToRGBFilter();
Alex
On Wed, Nov 21, 2012 at 2:02 AM, Nico Schertler <nico.schertler at studentpartners.de<mailto:nico.schertler at studentpartners.de>> wrote:
Hi,
I am creating a filter that takes the result of a vtkDelaunay2D and creates a vtkImageData from that. Therefore, I chose the vtkImageAlgorithm as the base class for my filter and changed the input accordingly:
int MeshToRGBFilter::FillInputPortInformation(int port, vtkInformation* info)
{
info->Set(vtkAlgorithm::INPUT_REQUIRED_DATA_TYPE(), "vtkPolyData");
return 1;
}
I connect the filter to a vtkDelaunay2D like this:
vtkSmartPointer<vtkDelaunay2D> delaunay = vtkSmartPointer <vtkDelaunay2D>::New();
//...
MeshToRGBFilter* rgbFilter = new MeshToRGBFilter();
rgbFilter->SetInputConnection(delaunay->GetOutputPort());
The Delaunay filter definitely has an output. I confirmed that by rendering it.
In the filter, in RequestData, I want to access the polydata from the Delaunay pass like this:
int MeshToRGBFilter::RequestData(
vtkInformation *vtkNotUsed(request),
vtkInformationVector **inputVector,
vtkInformationVector *outputVector)
{
vtkInformation *inInfo = inputVector[0]->GetInformationObject(0);
vtkPolyData* input = vtkPolyData::SafeDownCast(
inInfo->Get(vtkDataObject::DATA_OBJECT()));
The input variable is then set to an instance of a vtkPolyData, but it contains just nothing:
[cid:image001.png at 01CDC842.A1A38F60]
Is there something I might have missed? How can I access the poly data?
Nico
_______________________________________________
Powered by www.kitware.com<http://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
Follow this link to subscribe/unsubscribe:
http://www.vtk.org/mailman/listinfo/vtkusers
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20121121/fd03454b/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.png
Type: image/png
Size: 16888 bytes
Desc: image001.png
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20121121/fd03454b/attachment.png>
More information about the vtkusers
mailing list