[vtkusers] vtkPoints ...how to work with them.

David Gobbi david.gobbi at gmail.com
Tue Feb 16 15:00:08 EST 2010


Show us your transform matrix.  I'd bet that when your points are
multiplied by the matrix, the homogeneous coordinate ends up being
zero.

   David


On Tue, Feb 16, 2010 at 12:09 PM, Giancarlo Amati
<ilferraresebono at hotmail.it> wrote:
> Hello everybody, this is my code:
>
> vtkSmartPointer<vtkTransformPolyDataFilter> pdF =
> vtkTransformPolyDataFilter::New();
>         pdF->SetInputConnection(pdNorm->GetOutputPort());
>         pdF->SetTransform(perspT);
>         pdF->Update();
>
>
>  vtkSmartPointer<vtkPolyData> T_persp_pd = pdF->GetOutput();
>         T_persp_pd->Update();
>
>  vtkSmartPointer<vtkPoints> T_pdPoints = T_persp_pd->GetPoints();
>         cout << "N points: " << T_persp_pd->GetNumberOfPoints();
>
>
>         //Normalize the points
>         for( int i = 0; i<T_persp_pd->GetNumberOfPoints(); i++) {
>             double p[3];
>             T_persp_pd->GetPoints()->GetPoint(i,p);
>             cout<< "POints i: " << i << " " << p[0] << endl;
>             p[0] = p[0]/p[2];
>             p[1] = p[1]/p[2];
>             p[2] = p[2]/p[2];
>         }
>
> when I print out the 3D vector p, I always get: -1.INF0000000000 which is
> clearly a mistake. What's the problem in my code?
>
> thanks a lot!
> Giancarlo
>
> ________________________________
> Troppe caselle di posta? Gestiscile da Hotmail!
> _______________________________________________
> 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
>
> Follow this link to subscribe/unsubscribe:
> http://www.vtk.org/mailman/listinfo/vtkusers
>
>



More information about the vtkusers mailing list