コード例 #1
0
    def createMessageWidget(self):
        '''create message box widget. return group
		'''
        GridStartVal = '2'
        vbox = QtGui.QVBoxLayout()
        hbox = QtGui.QHBoxLayout()
        hbox2 = QtGui.QHBoxLayout()
        self.lbl = QtGui.QLineEdit("Step 1) Open configuration file", self)
        self.lbl2 = QtGui.QLineEdit()
        self.lbl2.setText(os.getcwd())
        self.directoryButton = QtGui.QPushButton("Change Directory")
        hbox.addWidget(QtGui.QLabel("Message"))
        hbox.addWidget(self.lbl)
        hbox2.addWidget(QtGui.QLabel("Set Directory"))
        hbox2.addWidget(self.lbl2)
        hbox2.addWidget(self.directoryButton)
        vbox.addLayout(hbox)
        vbox.addLayout(hbox2)
        messageGroup = QtGui.QGroupBox("Message Box")
        messageGroup.setLayout(vbox)

        if self.tab_widget.currentIndex() == 1:
            self.lbl.setText("click hotspot, press n or press S to skip frame")
        else:
            self.lbl.setText("")
        return messageGroup
コード例 #2
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)
コード例 #3
0
ファイル: display_graph.py プロジェクト: wuyou33/riaps-apps
    def __init__(self, dataGenerator, parent=None):
        super(SpeedButton, self).__init__(parent=parent)


        self.verticalLayout = QtGui.QVBoxLayout(self)
        self.speed = 0.25
        self.label = QtGui.QLabel(self)
        self.label.setText("Speed Control")
        self.label.setFixedHeight(25)
        self.label.setAlignment(QtCore.Qt.AlignCenter)


        self.startButton = QtGui.QPushButton('Apply Contingency', self)
        self.startButton.clicked.connect(dataGenerator.start)

        self.stopButton = QtGui.QPushButton('Reset', self)
        #self.stopButton.clicked.connect(dataGenerator.stop)

        self.fullPlotButton = QtGui.QPushButton("View Full Plot", self)

        self.zoomButton = QtGui.QPushButton("Zoom Out", self)

        self.sb1 = QtGui.QRadioButton("x1")
        self.sb1.toggled.connect(lambda: self.setSpeed(1))
        self.sb2 = QtGui.QRadioButton("x0.5")
        self.sb2.toggled.connect(lambda: self.setSpeed(0.5))
        self.sb3 = QtGui.QRadioButton("x0.25")
        self.sb3.toggled.connect(lambda: self.setSpeed(0.25))
        self.sb3.setChecked(True)
        self.sb4 = QtGui.QRadioButton("x0.10")
        self.sb4.toggled.connect(lambda: self.setSpeed(0.1))

        #self.speedLayout = QtGui.QVBoxLayout()
        #self.speedLayout.addWidget(self.label)
        #self.speedLayout.addWidget(self.sb1)
        

        self.verticalLayout.setAlignment(QtCore.Qt.AlignTop)
        self.checkboxLayout = QtGui.QHBoxLayout()

        self.hl1 = QtGui.QHBoxLayout()
        self.hl2 = QtGui.QHBoxLayout() 

        self.hl1.addWidget(self.startButton)
        self.hl1.addWidget(self.stopButton)
        self.hl2.addWidget(self.fullPlotButton)
        self.hl2.addWidget(self.zoomButton)

        self.verticalLayout.addLayout(self.hl1)
        self.verticalLayout.addLayout(self.hl2)
        self.verticalLayout.addWidget(self.label)

        self.checkboxLayout.addWidget(self.sb1)
        self.checkboxLayout.addWidget(self.sb2)
        self.checkboxLayout.addWidget(self.sb3)
        self.checkboxLayout.addWidget(self.sb4)
        
        self.verticalLayout.addLayout(self.checkboxLayout)
コード例 #4
0
ファイル: pyqtgraph.py プロジェクト: ossadtchi/cognigraph
    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())
コード例 #5
0
ファイル: window.py プロジェクト: kalenkovich/cognigraph
    def init_ui(self):
        self._controls.initialize()

        central_widget = QtGui.QWidget()
        self.setCentralWidget(central_widget)

        widgets_layout = QtGui.QHBoxLayout()
        main_layout = QtGui.QHBoxLayout()
        main_layout.addLayout(widgets_layout)
        self._controls_widget.setMinimumWidth(400)
        main_layout.addWidget(self._controls_widget)

        self.centralWidget().setLayout(main_layout)
        self.main_layout = main_layout
        self.widgets_layout = widgets_layout
コード例 #6
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)
コード例 #7
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)
コード例 #8
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName(_fromUtf8("MainWindow"))
        MainWindow.resize(820, 650)
        MainWindow.setAutoFillBackground(False)
        MainWindow.setDocumentMode(False)
        self.centralwidget = QtGui.QWidget(MainWindow)
        self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
        self.verticalLayout = QtGui.QVBoxLayout(self.centralwidget)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setContentsMargins(-1, -1, 0, 0)
        self.horizontalLayout.setSpacing(10)
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.btnAdd = QtGui.QPushButton(self.centralwidget)
        self.btnAdd.setObjectName(_fromUtf8("btnAdd"))
        self.horizontalLayout.addWidget(self.btnAdd)
        self.chkMore = QtGui.QCheckBox(self.centralwidget)
        self.chkMore.setObjectName(_fromUtf8("chkMore"))
        self.horizontalLayout.addWidget(self.chkMore)
        self.verticalLayout.addLayout(self.horizontalLayout)
        self.grPlot = PlotWidget(self.centralwidget)
        self.grPlot.setObjectName(_fromUtf8("grPlot"))
        self.verticalLayout.addWidget(self.grPlot)
        MainWindow.setCentralWidget(self.centralwidget)
        self.statusbar = QtGui.QStatusBar(MainWindow)
        self.statusbar.setObjectName(_fromUtf8("statusbar"))
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
コード例 #9
0
    def init_gui(self):
        """
        General GUI setup, if it was more complex we might want to use a
        ui file built in Qt Creator.
        """

        # Create a vbox to hold the text box and both charts
        vbox = QtGui.QVBoxLayout()

        # The hbox will keep the charts side by side.
        hbox = QtGui.QHBoxLayout()

        # Create a text box and connect the changed signal to a slot
        # it would be trivial to add a 'browse' dialog, but not required for
        # a demo
        self.txt_file_path = pg.QtGui.QLineEdit()
        self.txt_file_path.textChanged[str].connect(self.set_file_path)

        # Chart specific setup
        self.setup_time_series_charts()
        self.setup_histogram_chart()

        # Build up the GUI
        vbox.addWidget(self.txt_file_path)
        hbox.addWidget(self.time_series_widget)
        hbox.addWidget(self.histogram_widget)

        vbox.addLayout(hbox)

        self.central_widget = QtGui.QWidget(self)
        self.setCentralWidget(self.central_widget)
        self.central_widget.setLayout(vbox)

        return None
コード例 #10
0
 def __init__(self,
              group_name,
              button_name,
              default_path=None,
              stdout=False,
              filter="yaml (*.yaml)"):
     '''
   ex:
   PathSelector('plot.yaml', 'select', '/path/to/default/plot.yaml')
   :param widget parent: parent widget
   :param str group_name: name of this item displayed on left up
   :param str button_name: name displayed on button
   :param str default_path: default path to file
   '''
     self.path = str(default_path)
     QtGui.QVBoxLayout.__init__(self, group_name)
     # make layouts
     vbox = QtGui.QVBoxLayout()
     hbox = QtGui.QHBoxLayout()
     # label and button
     self.label = QtGui.QLabel(self.path)
     self.button = QtGui.QPushButton()
     self.button.setText(button_name)
     self.button.setAutoDefault(True)
     # set parents
     hbox.addWidget(self.button)
     hbox.addWidget(self.label)
     vbox.addLayout(hbox)
     self.setLayout(vbox)
     self.button.clicked.connect(functools.partial(self.select_path,
                                                   filter))
コード例 #11
0
 def initUI(self):
     self.show()
     hb1 = QtGui.QHBoxLayout()
     self.view = IView()
     self.hist = pg.HistogramLUTWidget()
     self.hist.setImageItem(self.view.projView)
     hb1.addWidget(self.view)
     hb1.addWidget(self.hist, 10)
     self.hist.setMaximumWidth(110)
     self.setLayout(hb1)
コード例 #12
0
ファイル: display_graph.py プロジェクト: wuyou33/riaps-apps
    def __init__(self, image, parent=None):
        super(SystemState, self).__init__(parent=parent)
        self.layout = QtGui.QHBoxLayout(self)

        self.image = QtGui.QPixmap(image).scaledToHeight(120)
        self.imageLabel = QtGui.QLabel(self)
        self.imageLabel.setPixmap(self.image)
        self.bbinfo = BBInfo()

        self.layout.addWidget(self.imageLabel)
        self.layout.addWidget(self.bbinfo)
コード例 #13
0
    def createSinoWidget(self):
        '''create a sinogram group for sinogram tab. returns sinogram group
		'''
        self.sino = QSelect2()
        self.sinoView = SinoWidget()

        sinoBox = QtGui.QHBoxLayout()
        sinoBox.addWidget(self.sino)
        sinoBox.addWidget(self.sinoView, 10)
        sinoGroup = QtGui.QGroupBox("Sinogram")
        sinoGroup.setLayout(sinoBox)
        return sinoGroup
コード例 #14
0
    def createImageProcessWidget(self):
        '''create an Image process group. returns the group
		'''
        self.imgProcessControl = imageProcess()
        self.imgProcess = IView3()

        imgProcessBox = QtGui.QHBoxLayout()
        imgProcessBox.addWidget(self.imgProcessControl)
        imgProcessBox.addWidget(self.imgProcess, 10)
        imgProcessGroup = QtGui.QGroupBox("Image Process")
        imgProcessGroup.setLayout(imgProcessBox)
        return imgProcessGroup
コード例 #15
0
    def initUI(self):
        names = list()

        for i in arange(self.numlabels):
            names.append("")
        self.grid = QtGui.QGridLayout()
        self.lbl = QtGui.QLabel()
        self.lbl2 = QtGui.QLabel()
        self.lbl.setText(
            "closing this window won't affect your selection of the files")
        self.lbl2.setText(
            "You should convert the files in order to generate sinogram or reconstructed data"
        )
        self.btn = QtGui.QPushButton('Save Data in Memory', self)
        self.btn2 = QtGui.QPushButton("set Image Tag", self)
        self.btn3 = QtGui.QPushButton("set Element", self)
        self.btn4 = QtGui.QPushButton("Sort data by angle")

        columns = np.ceil(np.sqrt(self.numlabels))
        rows = 10
        j = 0
        pos = list()
        for y in arange(columns):
            for x in arange(rows):
                pos.append((x, y))

        self.button = list()
        for i in names:
            self.button.append(QtGui.QCheckBox(i))
            self.grid.addWidget(self.button[j], pos[j][0], pos[j][1])
            j = j + 1
        self.setLayout(self.grid)

        self.vb = QtGui.QVBoxLayout()
        self.vb2 = QtGui.QVBoxLayout()

        self.vb.addWidget(self.lbl, 12)
        self.vb.addWidget(self.lbl2, 13)

        hb = QtGui.QHBoxLayout()
        hb.addWidget(self.btn2)
        hb.addWidget(self.btn3)
        hb.addWidget(self.btn4)

        self.vb2.addLayout(hb)
        self.vb2.addWidget(self.btn)

        self.grid.addLayout(self.vb, 11, 0, 1, 7)
        self.grid.addLayout(self.vb2, 13, 1, 1, 3)

        self.move(100, 100)
        self.setWindowTitle('Calculator')
        self.show()
コード例 #16
0
    def createProjWidget(self):
        '''create a projection group for projection tab. returns projection group
		'''

        self.projection = QSelect2()
        self.projectionView = pg.ImageView()

        projectionBox = QtGui.QHBoxLayout()
        projectionBox.addWidget(self.projection)
        projectionBox.addWidget(self.projectionView, 10)
        projectionGroup = QtGui.QGroupBox("Projections")
        projectionGroup.setLayout(projectionBox)
        return projectionGroup
コード例 #17
0
    def createSaveHotspotWidget(self):
        '''create a saving hotspot position group. returns the group
		'''
        self.projViewControl = QSelect4()
        self.projView = IView3()

        self.boxSize = 20
        projViewBox = QtGui.QHBoxLayout()
        projViewBox.addWidget(self.projViewControl)
        projViewBox.addWidget(self.projView, 10)
        projViewGroup = QtGui.QGroupBox(" HotSpot")
        projViewGroup.setLayout(projViewBox)
        return projViewGroup
コード例 #18
0
ファイル: display_graph.py プロジェクト: wuyou33/riaps-apps
    def __init__(self, parent = None):
        super(StaticInfo, self).__init__(parent = parent)

        self.layout = QtGui.QHBoxLayout(self)

        self.logoPixmap = QtGui.QPixmap(WSU_LOGO)
        self.logoLabel = QtGui.QLabel(self)
        self.logoLabel.setPixmap(self.logoPixmap.scaledToWidth(900))

        #self.graphPixmap = QtGui.QPixmap(GRAPH_IMAGE)
        #self.graphLabel = QtGui.QLabel(self)
        #self.graphLabel.setPixmap(self.graphPixmap.scaledToWidth(550))

        self.layout.addWidget(self.logoLabel)
コード例 #19
0
    def createReconWidget(self):
        '''create a reconstruction group for reconstruction tab. returns reconstruction group
		'''
        self.recon = QSelect3()
        self.recon.sld.setVisible(False)
        self.reconView = IView3()

        self.reconView.view.ROI.setVisible(False)
        reconBox = QtGui.QHBoxLayout()
        reconBox.addWidget(self.recon)
        reconBox.addWidget(self.reconView, 10)
        reconGroup = QtGui.QGroupBox("Reconstruction")
        reconGroup.setLayout(reconBox)
        return reconGroup
コード例 #20
0
    def __init__(self, parent=None):
        super(Radiodemo, self).__init__(parent)

        layout = QtGui.QHBoxLayout()
        self.b1 = QtGui.QRadioButton("Button1")
        self.b1.setChecked(True)
        self.b1.toggled.connect(lambda: self.btnstate(self.b1))
        layout.addWidget(self.b1)

        self.b2 = QtGui.QRadioButton("Button2")
        self.b2.toggled.connect(lambda: self.btnstate(self.b2))

        layout.addWidget(self.b2)
        self.setLayout(layout)
        self.setWindowTitle("RadioButton demo")
コード例 #21
0
def testDatasetPlotParams(fd):
    widget = QtGui.QWidget()
    widget.setLayout(QtGui.QHBoxLayout())
    onedParams = OneDPlotParamTree(dataset=fd[
        '/data/event/balls/hit/ball_0_9ba91cb6163611e5899524fd526610e7'])
    widget.layout().addWidget(onedParams)
    compoundParams = CompoundPlotParamTree(
        dataset=fd['/data/static/tables/dimensions'])
    widget.layout().addWidget(compoundParams)
    twodParams = TwoDPlotParamTree(dataset=fd['/data/uniform/balls/x'])
    widget.layout().addWidget(twodParams)
    ndParams = NDPlotParamTree(dataset=fd['/data/uniform/ndim/data3d'])
    widget.layout().addWidget(ndParams)
    widget.show()
    return widget
コード例 #22
0
def test_in_widget(make):
    w = QtGui.QWidget()
    hb = QtGui.QHBoxLayout()
    w.setLayout(hb)
    w.resize(800, 800)
    w.show()

    for _ in range(10):
        gl = make()
        hb.addWidget(gl)
        QtGui.QApplication.processEvents()
        hb.removeWidget(gl)
        gl.deleteLater()
        QtGui.QApplication.processEvents()

    return w
