Python PyQt4.QtGui 模块,QPen() 实例源码

我们从Python开源项目中,提取了以下50个代码示例,用于说明如何使用PyQt4.QtGui.QPen()

项目:CPNSimulatorGui    作者:chris-kuhr    | 项目源码 | 文件源码
def __init__(self, parent=None):  
        '''Create description canvas.

        :param parent: Abstract CPN element.
        '''
        super(DescriptionCanvas, self).__init__(parent)
        self.parent = parent
        self.text = self.parent.uniqueName
        self.setPen(QtGui.QPen(QtCore.Qt.darkYellow, 1))
        self.setBrush(QtGui.QBrush(QtCore.Qt.darkYellow))
        self.setFlags(self.ItemIsSelectable | self.ItemIsMovable | self.ItemSendsScenePositionChanges )
        self.label = QtGui.QGraphicsTextItem( "%s: %s"%(self.parent.uniqueName, self.parent.name), parent=self )  
#         self.label.setFlag(self.ItemIsMovable, True)
        rect = self.label.boundingRect()
        self.setRect(rect.x() + 30, rect.y() + 20, rect.width(), rect.height())
        self.label.setPos(rect.x() + 30, rect.y() + 20)
        self.label.setZValue(21)   
        self.setZValue(20)      
        self.visibility = False
        self.setVisibility( self.visibility ) 
    #------------------------------------------------------------------------------------------------
项目:SameKeyProxy    作者:xzhou    | 项目源码 | 文件源码
def paint(self, painter, option, index):
        rowdata = self.model.getrowdata(index.row())

        color = QtCore.Qt.white
        if "status" in rowdata.__dict__:
            if rowdata.status == "S":
                color = QtGui.QColor(204, 255, 204) # Light green
        else:                    
            color = QtGui.QColor(255, 204, 204) # Light red

        painter.save()
        painter.setPen(QtGui.QPen(QtCore.Qt.NoPen))
        painter.setBrush(QtGui.QBrush(color))
        painter.drawRect(option.rect)
        painter.restore()            
        QtGui.QItemDelegate.paint(self, painter, option, index)
项目:siren    作者:ozsolarwind    | 项目源码 | 文件源码
def drawRect(self, coords=None):
        self.clear_Rect()
        self.rect_items = []
        color = QtGui.QColor()
        color.setNamedColor((self.scene().colors['border']))
        pen = QtGui.QPen(color, self.scene().line_width)
        pen.setJoinStyle(QtCore.Qt.RoundJoin)
        pen.setCapStyle(QtCore.Qt.RoundCap)
        fromm = self.mapFromLonLat(coords[0])
        too = self.mapFromLonLat(coords[1])
        self.rect_items.append(QtGui.QGraphicsRectItem(fromm.x(), fromm.y(),
            too.x() - fromm.x(), too.y() - fromm.y()))
        self.rect_items[-1].setPen(pen)
        self.rect_items[-1].setZValue(3)
        self.scene().addItem(self.rect_items[-1])
        if self.scene().center_on_grid:
            x = fromm.x() + (too.x() - fromm.x()) / 2
            y = fromm.y() + (too.y() - fromm.y()) / 2
            go_to = QtCore.QPointF(x, y)
            self.centerOn(go_to)
        rect = reproject([coords[0].y(), coords[0].y(), coords[1].y(), coords[1].y()],
                         [coords[0].x(), coords[1].x(), coords[1].x(), coords[0].x()])
        return '{:0,.0f}'.format(area_of_polygon(rect[0], rect[1])) + ' Km^2'
项目:siren    作者:ozsolarwind    | 项目源码 | 文件源码
def drawMany(self):
        grids = GetMany.getList()
        if grids is None:
            return
        self.clear_Rect()
        self.rect_items = []
        color = QtGui.QColor()
        color.setNamedColor((self.scene().colors['border']))
        pen = QtGui.QPen(color, self.scene().line_width)
        pen.setJoinStyle(QtCore.Qt.RoundJoin)
        pen.setCapStyle(QtCore.Qt.RoundCap)
        for g in range(len(grids)):
            fromm = self.mapFromLonLat(QtCore.QPointF(grids[g][1], grids[g][0]))
            too = self.mapFromLonLat(QtCore.QPointF(grids[g][3], grids[g][2]))
            self.rect_items.append(QtGui.QGraphicsRectItem(fromm.x(), fromm.y(),
                                   too.x() - fromm.x(), too.y() - fromm.y()))
            self.rect_items[-1].setPen(pen)
            self.rect_items[-1].setZValue(3)
            self.scene().addItem(self.rect_items[-1])
        self.emit(QtCore.SIGNAL('statusmsg'), str(len(grids)) + ' Areas drawn')
项目:dxf2gcode    作者:cnc-club    | 项目源码 | 文件源码
def __init__(self, startp=Point(), endp=None,
                 length=60.0, angle=50.0,
                 color=QtCore.Qt.red, pencolor=QtCore.Qt.green,
                 startarrow=True):
        """
        Initialisation of the class.
        """
        self.sc = None
        super(Arrow, self).__init__()

        self.startp = QtCore.QPointF(startp.x, -startp.y)
        self.endp = endp

        self.length = length
        self.angle = angle
        self.startarrow = startarrow
        self.allwaysshow = False

        self.arrowHead = QPolygonF()
        self.setFlag(QGraphicsItem.ItemIsSelectable, False)
        self.myColor = color
        self.pen = QPen(pencolor, 1, QtCore.Qt.SolidLine)
        self.pen.setCosmetic(True)
        self.arrowSize = 8.0
项目:dxf2gcode    作者:cnc-club    | 项目源码 | 文件源码
def __init__(self, text='S', startp=Point(x=0.0, y=0.0),):
        """
        Initialisation of the class.
        """
        QGraphicsItem.__init__(self)

        self.setFlag(QGraphicsItem.ItemIsSelectable, False)

        self.text = text
        self.sc = 1.0
        self.startp = QtCore.QPointF(startp.x, -startp.y)

        pencolor = QColor(0, 200, 255)
        self.brush = QColor(0, 100, 255)

        self.pen = QPen(pencolor, 1, QtCore.Qt.SolidLine)
        self.pen.setCosmetic(True)

        self.path = QPainterPath()
        self.path.addText(QtCore.QPointF(0, 0),
                          QFont("Arial", 10/self.sc),
                          self.text)
项目:picasso    作者:jungmannlab    | 项目源码 | 文件源码
def draw_scalebar(self, image):
        if self.window.display_settings_dialog.scalebar_groupbox.isChecked():
            pixelsize = self.window.display_settings_dialog.pixelsize.value()
            scalebar = self.window.display_settings_dialog.scalebar.value()
            length_camerapxl = scalebar / pixelsize
            length_displaypxl = int(round(self.width() * length_camerapxl / self.viewport_width()))
            height = max(int(round(0.15 * length_displaypxl)), 1)
            painter = QtGui.QPainter(image)
            painter.setPen(QtGui.QPen(QtCore.Qt.NoPen))
            painter.setBrush(QtGui.QBrush(QtGui.QColor('white')))
            x = self.width() - length_displaypxl - 35
            y = self.height() - height - 20
            painter.drawRect(x, y, length_displaypxl + 0, height + 0)
            if self.window.display_settings_dialog.scalebar_text.isChecked():
                font = painter.font()
                font.setPixelSize(20)
                painter.setFont(font)
                painter.setPen(QtGui.QColor('white'))
                text_spacer = 40
                text_width = length_displaypxl +2*text_spacer
                text_height = text_spacer
                painter.drawText(x-text_spacer, y-25, text_width, text_height, QtCore.Qt.AlignHCenter,str(scalebar)+' nm')
        return image
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self, note, text=False):
        QtGui.QGraphicsItem.__init__(self, parent=None)
        self.note = note
        self.note_name = NoteNames[note]
        self.note_short = self.note_name[0].upper()
        if isinstance(text, bool):
            self.note_label = self.note_short if text else ''
        else:
            self.note_label = text
        self.setAcceptHoverEvents(True)
        self.base_height = 100
        self.base_x = 0
        self.base_width = 20
        self.border_pen = QtGui.QPen(QtCore.Qt.darkGray, 1)
        self.pressed = 2
        self.shadow = 5
        self.current = self
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def changeEvent(self, event):
        if not event.type() == QtCore.QEvent.EnabledChange: return
        state = self.isEnabled()
        self.start_color = self._start_colors[state]
        self.end_color = self._end_colors[state]
        self.dial_bgd = self._dial_bgd_colors[state]
        self.dial_border = self._dial_border_colors[state]
        if self.gradient:
            self.fill_color = self.range_mid_colors[state] if self.center else self.range_full_colors[state]
        else:
            self.fill_color = QtGui.QColor(*self.setColor())
        self.fgd_color = self._fgd_colors[state]
        self.fgd_pen = QtGui.QPen(self.fgd_color, self.dial_size/50.)
        self.cursor_pen = QtGui.QPen(self.fgd_color, self.dial_size/30.)
        self.dial_color = self._dial_colors[state]
        self.dial_pen = QtGui.QPen(self.dial_color, self.dial_size/100.)
        self.update()
        self.cursor.setEnabled(state)
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self, main, index, rect, *args, **kwargs):
        QtGui.QGraphicsWidget.__init__(self, *args, **kwargs)
        self.main = main
        self.index = index
        rect.setTop(-100)
        rect.setBottom(rect.bottom()+100)
        self.setGeometry(rect)
        self.setAcceptHoverEvents(True)
        self.pen = QtGui.QPen(QtGui.QColor(QtCore.Qt.lightGray))
        self.brush = self.bgd_brushes[0]
        self.index_item = QtGui.QGraphicsTextItem(str(index+1), self)
        self.index_item.setFlags(self.index_item.ItemIgnoresTransformations)
        font = self.index_item.font()
        font.setPointSize(7)
        self.index_item.setFont(font)
        self.index_item.setY(90)
        self.index_item.setTextWidth(20)
        if (self.index+1) % 8:
            self.index_item.setVisible(False)
        else:
            self.index_item.setX(-16)
        self.selected = False
        self.highlight = False
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def setWaveTable(self, waveobj_list):
        self.waveobj_list = waveobj_list
        self.wavegroup = QtGui.QGraphicsItemGroup()
        for i, wave_obj in enumerate(waveobj_list):
#            wave_obj.selected.connect(self.select)
            wave_obj.preview_path_item.setX(i*128)
            wave_obj.selected.connect(lambda o, index=i: setattr(self, 'currentWave', index))
            self.wavegroup.addToGroup(wave_obj.preview_path_item)
            rect = wave_obj.preview_rect
            self.scene().addItem(rect)
            rect.setX(i*128)
            rect.setZValue(-10)
        bounding = self.wavegroup.boundingRect()
        bounding.setTop(-5)
        bounding.setBottom(bounding.bottom()+15)
        bounding_item = QtGui.QGraphicsRectItem(bounding)
        bounding_item.setPen(QtGui.QPen(QtCore.Qt.NoPen))
        self.wavegroup.addToGroup(bounding_item)
        self.scene().addItem(self.wavegroup)
        self.setSceneRect(self.wavegroup.boundingRect())
项目:PH5    作者:PIC-IRIS    | 项目源码 | 文件源码
def paintEvent(self, e=None): 
        qp = QtGui.QPainter()
        qp.begin(self)
        if self.showPos: 
            # showing arrow (pointerWidget): intended to use for showing the point that user want to see the info 
            #    transparent if pre-created with no parent, 
            #    don't use because it show up too slow
            qp.setPen( QtGui.QPen(QtCore.Qt.red,3 ) )
            qp.drawLine(0, 0, 20, 20) 
            qp.drawLine(0, 0, 2, 10)
            qp.drawLine(0, 0, 10, 2 )
        else:
            # showing a tiny square at the select station(s)
            qp.setBrush(QtCore.Qt.red)
            qp.drawRect(0,0,self.rect().width(), self.rect().height())  # -1 or the right and bottom lines will be thinner than the rest
        qp.end()


##########################################
############### CLASS ####################
# Author: Lan
# Updated: 201410
# CLASS: FileParaDialog - GUI for setting the picture file's size and format
项目:PH5    作者:PIC-IRIS    | 项目源码 | 文件源码
def paintEvent(self, e):
        qp = QtGui.QPainter()

        qp.begin(self)  
        pen = QtGui.QPen(QtCore.Qt.blue, 1.7, QtCore.Qt.DashLine)
        qp.setFont(QtGui.QFont('Decorative', 9))
        qp.setPen(pen)
        #print "paintEvent"
        index = 0
        for lbl in self.canvas.labelPos:
            if lbl.has_key('y'):
                indent = 6*(6-len(lbl['text']))
                indent = indent if indent>0 else 0
                #print "%s => indent=%s" % (lbl['text'], indent)
                qp.drawText(1+indent, lbl['y']+5, lbl['text'])
            else:
                #print "text:'%s' len(lbl)=%s" % (lbl['text'], len(lbl['text']))
                qp.drawText(int(lbl['x']-len(lbl['text'])*3.5), self.height()-10, lbl['text'])
            index += 1

        qp.end()
项目:BTCeTrader    作者:ch3ll0v3k    | 项目源码 | 文件源码
def paintEvent(self, event):

        # -------------------------------------------------------------------
        Painter = QPainter()
        Painter.begin(self)

        # -------------------------------------------------------------------
        # Draw CROSS-MOUSE-POS
        if self.DRAW_CROSS:

            Painter.setPen( QPen( QColor(255,255,255, 255), 1, Qt.DashLine ) );
            Painter.drawPolyline( QPoint(self.MOUSE_X-600, self.MOUSE_Y), QPoint( self.MOUSE_X+600, self.MOUSE_Y) ); 
            Painter.drawPolyline( QPoint(self.MOUSE_X, self.MOUSE_Y-400), QPoint( self.MOUSE_X, self.MOUSE_Y+400) ); 

        # -------------------------------------------------------------------
        Painter.end();
        # -------------------------------------------------------------------

    # =======================================================================
项目:CPNSimulatorGui    作者:chris-kuhr    | 项目源码 | 文件源码
def __init__(self, parent = None):  
        '''Create abstract item.

        :param parent: `gui.DiagramEditor`. Editor to show in. 
        '''
        self.parent = parent
        super(AbstractItem, self).__init__(parent)
        self.tokens = None        
        self.name = ""
        self.posCallbacks = []
        self.connectorList = []

        self.setPen(QtGui.QPen(QtCore.Qt.black, 2))
        self.setBrush(QtGui.QBrush(QtCore.Qt.white))
        self.setFlags(self.ItemIsSelectable | self.ItemIsMovable | self.ItemSendsScenePositionChanges)

        self.planeMap = {
                         "northWest":set(),
                         "north":set(),
                         "northEast":set(),
                         "east":set(),
                         "southEast":set(),
                         "south":set(),
                         "southWest":set(),
                         "west":set()
                         }
        self.connectorMap = {
                         "northWest":[],
                         "north":[],
                         "northEast":[],
                         "east":[],
                         "southEast":[],
                         "south":[],
                         "southWest":[],
                         "west":[]
                         }
    #------------------------------------------------------------------------------------------------
项目:CPNSimulatorGui    作者:chris-kuhr    | 项目源码 | 文件源码
def __init__(self, parent):
        '''Create line.

        :param parent: Parent `model.ArcItem`.
        '''
        super(LineItem, self).__init__(None)
        self.parent = parent
        self.setPen(QtGui.QPen(QtCore.Qt.black,2))
        self.setFlag(self.ItemIsSelectable, True)
    #------------------------------------------------------------------------------------------------
项目:CPNSimulatorGui    作者:chris-kuhr    | 项目源码 | 文件源码
def singleInput(self, variableExpression):          
        '''Register a single input arc in the simulator.

        :param variableExpression: SNAKES Variable or Expression.
        '''
        try:      
            self.editor.mainWindow.simulator.net.add_input( self.srcConnector.parent.uniqueName, self.dstConnector.parent.uniqueName, variableExpression)
            self.arcLine.setPen(QtGui.QPen(QtCore.Qt.black,2))
        except ValueError:
            errorString = str( "ValueError must contain valid Python Syntax: e.g. x>1, %s" %( sys.exc_info()[1] ) )
            item = QtGui.QListWidgetItem( errorString )
            item.setTextColor(QtCore.Qt.red)
            self.editor.mainWindow.logWidget.addItem( item )
            self.arcLine.setPen(QtGui.QPen(QtCore.Qt.red,2))
            del self
            return False
        except SyntaxError:
            errorString = str( "Expression must contain valid Python Syntax: e.g. x>1, %s" %( sys.exc_info()[1] ) )
            item = QtGui.QListWidgetItem( errorString )
            item.setTextColor(QtCore.Qt.red)
            self.editor.mainWindow.logWidget.addItem( item )
            self.arcLine.setPen(QtGui.QPen(QtCore.Qt.red,2))
            del self
            return False
        except snakes.ConstraintError:
            errorString = str( "ConstraintError: already connected to %s" %(self.dstConnector.parent.name) )
            item = QtGui.QListWidgetItem( errorString )
            item.setTextColor(QtCore.Qt.red)
            self.editor.mainWindow.logWidget.addItem( item )
            self.arcLine.setPen(QtGui.QPen(QtCore.Qt.red,2))
            del self
            return False
        return True
    #------------------------------------------------------------------------------------------------
项目:CPNSimulatorGui    作者:chris-kuhr    | 项目源码 | 文件源码
def singleOutput(self, variableExpression):
        '''Register a multi input arc in the simulator.

        :param variableExpression: SNAKES Variable or Expression.
        '''
        try:           
            self.editor.mainWindow.simulator.net.add_output( self.dstConnector.parent.uniqueName, self.srcConnector.parent.uniqueName, variableExpression)
            if self.replaceExpression is not None:
                self.dstConnector.parent.replaceExpression = self.replaceExpression 

            self.arcLine.setPen(QtGui.QPen(QtCore.Qt.black,2))
        except ValueError:
            errorString = str( "ValueError: %s" %(sys.exc_info()[1]) )
            item = QtGui.QListWidgetItem( errorString )
            item.setTextColor(QtCore.Qt.red)
            self.editor.mainWindow.logWidget.addItem( item )
            self.arcLine.setPen(QtGui.QPen(QtCore.Qt.red,2))
            del self
            return False
        except SyntaxError:
            errorString = str( "SyntaxError: %s" %(sys.exc_info()[1]) )
            item = QtGui.QListWidgetItem( errorString )
            item.setTextColor(QtCore.Qt.red)
            self.editor.mainWindow.logWidget.addItem( item )
            self.arcLine.setPen(QtGui.QPen(QtCore.Qt.red,2))
            del self
            return False
        except snakes.ConstraintError:
            errorString = str( "ConstraintError: already connected to %s" %(self.dstConnector.parent.name) )
            item = QtGui.QListWidgetItem( errorString )
            item.setTextColor(QtCore.Qt.red)
            self.editor.mainWindow.logWidget.addItem( item )
            self.arcLine.setPen(QtGui.QPen(QtCore.Qt.red,2))
            del self
            return False
        return True
    #------------------------------------------------------------------------------------------------
项目:CPNSimulatorGui    作者:chris-kuhr    | 项目源码 | 文件源码
def initTransition(self, loadFromFile):  
        '''Initialize transition.

        :param loadFromFile: Flag determining, whether the transition is loaded from file.
        '''
        pos = self.scenePos()        
        self.createItem(self.editor, self.name, nodeType="transition")   
        rect = self.boundingRect()    

        if not self.substitutionTransition:    
            self.guardLabel = QtGui.QGraphicsTextItem(self.guardExpression, self)
            self.guardLabel.setFlags( self.ItemIsSelectable | self.ItemIsMovable )   
            self.guardLabel.setPos(pos.x() + rect.width()/2, pos.y() - 20)
            self.guardLabel.setPlainText( self.guardExpression )
        else:            
            if not loadFromFile:
                self.editor.mainWindow.addSubnetEditor(self.name)
            self.subnetBorder = QtGui.QGraphicsRectItem( pos.x() - 5, pos.y()-5, rect.width()+9, rect.height()+9, parent=self )
            self.subnetBorder.setFlag( self.ItemStacksBehindParent, True ) 
            self.subnetBorder.setPen(QtGui.QPen(QtCore.Qt.black, 2))
            self.subnetBorder.setBrush(QtGui.QBrush(QtCore.Qt.white))
            self.subnetBorder.setZValue(11)
            self.guardExpression = ""

        self.setPos(self.position)
        self.setZValue(10)

        self.editor.visualTransitions.append(self)
        self.editor.diagramScene.addItem(self)
    #------------------------------------------------------------------------------------------------
项目:CPNSimulatorGui    作者:chris-kuhr    | 项目源码 | 文件源码
def __init__(self, parent):
        super(LineItem, self).__init__(None)
        self.parent = parent
        self.setPen(QtGui.QPen(QtCore.Qt.black,2))
#         self.setFlags( self.ItemIsSelectable | self.ItemIsMoveable ) 

    #------------------------------------------------------------------------------------------------

#========================================================================================================================
项目:base_function    作者:Rockyzsu    | 项目源码 | 文件源码
def paint(self, QPainter, QStyleOptionGraphicsItem, QWidget_widget=None):
        # setPen
        pen = QPen()
        pen.setWidth(5)
        pen.setJoinStyle(Qt.MiterJoin)  #?????
        QPainter.setPen(pen)

        # draw line
        QPainter.drawLine(self.line)
项目:TPN    作者:myfavouritekk    | 项目源码 | 文件源码
def draw_predictions(file_path, predictions, class_index,
                     score_low, score_high):
    img = QtGui.QImage(file_path)
    painter = QtGui.QPainter(img)
    for i, pred in enumerate(predictions):
        if class_index > 0 and pred.class_index != class_index: continue
        if pred.score < score_low or pred.score > score_high: continue
        class_name = CLASS_NAMES[pred.class_index]
        x1, y1, x2, y2 = map(int, pred.bbox)
        # bbox
        painter.setPen(QtGui.QPen(PRESET_COLORS[pred.class_index], 10.0))
        # painter.setPen(QtGui.QPen(QtGui.QColor(0, 116, 217), 10.0))
        painter.setBrush(QtGui.QBrush())
        painter.drawRect(x1, y1, x2 - x1 + 1, y2 - y1 + 1)
        # label background rect
        painter.setPen(QtGui.QPen(PRESET_COLORS[pred.class_index], 2.0))
        painter.setBrush(QtGui.QBrush(PRESET_COLORS[pred.class_index]))
        # painter.setPen(QtGui.QPen(QtGui.QColor(0, 116, 217), 2.0))
        # painter.setBrush(QtGui.QBrush(QtGui.QColor(0, 116, 217)))
        if class_index > 0:
            painter.drawRect(x1, y1, min(x2 - x1 + 1, 100), 30)
        else:
            painter.drawRect(x1, y1, min(x2 - x1 + 1, 200), 30)
        # label text
        painter.setPen(QtGui.QPen(QtGui.QColor(255, 255, 255)))
        painter.setBrush(QtGui.QBrush())
        painter.setFont(QtGui.QFont('Arial', 20, QtGui.QFont.Bold))
        if class_index > 0:
            painter.drawText(x1 + 4, y1 + 24, '{:.2f}'.format(pred.score))
        else:
            painter.drawText(x1 + 4, y1 + 24,
                             '{} {:.2f}'.format(class_name, pred.score))
    return img
项目:siren    作者:ozsolarwind    | 项目源码 | 文件源码
def _setupGrid(self):
        def do_them(lines, width=self.line_width, grid2=False):
            for line in lines:
                color = QtGui.QColor()
                color.setNamedColor(line.style)
                pen = QtGui.QPen(color, width)
                pen.setJoinStyle(QtCore.Qt.RoundJoin)
                pen.setCapStyle(QtCore.Qt.RoundCap)
                start = self.mapFromLonLat(QtCore.QPointF(line.coordinates[0][1], line.coordinates[0][0]))
                for pt in range(1, len(line.coordinates)):
                    end = self.mapFromLonLat(QtCore.QPointF(line.coordinates[pt][1], line.coordinates[pt][0]))
                    ln = QtGui.QGraphicsLineItem(QtCore.QLineF(start, end))
                    ln.setPen(pen)
                    ln.setZValue(0)
                    self.addItem(ln)
                    if grid2:
                        self._gridGroup2.addToGroup(ln)
                    else:
                        self._gridGroup.addToGroup(ln)
                    start = end
            return
        self.lines = Grid()
        do_them(self.lines.lines)
        self.grid_lines = len(self.lines.lines)
        lines = Grid_Boundary()
        if len(lines.lines) > 0:
            lines.lines[0].style = self.colors['grid_boundary']
            do_them(lines.lines, width=0)
        if self.existing_grid2:
            lines2 = Grid(grid2=True)
            do_them(lines2.lines, grid2=True)
项目:siren    作者:ozsolarwind    | 项目源码 | 文件源码
def show_Grid(self):
        comment = 'Grid Toggled '
        if self.view.scene().show_grid:
            self.view.scene().show_grid = False
            self.view.scene()._gridGroup.setVisible(False)
            self.showGrid.setIcon(QtGui.QIcon('blank.png'))
            comment += 'Off'
        else:
            if self.view.scene()._gridGroup is None:
                self.view.scene()._gridGroup = QtGui.QGraphicsItemGroup()
                self.view.scene().addItem(self.view.scene()._gridGroup)
                color = QtGui.QColor()
                color.setNamedColor((self.view.scene().colors['grid']))
                pen = QtGui.QPen(color, self.view.scene().line_width)
                pen.setJoinStyle(QtCore.Qt.RoundJoin)
                pen.setCapStyle(QtCore.Qt.RoundCap)
                for lat in range(90, -90, -10):
                    if lat == 90:
                        continue
                    fromm = self.mapFromLonLat(QtCore.QPointF(-180, lat))
                    too = self.mapFromLonLat(QtCore.QPointF(180, lat))
                    item = QtGui.QGraphicsLineItem(fromm.x(), fromm.y(), too.x(), too.y())
                    item.setPen(pen)
                    item.setZValue(3)
                    self.view.scene()._gridGroup.addToGroup(item)
                for lon in range(-180, 181, 10):
                    fromm = self.mapFromLonLat(QtCore.QPointF(lon, self.view.scene().map_upper_left[0]))
                    too = self.mapFromLonLat(QtCore.QPointF(lon, self.view.scene().map_lower_right[0]))
                    item = QtGui.QGraphicsLineItem(fromm.x(), fromm.y(), too.x(), too.y())
                    item.setPen(pen)
                    item.setZValue(3)
                    self.view.scene()._gridGroup.addToGroup(item)
            self.view.scene().show_grid = True
            self.view.scene()._gridGroup.setVisible(True)
            self.showGrid.setIcon(QtGui.QIcon(self.view.scene().check_icon))
            comment += 'On'
        self.view.emit(QtCore.SIGNAL('statusmsg'), comment)
