Ejemplo n.º 1
0
 def initUI(self):
     self.sld = QtGui.QSlider(QtCore.Qt.Horizontal, self)
     self.lcd = QtGui.QLCDNumber(self)
     self.combo = QtGui.QComboBox(self)
     self.btn = QtGui.QPushButton('Click2')
     self.btn.setText("Sinogram")
     self.btn2 = QtGui.QPushButton("shift data")
     self.btn3 = QtGui.QPushButton("X 10")
     self.btn4 = QtGui.QPushButton("/ 10")
     hb = QtGui.QHBoxLayout()
     hb.addWidget(self.btn3)
     hb.addWidget(self.btn4)
     self.btn3.setVisible(False)
     self.btn4.setVisible(False)
     self.lbl = QtGui.QLabel()
     self.lbl.setText("")
     vb = QtGui.QVBoxLayout()
     vb.addWidget(self.combo)
     vb.addWidget(self.btn)
     vb.addWidget(self.btn2)
     vb.addWidget(self.lcd)
     vb.addWidget(self.sld)
     vb.addWidget(self.lbl)
     vb.addLayout(hb)
     self.setLayout(vb)
Ejemplo n.º 2
0
    def initUI(self):
        self.sld = QtGui.QSlider(QtCore.Qt.Horizontal, self)
        self.lcd = QtGui.QLCDNumber(self)
        self.combo = QtGui.QComboBox(self)
        self.combo2 = QtGui.QComboBox(self)
        self.combo3 = QtGui.QComboBox(self)
        self.lbl1 = QtGui.QLabel("Set the size of the hotspot")
        self.lbl3 = QtGui.QLabel()
        self.lbl3.setText("Set a group number of the hot spot")
        for i in arange(5):
            self.combo2.addItem(str(i + 1))
        self.btn = QtGui.QPushButton("Hotspots to a line")
        self.btn2 = QtGui.QPushButton("Hotspots to a sine curve")
        self.btn3 = QtGui.QPushButton("set y")
        self.btn4 = QtGui.QPushButton("Clear hotspot data")

        vb = QtGui.QVBoxLayout()
        vb.addWidget(self.combo)

        vb.addWidget(self.lbl1)
        vb.addWidget(self.lcd)
        vb.addWidget(self.sld)
        vb.addWidget(self.combo3)

        hb1 = QtGui.QVBoxLayout()
        hb1.addWidget(self.lbl3, 0)
        hb1.addWidget(self.combo2)

        vb.addLayout(hb1)
        vb.addWidget(self.btn)
        vb.addWidget(self.btn2)
        vb.addWidget(self.btn3)
        vb.addWidget(self.btn4)
        self.setLayout(vb)
Ejemplo n.º 3
0
    def initUI(self):
        self.show()
        hb3 = QtGui.QHBoxLayout()
        self.file_name_title = QtGui.QLabel("_")
        lbl1 = QtGui.QLabel("x pos")
        self.lbl2 = QtGui.QLabel("")
        lbl3 = QtGui.QLabel("y pos")
        self.lbl4 = QtGui.QLabel("")
        btn1 = QtGui.QPushButton("position")
        hb3.addWidget(lbl1)
        hb3.addWidget(self.lbl2)
        hb3.addWidget(lbl3)
        hb3.addWidget(self.lbl4)
        hb3.addWidget(btn1)

        btn1.clicked.connect(self.updatePanel)

        hb2 = QtGui.QHBoxLayout()
        hb1 = QtGui.QHBoxLayout()
        vb1 = QtGui.QVBoxLayout()
        self.view = IView2()
        self.sld = QtGui.QSlider(QtCore.Qt.Horizontal, self)
        self.lcd = QtGui.QLCDNumber(self)
        self.hist = pg.HistogramLUTWidget()
        self.hist.setImageItem(self.view.projView)
        self.hist.setMaximumWidth(110)
        hb2.addWidget(self.lcd)
        hb2.addWidget(self.sld)
        vb1.addWidget(self.file_name_title)
        vb1.addLayout(hb3)
        vb1.addWidget(self.view)
        vb1.addLayout(hb2)
        hb1.addLayout(vb1)
        hb1.addWidget(self.hist, 10)
        self.setLayout(hb1)
Ejemplo n.º 4
0
    def __init__(self, *args, **kwargs):
        super(TimeSeriesControls, self).__init__(*args, **kwargs)
        self.time_points = None

        self.filename_label = QtGui.QLabel('', self)
        self.filename_label.setAlignment(QtCore.Qt.AlignCenter)

        self.time_point_label = QtGui.QLabel('', self)
        self.time_point_label.setAlignment(QtCore.Qt.AlignLeft)

        self.time_point_slider = QtGui.QSlider(parent=self)
        self.time_point_slider.setTracking(True)
        self.time_point_slider.setOrientation(QtCore.Qt.Horizontal)

        # Update label with time_point
        self.time_point_slider.valueChanged.connect(
            self.time_point_label.setNum)
        self.time_point_slider.valueChanged.connect(self._update)

        time_label = QtGui.QLabel('Time point: ', self)
        time_label.setAlignment(QtCore.Qt.AlignLeft)
        controls = QtGui.QHBoxLayout()
        controls.addWidget(time_label)
        controls.addWidget(self.time_point_label)
        controls.addWidget(self.time_point_slider)

        title = QtGui.QLabel('<h3>Time-series controls</h3>')
        title.setAlignment(QtCore.Qt.AlignCenter)
        layout = QtGui.QVBoxLayout()
        layout.addWidget(title)
        layout.addWidget(self.filename_label)
        layout.addLayout(controls)
        self.setLayout(layout)
Ejemplo n.º 5
0
    def __init__(
        self,
        minimum,
        maximum,
        value=None,
        suffix="",
        prec=1,
        parent=None,
        **kwargs
    ):
        super().__init__(parent=parent)
        self.suffix = suffix
        self.prec = prec

        self.outerLayout = QtGui.QHBoxLayout(self)
        self.outerLayout.setContentsMargins(0, 0, 0, 0)
        self.outerLayout.setSpacing(0)

        self.label = QtGui.QLabel(self)
        self.outerLayout.addWidget(self.label)

        # Start of innerLayout - slider with spacer items on its sides
        self.innerLayout = QtGui.QHBoxLayout()

        spacerItem = QtGui.QSpacerItem(
            0, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum
        )
        self.innerLayout.addItem(spacerItem)

        self.slider = QtGui.QSlider(self)
        self.slider.setOrientation(QtCore.Qt.Horizontal)
        self.innerLayout.addWidget(self.slider)

        spacerItem1 = QtGui.QSpacerItem(
            0, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum
        )
        self.innerLayout.addItem(spacerItem1)
        # End of innerLayout

        self.outerLayout.addLayout(self.innerLayout)
        self.resize(self.sizeHint())

        self.minimum = minimum
        self.maximum = maximum
        self.slider.valueChanged.connect(
            self._setLabelValue_based_on_slider_value
        )
        if value:
            self.slider.setValue(self._value_to_slider_value(value))
            self.x = value
        else:
            self.x = self.minimum
        self._setLabelValue_based_on_slider_value(self.slider.value())
Ejemplo n.º 6
0
    def init(self, name, input):
        self.FS = 250
        self.name = name

        epoch_samples = int(self.FS * self.epoch)

        self.signal = Signal(buffer_size=epoch_samples)
        self.passfail = Signal()
        self.ratio = Signal()

        self.threshold = 1.0
        self.high_threshold = 0.0

        self.calc_cnt = 0

        self.bar = QtGui.QProgressBar(orientation=QtCore.Qt.Vertical)
        self.slider = QtGui.QSlider()

        self.slider.setRange(0, 17)
        self.bar.setRange(0, 17)

        self.pass_palette = self.bar.palette()

        self.input = input

        if isinstance(self.input.color, QtGui.QColor):
            self.color = self.input.color
        else:
            self.color = QtGui.QColor(self.input.color)

        self.bar.setStyleSheet("""
			QProgressBar::chunk { background: red; }
			QProgressBar::chunk[pass='******'] { background: %s ; }
			""" % self.color.name())

        self.button = QtGui.QPushButton("config")
        self.button.clicked.connect(self.configure_traits)

        self._widget = ThresholdWidget(self)
