def _visualizeDisplayAngularDistribution(self): self.SpheresMaxradius = float(self.parser.getTkValue('SpheresMaxradius')) self.DisplayAngularDistribution = self.parser.getTkValue('DisplayAngularDistribution') if self.DisplayAngularDistribution == 'chimera': outerRadius = int(float(self.MaskRadiusA)/self.SamplingRate) radius = float(outerRadius) * 1.1 for it in self._visualizeIterations: data_angularDist = self._getIterAngularDist(it) for ref3d in self._visualizeRef3Ds: for prefix in self._getPrefixes(): volFn = self.getFilename(prefix + 'volume', iter=it, ref3d=ref3d) args = " --mode projector 256 -a %sclass%06d_angularDist@%s red %f " % (prefix, ref3d, data_angularDist, radius) if self.SpheresMaxradius > 0: args += ' %f ' % self.SpheresMaxradius print "runChimeraClient(%s, %s) " % (volFn, args) runChimeraClient(volFn, args) elif self.DisplayAngularDistribution == "2D plots": n = self._visualizeNrefs * len(self._getPrefixes()) gridsize = self._getGridSize(n) for it in self._visualizeIterations: data_angularDist = self._getIterAngularDist(it) xplotter = XmippPlotter(*gridsize, mainTitle='Iteration %d' % it, windowTitle="Angular Distribution") for ref3d in self._visualizeRef3Ds: for prefix in self._getPrefixes(): md = MetaData("class%06d_angularDist@%s" % (ref3d, data_angularDist)) plot_title = '%sclass %d' % (prefix, ref3d) xplotter.plotAngularDistribution(plot_title, md) xplotter.show(interactive=True)
def display3D(self, filename): if xmippExists(filename): #Chimera if self._visualizeVolumesMode == 'chimera': runChimeraClient(filename) else: try: runShowJ(filename, extraParams=' --dont_wrap ') except Exception, e: showError("Error launching xmipp_showj: ", str(e), self.master)