项目:dxf2gcode    作者:cnc-club    | 项目源码 | 文件源码
def __init__(self, startItem, endItem, parent=None, scene=None):
        super(Arrow, self).__init__(parent, scene)

        self.arrowHead = QtGui.QPolygonF()

        self.myStartItem = startItem
        self.myEndItem = endItem
        self.setFlag(QtGui.QGraphicsItem.ItemIsSelectable, True)
        self.myColor = QtCore.Qt.black
        self.setPen(QtGui.QPen(self.myColor, 2, QtCore.Qt.SolidLine,
                QtCore.Qt.RoundCap, QtCore.Qt.RoundJoin))
项目:dxf2gcode    作者:cnc-club    | 项目源码 | 文件源码
def image(self):
        pixmap = QtGui.QPixmap(250, 250)
        pixmap.fill(QtCore.Qt.transparent)
        painter = QtGui.QPainter(pixmap)
        painter.setPen(QtGui.QPen(QtCore.Qt.black, 8))
        painter.translate(125, 125)
        painter.drawPolyline(self.myPolygon)
        return pixmap
项目:dxf2gcode    作者:cnc-club    | 项目源码 | 文件源码
def mousePressEvent(self, mouseEvent):
        if (mouseEvent.button() != QtCore.Qt.LeftButton):
            return

        if self.myMode == self.InsertItem:
            item = DiagramItem(self.myItemType, self.myItemMenu)
            item.setBrush(self.myItemColor)
            self.addItem(item)
            item.setPos(mouseEvent.scenePos())
            self.itemInserted.emit(item)
        elif self.myMode == self.InsertLine:
            self.line = QtGui.QGraphicsLineItem(QtCore.QLineF(mouseEvent.scenePos(),
                                        mouseEvent.scenePos()))
            self.line.setPen(QtGui.QPen(self.myLineColor, 2))
            self.addItem(self.line)
        elif self.myMode == self.InsertText:
            textItem = DiagramTextItem()
            textItem.setFont(self.myFont)
            textItem.setTextInteractionFlags(QtCore.Qt.TextEditorInteraction)
            textItem.setZValue(1000.0)
            textItem.lostFocus.connect(self.editorLostFocus)
            textItem.selectedChange.connect(self.itemSelected)
            self.addItem(textItem)
            textItem.setDefaultTextColor(self.myTextColor)
            textItem.setPos(mouseEvent.scenePos())
            self.textInserted.emit(textItem)

        super(DiagramScene, self).mousePressEvent(mouseEvent)
项目:ImgAnnotaPyQt4    作者:ZhengRui    | 项目源码 | 文件源码
def paintEvent(self, e):
        qp = QtGui.QPainter()
        qp.begin(self)
        pen = QtGui.QPen(QtGui.QColor(self.pencolor[0], self.pencolor[1], self.pencolor[2]), 4, QtCore.Qt.SolidLine) 
        qp.setPen(pen)
        qp.drawLine(10, 15, 45, 15)
        qp.end()

#if __name__ == '__main__':
#    app = QtGui.QApplication(sys.argv)
#    ex = QColorCellItem()
#    ex.show()
#    sys.exit(app.exec_())
项目:ImgAnnotaPyQt4    作者:ZhengRui    | 项目源码 | 文件源码
def __init__(self, parent=None):
        super(QStrokeRect, self).__init__(parent)
        self.strokeWidth = 4
        self.setPen(QtGui.QPen(QtGui.QColor(255, 0, 0), 4, QtCore.Qt.SolidLine))
        self.setFlags(QtGui.QGraphicsItem.ItemIsSelectable)
        self.cateid = None
项目:ImgAnnotaPyQt4    作者:ZhengRui    | 项目源码 | 文件源码
def initUI(self):
        self.setGeometry(300, 300, 500, 500)
        self.setWindowTitle('Select by stroke')
        self.gv = QTestView(self)
        self.gv.setMouseTracking(True)
        self.pen = QtGui.QPen(QtGui.QColor(255, 0, 0), 4, QtCore.Qt.SolidLine)
        self.gv.scene.addRect(QtCore.QRectF(0,0,400,400), self.pen)
        self.gv.scene.addItem(QStrokeRect(QtCore.QRectF(100,100,100,100)))
        self.gv.scene.addItem(QStrokeRect(QtCore.QRectF(150,150,100,100)))
项目:ImgAnnotaPyQt4    作者:ZhengRui    | 项目源码 | 文件源码
def setPen(self, penid):
        self.pen = QtGui.QPen(QtGui.QColor(int(255*self.cmap[penid][0]), int(255*self.cmap[penid][1]), int(255*self.cmap[penid][2])), self.penwidth, QtCore.Qt.SolidLine, QtCore.Qt.RoundCap, QtCore.Qt.RoundJoin)
        self.penid = penid
