From 20c53a173d52fe6c3e7ac881eacaa581b3c423aa Mon Sep 17 00:00:00 2001 From: Krad Date: Mon, 29 Aug 2022 09:23:38 +0800 Subject: [PATCH] Volume Rendering style. --- .../Rendering/Viewer/VolumeRenderingViewer.cpp | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/src/Rendering/Viewer/VolumeRenderingViewer.cpp b/src/src/Rendering/Viewer/VolumeRenderingViewer.cpp index 790cf4e..e64f6b3 100644 --- a/src/src/Rendering/Viewer/VolumeRenderingViewer.cpp +++ b/src/src/Rendering/Viewer/VolumeRenderingViewer.cpp @@ -63,11 +63,16 @@ VolumeRenderingViewer::VolumeRenderingViewer() mapper->SetMinimumImageSampleDistance(1.0); } vtkNew colorFun; - colorFun->SetScaleToLinear(); - colorFun->AddRGBPoint(110.0,0.0,0.0,0.0); - colorFun->AddRGBPoint(121.0,0.5,0.25,0.125); - colorFun->AddRGBPoint(453.0,1.0,1,1); + colorFun->SetScaleToLinear(); + colorFun->AddRGBPoint(80.0,0.0,0.0,0.0); + colorFun->AddRGBPoint(100.5,0.343,0.245,0.175); + colorFun->AddRGBPoint(300.0,0.9,0.6,0.3); + colorFun->AddRGBPoint(400.0,0.9,0.8,0.7); + colorFun->AddRGBPoint(500.0,1.,1.,1.); +// colorFun->ClampingOff(); +// colorFun->AddRGBSegment(100.5,0.343,0.245,0.175,200.0,1.0,1.0,0.8); +// colorFun->AddRGBSegment(200.5,1.0,1.0,0.8,800.0,1.0,1.0,1); vtkNew opacityFun; opacityFun->AddPoint(120.5, 0.0); // opacityFun->AddPoint(121.0, 1.0); @@ -144,7 +149,7 @@ void VolumeRenderingViewer::InstallPipeline() { this->Renderer->AddVolume(this->VolumeActor); this->Renderer->AddViewProp(annotation); Renderer->AddObserver(vtkCommand::EndEvent,this,&VolumeRenderingViewer::printFrameRate); - this->Renderer->SetBackground(0.3, 0.3, 0.3); + this->Renderer->SetBackground(0.0, 0.0, 0.0); } //TODO: annotation for orientation } @@ -239,7 +244,10 @@ void VolumeRenderingViewer::Render() { if (RenderWindow && Interactor){ if (firstRender){ firstRender = false; + RenderWindow->SetDesiredUpdateRate(Interactor->GetDesiredUpdateRate()); + Interactor->InvokeEvent(vtkCommand::StartInteractionEvent, nullptr); SetViewDirection(0); + Render(); } Interactor->Render(); }