Exemplo n.º 1
0
    def table_click(self, item):
      row = item.row()
      entry_id = int(self.wtable.item(row, 0).data(0))
      # print row
      # print "Id:", self.wtable.item(row, 0).data(0)
      # print dir(self.wtable.item(row, 0))
      entry = database.get_entry_by_id(entry_id)
      print entry.path

      image = AstroImage.AstroImage()
      image.load_file(entry.path)
      
      # TODO: Fit image to entire available space?
      chaname = entry.path.split('/')[-1]
      self.fv.add_image(chaname, image, chname=chaname)
      self.fitsimage = self.fv.get_fitsimage(chaname)

      #Create a map with only the already opened metadata for speed
      sunpy_map = sunpy.map.Map((np.zeros([1,1]), image.get_header()))
      cm = "{0}{1}{2}".format(sunpy_map.observatory.lower(),
                              sunpy_map.detector.lower(), sunpy_map.wavelength)
      try:
          cm = cmap.get_cmap(cm)
          rgbmap = self.fitsimage.get_rgbmap()
          rgbmap.set_cmap(cm)
      except KeyError:
          pass
Exemplo n.º 2
0
    def get_entries_from_id(self, entries_id):
        """
    		Returns a list of database entries based on the passed list of id only
    	"""

        q = []
        for i in entries_id:
            q.append(database.get_entry_by_id(i))

        return q
Exemplo n.º 3
0
    def on_table_row_click(self, item):
        '''
    		Event handler for opening a new image when a particular row entry if
    		clicked
    	'''
        row = item.row()
        col = item.column()

        entry_id = int(self.wtable.item(row, 0).data(0))

        entry = database.get_entry_by_id(entry_id)

        if col == self.table_headers.index('Starred'):
            if entry.starred:
                database.unstar(entry)
            else:
                database.star(entry)

            database.commit()
            self.view_database()

        image = AstroImage.AstroImage()
        image.load_file(entry.path)

        # TODO: Fit image to entire available space?
        chaname = entry.path.split('/')[-1]
        self.fv.add_image(chaname, image, chname=chaname)
        self.fitsimage = self.fv.get_fitsimage(chaname)

        #Create a map with only the already opened metadata for speed
        sunpy_map = sunpy.map.Map((np.zeros([1, 1]), image.get_header()))
        cm = "{0}{1}{2}".format(sunpy_map.observatory.lower(),
                                sunpy_map.detector.lower(),
                                sunpy_map.wavelength)
        try:
            cm = cmap.get_cmap(cm)
            rgbmap = self.fitsimage.get_rgbmap()
            rgbmap.set_cmap(cm)
        except KeyError:
            pass
Exemplo n.º 4
0
    def on_table_row_click(self, item):
        """
    		Event handler for opening a new image when a particular row entry if
    		clicked
    	"""
        row = item.row()
        col = item.column()

        entry_id = int(self.wtable.item(row, 0).data(0))

        entry = database.get_entry_by_id(entry_id)

        if col == self.table_headers.index("Starred"):
            if entry.starred:
                database.unstar(entry)
            else:
                database.star(entry)

            database.commit()
            self.view_database()

        image = AstroImage.AstroImage()
        image.load_file(entry.path)

        # TODO: Fit image to entire available space?
        chaname = entry.path.split("/")[-1]
        self.fv.add_image(chaname, image, chname=chaname)
        self.fitsimage = self.fv.get_fitsimage(chaname)

        # Create a map with only the already opened metadata for speed
        sunpy_map = sunpy.map.Map((np.zeros([1, 1]), image.get_header()))
        cm = "{0}{1}{2}".format(sunpy_map.observatory.lower(), sunpy_map.detector.lower(), sunpy_map.wavelength)
        try:
            cm = cmap.get_cmap(cm)
            rgbmap = self.fitsimage.get_rgbmap()
            rgbmap.set_cmap(cm)
        except KeyError:
            pass