diff --git a/Packages/DV3D/Application.py b/Packages/DV3D/Application.py index 97988f94fa..180eccb2b3 100644 --- a/Packages/DV3D/Application.py +++ b/Packages/DV3D/Application.py @@ -41,6 +41,7 @@ def __init__( self, canvas, cell_coordinates=None, **args ): def update( self, tmpl ): if self.plot <> None: self.plot.updateModule() + self.plot.initCamera() def onClosing(self, cell ): if self.plot <> None: diff --git a/Packages/DV3D/PointCloudViewer.py b/Packages/DV3D/PointCloudViewer.py index a6d978633c..7656ac0833 100644 --- a/Packages/DV3D/PointCloudViewer.py +++ b/Packages/DV3D/PointCloudViewer.py @@ -1356,6 +1356,8 @@ def getInitArgs(self, var1, var2, **args ): def gminit(self, var1, var2, **args ): init_args = self.getInitArgs( var1, var2, **args ) + if "cm" in args: + self.cfgManager = args["cm"] self.init( init=init_args, **args ) def init(self, **args ): diff --git a/Packages/DV3D/StructuredGridPlot.py b/Packages/DV3D/StructuredGridPlot.py index de7f1e14a8..fbaf6ee11e 100644 --- a/Packages/DV3D/StructuredGridPlot.py +++ b/Packages/DV3D/StructuredGridPlot.py @@ -639,6 +639,8 @@ def gminit( self, var1, var2, **args ): if id(var2) <> id(None): var_list.append( var2 ) self.variable_reader = StructuredDataReader( vars=var_list, otype=self.type, **args ) self.variable_reader.execute( ) + if "cm" in args: + self.cfgManager = args["cm"] self.createRenderer( **args ) self.execute( ) self.initializePlots() diff --git a/Packages/vcs/Lib/VTKPlots.py b/Packages/vcs/Lib/VTKPlots.py index c863c18d1e..685a25b904 100644 --- a/Packages/vcs/Lib/VTKPlots.py +++ b/Packages/vcs/Lib/VTKPlots.py @@ -306,7 +306,27 @@ def createRenderer(self, *args, **kargs): def update(self, *args, **kargs): self._lastSize=-1 if self.renWin: - self.configureEvent(None,None) + if self.get3DPlot(): + plots_args = [] + key_args =[] + for dnm in self.canvas.display_names: + d=vcs.elements["display"][dnm] + parg = [] + for a in d.array: + if a is not None: + parg.append(a) + parg.append(d._template_origin) + parg.append(d.g_type) + parg.append(d.g_name) + plots_args.append(parg) + if d.ratio is not None: + key_args.append({"ratio":d.ratio}) + else: + key_args.append({}) + for i, args in enumerate(plots_args): + self.canvas.plot(*args, **key_args[i]) + else: + self.configureEvent(None,None) def canvasinfo(self): if self.renWin is None: