예제 #1
0
파일: grid.py 프로젝트: badbytes/pymeg
    def coregistercheck(self,widget,filename=None):
        print filename, 'fn'
        if self.builder.get_object("filechooserbutton1").get_filename() == None:
            pass
        else:
            filename = self.filename = self.builder.get_object("filechooserbutton1").get_filename()

        print 'loading and checking coreg', filename
        try: self.mr = nibabel.load(filename); print 'loaded', filename
        except RuntimeError: print 'unsupported MR file'; return

        self.prevdata['MRI'] = filename
        readwrite.writedata(self.prevdata, os.getenv('HOME')+'/.pymegdata')

        try:
            xfm = readwrite.readdata(os.path.splitext(filename)[0]+'.pym')
            print 'file previously coregistered', xfm
            self.builder.get_object("button1").set_sensitive(True)
        except:
            print 'cant find fiducal file', os.path.splitext(filename)[0]+'.pym';
            return

        self.lpa = xfm['lpa']
        self.rpa = xfm['rpa']
        self.nas = xfm['nas']
예제 #2
0
 def display_apply(self,widget):
     color = self.builder.get_object('colorbutton1')
     r = color.get_color().red_float
     g = color.get_color().green_float
     b = color.get_color().blue_float
     self.line_color = self.color = (r,g,b)
     self.prefs['LineColor'] = self.line_color
     color = self.builder.get_object('colorbutton2')
     r = color.get_color().red_float
     g = color.get_color().green_float
     b = color.get_color().blue_float
     self.back_color = (r,g,b)
     self.prefs['BackColor'] = self.back_color
     readwrite.writedata(self.prefs, os.getenv('HOME')+'/.pymeg')
     
     self.numofch = int(self.builder.get_object("spinbutton1").get_value())
     self.chanind2plot = \
     self.chanind[self.curchannel:self.curchannel+self.numofch]
     self.chanlabels2plot = \
     self.chanlabels[self.curchannel:self.curchannel+self.numofch]
     
     st = float(self.builder.get_object("spinbutton2").get_value())
     ed = float(self.builder.get_object("spinbutton3").get_value())
     self.space = float(self.builder.get_object("entry1").get_text())
     self.scalefact = float(self.builder.get_object("entry2").get_text())
     #print 'se',st,ed, self.t
     startind = nearest.nearest(self.t,st)[0]
     stopind = nearest.nearest(self.t,ed)[0]
     print 'se',startind,stopind
     self.check_scale(startind,stopind)
     self.space_data()
     self.redraw(None)
예제 #3
0
 def save_coregister_info(self,widget):
     print 'current aux field in header',self.hdr['aux_file']
     #filepath = os.path.splitext(self.img.file_map['header'].filename)[0]
     try:
         filepath = os.path.splitext(self.filename)[0]
     except:
         print 'Couldnt find filename for saving XFM, saving in current dir as MRI_XFM_DATA'
         filepath = 'MRI_XFM_DATA'
     coreg_dict = {'lpa': self.lpa,'rpa': self.rpa, 'nas':self.nas}
     readwrite.writedata(coreg_dict, filepath)
예제 #4
0
    def __init__(self):
        self.builder = gtk.Builder()
        self.builder.add_from_file(os.path.splitext(__file__)[0]+".glade")
        self.window = self.builder.get_object("window")

        dic = {
            "on_toolbutton_refresh_clicked" : self.generate_testdata,
            "on_button1_clicked" : self.generate_testdata,
            "on_vboxMain_button_press_event" : self.button_press_event,
            "on_vboxMain_button_release_event" : self.button_release_event,
            "on_vboxMain_drag" : self.drag_begin,
            "on_vboxMain_motion_notify_event" : self.drag_begin,
            "on_toolbar_clear_clicked" : self.clear_selections,
            "on_toolbar_zoomin_clicked" : self.zoomin_time,
            "on_toolbar_zoomout_clicked" : self.zoomout_time,
            "on_go_back_clicked" : self.page_back,
            "on_go_forward_clicked" : self.page_forward,
            "on_toolbutton_setup_toggled" : self.preferences_open,
            "on_button_channel_apply_clicked" : self.channel_selection_apply,
            "set_channel_groups" : self.set_channel_groups,
            "showpopupmenu" : self.showpopupmenu,
            "on_toolbar_plot_clicked" : self.plot_contour,
            "on_plot_contour_activate" : self.plot_contour,
            "on_button_delete_selection_clicked" : self.event_selection_delete,
            "gtk_widget_hide" : self.hideinsteadofdelete,
            "on_button_display_apply_clicked": self.display_apply,
            "on_go_up_clicked" : self.page_up,
            "on_go_down_clicked" : self.page_down,
            "on_toolbutton_load_clicked" : self.load_data,
            "on_menu_offset_correct_clicked" : self.offset_correct,
            "on_button_epoch_clicked" : self.add_selections_to_event_process,
            "on_store_event_clicked" : self.store_event,
            "on_menu_save_noise_activate" : self.store_noise,
            "on_menu_save_event_activate" : self.store_event,
            "on_key_press_event" : self.key_press_event,

            }

        self.builder.connect_signals(dic)
        try: self.prefs = readwrite.readdata(os.getenv('HOME')+'/.pymeg.pym')
        except IOError: self.prefs = {}; readwrite.writedata(self.prefs, os.getenv('HOME')+'/.pymeg')
        try:
            self.line_r,self.line_g,self.line_b = self.prefs['LineColor'][0],self.prefs['LineColor'][1],self.prefs['LineColor'][2]
            self.back_r,self.back_g,self.back_b = self.prefs['BackColor'][0],self.prefs['BackColor'][1],self.prefs['BackColor'][2]
        except:
            self.line_r,self.line_g,self.line_b = 1.,1.,1.
            self.back_r,self.back_g,self.back_b = .9,.9,.9
        self.color = (self.line_r,self.line_g,self.line_b)
        self.create_draw_frame('none')
        self.create_spec_frame('none')
        self.create_csd_frame('none')
        self.space = 0
        #self.generate_testdata(None)
        self.preferences_open(None)
예제 #5
0
    def changed_cb(self, combobox):
        model = combobox.get_model()
        index = combobox.get_active()
        if index > -1:
            print model[index][0], 'selected','index',index
            #self.chan_ind = index
            self.color_sel = str(model[index][0])
        #self.im1.axes.clear()
        print 'debug'
        self.im1.set_cmap(self.color_sel)
        self.im1.axes.figure.canvas.draw()
        self.im2.set_cmap(self.color_sel)
        self.im2.axes.figure.canvas.draw()
        self.im3.set_cmap(self.color_sel)
        self.im3.axes.figure.canvas.draw()

        try:
            prefs = readwrite.readdata(os.getenv('HOME')+'/.pymeg.pym')
            prefs['MRI_color'] = index
            readwrite.writedata(prefs, os.getenv('HOME')+'/.pymeg')
        except IOError: pass
        return
예제 #6
0
 def updateprefs(self,widget):
     self.prefs[gtk.Buildable.get_name(widget)] = widget.get_active()
     readwrite.writedata(self.prefs, os.getenv('HOME')+'/.pymeg')