vtk中画一条直线,point1为起始点,point2为终止点:
- vtkRenderer *ren = vtkRenderer::New();
- vtkRenderWindow *renWin = vtkRenderWindow::New();
- renWin->AddRenderer(ren);
- vtkRenderWindowInteractor *iren = vtkRenderWindowInteractor::New();
- iren->SetRenderWindow(renWin);
- vtkSmartPointer<vtkLineSource> line = vtkSmartPointer<vtkLineSource>::New();
- line->SetPoint1(10,10,10);
- line->SetPoint2(10,10,50);
- vtkSmartPointer<vtkDataSetMapper> line_mapper = vtkSmartPointer<vtkDataSetMapper>::New();
- line_mapper->SetInput(line->GetOutput());
- vtkSmartPointer<vtkActor> line_actor = vtkSmartPointer<vtkActor>::New();
- line_actor->SetMapper(line_mapper);
- line_actor->GetProperty()->SetColor(1.0,0,0);
- ren->AddActor(line_actor);
- ren->SetBackground(1, 1, 1);
- renWin->SetSize(450, 450);
- vtkInteractorStyleTrackballCamera *style=vtkInteractorStyleTrackballCamera::New();
- iren->SetInteractorStyle(style);
- iren->Initialize();
- renWin->Render();
- iren->Start();
也可以在固定的框框中显示直线:
- vtkRenderer *ren = vtkRenderer::New();
- vtkRenderWindow *renWin = vtkRenderWindow::New();
- renWin->AddRenderer(ren);
- vtkRenderWindowInteractor *iren = vtkRenderWindowInteractor::New();
- iren->SetRenderWindow(renWin);
- vtkSmartPointer<vtkLineSource> line = vtkSmartPointer<vtkLineSource>::New();
- line->SetPoint1(10,10,10);
- line->SetPoint2(10,10,50);
- vtkSmartPointer<vtkDataSetMapper> line_mapper = vtkSmartPointer<vtkDataSetMapper>::New();
- line_mapper->SetInput(line->GetOutput());
- vtkSmartPointer<vtkActor> line_actor = vtkSmartPointer<vtkActor>::New();
- line_actor->SetMapper(line_mapper);
- line_actor->GetProperty()->SetColor(1.0,0,0);
- tkOrientationMarkerWidget *widget = vtkOrientationMarkerWidget::New();
- widget->SetOutlineColor( 0.9300, 0.5700, 0.1300 );
- widget->SetOrientationMarker( line_actor );
- widget->SetInteractor( iren );
- widget->SetViewport( 0.85, 0.0, 1, 0.2 );
- widget->SetEnabled( 1 );
- widget->InteractiveOff();
- widget->InteractiveOn();
- ren->SetBackground(1, 1, 1);
- renWin->SetSize(450, 450);
- vtkInteractorStyleTrackballCamera *style=vtkInteractorStyleTrackballCamera::New();
- iren->SetInteractorStyle(style);
- iren->Initialize();
- renWin->Render();
- iren->Start();