Beispiel #1
0
	def __init__(self, parent=None):
		QtGui.QGraphicsScene.__init__(self, parent)
		#set the size of the scene
		self.setSceneRect(0,0,2000,2000)

		#self.addRect(QtCore.QRectF(800,800,200,200))

		#---create the scene-geometries ---   

		#empty list to hold the geometries
		self.geos = []

		#create stuff to add to the scene
		geo_01 = QtGui.QGraphicsEllipseItem(800,800,200,200)
		geo_02 = QtGui.QGraphicsEllipseItem(850,850,300,300)
		geo_03 = QtGui.QGraphicsEllipseItem(900,900,400,400)
		#add stuff to the scene
		self.addItem(geo_01)
		self.addItem(geo_02)
		self.addItem(geo_03)

		#put stuff into list so it can be referenced
		self.geos.append(geo_01)
		self.geos.append(geo_02)
		self.geos.append(geo_03)

		#----do the animation thing---
		self.animator = QtCore.QTimer()

		self.animator.timeout.connect(self.animate)

		self.animate()
Beispiel #2
0
    def __init__(self, viewBox, shape):

        self.showed = False
        self.vb = viewBox
        self.shape = shape

        pen = pg.mkPen(color=(255, 255, 0),
                       width=1.5,
                       style=QtCore.Qt.DotLine,
                       antialias=True)
        pen2 = pg.mkPen(color=(255, 255, 0),
                        width=1,
                        style=QtCore.Qt.SolidLine,
                        antialias=True)

        self.yline3 = pg.InfiniteLine(pen=pen2)
        self.xline3 = pg.InfiniteLine(pen=pen2, angle=0)
        self.rect0 = QtGui.QGraphicsRectItem()
        self.rect0.setPen(pen)
        self.rect1 = QtGui.QGraphicsRectItem()
        self.rect1.setPen(pen)
        self.rect2 = QtGui.QGraphicsRectItem()
        self.rect2.setPen(pen)
        self.circle = QtGui.QGraphicsEllipseItem()
        self.circle.setPen(pen)

        self.update(self.shape)
Beispiel #3
0
 def mousePressEvent(self, event):
     super(PhotoViewer, self).mousePressEvent(event)
     if self.boolSetPath:
         self.loopStart = 0
         rad = 7
         pen = QtGui.QPen(QtCore.Qt.red, 4, QtCore.Qt.SolidLine)
         pos = self.mapToScene(event.x(), event.y())
         self._save.append((event.x(), event.y()))
         self.globalCircleItem.append(
             QtGui.QGraphicsEllipseItem(pos.x(), pos.y(), rad, rad))
         self.globalItem.append(self.globalCircleItem[-1])
         self.globalCircleItem[-1].setPen(pen)
         #self._scene.addEllipse(pos.x(), pos.y(), rad, rad, pen)
         self._scene.addItem(self.globalCircleItem[-1])
         self._pos.append(pos)
         if len(self._pos) > 1:
             start = self._pos[-2]
             end = self._pos[-1]
             self.globalConnectItem.append(
                 QtGui.QGraphicsLineItem(QtCore.QLineF(start, end)))
             self.globalItem.append(self.globalConnectItem[-1])
             self._scene.addItem(self.globalConnectItem[-1])
     else:
         QtGui.QMessageBox.information(
             self, 'INFO',
             "Enter the image and annotation paths to mark the joints!",
             QtGui.QMessageBox.Ok)
Beispiel #4
0
    def ellipse(self,
                x,
                y,
                w,
                h,
                fill=False,
                color=None,
                penwidth=None,
                add=True):
        """Mimicks canvas api. See openexp._canvas.canvas."""

        color = self._color(color)
        if fill:
            pen = self._pen(color, 1)
            brush = self._brush(color)
        else:
            pen = self._pen(color, penwidth)
            brush = QtGui.QBrush()
        i = QtGui.QGraphicsEllipseItem(self._x(x), self._y(y), self._w(w),
                                       self._h(h))
        i.setPen(pen)
        i.setBrush(brush)
        if add:
            self.addItem(i)
        return i
Beispiel #5
0
def test_mask_data():
    # create Gaussian image:
    img_size = 500
    x = np.arange(img_size)
    y = np.arange(img_size)
    X, Y = np.meshgrid(x, y)
    center_x = img_size / 2
    center_y = img_size / 2
    width = 30000.0
    intensity = 5000.0
    img_data = intensity * \
               np.exp(-((X - center_x) ** 2 + (Y - center_y) ** 2) / width)
    mask_data = MaskData(img_data.shape)

    # test the undo and redo commands
    mask_data.mask_above_threshold(img_data, 4000)
    mask_data.mask_below_threshold(img_data, 230)
    mask_data.undo()
    mask_data.undo()
    mask_data.redo()
    mask_data.redo()
    mask_data.undo()

    mask_data.mask_rect(200, 400, 400, 100)
    mask_data.mask_QGraphicsRectItem(
        QtGui.QGraphicsRectItem(100, 10, 100, 100))
    mask_data.undo()

    mask_data.mask_polygon(
        np.array([0, 100, 150, 100, 0]), np.array([0, 0, 50, 100, 100]))
    mask_data.mask_QGraphicsPolygonItem(
        QtGui.QGraphicsEllipseItem(350, 350, 20, 20))

    # performing the plot
    pg.image(mask_data.get_img())
Beispiel #6
0
 def draw_point(self,
                point,
                group=None,
                color=QtCore.Qt.black,
                info=None,
                first_point=False,
                large=False):
     w = 50
     h = 50
     if first_point:
         info += " polyline-first-point"
     elif large:
         w *= 4
         h *= 4
     item = QtGui.QGraphicsEllipseItem(point.x - w / 2, point.y - h / 2, w,
                                       h)
     item.setBrush(color)
     item.info = info
     item.road_item = point
     item.is_a_line = False
     item.is_selectable = True
     if group:
         group.items.append(item)
     self.addItem(item)
     return item
Beispiel #7
0
    def update(self):
        super(GraphicsLabel, self).update()

        mid_x = const.ccWidgetDim // 2
        mid_y = const.ccWidgetDim // 2

        line_pen = QtGui.QPen(QtCore.Qt.yellow)
        line_pen.setCapStyle(QtCore.Qt.RoundCap)
        line_pen.setWidth(2)

        coeff = const.ccWidgetDim / self.image.shape[0]
        print('coeff = {0}'.format(coeff))

        for item in self.scene.items()[:-1]:
            self.scene.removeItem(item)

        for e in self.parent().ellipses:
            aa = e.a * coeff
            bb = e.b * coeff
            b = min(aa, bb)
            a = max(aa, bb)
            e_item = QtGui.QGraphicsEllipseItem(mid_x - a, mid_y - b, 2 * a, 2 * b)
            e_item.setTransformOriginPoint(mid_x, mid_y)
            print(e.tau, ran.rad2deg(e.tau))
            e_item.setRotation(ran.rad2deg(e.tau))
            e_item.setPen(line_pen)
            self.scene.addItem(e_item)
