def preRun(self): self.ImportProtocol() self.Iteration_Working_Directory = os.path.join(self.pmprotWorkingDir,'Iter_00'+ str(self.iterationNo)) self.subtractionDir = self.workingDirPath(self.RunName) self.volsDir = self.workingDirPath(self.volsDir) self.referenceDir = self.workingDirPath(self.referenceDir) self.subImgsDir = self.workingDirPath(self.subImgsDir) self.scaledImages = self.workingDirPath(self.scaledImages) self.resultsImagesName = self.workingDirPath(self.resultsImagesName) self.localFilenameCurrentAngles = self.workingDirPath(self.localCurrentAngles) self.CtfGroupDirectory = self.workingDirPath(self.CtfGroupDirectoryName) tmpCTFname = join(self.CtfGroupDirectoryName,self.localStackCTFs) self.projmatchStackCTFs = join(self.pmprotWorkingDir,tmpCTFname) self.localStackCTFs = self.workingDirPath(tmpCTFname) tmpCTFname = join(self.CtfGroupDirectoryName,self.localDocCTFs) self.projmatchDocCTFs = join(self.pmprotWorkingDir,tmpCTFname) self.localDocCTFs = self.workingDirPath(tmpCTFname) if(self.MaxChangeInAngles > 100): self.MaxChangeInAngles=-1 tmpFilename = self.current_angles self.filename_currentAngles = os.path.join(self.Iteration_Working_Directory,tmpFilename) if(self.doScaleImages): md = MetaData(self.filename_currentAngles) img = Image() img.readApplyGeo(md, 1, False, DATA, ALL_IMAGES,False) x=y=z=n=0 (x,y,z,n) = img.getDimensions() factorX = x / self.dimX if (self.dimY<0): factorY = y / self.dimX else: factorY = y / self.dimY self.dRradiusMax = round(self.dRradiusMax/factorX) self.dRradiusMin = round(self.dRradiusMin/factorY)
fileList = [] for objId in md: fileList.append(md.getValue(MDL_IMAGE, objId)) if len(fileList) > 10: break fn = getFilename() if fn is None: return # if radius = -1 then we take half of the image dimension if outerRadius < 0: if fn.isImage(): img = Image() #ROB: must convert to str first or PyString_AsString will complain img.read(fn, HEADER) xdim = img.getDimensions()[0] outerRadius = xdim / 2 if unit == 'angstrom': outerRadius *= sampling gui.setVarValue(outerVarName, outerRadius) from protlib_gui_ext import XmippBrowserMask results = showBrowseDialog(parent=gui.master, browser=XmippBrowserMask, title="Select mask radius", allowFilter=False, extra={'fileList': fileList, 'outerRadius': outerRadius, 'innerRadius': innerRadius, 'showInner': showInner, 'unit':unit, 'sampling':sampling}) if results: # if (unit == 'angstrom'): # results = [v*sampling for v in results] gui.setVarValue(outerVarName, int(results[1])) if showInner: