Example #1
0
 def _fcn_build_roi_list(self):
     """Build a list of checkable ROIs."""
     # Select volume :
     selected_roi = str(self._roiDiv.currentText())
     # Mist :
     if 'mist' in selected_roi.lower():
         self._roiLevel.setEnabled('mist' in selected_roi)
         level = str(self._roiLevel.currentText())
         selected_roi += '_%s' % level
     if self.roi.name != selected_roi:
         self.roi(selected_roi)
     # Clear widget list and add ROIs :
     self._roiToAdd.reset()
     df = self.roi.get_labels()
     if 'mist' in selected_roi.lower():
         df = df[['index', 'name_%s' % level]]
     col_names = list(df.keys())
     col_names.pop(col_names.index('index'))
     cols = [list(df[k]) for k in col_names if k not in ['', 'index']]
     # Build the table with the filter :
     self._roiModel = fill_pyqt_table(self._roiToAdd, col_names, cols,
                                      filter=self._roiFilter, check=0,
                                      filter_col=0)
     # By default, uncheck items :
     self._fcn_reset_roi_list()
Example #2
0
    def __init__(self, ):
        """Init."""
        # ====================== SOURCES ======================
        self._s_grp.clicked.connect(self._fcn_source_visible)
        self._s_select.currentIndexChanged.connect(self._fcn_source_select)
        self._s_symbol.currentIndexChanged.connect(self._fcn_source_symbol)
        self._s_radiusmin.valueChanged.connect(self._fcn_source_radius)
        self._s_radiusmax.valueChanged.connect(self._fcn_source_radius)
        self._s_edge_color.editingFinished.connect(self._fcn_source_edgecolor)
        self._s_edge_color_p.clicked.connect(self._fcn_source_edgecolor_p)
        self._s_edge_width.valueChanged.connect(self._fcn_source_edgewidth)
        self._s_alpha.valueChanged.connect(self._fcn_source_alpha)

        # ====================== TEXT ======================
        self._st_font_size.valueChanged.connect(self._fcn_text_fontsize)
        self._st_color.editingFinished.connect(self._fcn_text_color)
        self._st_color_p.clicked.connect(self._fcn_text_color_p)
        self._st_dx.valueChanged.connect(self._fcn_text_translate)
        self._st_dy.valueChanged.connect(self._fcn_text_translate)
        self._st_dz.valueChanged.connect(self._fcn_text_translate)

        # ====================== TABLE ======================
        if self.sources.name is not None:
            # Get position / text :
            xyz, txt = self.sources._xyz, self.sources._text
            col = np.c_[txt, xyz].T.tolist()
            col_names = ['Text', 'X', 'Y', 'Z']
            fill_pyqt_table(self._s_table, col_names, col)
            self._s_table.setEnabled(True)
        self._s_analyse_run.clicked.connect(self._fcn_analyse_sources)
        self._s_show_cs.clicked.connect(self._fcn_goto_cs)

        # ====================== PROJECTION ======================
        self._s_proj_mask_color.editingFinished.connect(
            self._fcn_proj_mask_color)
        self._s_proj_mask_color_p.clicked.connect(self._fcn_mask_color_p)
        self._s_proj_apply.clicked.connect(self._fcn_source_proj)
Example #3
0
    def __init__(self,):
        """Init."""
        # ====================== SOURCES ======================
        self._s_grp.clicked.connect(self._fcn_source_visible)
        self._s_select.currentIndexChanged.connect(self._fcn_source_select)
        self._s_symbol.currentIndexChanged.connect(self._fcn_source_symbol)
        self._s_radiusmin.valueChanged.connect(self._fcn_source_radius)
        self._s_radiusmax.valueChanged.connect(self._fcn_source_radius)
        self._s_edge_color.editingFinished.connect(self._fcn_source_edgecolor)
        self._s_edge_color_p.clicked.connect(self._fcn_source_edgecolor_p)
        self._s_edge_width.valueChanged.connect(self._fcn_source_edgewidth)
        self._s_alpha.valueChanged.connect(self._fcn_source_alpha)

        # ====================== TEXT ======================
        self._st_font_size.valueChanged.connect(self._fcn_text_fontsize)
        self._st_color.editingFinished.connect(self._fcn_text_color)
        self._st_color_p.clicked.connect(self._fcn_text_color_p)
        self._st_dx.valueChanged.connect(self._fcn_text_translate)
        self._st_dy.valueChanged.connect(self._fcn_text_translate)
        self._st_dz.valueChanged.connect(self._fcn_text_translate)

        # ====================== TABLE ======================
        if self.sources.name is not None:
            # Get position / text :
            xyz, txt = self.sources._xyz, self.sources._text
            col = np.c_[txt, xyz].T.tolist()
            col_names = ['Text', 'X', 'Y', 'Z']
            fill_pyqt_table(self._s_table, col_names, col)
            self._s_table.setEnabled(True)
        self._s_analyse_run.clicked.connect(self._fcn_analyse_sources)
        self._s_show_cs.clicked.connect(self._fcn_goto_cs)

        # ====================== PROJECTION ======================
        self._s_proj_mask_color.editingFinished.connect(
            self._fcn_proj_mask_color)
        self._s_proj_mask_color_p.clicked.connect(self._fcn_mask_color_p)
        self._s_proj_apply.clicked.connect(self._fcn_source_proj)
Example #4
0
 def _fcn_analyse_sources(self):
     """Analyse sources locations."""
     roi = self._s_analyse_roi.currentText()
     logger.info("Analyse source's locations using %s ROI" % roi)
     df = self.sources.analyse_sources(roi.lower())
     fill_pyqt_table(self._s_table, df=df)
Example #5
0
 def _fcn_analyse_sources(self):
     """Analyse sources locations."""
     roi = self._s_analyse_roi.currentText()
     logger.info("Analyse source's locations using %s ROI" % roi)
     df = self.sources.analyse_sources(roi.lower())
     fill_pyqt_table(self._s_table, df=df)