Ejemplo n.º 7
0
    def initUI(self):
        self.combo = QtGui.QComboBox(self)
        self.method = QtGui.QComboBox(self)
        self.btn = QtGui.QPushButton('Click2')
        self.save = QtGui.QPushButton("Save tiff files")
        self.save.setHidden(True)
        self.btn.setText("Sinogram")
        self.sld = QtGui.QSlider(QtCore.Qt.Horizontal, self)
        self.lcd = QtGui.QLineEdit("0")
        self.lbl = QtGui.QLabel()
        self.cbox = QtGui.QCheckBox("")
        self.lbl2 = QtGui.QLabel("Center")
        self.lbl.setText("")

        self.threshLbl = QtGui.QLabel("threshold")
        self.threshLe = QtGui.QLineEdit("")
        self.threshBtn = QtGui.QPushButton("Apply")

        centerBox = QtGui.QHBoxLayout()
        centerBox.addWidget(self.cbox)
        centerBox.addWidget(self.lbl2)
        centerBox.addWidget(self.lcd)
        self.lcd.setEnabled(False)
        self.methodname = ["mlem", "gridrec", "art", "pml_hybrid", "pml_quad"]

        self.mulBtn = QtGui.QPushButton("x 10")
        self.divBtn = QtGui.QPushButton("/ 10")
        mdBox = QtGui.QHBoxLayout()
        mdBox.addWidget(self.mulBtn)
        mdBox.addWidget(self.divBtn)

        self.maxLbl = QtGui.QLabel("Max")
        self.minLbl = QtGui.QLabel("Min")
        self.maxText = QtGui.QLineEdit()
        self.minText = QtGui.QLineEdit()

        maxBox = QtGui.QHBoxLayout()
        minBox = QtGui.QHBoxLayout()
        maxBox.addWidget(self.maxLbl)
        maxBox.addWidget(self.maxText)
        minBox.addWidget(self.minLbl)
        minBox.addWidget(self.minText)

        self.betaName = QtGui.QLabel("Beta")
        self.deltaName = QtGui.QLabel("Delta")
        self.itersName = QtGui.QLabel("Iteration")
        self.beta = QtGui.QLineEdit("1")
        self.delta = QtGui.QLineEdit("0.01")
        self.iters = QtGui.QLineEdit("10")

        betaBox = QtGui.QHBoxLayout()
        deltaBox = QtGui.QHBoxLayout()
        itersBox = QtGui.QHBoxLayout()
        threshBox = QtGui.QHBoxLayout()
        betaBox.addWidget(self.betaName)
        betaBox.addWidget(self.beta)
        deltaBox.addWidget(self.deltaName)
        deltaBox.addWidget(self.delta)
        itersBox.addWidget(self.itersName)
        itersBox.addWidget(self.iters)
        threshBox.addWidget(self.threshLbl)
        threshBox.addWidget(self.threshLe)
        threshBox.addWidget(self.threshBtn)

        for k in arange(len(self.methodname)):
            self.method.addItem(self.methodname[k])
        vb = QtGui.QVBoxLayout()
        vb.addWidget(self.combo)
        vb.addWidget(self.method)
        vb.addWidget(self.btn)
        vb.addWidget(self.save)
        vb.addLayout(centerBox)
        vb.addLayout(threshBox)
        vb.addWidget(self.sld)
        vb.addWidget(self.lbl)
        vb.addLayout(mdBox)
        vb.addLayout(maxBox)
        vb.addLayout(minBox)
        vb.addLayout(itersBox)
        vb.addLayout(betaBox)
        vb.addLayout(deltaBox)
        self.setLayout(vb)
Ejemplo n.º 8
0
    def __init__(self, **kwargs):
        super(TimeSeriesReconstructionDialog, self).__init__(**kwargs)

        self.time_series = None
        self._propagation_distances = None
        self._fourier_mask = None

        self.setModal(True)
        self.setWindowTitle('Reconstruct time-series')

        self.holograms_viewer = ImageView(parent=self, name='Raw holograms')

        self.holograms_slider = QtGui.QSlider(QtCore.Qt.Horizontal,
                                              parent=self)
        self.holograms_slider.setDisabled(True)
        self.holograms_slider.valueChanged.connect(
            self.update_holograms_viewer)

        self.time_point_label = QtGui.QLabel('')
        self.time_point_label.setAlignment(QtCore.Qt.AlignCenter)

        labeled_slider = QtGui.QHBoxLayout()
        labeled_slider.addWidget(self.time_point_label)
        labeled_slider.addWidget(self.holograms_slider)

        progress_label = QtGui.QLabel('<h3>Reconstruction Progress</h3>')
        progress_label.setAlignment(QtCore.Qt.AlignCenter)

        self.reconstruction_progress = QtGui.QProgressBar(parent=self)
        self.reconstruction_progress.setRange(0, 100)
        self.reconstruction_progress.setValue(0)
        self.reconstruction_progress.setAlignment(QtCore.Qt.AlignCenter)
        self._reconstruction_update_signal.connect(
            self.reconstruction_progress.setValue)
        #self.reconstruction_progress.hide()

        self.recons_params_widget = ReconstructionParametersWidget(parent=self)
        self.recons_params_widget.propagation_distance_signal.connect(
            self.update_propagation_distance)
        self.recons_params_widget.fourier_mask_signal.connect(
            self.update_fourier_mask)

        load_time_series_btn = QtGui.QPushButton('Load time-series', self)
        load_time_series_btn.clicked.connect(self.load_time_series)

        accept_btn = QtGui.QPushButton('Reconstruct time-series', self)
        accept_btn.clicked.connect(self.accept)

        cancel_btn = QtGui.QPushButton('Cancel', self)
        cancel_btn.clicked.connect(self.reject)

        btns = QtGui.QHBoxLayout()
        btns.addWidget(accept_btn)
        btns.addWidget(cancel_btn)

        layout = QtGui.QVBoxLayout()
        layout.addWidget(load_time_series_btn)
        layout.addWidget(self.holograms_viewer)
        layout.addLayout(labeled_slider)
        layout.addWidget(self.recons_params_widget)
        layout.addWidget(progress_label)
        layout.addWidget(self.reconstruction_progress)
        layout.addLayout(btns)
        self.setLayout(layout)