67 mVtkWindow->AutomaticWindowPositionAndResizeOff();
88 mPlane->SetOrigin(-scale, 0.0, scale);
89 mPlane->SetPoint1( scale, 0.0, scale);
90 mPlane->SetPoint2(-scale, 0.0, -scale);
91 mPlane->SetResolution(100, 100);
94 vtkNew<vtkPolyDataMapper> planeMapper;
95 planeMapper->SetInputData(
mPlane->GetOutput());
98 mPlaneActor->GetProperty()->SetEdgeVisibility(
true);
99 mPlaneActor->GetProperty()->SetEdgeColor(0.4, 0.4, 0.4);
100 mPlaneActor->GetProperty()->SetColor(0.8, 0.8, 0.8);
101 mPlaneActor->GetProperty()->SetBackfaceCulling(
true);
110 vtkNew<vtkPolyDataMapper> wireframeMapper;
127 vtkNew<vtkPolyDataMapper> mapper;
128 mapper->SetInputData(
mSceneCube->GetOutput());
132 mBoxActor->GetProperty()->SetRepresentationToWireframe();
133 mBoxActor->GetProperty()->SetColor(0.8, 0.8, 0.8);
134 mBoxActor->GetProperty()->SetOpacity(0.8);
136 mBoxActor->GetProperty()->SetLighting(
false);
202 mVtkWindow->GetState()->ResetFramebufferBindings();
203 mVtkWindow->GetState()->ResetGLViewportState();
214 mVtkLight->SetColor(lightClr.r, lightClr.g, lightClr.b);
215 mVtkLight->SetAmbientColor(ambient.r, ambient.g, ambient.b);
216 mVtkLight->SetPosition(lightDir.x, lightDir.y, lightDir.z);
222 auto b0 =
scene->getLowerBound();
223 auto b1 =
scene->getUpperBound();
224 mSceneCube->SetBounds(b0[0], b1[0], b0[1], b1[1], b0[2], b1[2]);
230 glm::vec3 color0 = rparams.bgColor0;
231 glm::vec3 color1 = rparams.bgColor1;
232 mVtkRenderer->SetBackground(color0.x, color0.y, color0.b);
233 mVtkRenderer->SetBackground2(color1.x, color1.y, color1.b);
239 if (item->isVisible())
240 item->updateRenderingContext();
242 if (item->getActor())
243 item->getActor()->SetVisibility(item->isVisible());
244 if (item->getVolume())
245 item->getVolume()->SetVisibility(item->isVisible());
251 mBoxActor->SetVisibility(rparams.showSceneBounds);
255 glGetIntegerv(GL_FRAMEBUFFER_BINDING, &currFBO);
261 vtkOpenGLFramebufferObject* offscreen =
mVtkWindow->GetOffScreenFramebuffer();
262 glBindFramebuffer(GL_DRAW_FRAMEBUFFER, currFBO);
263 glBindFramebuffer(GL_READ_FRAMEBUFFER, offscreen->GetFBOIndex());
264 glReadBuffer(GL_COLOR_ATTACHMENT0);
267 int w = rparams.viewport.w;
268 int h = rparams.viewport.h;
272 GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT, GL_NEAREST);