Changeset 3682 for trunk/GSASIIrestrGUI.py
- Timestamp:
- Oct 18, 2018 3:01:22 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASIIrestrGUI.py
r3588 r3682 78 78 return macro #advanced past 1st line 79 79 80 def getMOGULFile(): 81 dlg = wx.FileDialog(G2frame,message='Choose MOGUL csv file', 82 defaultDir='.',defaultFile="",wildcard="MOGUL csv file (*.csv)|*.csv", 83 style=wx.FD_OPEN | wx.FD_CHANGE_DIR) 84 try: 85 mogul = '' 86 if dlg.ShowModal() == wx.ID_OK: 87 csvfile = dlg.GetPath() 88 mogul = open(csvfile,'Ur') 89 head = mogul.readline() 90 if 'Type' not in head: 91 print (head) 92 print ('**** ERROR - not a MOGUL csv file selected, try again ****') 93 mogul = [] 94 finally: 95 dlg.Destroy() 96 return mogul #advanced past 1st line 97 80 98 def OnPlotAARestraint(event): 81 99 page = G2frame.restrBook.GetSelection() … … 161 179 elif 'Rama' in G2frame.restrBook.GetPageText(page): 162 180 AddAARamaRestraint(restrData['Rama']) 181 182 def OnUseMogul(event): 183 page = G2frame.restrBook.GetSelection() 184 if 'Bond' in G2frame.restrBook.GetPageText(page): 185 AddMogulBondRestraint(restrData['Bond']) 186 elif 'Angle' in G2frame.restrBook.GetPageText(page): 187 AddMogulAngleRestraint(restrData['Angle']) 163 188 164 189 def makeChains(Names,Ids): … … 244 269 if not macro: 245 270 return 246 # Chains = makeChains(Names,Ids)247 271 macStr = macro.readline() 248 272 atoms = zip(Names,Coords,Ids) … … 286 310 macro.close() 287 311 print(' Found %d bond restraints'%len(bondRestData['Bonds'])) 288 UpdateBondRestr(bondRestData) 312 UpdateBondRestr(bondRestData) 313 314 def AddMogulBondRestraint(bondRestData): 315 mogul = getMOGULFile() 316 for line in mogul: 317 items = line.split(',') 318 if 'bond' == items[0]: 319 oName,tName = items[2].split() 320 oInd = Names.index(oName) 321 tInd = Names.index(tName) 322 if items[3] != 'No hits': 323 dist = float(items[6]) 324 esd = float(items[7]) 325 else: 326 dist = float(items[5]) 327 esd = 0.02 328 newBond = [[Ids[oInd],Ids[tInd]],['1','1'],dist,esd] 329 if newBond not in bondRestData['Bonds']: 330 bondRestData['Bonds'].append(newBond) 331 UpdateBondRestr(bondRestData) 289 332 290 333 def AddAngleRestraint(angleRestData): … … 422 465 UpdateAngleRestr(angleRestData) 423 466 467 def AddMogulAngleRestraint(angleRestData): 468 mogul = getMOGULFile() 469 for line in mogul: 470 items = line.split(',') 471 if 'angle' == items[0]: 472 aName,bName,cName = items[2].split() 473 aInd = Names.index(aName) 474 bInd = Names.index(bName) 475 cInd = Names.index(cName) 476 if items[3] != 'No hits': 477 angle = float(items[6]) 478 esd = float(items[7]) 479 else: 480 angle = float(items[5]) 481 esd = 2.00 482 newAngle = [[Ids[aInd],Ids[bInd],Ids[cInd]],['1','1','1'],angle,esd] 483 if newAngle not in angleRestData['Angles']: 484 angleRestData['Angles'].append(newAngle) 485 UpdateAngleRestr(angleRestData) 486 424 487 def AddPlaneRestraint(restrData): 425 488 ids = [] … … 1772 1835 text = G2frame.restrBook.GetPageText(page) 1773 1836 G2frame.dataWindow.RestraintEdit.SetLabel(G2G.wxID_RESRCHANGEVAL,'Change value') 1837 G2frame.dataWindow.RestraintEdit.Enable(G2G.wxID_USEMOGUL,False) 1774 1838 if text == 'Bond': 1775 1839 G2gd.SetDataMenuBar(G2frame,G2frame.dataWindow.RestraintMenu) 1776 1840 G2frame.dataWindow.RestraintEdit.Enable(G2G.wxID_RESTRAINTADD,True) 1777 1841 G2frame.dataWindow.RestraintEdit.Enable(G2G.wxID_RESRCHANGEVAL,True) 1842 G2frame.dataWindow.RestraintEdit.Enable(G2G.wxID_USEMOGUL,True) 1778 1843 bondRestData = restrData['Bond'] 1779 1844 UpdateBondRestr(bondRestData) … … 1782 1847 G2frame.dataWindow.RestraintEdit.Enable(G2G.wxID_RESTRAINTADD,True) 1783 1848 G2frame.dataWindow.RestraintEdit.Enable(G2G.wxID_RESRCHANGEVAL,True) 1849 G2frame.dataWindow.RestraintEdit.Enable(G2G.wxID_USEMOGUL,True) 1784 1850 angleRestData = restrData['Angle'] 1785 1851 UpdateAngleRestr(angleRestData) … … 1907 1973 G2gd.SetDataMenuBar(G2frame,G2frame.dataWindow.RestraintMenu) 1908 1974 G2frame.Bind(wx.EVT_MENU, OnAddRestraint, id=G2G.wxID_RESTRAINTADD) 1975 G2frame.Bind(wx.EVT_MENU, OnUseMogul, id=G2G.wxID_USEMOGUL) 1976 G2frame.dataWindow.RestraintEdit.Enable(G2G.wxID_USEMOGUL,True) 1909 1977 if 'macro' in phasedata['General']['Type']: 1910 1978 G2frame.dataWindow.RestraintEdit.Enable(G2G.wxID_AARESTRAINTADD,True)
Note: See TracChangeset
for help on using the changeset viewer.