Beispiel #8
0
    def __init__(self,
                 id,
                 idSubSon,
                 subautomata,
                 x,
                 y,
                 isInit,
                 name,
                 windowId=0):
        self.id = id
        self.idSubautSon = idSubSon
        self.subautomata = subautomata
        self.x = x - NODE_WIDTH / 2
        self.y = y - NODE_WIDTH / 2
        self.isInit = isInit
        self.name = name
        self.copies = []
        self.windowId = windowId
        self.color = "blue"

        #CREATE GUI ELEMENTS
        self.ellipse = self.State(self, self.x, self.y, NODE_WIDTH)
        self.text = QtGui.QGraphicsSimpleTextItem(self.name)
        self.text.setPos(self.x, self.y + NODE_WIDTH)
        if self.isInit:
            self.ellipseInit = QtGui.QGraphicsEllipseItem(
                self.x + 5, self.y + 5, INIT_WIDTH, INIT_WIDTH)
        else:
            self.ellipseInit = None
        self.paint("blue", PEN_NORMAL_WIDTH)
 def __init__(self, parentItem, Z=1, umpx=1):
     Overlay.__init__(self, parentItem, Z=Z)
     self.opt = set(['xmass', 'ymass', 'radius', 'angle'])
     self.circle = QtGui.QGraphicsEllipseItem(parent=self)
     self.circle.setPen(self.pen)
     self.circle.setPos(0, 0)
     self.umpx = umpx
    def updateNodePosAndSize(self, id, newLabel=None):
        params = self.params
        qt = self.qtScene
        if id not in self.nodes.keys():
            nodeItem = QtGui.QGraphicsEllipseItem(0, 0, 0, 0)
            labelItem = QtGui.QGraphicsSimpleTextItem(str(id))
            self.nodePens[id] = (QtGui.QPen(), QtGui.QBrush(), QtGui.QPen())
            self.nodes[id] = (nodeItem, labelItem)
            self.invokeGui(qt.addItem, nodeItem)
            self.invokeGui(qt.addItem, labelItem)
        else:
            (nodeItem, labelItem) = self.nodes[id]

        node = self.scene.nodes[id]
        nodesize = node.scale * params.nodesize
        (nodePen, nodeBrush, labelPen) = self.nodePens[id]
        x1 = node.pos[0] - nodesize
        y1 = node.pos[1] - nodesize
        self.invokeGui(nodeItem.setRect, x1, y1, nodesize * 2, nodesize * 2)
        if newLabel:
            newLabelItem = QtGui.QGraphicsSimpleTextItem(newLabel)
            newLabelItem.setPen(labelPen)
            self.invokeGui(qt.removeItem, labelItem)
            self.invokeGui(qt.addItem, newLabelItem)
            labelItem = newLabelItem
            self.nodes[id] = (nodeItem, newLabelItem)
        (x, y, w, h) = labelItem.boundingRect().getRect()
        self.invokeGui(labelItem.setPos, node.pos[0] - w / 2,
                       node.pos[1] - h / 2)

        for l in self.nodeLinks[id]:
            self.updateLink(*l)
Beispiel #11
0
    def __init__(self, color, parent):
        super().__init__(parent)

        height, width = self.SIZE.height(), self.SIZE.width()
        self.__circle = QtGui.QGraphicsEllipseItem(0, 0, height, width)
        self.__circle.setBrush(QtGui.QBrush(color))
        self.__circle.setPen(QtGui.QPen(QtGui.QColor(0, 0, 0, 0)))
        self.__circle.setParentItem(self)
Beispiel #12
0
 def __init__(self, *args, **kwargs):
     PoolItem.__init__(self, *args, **kwargs)
     self.setFlag(QtGui.QGraphicsItem.ItemIsMovable, True)
     self.bgColor = QtGui.QGraphicsEllipseItem(self)
     self.bgColor.setFlag(QtGui.QGraphicsItem.ItemStacksBehindParent, True)
     self.bgColor.setRect(((self.gobj.boundingRect().width() +
                            PoolItem.fontMetrics.width('  ')) / 2) - 5,
                          self.gobj.boundingRect().height() / 2 - 5, 10, 10)
 def add_ellipse(self, stain):
     if stain.ellipse != None:
         ellipse = QtGui.QGraphicsEllipseItem(stain.x_ellipse - (stain.width / 2), stain.y_ellipse - (stain.height / 2), stain.width, stain.height)
         ellipse.setTransformOriginPoint(QtCore.QPointF(stain.x_ellipse, stain.y_ellipse ))
         ellipse.setRotation(stain.angle)
         pen = QtGui.QPen(QtCore.Qt.green)
         pen.setWidth(3)
         ellipse.setPen(pen)
         self.annotation_items.addToGroup(ellipse)
 def circle(self, x, y, r, id, linestyle, fillstyle):
     qt = self.qtScene
     if id in self.shapes.keys():
         self.invokeGui(qt.removeItem, self.shapes[id])
         del self.shapes[id]
     shape = QtGui.QGraphicsEllipseItem(x - r, y - r, 2 * r, 2 * r)
     self.shapes[id] = shape
     self.attachStyles(shape, linestyle, fillstyle)
     self.invokeGui(qt.addItem, shape)
Beispiel #15
0
    def __init__(self):
        QtGui.QGraphicsView.__init__(self)

        self.scene = QtGui.QGraphicsScene(self)
        for xIdx in range(100):
            for yIdx in range(100):
                item = QtGui.QGraphicsEllipseItem(xIdx * 80, yIdx * 30, 40, 20)
                self.scene.addItem(item)
        self.setScene(self.scene)
Beispiel #16
0
    def render_position(self, position, is_selected):

        circle = QtGui.QGraphicsEllipseItem(position[0] - 25, position[1] - 25,
                                            50, 50)
        if is_selected:
            circle.setPen(self.position_selected_pen)
        else:
            circle.setPen(self.position_pen)
        self.scene().addItem(circle)
Beispiel #17
0
    def update_view(self):

        self.scene().clear()

        if self.binary_id is not None:
            circle = QtGui.QGraphicsEllipseItem(10, 10, 80, 80)
            circle.setPen(self.white_pen)
            circle.setBrush(self.white_brush)
            self.scene().addItem(circle)

            for i, digit in enumerate(self.binary_id):
                section = TagSection(i, self.flip_id_bit)
                section.setStartAngle(90 * 16 + i * 30 * 16 -
                                      self.rotation * 16)
                section.setSpanAngle(30 * 16)
                section.setPen(self.white_pen)
                if digit:
                    section.setBrush(self.white_brush)
                else:
                    section.setBrush(self.black_brush)
                self.scene().addItem(section)

            inner_circle = QtGui.QGraphicsEllipseItem(34, 34, 32, 32)
            inner_circle.setPen(self.white_pen)
            inner_circle.setBrush(self.white_brush)
            self.scene().addItem(inner_circle)

            inner_half = QtGui.QGraphicsEllipseItem(34, 34, 32, 32)
            inner_half.setStartAngle(180 * 16 - self.rotation * 16)
            inner_half.setSpanAngle(180 * 16)
            inner_half.setPen(self.white_pen)
            inner_half.setBrush(self.black_brush)
            self.scene().addItem(inner_half)

            id_text = QtGui.QGraphicsSimpleTextItem(
                str(aux.binary_id_to_int(self.binary_id)))
            id_text.setPos(0, 0)
            id_text.setBrush(self.black_brush)
            self.scene().addItem(id_text)

            rotate_button = RotateButton(80, 80, self.rotate_tag)
            rotate_button.setPen(self.no_pen)
            rotate_button.setBrush(self.button_brush)
            self.scene().addItem(rotate_button)
Beispiel #18
0
 def __init__(self, **opts):
     if 'scale' not in opts:
         opts['scale'] = [20e-6, 20e-6]
     item = QtGui.QGraphicsEllipseItem(-0.5, -0.5, 1., 1.)
     item.setPen(pg.mkPen((255, 255, 255)))
     item.setBrush(pg.mkBrush((0, 100, 255)))
     opts.setdefault('scalable', False)
     opts.setdefault('rotatable', False)
     CanvasItem.__init__(self, item, **opts)
     self.selectBox.addTranslateHandle([0.5, 0.5])
