bonjour,

j'essai d'afficher nuage de point avec c++/vtk
je prend en entrée un fichier .obj dont je prends les sommets pour l'afficher

j'ai réussi la compile de l'application mais po de nuage de points sur l'ecran

voilà mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
 
data->SetPoints(points);
	fclose(datei);
	fprintf(stdout,"\n\n");
 
	vtkCellArray *polys = vtkCellArray::New();
	int iNo = points->GetNumberOfPoints();
	//cout <<"I:"<<iNo<<endl;
	for (int i=0; i<iNo; i++) 
	{
		polys->InsertNextCell(1,&i);
		//cout <<"pol"<<polys<<endl;
	}
	data->SetPolys(polys);
	//cout <<"pol"<<data<<endl;
	polys->Delete();
 
	// Now we'll look at it.
	vtkPolyDataMapper *pointsMapper = vtkPolyDataMapper::New();
	pointsMapper->SetInput(data);
	vtkActor *pointsActor = vtkActor::New();
	pointsActor->SetMapper(pointsMapper);
	pointsActor->GetProperty()->SetRepresentationToPoints();
	pointsActor->GetProperty()->SetPointSize(20);
	pointsActor->GetProperty()->SetColor(0.0,0.5,1.0);
	//actor->GetProperty()->SetPointSize(20)
 
	// The usual rendering stuff.
	vtkCamera *camera = vtkCamera::New();
	camera->SetPosition(1,1,1);
	camera->SetFocalPoint(0,0,0);
 
	vtkRenderer *renderer = vtkRenderer::New();
	vtkRenderWindow *renWin = vtkRenderWindow::New();
	renWin->AddRenderer(renderer);
 
	vtkRenderWindowInteractor *iren = vtkRenderWindowInteractor::New();
	iren->SetRenderWindow(renWin);
 
	renderer->AddActor(pointsActor);
 
	//renderer->AddActor(surfaceActor);
	renderer->SetActiveCamera(camera);
	renderer->GetActiveCamera()->SetFocalPoint(0, 0, 0);
	renderer->GetActiveCamera()->SetPosition(1, 0, 0);
	renderer->GetActiveCamera()->SetViewUp(0, 0, 1);
	renderer->ResetCamera();
	renderer->GetActiveCamera()->Azimuth(20);
	renderer->GetActiveCamera()->Elevation(30);
	renderer->GetActiveCamera()->Dolly(1.2);
	renderer->ResetCameraClippingRange();
	renderer->SetBackground(1,1,1);
 
	renWin->SetSize(300,300);
 
	// interact with data
	renWin->Render();
	iren->Start();
 
	// Clean up
	pointsMapper->Delete();
	pointsActor->Delete();
	points->Delete();
	data->Delete();
	camera->Delete();
	renderer->Delete();
	renWin->Delete();
	iren->Delete();
 
	return 0;
}
ou est la faute :?