コード例 #23
0
ファイル: display_graph.py プロジェクト: wuyou33/riaps-apps
    def __init__(self, parent = None):
        super(AppWindow, self).__init__(parent = parent)
        self.showMaximized()

        p = self.palette()
        p.setColor(self.backgroundRole(), QtGui.QColor('white'))
        self.setPalette(p)


        self.layout = QtGui.QHBoxLayout(self)

        self.demoWindow = DemoWindow(self)

        self.lineDiagram = LineDiagram(self)

        self.layout.addWidget(self.demoWindow)
        self.layout.addWidget(self.lineDiagram)
コード例 #24
0
ファイル: RasGui.py プロジェクト: gopshyam/RAS_GUI
    def __init__(self, image, node_id=0, parent=None):
        super(SystemState, self).__init__(parent=parent)
        self.node_id = node_id

        self.layout = QtGui.QHBoxLayout(self)

        self.image = QtGui.QPixmap(image).scaledToHeight(150)
        self.imageLabel = QtGui.QLabel(self)
        self.imageLabel.setPixmap(self.image)
        self.bbinfo = BBInfo()

        self.failureButton = QtGui.QPushButton(self)
        self.failureButton.setText("Shut Down")

        self.layout.addWidget(self.failureButton)
        self.layout.addWidget(self.imageLabel)
        self.layout.addWidget(self.bbinfo)
コード例 #25
0
ファイル: display.py プロジェクト: tones9/OpenNFB
    def widget(self):
        config_widget = QtGui.QWidget()

        layout = QtGui.QHBoxLayout()
        layout.addWidget(self.autoscale_button)
        layout.addWidget(self.welch_button)
#        layout.addWidget(self.histogram)

        config_widget.setLayout(layout)

        layout = QtGui.QVBoxLayout()
        layout.addWidget(self.plot_widget)
        layout.addWidget(config_widget)

        main_widget = QtGui.QWidget()
        main_widget.setLayout(layout)
        main_widget.block = self

        return main_widget
コード例 #26
0
ファイル: dirreader.py プロジェクト: whigg/h5browse
 def __init__(self, parent=None):
     super(DirReader, self).__init__(parent=parent)
     self.settings = QtCore.QSettings('dataviz', 'dirreader')
     self.baseDirLabel = QtGui.QLabel('Base directory')
     self.baseDirEdit = QtGui.QLineEdit('.')
     self.baseDirButton = QtGui.QPushButton('Open')
     self.baseDirButton.clicked.connect(self.selectBaseDir)
     self.baseDirWidget = QtGui.QWidget()
     layout = QtGui.QHBoxLayout()
     self.baseDirWidget.setLayout(layout)
     layout.addWidget(self.baseDirLabel)
     layout.addWidget(self.baseDirEdit)
     layout.addWidget(self.baseDirButton)
     self.pathTree = ptree.ParameterTree(showHeader=False)
     self.pathRules = PathParams(name='Path rules')
     self.pathTree.setParameters(self.pathRules, showTop=True)
     self.setLayout(QtGui.QVBoxLayout())
     self.layout().addWidget(self.baseDirWidget)
     self.layout().addWidget(self.pathTree)
コード例 #27
0
    def __init__(self, initial_mask = None, **kwargs):
        """
        Parameters
        ----------
        initial_mask : ndarray or None, optional
            Dialog will display this array if provided.
        """
        self.mask = None or initial_mask

        super(FourierMaskDialog, self).__init__(**kwargs)
        self.setModal(True)

        clear_prev_mask_btn = QtGui.QPushButton('Clear user-defined mask', self)
        clear_prev_mask_btn.clicked.connect(self.clear_mask)

        file_search_btn = QtGui.QPushButton('Load Fourier mask', self)
        file_search_btn.clicked.connect(self.load_mask)

        accept_btn = QtGui.QPushButton('accept', self)
        accept_btn.clicked.connect(self.accept)

        reject_btn = QtGui.QPushButton('reject', self)
        reject_btn.clicked.connect(self.reject)
        reject_btn.setDefault(True)

        self.viewer = pg.ImageView(parent = self, name = 'Fourier mask')
        if self.mask is not None:
            self.viewer.setImage(self.mask)

        btns = QtGui.QHBoxLayout()
        btns.addWidget(clear_prev_mask_btn)
        btns.addWidget(file_search_btn)
        btns.addWidget(accept_btn)
        btns.addWidget(reject_btn)

        layout = QtGui.QVBoxLayout()
        layout.addWidget(self.viewer)
        layout.addLayout(btns)
        self.setLayout(layout)