项目:ImgAnnotaPyQt4    作者:ZhengRui    | 项目源码 | 文件源码
def showBaseRects(self):
        for rect in self._baseRects:
            self._lstRect = QStrokeRect(QtCore.QRectF(rect[1], rect[2], rect[3], rect[4]))
            cateid = int(rect[0])
            self._lstRect.setPen(QtGui.QPen(QtGui.QColor(int(255*self.cmap[cateid][0]), int(255*self.cmap[cateid][1]), int(255*self.cmap[cateid][2])), self.penwidth, QtCore.Qt.SolidLine, QtCore.Qt.RoundCap, QtCore.Qt.RoundJoin))
            self._lstRect.cateid = cateid
            self._lstRect.setStrokeWidth(6)
            self.scene.addItem(self._lstRect)
项目:ML    作者:HustMLTeam    | 项目源码 | 文件源码
def drawBox(self):
        '''handle errors'''
        if not self.pixmap:
            self.showErrMsg('Please choose an image first!')
            return

        x, y, w, h = self.line_x.text(), self.line_y.text(), self.line_w.text(),\
            self.line_h.text()
        if not (x.isdigit() and y.isdigit() and w.isdigit() and h.isdigit()):
            self.showErrMsg('Please input integer!')
            return

        x, y, w, h = int(x), int(y), int(w), int(h)
        if not 0 <= x <= self.pixmap.width():
            self.showErrMsg('Value Error', 'x should be an integer between 0 and %d' 
                % self.pixmap.width())
        elif not 0 <= y <= self.pixmap.height():
            self.showErrMsg('Value Error', 'y should be an integer between 0 and %d'
                % self.pixmap.height())
        elif not 0 <= w <= (self.pixmap.width() - x):
            self.showErrMsg('Value Error', 'x + w should be an integer between 0 and %d'
                % self.pixmap.width())
        elif not 0 <= h <= (self.pixmap.height() - y):
            self.showErrMsg('Value Error', 'y + h should be an integer between 0 and %d'
                % self.pixmap.height())
        else:
            painter = QPainter()
            painter.begin(self.pixmap)
            pen = QPen(QtCore.Qt.red, 5, QtCore.Qt.SolidLine)
            painter.setPen(pen)
            painter.drawRect(x, y, w, h)
            painter.end()
            self.labelImage.setPixmap(self.pixmap)
项目:pyDashboard    作者:jtsmith2    | 项目源码 | 文件源码
def drawEvents(self, qp):

        pen = QtGui.QPen(QtCore.Qt.white, 1, QtCore.Qt.SolidLine)
        qp.setPen(pen)

        numOfCals = len(self.eventMasterList)
        eventWidth = int((self.width()-(60+numOfCals*10))/numOfCals)

        for counter, cal in enumerate(self.eventMasterList):
                qp.setBrush(self.colors[counter])
                for event in cal:
                        r = QtCore.QRect(60+counter*(eventWidth+10), 25+self.titleHeight+(self.height()-50-self.titleHeight)*event['relStart'], eventWidth, (self.height()-50-self.titleHeight)*event['relHeight'])
                        qp.drawRect(r)
                        qp.drawText(r.left()+5, r.top()+2, r.width()-5, r.height()-2, QtCore.Qt.TextWordWrap, event['summary'])
项目:picasso    作者:jungmannlab    | 项目源码 | 文件源码
def paintEvent(self, event):
        painter = QtGui.QPainter(self)
        color = QtGui.QColor(QtCore.Qt.blue)
        painter.setPen(QtGui.QPen(color))
        rect = event.rect()
        rect.setHeight(rect.height() - 1)
        rect.setWidth(rect.width() - 1)
        painter.drawRect(rect)
