def enable_eye_dome_lighting(self): """Enable eye dome lighting (EDL).""" if hasattr(self, 'edl_pass'): return self # create the basic VTK render steps basic_passes = vtk.vtkRenderStepsPass() # blur the resulting image # The blur delegates rendering the unblured image to the basic_passes self.edl_pass = vtk.vtkEDLShading() self.edl_pass.SetDelegatePass(basic_passes) # tell the renderer to use our render pass pipeline self.glrenderer = vtk.vtkOpenGLRenderer.SafeDownCast(self) self.glrenderer.SetPass(self.edl_pass) return self.glrenderer
SetActiveView(None) # create new layout object 'Layout #1' layout1 = CreateLayout(name='Layout #1') layout1.SplitHorizontal(0, 0.500000) layout1.AssignView(1, renderView1) layout1.AssignView(2, renderView2) # ---------------------------------------------------------------- # restore active view SetActiveView(renderView2) ## set Screen Space Ambien Occlusion on the current view import vtk ogl = vtk.vtkRenderStepsPass() ssao = vtk.vtkSSAOPass() sceneSize = 20. ssao.SetRadius(0.1 * sceneSize) # comparison radius #ssao.SetBias(0.001 * sceneSize) # comparison bias ssao.SetKernelSize(256) # number of samples used ssao.BlurOff() # do not blur occlusion ssao.SetDelegatePass(ogl) v = GetRenderView() renderer = v.GetRenderer() renderer.SetPass(ssao) Render() ##################################################### # create a new 'PLY Reader'
def main(): if not vtk_version_ok(9, 0, 20200909): print( 'You need VTK version 9.0.20200909 or greater to run this program.' ) return get_program_parameters() colors = vtk.vtkNamedColors() iren = vtk.vtkRenderWindowInteractor() renWin = vtk.vtkRenderWindow() renWin.SetMultiSamples(0) iren.SetRenderWindow(renWin) # Set up the renderers # One for the object and the other for the outline renderer = vtk.vtkRenderer() rendererOutline = vtk.vtkRenderer() rendererOutline.SetLayer(1) renWin.SetNumberOfLayers(2) renWin.AddRenderer(rendererOutline) renWin.AddRenderer(renderer) # Create an arrow. arrowSource = vtk.vtkArrowSource() # arrowSource.SetShaftRadius(1.0) # arrowSource.SetTipLength(1.0) arrowSource.Update() # Create mapper and actor for the main renderer coneMapperMain = vtk.vtkPolyDataMapper() coneMapperMain.SetInputConnection(arrowSource.GetOutputPort()) coneActorMain = vtk.vtkActor() coneActorMain.SetMapper(coneMapperMain) coneActorMain.GetProperty().SetDiffuseColor(colors.GetColor3d("LimeGreen")) renderer.AddActor(coneActorMain) # Lets make the outline glow! # Create the render pass basicPasses = vtk.vtkRenderStepsPass() glowPass = vtk.vtkOutlineGlowPass() glowPass.SetDelegatePass(basicPasses) # Apply the render pass to the highlight renderer rendererOutline.SetPass(glowPass) # Create mapper and actor for the outline coneMapperOutline = vtk.vtkPolyDataMapper() coneMapperOutline.SetInputConnection(arrowSource.GetOutputPort()) coneActorOutline = vtk.vtkActor() coneActorOutline.SetMapper(coneMapperOutline) coneActorOutline.GetProperty().SetColor(colors.GetColor3d("Magenta")) coneActorOutline.GetProperty().LightingOff() rendererOutline.AddActor(coneActorOutline) renWin.SetSize(600, 600) renderer.GradientBackgroundOn() renderer.SetBackground(colors.GetColor3d("DarkSlateGray")) renderer.SetBackground2(colors.GetColor3d("DarkSlateBlue")) renderer.ResetCamera() camera = renderer.GetActiveCamera() camera.Roll(45.0) camera.Azimuth(-30.0) camera.Elevation(-15.0) renderer.ResetCamera() # Now set the active camera for the outline rendererOutline.SetActiveCamera(camera) renWin.SetWindowName('OutlineGlowPass') renWin.Render() iren.Start()
def main(): fileName = get_program_parameters() colors = vtk.vtkNamedColors() colors.SetColor("A1Diff", [255, 204, 77, 255]) colors.SetColor("A2Amb", [51, 51, 255, 255]) colors.SetColor("A2Diff", [51, 255, 204, 255]) colors.SetColor("A3Amb", [230, 230, 230, 255]) colors.SetColor("Bkg", [128, 166, 255, 255]) renderer = vtk.vtkRenderer() renderer.SetBackground(colors.GetColor3d("Bkg")) renderWindow = vtk.vtkRenderWindow() renderWindow.SetSize(500, 500) renderWindow.AddRenderer(renderer) iren = vtk.vtkRenderWindowInteractor() iren.SetRenderWindow(renderWindow) reader = vtk.vtkPLYReader() reader.SetFileName(fileName) reader.Update() mapper = vtk.vtkPolyDataMapper() mapper.SetInputConnection(reader.GetOutputPort()) # create three models actor = vtk.vtkActor() actor.SetMapper(mapper) actor.GetProperty().SetAmbientColor(colors.GetColor3d("Red")) actor.GetProperty().SetDiffuseColor(colors.GetColor3d("A1Diff")) actor.GetProperty().SetSpecular(0.0) actor.GetProperty().SetDiffuse(0.5) actor.GetProperty().SetAmbient(0.3) actor.SetPosition(-0.1, 0.0, -0.1) renderer.AddActor(actor) actor = vtk.vtkActor() actor.SetMapper(mapper) actor.GetProperty().SetAmbientColor(colors.GetColor3d("A2Amb")) actor.GetProperty().SetDiffuseColor(colors.GetColor3d("A2Diff")) actor.GetProperty().SetSpecularColor(colors.GetColor3d("Black")) actor.GetProperty().SetSpecular(0.2) actor.GetProperty().SetDiffuse(0.9) actor.GetProperty().SetAmbient(0.1) actor.GetProperty().SetSpecularPower(10.0) renderer.AddActor(actor) actor = vtk.vtkActor() actor.SetMapper(mapper) actor.GetProperty().SetDiffuseColor(colors.GetColor3d("A3Amb")) actor.GetProperty().SetSpecularColor(colors.GetColor3d("White")) actor.GetProperty().SetSpecular(0.7) actor.GetProperty().SetDiffuse(0.4) actor.GetProperty().SetSpecularPower(60.0) actor.SetPosition(0.1, 0.0, 0.1) renderer.AddActor(actor) renderWindow.SetMultiSamples(0) # create the basic VTK render steps basicPasses = vtk.vtkRenderStepsPass() motion = vtk.vtkSimpleMotionBlurPass() motion.SetDelegatePass(basicPasses) # Tell the renderer to use our render pass pipeline. renderer.SetPass(motion) numRenders = 30 renderer.GetActiveCamera().SetPosition(0, 0, -1) renderer.GetActiveCamera().SetFocalPoint(0, 0, 0) renderer.GetActiveCamera().SetViewUp(0, 1, 0) renderer.ResetCamera() renderer.GetActiveCamera().Azimuth(15.0) renderer.GetActiveCamera().Zoom(1.2) renderWindow.Render() for i in range(0, numRenders): renderer.GetActiveCamera().Azimuth(10.0 / numRenders) renderer.GetActiveCamera().Elevation(10.0 / numRenders) renderWindow.Render() iren.Start()
#shadow & DOF light1 = vtk.vtkLight() light1.SetFocalPoint(0, 0, 0) light1.SetPosition(0, 10, 0.2) light1.SetColor(0.95, 0.97, 1.0) light1.SetIntensity(0.8) ren.AddLight(light1) light2 = vtk.vtkLight() light2.SetFocalPoint(0, 0, 0) light2.SetPosition(10.0, 10.0, 10.0) light2.SetColor(1.0, 0.8, 0.7) light2.SetIntensity(0.5) ren.AddLight(light2) renWin.SetMultiSamples(0) basicPasses = vtk.vtkRenderStepsPass() # dof_pass = vtk.vtkDepthOfFieldPass() # dof_pass.SetDelegatePass(basicPasses); # dof_pass.AutomaticFocalDistanceOff(); # ren.SetPass(dof_pass); # ren.GetActiveCamera().SetFocalDisk(0.250) # ren.GetActiveCamera().SetFocalPoint(0, 0, 0) iact.Initialize() renWin.Render() iact.Start()