Changeset 2093


Ignore:
Timestamp:
Dec 15, 2015 11:48:46 AM (6 years ago)
Author:
toby
Message:

autoint: show IMGs to be integrated; replace PWDR when auto-integrated

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIIO.py

    r2087 r2093  
    871871        print('project save successful')
    872872
    873 def SaveIntegration(G2frame,PickId,data):
     873def SaveIntegration(G2frame,PickId,data,Overwrite=False):
    874874    'Save image integration results as powder pattern(s)'
    875875    azms = G2frame.Integrate[1]
     
    904904        Aname = name+" Azm= %.2f"%((azm+dazm)%360.)
    905905        item, cookie = G2frame.PatternTree.GetFirstChild(G2frame.root)
    906         nOcc = 0
    907         while item:
    908             Name = G2frame.PatternTree.GetItemText(item)
    909             if Aname in Name:
    910                 nOcc += 1
    911             item, cookie = G2frame.PatternTree.GetNextChild(G2frame.root, cookie)
    912         if nOcc:
    913             Aname += '(%d)'%(nOcc)
     906        # if Overwrite delete any duplicate
     907        if Overwrite and G2gd.GetPatternTreeItemId(G2frame,G2frame.root,Aname):
     908            print('Replacing '+Aname)
     909            item = G2gd.GetPatternTreeItemId(G2frame,G2frame.root,Aname)
     910            G2frame.PatternTree.Delete(item)
     911        else:
     912            nOcc = 0
     913            while item:
     914                Name = G2frame.PatternTree.GetItemText(item)
     915                if Aname in Name:
     916                    nOcc += 1
     917                item, cookie = G2frame.PatternTree.GetNextChild(G2frame.root, cookie)
     918            if nOcc:
     919                Aname += '(%d)'%(nOcc)
    914920        Sample = G2pdG.SetDefaultSample()
    915921        Sample['Gonio. radius'] = data['distance']
  • trunk/GSASIIimgGUI.py

    r2092 r2093  
    137137           
    138138    def OnIntegrate(event):
     139        '''Integrate image in response to a menu event or from the AutoIntegrate
     140        dialog. In the latter case, event=None.
     141        '''
    139142        CleanupMasks(masks)
    140143        blkSize = 128   #this seems to be optimal; will break in polymask if >1024
     
    168171            G2frame.Integrate = G2img.ImageIntegrate(sumImg-data['Flat Bkg'],data,masks,blkSize,dlg)
    169172#            G2plt.PlotIntegration(G2frame,newPlot=True)
    170             Id = G2IO.SaveIntegration(G2frame,G2frame.PickId,data)
     173            Id = G2IO.SaveIntegration(G2frame,G2frame.PickId,data,(event is None))
    171174            G2frame.PatternId = Id
    172175            G2frame.PatternTree.SelectItem(Id)
     
    21842187        G2frame = self.G2frame
    21852188        if invalid: return
     2189        msg = ''
    21862190        if self.PreventReEntryShowMatch: return
    21872191        self.PreventReEntryShowMatch = True
     
    21912195            size,imagefile,imagetag = G2frame.PatternTree.GetImageLoc(imgId)
    21922196            if imagefile not in imageFileList: imageFileList.append(imagefile)
     2197            if img not in G2frame.IntegratedList:
     2198                if msg: msg += '\n'
     2199                msg += '  ' + img
     2200        if msg: msg = "Loaded images to integrate:\n" + msg + "\n"
     2201        msg1 = ""
    21932202        try:
    21942203            imageList = sorted(
    21952204                glob.glob(os.path.join(self.imagedir,value)))
    21962205            if not imageList:
    2197                 #title = 'Warning'
    2198                 msg = 'Warning: No files match search string '+os.path.join(self.imagedir,value)
     2206                msg1 = 'Warning: No files match search string '+os.path.join(self.imagedir,value)
    21992207            else:
    2200                 #title='Matched files'
    2201                 msg = ''
    22022208                for fil in imageList:
    2203                     if fil not in imageFileList: msg += '\n  '+fil
    2204                 if msg:
    2205                     msg = 'Files to process from '+os.path.join(self.imagedir,value)+msg
     2209                    if fil not in imageFileList: msg1 += '\n  '+fil
     2210                if msg1:
     2211                    msg += 'Files to integrate from '+os.path.join(self.imagedir,value)+msg1
    22062212                else:
    2207                     msg = 'All files processed'
     2213                    msg += 'All files integrated'
    22082214        except IndexError:
    2209             #title = 'Error'
    2210             msg = 'Error searching for files named '+os.path.join(self.imagedir,value)
    2211             #print(msg)
     2215            msg += 'Error searching for files named '+os.path.join(self.imagedir,value)
    22122216        self.ListBox.Clear()
    22132217        self.ListBox.AppendItems(msg.split('\n'))
Note: See TracChangeset for help on using the changeset viewer.