注意:使用QVTKWidget时不要使用vtkSmartPointer
长度测量:
demo:https://lorensen.github.io/VTKExamples/site/Cxx/Widgets/DistanceWidget/
vtkSmartPointer<vtkDistanceWidget> distanceWidget =
vtkSmartPointer<vtkDistanceWidget>::New();
distanceWidget->SetInteractor(renderWindowInteractor);
distanceWidget->CreateDefaultRepresentation();
static_cast<vtkDistanceRepresentation *>(distanceWidget->GetRepresentation())
->SetLabelFormat("%-#6.3g mm");
// Render an image (lights and cameras are created automatically)
renderWindow->Render();
renderWindowInteractor->Initialize();
renderWindow->Render();
distanceWidget->On();
角度测量:
demo1:https://lorensen.github.io/VTKExamples/site/Cxx/Widgets/AngleWidget/
demo2:https://lorensen.github.io/VTKExamples/site/Cxx/Widgets/AngleWidget2D/
vtkSmartPointer<vtkAngleWidget> angleWidget =
vtkSmartPointer<vtkAngleWidget>::New();
angleWidget->SetInteractor(renderWindowInteractor);
angleWidget->CreateDefaultRepresentation();
// Render
renderWindow->Render();
renderWindowInteractor->Initialize();
renderWindow->Render();
angleWidget->On();
renderWindowInteractor->Start();