Beispiel #19
0
 def addSpot(self, pos, size):
     """Add a circle to the image"""
     s2 = size / 2.0
     s = QtGui.QGraphicsEllipseItem(0, 0, 1, 1)
     s.scale(size, size)
     s.setPos(pos[0] - s2, pos[1] - s2)
     s.setPen(QtGui.QPen(QtGui.QColor(100, 255, 100, 70)))
     self.ui.view.addItem(s)
     s.setZValue(100)
     self.spots.append(s)
Beispiel #20
0
    def __init__(self, pen, x0, y0, w, h, filled=False):
        Shape.__init__(self)

        self.drawn = False
        self.pen = pen.copy()
        self.filled = filled

        self.item = QtGui.QGraphicsEllipseItem()
        self.item.setRect(QtCore.QRectF(x0 - w, y0 - h, w * 2, h * 2))
        self.item.setStartAngle(180)
        self.item.setSpanAngle(360 * 16)
Beispiel #21
0
 def markLargeGoldParticles(self, event):
     self.largeGoldParticleCoordinates.append(event.pos())
     pointDiam = 8
     tmpEllipse = QtGui.QGraphicsEllipseItem(
         self.largeGoldParticleCoordinates[-1].x() - pointDiam / 2,
         self.largeGoldParticleCoordinates[-1].y() - pointDiam / 2,
         pointDiam, pointDiam)
     tmpEllipse.setPen(QtGui.QPen(QtCore.Qt.blue, 2))
     self.scene.addItem(tmpEllipse)
     self.largeGoldParticleLcdNumber.display(
         len(self.largeGoldParticleCoordinates))
Beispiel #22
0
 def draw_point(self, point, road_item, color=QtCore.Qt.black):
     w = 0.3
     h = 0.3
     graphics_item = QtGui.QGraphicsEllipseItem(-w / 2.0, -h / 2.0, w, h)
     graphics_item.setPos(point.x, point.y)
     graphics_item.setPen(color)
     graphics_item.setBrush(color)
     self.addItem(graphics_item)
     graphics_item.road_item = road_item
     graphics_item.is_selectable = True
     return graphics_item
 def __init__(self, parentItem, Z=1):
     Overlay.__init__(self, parentItem, Z=Z)
     self.opt = set(['profile', 'iA', 'iB', 'iC', 'iD', 'roi', 'crop'])
     # Create Points attributes, iA, iB, etc
     for p in self.opt:
         if not p.startswith('i'):
             continue
         g = QtGui.QGraphicsEllipseItem(parent=self)
         g.setPen(self.pen)
         g.setZValue(self.Z)
         g.setPos(0, 0)
         setattr(self, p, g)
Beispiel #24
0
 def mousePressEvent(self, event):
     self._start = event.pos()
     self.lastMousePos = event.pos()
     
     radius = 10
     
     pos = QtCore.QPointF(self.mapToScene(event.pos()))
     ellipseItem = QtGui.QGraphicsEllipseItem(pos.x()-(radius/2), pos.y()-(radius/2), radius, radius)
     ellipseItem.setPen(QtGui.QPen(QtCore.Qt.green, QtCore.Qt.SolidPattern))
     ellipseItem.setBrush(QtCore.Qt.green)
     
     self.scene().addItem(ellipseItem)
Beispiel #25
0
 def __init__(self, *args, **kwargs):
     KineticsDisplayItem.__init__(self, *args, **kwargs)
     self.gobj = QtGui.QGraphicsEllipseItem(0, 0, EnzItem.defaultWidth,
                                            EnzItem.defaultHeight, self)
     self.gobj.mobj = self.mobj
     # classname = 'EnzBase'
     # doc = moose.element('/classes/%s' % (classname)).docs
     # doc = doc.split('Description:')[-1].split('Name:')[0].strip()
     self._Km = self.gobj.mobj.Km
     self._Kcat = self.gobj.mobj.kcat
     doc = "Km\t: " + str(self._Km) + "\nKcat\t: " + str(self._Kcat)
     self.gobj.setToolTip(doc)
