def load_vtk(self, *args): dialog = gtk.FileSelection('Choose .vtk file') dialog.set_filename(shared.get_last_dir()) dialog.set_transient_for(widgets['dlgReader']) dialog.set_filename(widgets['entryInfoFile'].get_text() or shared.get_last_dir()) response = dialog.run() fname = dialog.get_filename() dialog.destroy() if response == gtk.RESPONSE_OK: print "loading vtk file: " , fname # this constructor adds the mesh to the renderer self.owner.pwxyz.vtksurface = VTKSurface(fname, self.owner.pwxyz.renderer)
def on_buttonOpenInfo_clicked(button=None): dialog = FileManager() print shared.get_last_dir() dialog.set_lastdir(shared.get_last_dir()) fname = dialog.get_filename('Choose info file') #using gtkutils to modernize file dlg -eli #dialog.set_transient_for(widgets['dlgReader']) #dialog.set_filename(widgets['entryInfoFile'].get_text() or #shared.get_last_dir()) #response = dialog.run() #fname = dialog.get_filename() #dialog.destroy() #if response == gtk.RESPONSE_OK: if widgets.load_params_from_file(fname): GladeHandlers.__dict__['on_buttonPreview_clicked']() shared.set_file_selection(fname)
def load_nifti(self, filename): if filename==None: dialog = gtk.FileSelection('Choose nifti file') #dialog = gtk.FileChooserDialog('Choose nifti file') #dialog.set_transient_for(widgets['dlgReader']) dialog.set_filename(shared.get_last_dir()) response = dialog.run() filename = dialog.get_filename() dialog.destroy() if response == gtk.RESPONSE_OK: print "Loading:", filename else: return False shared.set_file_selection(filename) reader = vtkNiftiImageReader() reader.SetFileName(filename) reader.Update() if not reader: return False else: imageData = reader.GetOutput() EventHandler().notify('set image data', imageData) EventHandler().notify("set axes directions") EventHandler().set_nifti(reader) self.store_current_camera_fpus() EventHandler().notify("render now") return True
def load_mri(self, *args): # XXX: not currently used dialog = gtk.FileSelection('Choose .HEAD file') dialog.set_transient_for(widgets['dlgReader']) dialog.set_filename(widgets['entryInfoFile'].get_text() or shared.get_last_dir()) response = dialog.run() fname = dialog.get_filename() dialog.destroy() if response == gtk.RESPONSE_OK: d = afni_header_read(fname) brik_dimensions = d['DATASET_DIMENSIONS'] print "header.ORIGIN: ", d['ORIGIN'] print "header.DATASET_DIMENSIONS: ", d['DATASET_DIMENSIONS'] print "header.HISTORY_NOTE: ", d['HISTORY_NOTE'] print "header.DELTA: ", d['DELTA'] brik_xdim = brik_dimensions[0] brik_ydim = brik_dimensions[1] brik_zdim = brik_dimensions[2] print fname base, ext = os.path.splitext(fname) brik_fname = "%s.BRIK" % base brikfile = file(brik_fname) brikfile.seek(0, 2) brikfile_length = brikfile.tell() print "brikfile_length is ", brikfile_length, "divided by xdim*ydim is ", ( float(brikfile_length)) / (float(brik_xdim) * float(brik_ydim)) print brikfile
def add_roi(self,*args): dialog = gtk.FileSelection('Choose filename for ROI mask') dialog.set_filename(shared.get_last_dir()) dialog.show() response = dialog.run() if response==gtk.RESPONSE_OK: fname = dialog.get_filename() dialog.destroy() try: #Actually add ROI self.nroi+=1 tree_iter = self.tree_roi.append(None) self.tree_roi.set(tree_iter,0,self.nroi,1,os.path.split(fname)[1],2,fname,3,True) self.__update_treeview_visibility() roi_image_reader = vtkNiftiImageReader() roi_image_reader.SetFileName(fname) roi_image_reader.Update() roi_id = self.tree_roi.get(tree_iter,0) self.paramd[roi_id] = RoiParams(roi_image_reader.GetOutput()) #self.paramd[roi_id].update_pipeline() #print self.paramd[roi_id].intensity shared.set_file_selection(fname) except IOError: error_msg( 'Could not load ROI mask from %s' % fname, ) finally: self.__update_treeview_visibility() else: dialog.destroy() self.render()
def load_mri(self, *args): # XXX: not currently used dialog = gtk.FileSelection('Choose .HEAD file') dialog.set_transient_for(widgets['dlgReader']) dialog.set_filename(widgets['entryInfoFile'].get_text() or shared.get_last_dir()) response = dialog.run() fname = dialog.get_filename() dialog.destroy() if response == gtk.RESPONSE_OK: d = afni_header_read(fname) brik_dimensions = d['DATASET_DIMENSIONS'] print "header.ORIGIN: ", d['ORIGIN'] print "header.DATASET_DIMENSIONS: ", d['DATASET_DIMENSIONS'] print "header.HISTORY_NOTE: ", d['HISTORY_NOTE'] print "header.DELTA: ", d['DELTA'] brik_xdim = brik_dimensions[0] brik_ydim = brik_dimensions[1] brik_zdim = brik_dimensions[2] print fname base, ext = os.path.splitext(fname) brik_fname= "%s.BRIK" % base brikfile = file(brik_fname) brikfile.seek(0,2) brikfile_length = brikfile.tell() print "brikfile_length is " , brikfile_length, "divided by xdim*ydim is " , (float(brikfile_length))/(float(brik_xdim)*float(brik_ydim)) print brikfile
def load_mri(self, *args): print "loc3djr_maintoolbar.load_mri()" if self.niftiFilename is not None: fname=self.niftiFilename else: dialog = gtk.FileSelection('Choose nifti file') dialog.set_transient_for(widgets['dlgReader']) dialog.set_filename(shared.get_last_dir()) response = dialog.run() fname = dialog.get_filename() dialog.destroy() if response == gtk.RESPONSE_OK: print fname else: return #reader = vtkNiftiImageReader() #reader.SetFileName(fname) #reader.Update() pars = Params() if fname.endswith(".nii.gz"): pars.extension=".".join(fname.split(".")[-2:]) pars.pattern=".".join(fname.split(os.path.sep)[-1].split(".")[:-2]) #elif fname.endswith(".nii"): # pars.extension=".nii" else: pars.extension=".".join(fname.split(".")[-1:]) pars.pattern=".".join(fname.split(os.path.sep)[-1].split(".")[:-1]) print "pars.extension", pars.extension print "pars.pattern", pars.pattern pars.dir=os.path.dirname(fname)#sep.join(fname.split(os.path.sep)[:-1]) print "pars.dir", pars.dir pars.readerClass='vtkNiftiImageReader' reader=widgets.get_reader(pars) pars.first=1 pars.last=reader.GetDepth() print "reader=", reader if not reader: print "hit cancel, see if we can survive" else: pars=widgets.get_params() pars=widgets.validate(pars) imageData = reader.GetOutput() #stupid workaround, somehow imageData.Extent is not written. dunno why #maybe its in vtkImageImportFromArray imageData.SetExtent(reader.GetDataExtent()) print "loc3djr_maintoolbar.load_mri(): reader.GetOutput() is " , imageData print "load_mri(): imageData.SetSpacing(", reader.GetDataSpacing(), " )" imageData.SetSpacing(reader.GetDataSpacing()) print "calling EventHandler().notify('set image data', imageData)" EventHandler().notify('set image data', imageData) print "calling EventHandler().setNifti()" EventHandler().setNifti(reader.GetQForm(),reader.GetDataSpacing())
def on_buttonSaveAsInfo_clicked(button=None): dialog = gtk.FileSelection('Choose info file to save parameters to') dialog.set_transient_for(widgets['dlgReader']) dialog.set_filename(widgets['entryInfoFile'].get_text() or shared.get_last_dir()) response = dialog.run() fname = dialog.get_filename() dialog.destroy() if response == gtk.RESPONSE_OK: widgets.save_params_to_file(fname) shared.set_file_selection(fname)
def on_buttonOpenInfo_clicked(button=None): dialog = gtk.FileSelection('Choose info file') dialog.set_transient_for(widgets['dlgReader']) dialog.set_filename(widgets['entryInfoFile'].get_text() or shared.get_last_dir()) response = dialog.run() fname = dialog.get_filename() dialog.destroy() if response == gtk.RESPONSE_OK: if widgets.load_params_from_file(fname): GladeHandlers.__dict__['on_buttonPreview_clicked']() shared.set_file_selection(fname)
def load_registration(self, *args): dialog = gtk.FileSelection('Choose .reg file') dialog.set_transient_for(widgets['dlgReader']) dialog.set_filename(widgets['entryInfoFile'].get_text() or shared.get_last_dir()) response = dialog.run() fname = dialog.get_filename() dialog.destroy() if response == gtk.RESPONSE_OK: print "loading reg file: " , fname reg_filename = fname registration_mat = pickle.load(file(reg_filename, 'r')) print "load_registration(): dude registration_mat is ", registration_mat # XXX mcc arghhghhh self.owner.pwxyz.vtksurface.set_matrix(registration_mat)
def save_registration_as(self, button): def ok_clicked(w): fname = dialog.get_filename() shared.set_file_selection(fname) try: EventHandler().save_registration_as(fname) except IOError: error_msg('Could not save data to %s' % fname, ) else: self.fileName = fname dialog.destroy() dialog = gtk.FileSelection('Choose filename for registration .reg data file') dialog.set_filename(shared.get_last_dir()) dialog.ok_button.connect("clicked", ok_clicked) dialog.cancel_button.connect("clicked", lambda w: dialog.destroy()) dialog.show()
def on_buttonDir_clicked(button=None): dialog = gtk.FileSelection('Choose image file directory') dialog.set_filename(shared.get_last_dir()) dialog.set_transient_for(widgets['dlgReader']) dialog.set_filename(widgets['entryDir'].get_text()) response = dialog.run() if response == gtk.RESPONSE_OK: dir = dialog.get_filename() if os.path.isdir(dir): widgets['entryDir'].set_text(dir) shared.set_file_selection(dir) dialog.destroy() else: error_msg('%s is not a directory' % dir, dialog) else: dialog.destroy()
def load_from(self, button): dialog = FileManager() #modernizing the dialog box dialog.set_lastdir(shared.get_last_dir()) fname = dialog.get_filename('Choose filename for marker info') #dialog = gtk.FileSelection() #dialog.show() #response = dialog.run() #if response==gtk.RESPONSE_OK: # fname = dialog.get_filename() # dialog.destroy() try: EventHandler().load_markers_from(fname) except IOError: error_msg('Could not load markers from %s' % fname, ) else: shared.set_file_selection(fname) self.fileName = fname
def show_correlation_props(self, button): dialog = gtk.FileSelection('Choose filename for correlation data') dialog.set_filename(shared.get_last_dir()) dialog.show() response = dialog.run() if response==gtk.RESPONSE_OK: fname = dialog.get_filename() dialog.destroy() try: EventHandler().load_correlation_from(fname) except IOError: error_msg( 'Could not load correlation from %s' % fname, ) else: shared.set_file_selection(fname) self.fileName = fname else: dialog.destroy()
def load_from(self, button): dialog = FileManager() #modernizing the dialog box dialog.set_lastdir(shared.get_last_dir()) fname = dialog.get_filename('Choose filename for marker info') #dialog = gtk.FileSelection() #dialog.show() #response = dialog.run() #if response==gtk.RESPONSE_OK: # fname = dialog.get_filename() # dialog.destroy() try: EventHandler().load_markers_from(fname) except IOError: error_msg( 'Could not load markers from %s' % fname, ) else: shared.set_file_selection(fname) self.fileName = fname
def load_markers(self, *args): dialog = gtk.FileSelection('Choose filename for marker info') dialog.set_filename(shared.get_last_dir()) dialog.show() response = dialog.run() if response==gtk.RESPONSE_OK: fname = dialog.get_filename() dialog.destroy() try: EventHandler().load_markers_from(fname) except IOError: error_msg( 'Could not load markers from %s' % fname, ) else: shared.set_file_selection(fname) self.markersFileName = fname else: dialog.destroy()