def get_render_view(size): '''Similar to GetRenderView except if a new view is created, it's created with the specified size instead of having t resize afterwards ''' view = active_objects.view if not view: # it's possible that there's no active view, but a render view exists. # If so, locate that and return it (before trying to create a new one). view = servermanager.GetRenderView() if not view: view = CreateRenderView(ViewSize=size) return view
def run(filename=None, nframes=60): """ Runs the benchmark. If a filename is specified, it will write the results to that file as csv. The number of frames controls how many times a particular configuration is rendered. Higher numbers lead to more accurate averages. """ # Turn off progress printing if servermanager.progressObserverTag: servermanager.ToggleProgressPrinting() # Create a sphere source to use in the benchmarks pm = servermanager.ProxyManager() ss = servermanager.sources.SphereSource( ThetaResolution=1000, PhiResolution=500, registrationGroup="sources", registrationName="benchmark source") # The view and representation v = servermanager.GetRenderView() if not v: v = servermanager.CreateRenderView() rep = servermanager.CreateRepresentation( ss, v, registrationGroup="representations", registrationName="benchmark rep") results = [] # Start with these defaults v.RemoteRenderThreshold = 0 v.UseImmediateMode = 0 v.UseTriangleStrips = 0 # Test different configurations v.UseImmediateMode = 0 title = 'display lists, no triangle strips, solid color' v.UseTriangleStrips = 0 results.append(render(ss, v, title, nframes)) title = 'display lists, triangle strips, solid color' v.UseTriangleStrips = 1 results.append(render(ss, v, title, nframes)) v.UseImmediateMode = 1 title = 'no display lists, no triangle strips, solid color' v.UseTriangleStrips = 0 results.append(render(ss, v, title, nframes)) title = 'no display lists, triangle strips, solid color' v.UseTriangleStrips = 1 results.append(render(ss, v, title, nframes)) # Color by normals lt = servermanager.rendering.PVLookupTable() rep.LookupTable = lt rep.ColorAttributeType = 0 # point data rep.ColorArrayName = "Normals" lt.RGBPoints = [-1, 0, 0, 1, 0.0288, 1, 0, 0] lt.ColorSpace = 1 # HSV lt.VectorComponent = 0 v.UseImmediateMode = 0 title = 'display lists, no triangle strips, color by array' v.UseTriangleStrips = 0 results.append(render(ss, v, title, nframes)) title = 'display lists, triangle strips, color by array' v.UseTriangleStrips = 1 results.append(render(ss, v, title, nframes)) v.UseImmediateMode = 1 v.UseImmediateMode = 1 title = 'no display lists, no triangle strips, color by array' v.UseTriangleStrips = 0 results.append(render(ss, v, title, nframes)) title = 'no display lists, triangle strips, color by array' v.UseTriangleStrips = 1 results.append(render(ss, v, title, nframes)) newr = [] for r in v.Representations: if r != rep: newr.append(r) v.Representations = newr pm.UnRegisterProxy("sources", "benchmark source", ss) pm.UnRegisterProxy("representations", "benchmark rep", rep) ss = None rep = None v.StillRender() v = None if filename: f = open(filename, "w") else: f = sys.stdout print >> f, 'configuration, %d, %d' % (results[0][1][0], results[0][2][0]) for i in results: print >> f, '"%s", %g, %g' % (i[0], i[1][1], i[2][1])
sphere2 = None sphere3 = None pxm.UnRegisterProxies() pxm.UnRegisterAllLinks() # Load the saved state which also has the links. smtesting.LoadServerManagerState(temp_state) try: os.remove(saved_state) except: pass sphere1 = pxm.GetProxy("sources", "Sphere1") sphere2 = pxm.GetProxy("sources", "Sphere2") sphere3 = pxm.GetProxy("sources", "Sphere3") # Do some changes. sphere1.GetProperty("StartPhi").SetElement(0, 25) sphere1.UpdateVTKObjects() sphere3.GetProperty("EndTheta").SetElement(0, 100) sphere3.GetProperty("ThetaResolution").SetElement(0, 10) sphere3.GetProperty("PhiResolution").SetElement(0, 10) sphere3.UpdateVTKObjects() rmProxy = servermanager.GetRenderView() rmProxy.StillRender() if not smtesting.DoRegressionTesting(): # This will lead to VTK object leaks. sys.exit(1)
print(" with") print(" state-file - paraview state file, e.g. alpha_kernel.pvsm") print( " counter - (optional) integer counter appended to filename, e.g. 0" ) sys.exit(1) #outfile = "paraview_movie." + number outfile = "image" + number print("file root: ", outfile) ## paraview servermanager.Connect() view = servermanager.CreateRenderView() servermanager.LoadState(filename) view = servermanager.GetRenderView() # turn off axis visibility view.CenterAxesVisibility = 0 view.OrientationAxesVisibility = 0 # to avoid segmentation fault if servermanager.vtkSMProxyManager.GetVersionMajor( ) <= 5 and servermanager.vtkSMProxyManager.GetVersionMinor() < 5: view.UseOffscreenRenderingForScreenshots = 0 # sets view size for display #view.ViewSize = [1920,1080] # width x height print("view size: " + str(view.ViewSize)) ## save as jpeg