Beispiel #26
0
    def __init__(self, uid):
        QtGui.QGraphicsView.__init__(self)
        self.id = uid
        self.strokes = {}  ## all strokes in scene, keyed by (origin, id)
        #self.newStrokes = []  ## self-drawn strokes generated since last call to getNewStrokes
        self.nextId = 0  ## id of next stroke to draw
        self.setScene(QtGui.QGraphicsScene())
        self.lastPos = None
        self.lastWidth = 0
        self.lastEvent = None
        self.range = QtCore.QRectF(0, 0, 1, 1)
        self.aspectLocked = True
        self.scaleCenter = False
        
        self.keysPressed = {}
        self.noRepeatKeys = [QtCore.Qt.Key_Right, QtCore.Qt.Key_Left, QtCore.Qt.Key_Up, QtCore.Qt.Key_Down, QtCore.Qt.Key_PageUp, QtCore.Qt.Key_PageDown, QtCore.Qt.Key_Q, QtCore.Qt.Key_W, QtCore.Qt.Key_A, QtCore.Qt.Key_S, QtCore.Qt.Key_Z, QtCore.Qt.Key_X, QtCore.Qt.Key_Plus, QtCore.Qt.Key_Minus, QtCore.Qt.Key_Equal]
        self.transformKeys = [QtCore.Qt.Key_Right, QtCore.Qt.Key_Left, QtCore.Qt.Key_Up, QtCore.Qt.Key_Down]
        self.antialiasDuringTransform = False
        
        self.fullScreen = False
        #self.showFullScreen()

        self.peniSize = 1.0
        self.hue = 0
        self.sat = 0
        self.val = 255

        #self.setSceneRect(QtCore.QRectF(-1e9, -1e9, 2e9, 2e9))
        self.setFrameStyle(1)
        self.setLineWidth(0)
        self.setMidLineWidth(0)
        #self.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
        #self.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
        #self.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
        #self.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
        self.setTransformationAnchor(QtGui.QGraphicsView.NoAnchor)
        self.setResizeAnchor(QtGui.QGraphicsView.AnchorViewCenter)
        self.setViewportUpdateMode(QtGui.QGraphicsView.MinimalViewportUpdate)
        brush = QtGui.QBrush(QtGui.QColor(0,0,0))
        self.setBackgroundBrush(brush)
        self.setRenderHint(QtGui.QPainter.Antialiasing, True)
        self.antialias = True
        self.setOptimizationFlags(self.DontSavePainterState)
        
        self.keyTimer = QtCore.QTimer()
        self.keyTimer.timeout.connect(self.handleKeys)
        #self.keyTimer.start(30)
        
        self.penSample = QtGui.QGraphicsEllipseItem()
        self.scene().addItem(self.penSample)
        self.penSample.hide()
        self.penFader = QtCore.QTimer()
        self.penFader.timeout.connect(self.stepPenFade)
Beispiel #27
0
Datei: svg.py Projekt: makes/draw
def _load_ellipse(svg_ellipse):
    pen = _svg_attrib_to_pen(svg_ellipse.attrib)
    x = float(svg_ellipse.attrib['cx']) - float(svg_ellipse.attrib['rx'])
    y = float(svg_ellipse.attrib['cy']) - float(svg_ellipse.attrib['ry'])
    ellipse = QtGui.QGraphicsEllipseItem(x,
                                         y,
                                         float(svg_ellipse.attrib['rx']) * 2,
                                         float(svg_ellipse.attrib['ry']) * 2)
    ellipse.setPen(pen)
    ellipse.setFlag(QtGui.QGraphicsItem.ItemIsSelectable)
    ellipse.setFlag(QtGui.QGraphicsItem.ItemIsMovable)
    return ellipse