コード例 #28
0
ファイル: RasGui.py プロジェクト: gopshyam/RAS_GUI
    def __init__(self, parent=None):
        super(DemoWindow, self).__init__(parent=parent)
        self.showMaximized()

        self.graph = GraphWidget(self)

        self.verticalLayout = QtGui.QVBoxLayout(self)
        self.verticalLayout.addWidget(self.graph)

        self.logoLayout = QtGui.QHBoxLayout()

        self.logoPixmap = QtGui.QPixmap(WSU_LOGO)
        self.logoLabel = QtGui.QLabel(self)
        self.logoLabel.setPixmap(
            self.logoPixmap.scaledToWidth(self.frameGeometry().width() * 1.6))

        #self.screenPixmap = QtGui.QPixmap(SCREENSHOT)
        #self.screenLabel = QtGui.QLabel(self)
        #self.screenLabel.setPixmap(self.screenPixmap.scaledToWidth(600))

        self.logoLayout.addWidget(self.logoLabel)
        #self.logoLayout.addWidget(self.screenLabel)

        self.verticalLayout.addLayout(self.logoLayout)
コード例 #29
0
    def setDataset(self, dataset):
        model = create_default_model(dataset)
        self.setModel(model)
        self.name = '{}:{}'.format(dataset.file.filename, dataset.name)
        self.setToolTip('Dataset <b>{}</b> [file: {}]'.format(
            dataset.name, dataset.file.filename))


if __name__ == '__main__':
    import sys
    import h5py as h5
    app = QtGui.QApplication(sys.argv)
    window = QtGui.QMainWindow()
    fd = h5.File('poolroom.h5', 'r')
    widget1 = HDFDatasetWidget(dataset=fd['/map/nonuniform/tables/players'])
    widget2 = HDFDatasetWidget(dataset=fd['/data/uniform/ndim/data3d'])
    widget3 = HDFDatasetWidget()
    widget3.setDataset(fd['/data/uniform/balls/x'])
    widget = QtGui.QWidget(window)
    layout = QtGui.QHBoxLayout(widget)
    layout.addWidget(widget1)
    layout.addWidget(widget2)
    layout.addWidget(widget3)
    widget.setLayout(layout)
    window.setCentralWidget(widget)
    window.show()
    sys.exit(app.exec_())

#
# hdfdatasetwidget.py ends here
コード例 #30
0
ファイル: display_graph.py プロジェクト: wuyou33/riaps-apps
    def __init__(self, parent=None):
        super(GraphWidget, self).__init__(parent=parent)

        self.speed = 1
        self.index = 0

        self.plotSize = 500

        self.isZoomed = True

        self.state = NORMAL_STATE

        self.horizontalLayout = QtGui.QHBoxLayout(self)

        self.dataGenerator = DataGenerator()
        self.w1 = SpeedButton(self.dataGenerator)
        self.w1.fullPlotButton.clicked.connect(self.showFullPlot)
        self.w1.zoomButton.clicked.connect(self.toggleZoom)
        self.w1.stopButton.clicked.connect(self.reset)

#        self.w2 = Slider(-1, 1)
#        self.horizontalLayout.addWidget(self.w2)

#        self.w3 = Slider(-10, 10)
#        self.horizontalLayout.addWidget(self.w3)

