Exemplo n.º 1
0
    def initUI(self):
        self.setGeometry(0, 0, 1280, 720)
        # self.setWindowTitle('Toolbar')

        self.glwidget = GLWidget(self)
        self.glwidget.setGeometry(0, 30, 1280, 720)
        self.glwidget.sim = self.sim
Exemplo n.º 2
0
    def __init__(self, width, height):
        super(Window, self).__init__()
        self.setFixedSize(width, height)

        self.glWidget = GLWidget()
        mainLayout = QVBoxLayout(self)
        mainLayout.addWidget(self.glWidget)
        self.setLayout(mainLayout)
Exemplo n.º 3
0
    def setup_gui(self):
        """
        """
        self.glWidget = GLWidget(parent=self.gridWidget_4,
                                 width=1508,
                                 height=713,
                                 bgcolor=(.5, .5, 0.9),
                                 enable_light=False)

        self.gridLayout_4.addWidget(self.glWidget)

        # adding the editing items to ROI table

        # double spinbox for x,y and z coordinates
        self.dspbxcoord = QtGui.QDoubleSpinBox()
        self.tblROI.setCellWidget(3, 1, self.dspbxcoord)

        self.dspbycoord = QtGui.QDoubleSpinBox()
        self.tblROI.setCellWidget(4, 1, self.dspbycoord)

        self.dspbzcoord = QtGui.QDoubleSpinBox()
        self.tblROI.setCellWidget(5, 1, self.dspbzcoord)

        self.spbrad = QtGui.QSpinBox()
        self.tblROI.setCellWidget(6, 1, self.spbrad)
        # define method ROI
        self.roimethod = 1  #tractome inside

        # color button
        self.colorlist = [
            QtGui.QColor('red'),
            QtGui.QColor('blue'),
            QtGui.QColor('green'),
            QtGui.QColor('yellow'),
            QtGui.QColor('cyan'),
            QtGui.QColor('black')
        ]
        self.btncolor = QtGui.QPushButton()
        self.tblROI.setCellWidget(2, 1, self.btncolor)
        self.btncolor.setAutoFillBackground(True)
        # connect button with QColorDialog
        self.connect(self.btncolor, QtCore.SIGNAL("clicked()"),
                     self.on_btncolor_clicked)

        # visibility checkbox
        self.chkbvis = QtGui.QCheckBox()
        self.chkbvis.setCheckState(QtCore.Qt.Checked)
        self.connect(self.chkbvis, QtCore.SIGNAL("stateChanged(int)"),
                     self.on_chkbvis_stateChanged)
        self.tblROI.setCellWidget(1, 1, self.chkbvis)

        # self.show_hide_rows(True)

        # creating the main Scene
        self.tractome = Tractome()
        self.add_scene(self.tractome.scene)
Exemplo n.º 4
0
    def __init__(self, parent=None):
        QMainWindow.__init__(self, parent)
        self.glWidget = GLWidget()
        self.glWidget.setMinimumWidth(600)
        self.xSlider = self.createSlider(SIGNAL("xRotationChanged(int)"),
                                         self.glWidget.setXRotation)
        self.ySlider = self.createSlider(SIGNAL("yRotationChanged(int)"),
                                         self.glWidget.setYRotation)
        self.zSlider = self.createSlider(SIGNAL("zRotationChanged(int)"),
                                         self.glWidget.setZRotation)
        self.zoomSlider = self.createZoomSlider(SIGNAL("zoomChanged(int)"),
                                                self.glWidget.setZoom)

        self.button = QPushButton('Generate STL')
        self.applyButton = QPushButton('Apply')
        self.button.clicked.connect(self.showSaveDialog)
        self.applyButton.clicked.connect(self.applySettings)
        self.imageView = QLabel("Preview unavailable")
        self.minThicknessTextBox = QLineEdit()
        self.maxThicknessTextBox = QLineEdit()
        self.stepSizeTextBox = QLineEdit()
        self.minThicknessTextBox.setValidator(QDoubleValidator(0.99, 99.99, 2))
        self.maxThicknessTextBox.setValidator(QDoubleValidator(0.99, 99.99, 2))
        self.stepSizeTextBox.setValidator(QDoubleValidator(0.99, 99.99, 2))
        self.setFormDefaults()
        rightSide = QFormLayout()
        rightSide.addRow("Preview", self.imageView)
        rightSide.addRow("Min Thickness", self.minThicknessTextBox)
        rightSide.addRow("Max Thickness", self.maxThicknessTextBox)
        rightSide.addRow("Step Size", self.stepSizeTextBox)
        rightSide.addRow(self.applyButton)
        rightSide.addRow(self.button)

        mainLayout = QHBoxLayout()
        leftSide = QVBoxLayout()
        leftSide.addWidget(self.glWidget)
        leftSide.addWidget(QLabel("Zoom"))
        leftSide.addWidget(self.zoomSlider)
        leftSide.addWidget(QLabel("X Rotation"))
        leftSide.addWidget(self.xSlider)
        leftSide.addWidget(QLabel("Y Rotation"))
        leftSide.addWidget(self.ySlider)
        leftSide.addWidget(QLabel("Z Rotation"))
        leftSide.addWidget(self.zSlider)

        leftWidget = QWidget()
        leftWidget.setLayout(leftSide)

        mainLayout.addWidget(leftWidget)

        rightWidget = QWidget()
        rightWidget.setLayout(rightSide)
        mainLayout.addWidget(rightWidget)

        widget = QWidget()
        widget.setLayout(mainLayout)

        openAction = QAction("&Open Image File", self)
        openAction.setShortcut("Ctrl+O")
        openAction.setStatusTip('Open an Image')
        openAction.triggered.connect(self.showImagePicker)

        saveAction = QAction("&Save as STL", self)
        saveAction.setShortcut("Ctrl+S")
        saveAction.setStatusTip('Save lithophane in .STL format')
        saveAction.triggered.connect(self.showSaveDialog)

        aboutAction = QAction("&About", self)
        aboutAction.setStatusTip('About the program')
        aboutAction.triggered.connect(self.showAboutDialog)

        self.statusBar()

        mainMenu = self.menuBar()
        fileMenu = mainMenu.addMenu('&File')
        fileMenu.addAction(openAction)
        fileMenu.addAction(saveAction)

        aboutMenu = mainMenu.addMenu('&Help')
        aboutMenu.addAction(aboutAction)

        self.setCentralWidget(widget)
        self.xSlider.setValue(15 * 16)
        self.ySlider.setValue(345 * 16)
        self.zSlider.setValue(0 * 16)
        self.zoomSlider.setValue(90)
        self.setWindowTitle(self.tr("Lithophane Maker"))
        self.setGeometry(50, 50, 1200, 800)
        self.connect(self.glWidget, SIGNAL("fileSaved()"), self.showFileSaved)