Beispiel #28
0
    def __init__(self):
        QtGui.QMainWindow.__init__(self)
        Ui_MainWindow.__init__(self)
        self.setupUi(self)
        self.cmdHBar.clicked.connect(self.cmdHBar_clicked)
        self.cmdVBar.clicked.connect(self.cmdVBar_clicked)
        self.cmdCircle.clicked.connect(self.cmdCircle_clicked)
        self.chkSaturate.clicked.connect(self.chkSaturate_clicked)

        self.graphicsView.scene = QtGui.QGraphicsScene(self)
        self.item = QtGui.QGraphicsEllipseItem(50, 50, 40, 20)
        self.graphicsView.scene.addItem(self.item)
        self.graphicsView.show()
Beispiel #29
0
    def __init__(self, size, parent=None):
        QtGui.QGraphicsItemGroup.__init__(self, parent)

        self._yawLine = QtGui.QGraphicsLineItem()
        self._yawLine.setLine(0, -size, 0, size)
        self._yawLine.setPen(QtGui.QPen(QtGui.QColor(*config.SHOOTING_COLOR_SCHEME[config.COLOR_SCHEME]['head'])))
        self.addToGroup(self._yawLine)
        self._pitchLine = QtGui.QGraphicsLineItem()
        self._pitchLine.setLine(-size, 0, size, 0)
        self._pitchLine.setPen(QtGui.QPen(QtGui.QColor(*config.SHOOTING_COLOR_SCHEME[config.COLOR_SCHEME]['head'])))
        self.addToGroup(self._pitchLine)
        self._circle = QtGui.QGraphicsEllipseItem(-size / 2, -size / 2, size, size)
        self._circle.setPen(QtGui.QPen(QtGui.QColor(*config.SHOOTING_COLOR_SCHEME[config.COLOR_SCHEME]['head'])))
        self.addToGroup(self._circle)
 def __init__(self, vehicle_event_dispatcher, ui_event_dispatcher):
     QtGui.QWidget.__init__(self)
     BasePanelController.__init__(self)
     self.ui = Ui_ReceiverCalibrationPanel()
     self.ui.setupUi(self)
     self.ui.start.setEnabled(True)
     self.ui.cancel.setEnabled(False)
     
     leftStickScene = QtGui.QGraphicsScene()
     leftStickBackground = QtGui.QPixmap("./resources/TxDial.png")
     leftStickItem = QtGui.QGraphicsPixmapItem(leftStickBackground)
     leftStickScene.addItem(leftStickItem)
     self.leftStick = QtGui.QGraphicsEllipseItem(QtCore.QRectF(75, 75, 30, 30))
     self.leftStick.setPen(QtGui.QPen(QtGui.QBrush(QtCore.Qt.black, QtCore.Qt.SolidPattern), 2))
     self.leftStick.setBrush(QtGui.QBrush(QtCore.Qt.blue, QtCore.Qt.SolidPattern))
     leftStickScene.addItem(self.leftStick)
     self.ui.leftTransmitter.setScene(leftStickScene)
     
     rightStickScene = QtGui.QGraphicsScene()
     rightStickBackground = QtGui.QPixmap("./resources/TxDial.png")
     rightStickItem = QtGui.QGraphicsPixmapItem(rightStickBackground)
     rightStickScene.addItem(rightStickItem)
     self.rightStick = QtGui.QGraphicsEllipseItem(QtCore.QRectF(75, 75, 30, 30))
     self.rightStick.setPen(QtGui.QPen(QtGui.QBrush(QtCore.Qt.black, QtCore.Qt.SolidPattern), 2))
     self.rightStick.setBrush(QtGui.QBrush(QtCore.Qt.blue, QtCore.Qt.SolidPattern))
     rightStickScene.addItem(self.rightStick)
     self.ui.rightTransmitter.setScene(rightStickScene)   
     
     self.running = False
     self.amount_channels = 12
     self.RCmin = [1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500]
     self.RCmax = [1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500]
     self.max_amount_channels = 12
     
     self.ui.start.clicked.connect(self.start_RCcalibration)
     self.ui.cancel.clicked.connect(self.cancel_RCcalibration)