vtk画直线
2012-11-29 00:25
686 查看
vtk中画一条直线,point1为起始点,point2为终止点:
[cpp] view plaincopy
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();
也可以在固定的框框中显示直线:
[cpp] view plaincopy
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();
本文来源:http://blog.csdn.net/lusmiling/article/details/5655134
[cpp] view plaincopy
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();
也可以在固定的框框中显示直线:
[cpp] view plaincopy
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();
本文来源:http://blog.csdn.net/lusmiling/article/details/5655134
相关文章推荐
- [转载]VTK类视频 切片移动直线获取灰度值
- VTK类视频 切片移动直线获取灰度值
- vtk 两点确定一条直线的可视化
- vtk实战(五十四)—对直线设置颜色
- VTK 求多边形和直线的交点
- 利用vtkAnimationScene和vtkAnimationCue进行直线的动态调整
- VTK修炼之道72:交互与Widget_交互器样式
- 计算几何模板一(点、线段、直线)
- pcl显示报错-VTK
- VTK编译中出现 no override found for vtkpolydatamapper 解决方法
- 使用VTK与Python实现机械臂三维模型可视化
- 【HDU 1466 计算直线的交点数】+ dp
- PCL Save VTK File With Texture Coordinates 使用PCL库来保存带纹理坐标的VTK文件
- 用vtk画抛物面
- 绘图程序中直线的拾取判断
- vtk qt 编译
- 计算机图形学—DDA直线生成算法
- 计算直线的交点数
- 算法:怎样得到两点连成的直线上的所有点(怎样判断一点是否在直线上)
- CMake创建VTK程序