#        self.w4 = Slider(-10, 10)
#        self.horizontalLayout.addWidget(self.w4)



        self.win = pg.GraphicsWindow(title="UFLS Demo")
        self.win2 = pg.GraphicsWindow(title="UFLS Demo")
        #self.update()

        #self.w1.slider.valueChanged.connect(self.setInterval)

        self.normalReadings = [60.0 for _ in range(PLOT_SIZE)]
        self.rasReadings = [60.0 for _ in range(PLOT_SIZE)]


        #Print the difference between times and see if there's any hope, or else take the average of times

        #time_list = [(self.normalTimes[i+1] - self.normalTimes[i]).microseconds for i in range(len(self.normalTimes) - 1) ]
        #print float(sum(time_list)/1000)/float(len(time_list))

        #self.win.resize(1000, 600)

        pg.setConfigOptions(antialias = True)

        self.vlayout = QtGui.QVBoxLayout()
        self.vlayout.addWidget(self.win)
        self.vlayout.addWidget(self.win2)
        self.horizontalLayout.addLayout(self.vlayout)

        self.rangeStart = 0
        self.rangeEnd = 500
        self.rangeCount = 1

        self.tickList = [(x, x) for x in range(0, 500, 200)]

        self.normalPlot = self.win.addPlot(title = "<h2>Without RAS</h2>")
        self.normalCurve = self.normalPlot.plot(pen = pg.mkPen('r', width = 6))
        self.normalPlot.setYRange(49, 60, padding = 0.1, update = False)
        self.normalPlot.setLabel("left", "Frequency", units = "Hz")
        self.normalPlot.setLabel("bottom", "Time (ms) ")

        self.rasPlot = self.win.addPlot(title = "<h2>With RAS</h2>")

        self.rasPlot.getAxis('bottom').setTicks([self.tickList])

        self.rasCurve = self.rasPlot.plot(pen = pg.mkPen('g', width = 5))
        self.rasPlot.setYRange(58.1, 60, padding = 0.1, update = False)
        self.rasPlot.setLabel("left", "Frequency", units = "Hz")
        self.rasPlot.setLabel("bottom", "Time (ms)")

        self.bothPlot = self.win2.addPlot(title = "<h2>Comparison</h2>")
        self.bothPlot.setYRange(49, 60, padding = 0.1, update = False)
        self.bothPlot.setLabel("left", "Frequency", units = "Hz")
        self.bothPlot.setLabel("bottom", "Time (ms)")
        self.bothPlot.getAxis('bottom').setTicks([self.tickList])
        

        self.bothPlot.getAxis('bottom').setGrid(120)
        self.bothPlot.getAxis('left').setGrid(200)

        self.normalPlot.getAxis('bottom').setGrid(120)
        self.normalPlot.getAxis('left').setGrid(200)

        self.rasPlot.getAxis('bottom').setGrid(120)
        self.rasPlot.getAxis('left').setGrid(200)

        
        self.bothNormalCurve = pg.PlotCurveItem()
        self.bothNormalCurve.setPen(pg.mkPen('r', width = 8))
        self.bothRasCurve = pg.PlotCurveItem()
        self.bothRasCurve.setPen(pg.mkPen('g', width = 5))
        self.bothRasCurve.setPen(pg.mkPen('g', width = 5))
        

        self.bothPlot.addItem(self.bothNormalCurve)
        self.bothPlot.addItem(self.bothRasCurve)


        self.systemStateLayout = SystemStateWidget(self) 
        self.horizontalLayout.addWidget(self.systemStateLayout)

        #self.horizontalLayout.addWidget(self.w1)

        #self.lineDiagramLabel = QtGui.QLabel(self)
        #self.lineDiagramPixmap = QtGui.QPixmap(LINE_DIAGRAM)
        #self.lineDiagramLabel.setPixmap(self.lineDiagramPixmap.scaledToHeight(550))

        #self.horizontalLayout.addWidget(self.lineDiagramLabel)


        self.timer = pg.QtCore.QTimer()
        self.timer.timeout.connect(self.update)
        self.timer.start(TIMEOUT)