Changeset 1997 for trunk/GSASII.py


Ignore:
Timestamp:
Oct 10, 2015 11:58:12 AM (7 years ago)
Author:
toby
Message:

Add API for direct image read (G2IO.ExportPowderList?) and powder exports w/o GUI (G2IO.ExportPowderList?); redo export to add new method (Writer)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASII.py

    r1985 r1997  
    180180            help='',id=wx.ID_ANY,
    181181            kind=wx.ITEM_NORMAL,
    182             text='Add phase')
     182            text='Add new phase')
    183183        self.Bind(wx.EVT_MENU, self.OnAddPhase, id=item.GetId())
    184184        item = parent.Append(
     
    19021902                filelist.append(filename)   
    19031903        filelist = sorted(list(set(filelist))) # remove duplicates
    1904         exporterlist = []
     1904        self.exporterlist = []
    19051905        # go through the routines and import them, saving objects that
    19061906        # have export routines (method Exporter)
     
    19211921                        else:
    19221922                            exporter = clss[1](self) # create an export instance
    1923                             exporterlist.append(exporter)
     1923                            self.exporterlist.append(exporter)
    19241924            except AttributeError:
    19251925                print 'Import_'+errprefix+': Attribute Error'+str(filename)
     
    19301930            if fp: fp.close()
    19311931        # Add submenu item(s) for each Exporter by its self-declared type (can be more than one)
    1932         for obj in exporterlist:
     1932        for obj in self.exporterlist:
    19331933            #print 'exporter',obj
    19341934            for typ in obj.exporttype:
     
    23752375                imagefiles.sort()
    23762376                for imagefile in imagefiles:
    2377                     # if a zip file, open and extract
    2378                     if os.path.splitext(imagefile)[1].lower() == '.zip':
    2379                         extractedfile = G2IO.ExtractFileFromZip(imagefile,parent=self)
    2380                         if extractedfile is not None and extractedfile != imagefile:
    2381                             imagefile = extractedfile
    2382                     Comments,Data,Npix,Image = G2IO.GetImageData(self,imagefile)
    2383                     if Comments:
    2384                         Id = self.PatternTree.AppendItem(parent=self.root,text='IMG '+os.path.basename(imagefile))
    2385                         self.PatternTree.SetItemPyData(self.PatternTree.AppendItem(Id,text='Comments'),Comments)
    2386                         Imax = np.amax(Image)
    2387                         Imin = max(0.0,np.amin(Image))          #force positive
    2388                         if self.imageDefault:
    2389                             Data = copy.copy(self.imageDefault)
    2390                             Data['showLines'] = True
    2391                             Data['ring'] = []
    2392                             Data['rings'] = []
    2393                             Data['cutoff'] = 10
    2394                             Data['pixLimit'] = 20
    2395                             Data['edgemin'] = 100000000
    2396                             Data['calibdmin'] = 0.5
    2397                             Data['calibskip'] = 0
    2398                             Data['ellipses'] = []
    2399                             Data['calibrant'] = ''
    2400                             Data['GonioAngles'] = [0.,0.,0.]
    2401                             Data['DetDepthRef'] = False
    2402                         else:
    2403                             Data['type'] = 'PWDR'
    2404                             Data['color'] = 'Paired'
    2405                             Data['tilt'] = 0.0
    2406                             Data['rotation'] = 0.0
    2407                             Data['showLines'] = False
    2408                             Data['ring'] = []
    2409                             Data['rings'] = []
    2410                             Data['cutoff'] = 10
    2411                             Data['pixLimit'] = 20
    2412                             Data['calibdmin'] = 0.5
    2413                             Data['calibskip'] = 0
    2414                             Data['edgemin'] = 100000000
    2415                             Data['ellipses'] = []
    2416                             Data['GonioAngles'] = [0.,0.,0.]
    2417                             Data['DetDepth'] = 0.
    2418                             Data['DetDepthRef'] = False
    2419                             Data['calibrant'] = ''
    2420                             Data['IOtth'] = [2.0,5.0]
    2421                             Data['LRazimuth'] = [135,225]
    2422                             Data['azmthOff'] = 0.0
    2423                             Data['outChannels'] = 2500
    2424                             Data['outAzimuths'] = 1
    2425                             Data['centerAzm'] = False
    2426                             Data['fullIntegrate'] = False
    2427                             Data['setRings'] = False
    2428                             Data['background image'] = ['',-1.0]                           
    2429                             Data['dark image'] = ['',-1.0]
    2430                             Data['Flat Bkg'] = 0.0
    2431                         Data['setDefault'] = False
    2432                         Data['range'] = [(Imin,Imax),[Imin,Imax]]
    2433                         self.PatternTree.SetItemPyData(self.PatternTree.AppendItem(Id,text='Image Controls'),Data)
    2434                         Masks = {'Points':[],'Rings':[],'Arcs':[],'Polygons':[],'Frames':[],'Thresholds':[(Imin,Imax),[Imin,Imax]]}
    2435                         self.PatternTree.SetItemPyData(self.PatternTree.AppendItem(Id,text='Masks'),Masks)
    2436                         self.PatternTree.SetItemPyData(self.PatternTree.AppendItem(Id,text='Stress/Strain'),
    2437                             {'Type':'True','d-zero':[],'Sample phi':0.0,'Sample z':0.0,'Sample load':0.0})
    2438                         self.PatternTree.SetItemPyData(Id,[Npix,imagefile])
    2439                         self.PickId = Id
    2440                         self.PickIdText = self.GetTreeItemsList(self.PickId)
    2441                         self.Image = Id
    2442                 os.chdir(dlg.GetDirectory())           # to get Mac/Linux to change directory!               
    2443                 self.PatternTree.SelectItem(G2gd.GetPatternTreeItemId(self,Id,'Image Controls'))             #show last one
     2377                    G2IO.ReadLoadImage(imagefile,self)
     2378                os.chdir(dlg.GetDirectory())           # to get Mac/Linux to change directory!
     2379                self.PatternTree.SelectItem(G2gd.GetPatternTreeItemId(self,self.Image,'Image Controls'))             #show last image to be read
    24442380        finally:
    24452381            path = dlg.GetDirectory()           # to get Mac/Linux to change directory!
Note: See TracChangeset for help on using the changeset viewer.