From f49271578b8fac02db14966e7aab121879f9b736 Mon Sep 17 00:00:00 2001 From: Samo Penic <samo.penic@gmail.com> Date: Sat, 14 Jan 2017 08:25:08 +0000 Subject: [PATCH] VTK rendering fixed. also, getLastVTU has been changed. --- trisurf/trisurf.py | 10 +++++++++- trisurf/VTKRendering.py | 22 +++++++++++++--------- trisurf/tsmgr.py | 13 ++++++++----- 3 files changed, 30 insertions(+), 15 deletions(-) diff --git a/trisurf/VTKRendering.py b/trisurf/VTKRendering.py index 44fe699..0ddb5a0 100644 --- a/trisurf/VTKRendering.py +++ b/trisurf/VTKRendering.py @@ -80,9 +80,10 @@ class Renderer: - def __init__(self,args,host): + def __init__(self,args,host,run): self.host=host self.args=args + self.run=run self.renderer = vtkRenderer() self.actor=self.lastActor() self.textactor=self.textActor() @@ -94,24 +95,27 @@ self.renderer_window.AddRenderer(self.renderer) self.renderer_window.SetSize(1200,600) - self.renderer.SetViewport(0.0,0.0,0.5,1.0) - rend=vtk.vtkRenderer() - rend.AddActor(self.actor) - rend.SetViewport(0.5,0.0,1.0,1.0) - self.renderer_window.AddRenderer(rend) +# self.renderer.SetViewport(0.0,0.0,0.5,1.0) +# rend=vtk.vtkRenderer() +# rend.AddActor(self.actor) +# rend.SetViewport(0.5,0.0,1.0,1.0) +# self.renderer_window.AddRenderer(rend) # Set up a check for aborting rendering. # Create the RendererWindowInteractor and display the vtk_file interactor = vtkRenderWindowInteractor() interactor.SetRenderWindow(self.renderer_window) interactor.Initialize() interactor.AddObserver("TimerEvent", self.RenderUpdate) - timerIDR = interactor.CreateRepeatingTimer(1000) + timerIDR = interactor.CreateRepeatingTimer(10000) interactor.Start() return def lastVTU(self): - Dir=trisurf.Directory(maindir=self.host['runs'][0].maindir,simdir=self.host['runs'][0].subdir) - filename=os.path.join("./",Dir.fullpath(),self.host['runs'][0].getLastVTU()) + #Dir=trisurf.Directory(maindir=self.host['runs'][self.run].maindir,simdir=self.host['runs'][self.run].subdir) + Dir=self.run.Dir + #print(self.run.getLastVTU()) + filename=os.path.join("./",Dir.fullpath(),self.run.getLastVTU()) + #filename=os.path.join("./",Dir.fullpath(),self.host['runs'][self.run].getLastVTU()) return filename def textActor(self): diff --git a/trisurf/trisurf.py b/trisurf/trisurf.py index 32cd9ba..a709d8a 100644 --- a/trisurf/trisurf.py +++ b/trisurf/trisurf.py @@ -516,13 +516,21 @@ self.Comment.writefile(data,mode=mode) - def getLastVTU(self): + def getLastVTUold(self): vtuidx=self.getLastIteration()-int(self.Tape.getValue("inititer")) if vtuidx<0: return None else: return 'timestep_{:06d}.vtu'.format(vtuidx) + def getLastVTU(self): + flist=[] + for file in os.listdir(self.Dir.fullpath()): + if file.endswith(".vtu"): + flist.append(file) + flist.sort() + return(flist[-1]) + def __str__(self): if(self.getStatus()==0): str=" not running." diff --git a/trisurf/tsmgr.py b/trisurf/tsmgr.py index 3746ce7..101c84c 100644 --- a/trisurf/tsmgr.py +++ b/trisurf/tsmgr.py @@ -256,13 +256,16 @@ def preview_vtu(args,host): - #only for localhost at the moment - #if sys.version_info>=(3,0): - # print("Preview works only with python 2.7") - # exit(1) from . import VTKRendering + target_runs=getTargetRunIdxList(args) + if target_runs==None: + target_runs=list(range(1,len(host['runs'])+1)) if host['name'] == socket.gethostname(): - VTKRendering.Renderer(args,host) + for i in target_runs: + VTKRendering.Renderer(args,host,host['runs'][i-1]) + else: + print("VTK rendering currently works on localhost only!") + def getListOfHostConfigurationByHostname(hosts,host): rhost=[] -- Gitblit v1.9.3