Changeset 161


Ignore:
Timestamp:
Oct 5, 2010 3:31:16 PM (12 years ago)
Author:
vondreele
Message:

implement hardcopy (jpeg, tiff & bmp) output of structure drawings

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASII.py

    r155 r161  
    194194    def _init_ctrls(self, parent):
    195195        wx.Frame.__init__(self, name='GSASII', parent=parent,
    196             size=wx.Size(300, 250),style=wx.DEFAULT_FRAME_STYLE, title='GSAS-II')
     196            size=wx.Size(300, 250),style=wx.DEFAULT_FRAME_STYLE, title='GSAS-II data tree')
    197197        screenSize = wx.DisplaySize()
    198198        Size = self.GetSize()
  • trunk/GSASIIphsGUI.py

    r158 r161  
    127127    self.SelectedRow = 0
    128128
    129     def BookResize(event):
    130         w,h = self.GetSize()
    131         self.dataDisplay.SetSize(wx.Size(w,h))
    132        
     129#    def BookResize(event):
     130#        w,h = self.GetSize()
     131#        self.dataDisplay.SetSize(wx.Size(w,h))
     132#       
    133133    def UpdateGeneral():
    134134        generalData = data['General']
     
    141141        generalData['AtomMass'] = []
    142142        generalData['Color'] = []
     143        generalData['Myself'] = self
    143144        colType = 1
    144145        colSS = 7
  • trunk/GSASIIplot.py

    r158 r161  
    110110            return     
    111111       
    112     def OnPageChanged(self,event):
     112    def OnPageChanged(self,event):       
     113        if self.plotList:
     114            self.status.SetStatusText('Better to select this from GSAS-II data tree',1)
    113115        self.status.DestroyChildren()                           #get rid of special stuff on status bar
    114116       
     
    11201122def PlotStructure(self,data):
    11211123    generalData = data['General']
     1124    Myself = generalData['Myself']
    11221125    atomData = data['Atoms']
    11231126    drawingData = data['Drawing']
     
    11331136        [uBox[4],uBox[5]],[uBox[5],uBox[6]],[uBox[6],uBox[7]],[uBox[7],uBox[4]]])
    11341137    uColors = [Rd,Gr,Bl,Wt, Wt,Wt,Wt,Wt, Wt,Wt,Wt,Wt]
     1138   
     1139    def OnKeyBox(event):
     1140        import Image
     1141        Draw()
     1142        mode = cb.GetValue()
     1143        dirname = Myself.dirname
     1144        Fname = dirname+'\\'+generalData['Name']+'.'+mode
     1145        size = Page.canvas.GetSize()
     1146        glPixelStorei(GL_UNPACK_ALIGNMENT, 1)
     1147        if mode in ['jpeg',]:
     1148            Pix = glReadPixels(0,0,size[0],size[1],GL_RGBA, GL_UNSIGNED_BYTE)
     1149            im = Image.new("RGBA", (size[0],size[1]))
     1150        else:
     1151            Pix = glReadPixels(0,0,size[0],size[1],GL_RGB, GL_UNSIGNED_BYTE)
     1152            im = Image.new("RGB", (size[0],size[1]))
     1153        im.fromstring(Pix)
     1154        im.save(Fname,mode)
     1155        cb.SetValue(' save as:')
     1156        Draw()
    11351157   
    11361158    def OnMouseDown(event):
     
    12981320    def RenderBox():
    12991321        glEnable(GL_COLOR_MATERIAL)
     1322        glLineWidth(3)
     1323        glEnable(GL_BLEND)
     1324        glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA)
     1325        glEnable(GL_LINE_SMOOTH)
    13001326        glBegin(GL_LINES)
    13011327        for line,color in zip(uEdges,uColors):
     
    13051331        glEnd()
    13061332        glColor4ubv([0,0,0,0])
     1333        glDisable(GL_LINE_SMOOTH)
     1334        glDisable(GL_BLEND)
    13071335        glDisable(GL_COLOR_MATERIAL)
    13081336       
     
    13101338        xyz = np.array([x,y,z])
    13111339        glEnable(GL_COLOR_MATERIAL)
     1340        glLineWidth(1)
    13121341        glPushMatrix()
    13131342        glTranslate(x,y,z)
     
    13671396        xyz = np.array([x,y,z])
    13681397        glEnable(GL_COLOR_MATERIAL)
     1398        glLineWidth(1)
    13691399        glColor4fv(color)
    13701400        glPushMatrix()
     
    15561586        view = False
    15571587    Page.SetFocus()
     1588    cb = wx.ComboBox(self.G2plotNB.status,style=wx.CB_DROPDOWN|wx.CB_READONLY,
     1589        choices=(' save as:','jpeg','tiff','bmp'))
     1590    cb.Bind(wx.EVT_COMBOBOX, OnKeyBox)
     1591    cb.SetValue(' save as:')
    15581592    Page.canvas.Bind(wx.EVT_MOUSEWHEEL, OnMouseWheel)
    15591593    Page.canvas.Bind(wx.EVT_LEFT_DOWN, OnMouseDown)
Note: See TracChangeset for help on using the changeset viewer.