项目:picasso    作者:jungmannlab    | 项目源码 | 文件源码
def __init__(self, x, y, size, parent=None):
        super().__init__(parent)
        L = size/2
        line1 = QtGui.QGraphicsLineItem(x-L, y-L, x+L, y+L)
        line1.setPen(QtGui.QPen(QtGui.QColor(0, 255, 0)))
        self.addToGroup(line1)
        line2 = QtGui.QGraphicsLineItem(x-L, y+L, x+L, y-L)
        line2.setPen(QtGui.QPen(QtGui.QColor(0, 255, 0)))
        self.addToGroup(line2)
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self):
        pixmap = QtGui.QPixmap(16, 16)
        pixmap.fill(QtCore.Qt.transparent)
        qp = QtGui.QPainter(pixmap)
        qp.setRenderHints(QtGui.QPainter.Antialiasing)
        qp.setPen(QtGui.QPen(QtCore.Qt.black, 2))
        qp.translate(.5, .5)
        qp.drawLine(0, 4, 12, 14)
        qp.end()
        QtGui.QCursor.__init__(self, pixmap, 0, 0)
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self):
        pixmap = QtGui.QPixmap(16, 16)
        pixmap.fill(QtCore.Qt.transparent)
        qp = QtGui.QPainter(pixmap)
        qp.setRenderHints(QtGui.QPainter.Antialiasing)
        qp.setPen(QtGui.QPen(QtCore.Qt.black, 2))
        qp.translate(.5, .5)
        qp.drawArc(0, -7, 22, 22, 2880, 1440)
        qp.end()
        QtGui.QCursor.__init__(self, pixmap, 0, 0)
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self):
        pixmap = QtGui.QPixmap(12, 12)
        pixmap.fill(QtCore.Qt.transparent)
        qp = QtGui.QPainter(pixmap)
        qp.setRenderHints(QtGui.QPainter.Antialiasing)
        qp.setPen(QtGui.QPen(QtCore.Qt.black, 1))
        qp.translate(.5, .5)
        path = QtGui.QPainterPath()
        path.arcTo(0, -2.5, 5, 5, 180, 90)
        path.arcTo(0, 2.5, 8, 12.5, 90, -90)
        path.lineTo(11, 5)
        qp.drawPath(path)
        qp.end()
        QtGui.QIcon.__init__(self, pixmap)
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self):
        pixmap = QtGui.QPixmap(12, 12)
        pixmap.fill(QtCore.Qt.transparent)
        qp = QtGui.QPainter(pixmap)
        qp.setRenderHints(QtGui.QPainter.Antialiasing)
        qp.setPen(QtGui.QPen(QtCore.Qt.black, 1))
        qp.translate(.5, .5)
        qp.drawLine(0, 0, 11, 11)
        qp.end()
        QtGui.QIcon.__init__(self, pixmap)
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self):
        pixmap = QtGui.QPixmap(12, 12)
        pixmap.fill(QtCore.Qt.transparent)
        qp = QtGui.QPainter(pixmap)
        qp.setRenderHints(QtGui.QPainter.Antialiasing)
        qp.setPen(QtGui.QPen(QtCore.Qt.black, 1))
        qp.translate(.5, .5)
        qp.drawArc(0, -11, 22, 22, 2880, 1440)
        qp.end()
        QtGui.QIcon.__init__(self, pixmap)
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self):
        QtGui.QWidget.__init__(self)
        size = 24
        self.setFixedSize(size, size)
        self.pen_width = 5
        top = left = self.pen_width / 2.
        bottom = right = size - 1 - self.pen_width
        self.area = QtCore.QRectF(top, left, right, bottom)
        self.brush = QtGui.QConicalGradient(.5, .5, 0)
        self.brush.setCoordinateMode(QtGui.QConicalGradient.ObjectBoundingMode)
        self.brush.setColorAt(0, QtCore.Qt.darkGray)
        self.brush.setColorAt(1, QtCore.Qt.lightGray)
        self.pen = QtGui.QPen(self.brush, self.pen_width)

        self.loading_timer = QtCore.QTimer()
        self.loading_timer.setInterval(20)
        self.loading_timer.timeout.connect(self.rotate)
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self, note, text):
        KeyItem.__init__(self, note, text)
        self.font_pen = QtGui.QPen()
        self.paint = self.paint_white
        self.key_color = self.key_color_up
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self, parent=None, color=None, alpha=None, width=0, height=0, border=False, border_color=None, label='', label_pos=TOP):
        QtGui.QWidget.__init__(self, parent)
        if color is None:
            self.brush = QtGui.QColor(30, 35, 35, 200 if alpha is None else alpha)
        else:
            if len(color) == 4:
                self.brush = QtGui.QColor(*color)
            else:
                self.brush = QtGui.QColor(*color, a=200 if alpha is None else alpha)
        if not border:
            self.pen = QtCore.Qt.NoPen
        elif border_color is None:
            self.pen = QtGui.QPen(QtGui.QColor(40, 45, 45, 255), 1)
        else:
            self.pen = QtGui.QPen(QtGui.QColor(*border_color))
        if label:
            self.label = Label(self, label)
            self.label.setSizePolicy(QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Minimum)
            self.label.move(0, 0)
        else:
            self.label = None
        if width > 0:
            self.max_width = width
        else:
            self.max_width = None
        if height > 0:
            self.max_height = height
        else:
            self.max_height = None
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self, parent=None, *args):
        EnvelopeObject.__init__(self, parent, *args)
        self.resize(12, 12)
#        self.setFixedSize(20, 1)
        self.pen_normal = QtGui.QPen(QtCore.Qt.NoPen)
        self.pen_highlight = QtGui.QPen(QtGui.QColor(QtCore.Qt.red), 2)
        self.pen = self.pen_normal
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def paintEvent(self, e):
        qp = QtGui.QPainter()
        qp.begin(self)
        qp.setRenderHints(QtGui.QPainter.Antialiasing)
        qp.setPen(QtGui.QPen(self.border_grad, self.width()/30.))
        qp.setBrush(self.fill_grad)
        qp.drawEllipse(1, 1, self.width()-1, self.width()-1)
        qp.end()
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self, parent, short=False):
        BaseDisplayWidget.__init__(self, parent)
        self.pen = QtGui.QPen(self.pen)
        self.pen.setStyle(QtCore.Qt.DotLine)
        self.setSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Expanding)
        self.setMaximumWidth(3)
        if short:
            self.paint = self.paintShort
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self, height, color=QtGui.QColor(200, 200, 200)):
        QtGui.QGraphicsItem.__init__(self)
        self.rect.setHeight(height)
        self.pen = QtGui.QPen(QtCore.Qt.NoPen)
        self.brush = QtGui.QBrush(color)
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def __init__(self, *args, **kwargs):
        QtGui.QPushButton.__init__(self, *args, **kwargs)
        width = self.fontMetrics().lineSpacing() + self.getContentsMargins()[0] + 4

        self.setMinimumWidth(width)
        self.setMaximumWidth(width)
        disabled = QtGui.QPen(self.palette().color(QtGui.QPalette.Disabled, QtGui.QPalette.WindowText))
        enabled = QtGui.QPen(self.palette().color(QtGui.QPalette.Active, QtGui.QPalette.WindowText))
        self.text_colors = disabled, enabled
        self.text = ''
项目:Bigglesworth    作者:MaurizioB    | 项目源码 | 文件源码
def hoverEnterEvent(self, event):
        self.pen = QtGui.QPen(QtCore.Qt.red)
        self.brush = QtGui.QBrush(QtGui.QColor(255, 88, 88))
        self.update()