Code source de palm_tracer.Settings.Groups.FilteringL

"""
Fichier contenant la classe :class:`FilteringL` dérivée de :class:`.BaseSettingGroup`,
qui regroupe les paramètres de filtrage de l'ajustement gaussien nécessaires à la configuration de PALM Tracer.
"""

from dataclasses import dataclass

from palm_tracer.Settings.Groups.BaseSettingGroup import BaseSettingGroup
from palm_tracer.Settings.Types import CheckRangeFloat, CheckRangeInt


##################################################
[docs] @dataclass class FilteringL(BaseSettingGroup): """ Classe contenant les paramètres du filtrage pour la localisation : Attributs : - **Intensity** (:class:`CheckRangeInt <palm_tracer.Settings.Types.CheckRangeInt.CheckRangeInt>`) : Interval d'intensités sélectionnées (par défaut : `[1,10000000]`). - **Sigma X** (:class:`CheckRangeFloat <palm_tracer.Settings.Types.CheckRangeFloat.CheckRangeFloat>`) : Interval de Sigma X sélectionné (par défaut : `[0.0, 10.0]`). - **Sigma Y** (:class:`CheckRangeFloat <palm_tracer.Settings.Types.CheckRangeFloat.CheckRangeFloat>`) : Interval de Sigma Y sélectionné (par défaut : `[0.0, 10.0]`). - **Circularity** (:class:`CheckRangeFloat <palm_tracer.Settings.Types.CheckRangeFloat.CheckRangeFloat>`) : Interval de Circularités sélectionné (par défaut : `[0.0, 1.0]`). - **Theta** (:class:`CheckRangeFloat <palm_tracer.Settings.Types.CheckRangeFloat.CheckRangeFloat>`) : Interval de Theta sélectionné (par défaut : `[-180, 180]`). - **Z** (:class:`CheckRangeFloat <palm_tracer.Settings.Types.CheckRangeFloat.CheckRangeFloat>`) : Interval de Z sélectionné (par défaut : `[-5, 5]`). - **MSE XY** (:class:`CheckRangeFloat <palm_tracer.Settings.Types.CheckRangeFloat.CheckRangeFloat>`) : Interval de MSE XY sélectionné (par défaut : `[0.0, 1.0]`). - **MSE Z** (:class:`CheckRangeFloat <palm_tracer.Settings.Types.CheckRangeFloat.CheckRangeFloat>`) : Interval de MSE Z sélectionné (par défaut : `[0.0, 1.0]`). """ label: str = "Localization" setting_list = { "X": [CheckRangeInt, ["X", "", [0, 100000], [0, 100000]]], "Y": [CheckRangeInt, ["Y", "", [0, 100000], [0, 100000]]], "Z": [CheckRangeInt, ["Z", "", [-1000, 1000], [-1000, 1000]]], "Intensity": [CheckRangeInt, ["Intensity", "", [0, 10000000], [0, 10000000]]], "Sigma X": [CheckRangeFloat, ["Sigma X", "", [0, 10], [0, 10]]], "Sigma Y": [CheckRangeFloat, ["Sigma Y", "", [0, 10], [0, 10]]], "Circularity": [CheckRangeFloat, ["Circularity", "", [0, 1], [0, 1]]], "Theta": [CheckRangeFloat, ["Theta", "", [-180, 180], [-180, 180]]], "MSE XY": [CheckRangeFloat, ["MSE XY", "", [0, 1], [0, 1]]], "MSE Z": [CheckRangeFloat, ["MSE Z", "", [0, 1], [0, 1]]] } ##################################################
[docs] def deactivate_filters(self): """ Désactive tous les filtres.""" for key in self.setting_list: self._settings[key].active = False
################################################## if __name__ == "__main__": import sys from qtpy.QtWidgets import QApplication, QVBoxLayout, QWidget app = QApplication(sys.argv) w = QWidget() lay = QVBoxLayout(w) # crée et assigne le layout au widget group = FilteringL() group.active = True w.layout().addWidget(group.widget) w.show() sys.exit(app.exec_())