def drawScale(self, painter, center, radius, origin, minArc, maxArc): dir = (360.0 - origin) * math.pi / 180.0 offset = 4 p0 = Qwt.qwtPolar2Pos(center, offset, dir + math.pi) w = self.contentsRect().width() # clip region to swallow 180 - 360 degrees pa = [] pa.append(Qwt.qwtPolar2Pos(p0, w, dir - math.pi / 2)) pa.append(Qwt.qwtPolar2Pos(pa[-1], 2 * w, dir + math.pi / 2)) pa.append(Qwt.qwtPolar2Pos(pa[-1], w, dir)) pa.append(Qwt.qwtPolar2Pos(pa[-1], 2 * w, dir - math.pi / 2)) painter.save() #setclipregion asigna una area de dibujado, lo que este fuera de esta area no se dibuja , si es un circulo, todo lo que este #fuera del circulo no se dibujara painter.setClipRegion(Qt.QRegion(Qt.QPolygon(pa))) Qwt.QwtDial.drawScale(self, painter, center, radius, origin, minArc, maxArc) painter.restore()
def drawScale(self, painter, center, radius, origin, minArc, maxArc): dir = (360.0 - origin) * math.pi / 180.0 offset = 4 p0 = Qwt.qwtPolar2Pos(center, offset, dir + math.pi) w = self.contentsRect().width() # clip region to swallow 180 - 360 degrees pa = [] pa.append(Qwt.qwtPolar2Pos(p0, w, dir - math.pi/2)) pa.append(Qwt.qwtPolar2Pos(pa[-1], 2 * w, dir + math.pi/2)) pa.append(Qwt.qwtPolar2Pos(pa[-1], w, dir)) pa.append(Qwt.qwtPolar2Pos(pa[-1], 2 * w, dir - math.pi/2)) painter.save() #setclipregion asigna una area de dibujado, lo que este fuera de esta area no se dibuja , si es un circulo, todo lo que este #fuera del circulo no se dibujara painter.setClipRegion(Qt.QRegion(Qt.QPolygon(pa))) Qwt.QwtDial.drawScale( self, painter, center, radius, origin, minArc, maxArc) painter.restore()
def drawScale(self, painter, center, radius, origin, minArc, maxArc): dir = (360.0 - origin) * math.pi / 180.0 offset = 4 p0 = Qwt.qwtPolar2Pos(center, offset, dir + math.pi) w = self.contentsRect().width() # clip region to swallow 180 - 360 degrees pa = [] pa.append(Qwt.qwtPolar2Pos(p0, w, dir - math.pi / 2)) pa.append(Qwt.qwtPolar2Pos(pa[-1], 2 * w, dir + math.pi / 2)) pa.append(Qwt.qwtPolar2Pos(pa[-1], w, dir)) pa.append(Qwt.qwtPolar2Pos(pa[-1], 2 * w, dir - math.pi / 2)) painter.save() painter.setClipRegion(Qt.QRegion(Qt.QPolygon(pa))) Qwt.QwtDial.drawScale(self, painter, center, radius, origin, minArc, maxArc) painter.restore()
def drawScale(self, painter, center, radius, origin, minArc, maxArc): dir = (360.0 - origin) * math.pi / 180.0 offset = 4 p0 = Qwt.qwtPolar2Pos(center, offset, dir + math.pi) w = self.contentsRect().width() # clip region to swallow 180 - 360 degrees pa = [] pa.append(Qwt.qwtPolar2Pos(p0, w, dir - math.pi/2)) pa.append(Qwt.qwtPolar2Pos(pa[-1], 2 * w, dir + math.pi/2)) pa.append(Qwt.qwtPolar2Pos(pa[-1], w, dir)) pa.append(Qwt.qwtPolar2Pos(pa[-1], 2 * w, dir - math.pi/2)) painter.save() painter.setClipRegion(Qt.QRegion(Qt.QPolygon(pa))) Qwt.QwtDial.drawScale( self, painter, center, radius, origin, minArc, maxArc) painter.restore()
def draw(self, painter, center, length, direction, cg): direction *= math.pi / 180.0 triangleSize = int(round(length * 0.1)) painter.save() p0 = Qt.QPoint(center.x() + 1, center.y() + 1) p1 = Qwt.qwtPolar2Pos(p0, length - 2 * triangleSize - 2, direction) pa = Qt.QPolygon([ Qwt.qwtPolar2Pos(p1, 2 * triangleSize, direction), Qwt.qwtPolar2Pos(p1, triangleSize, direction + math.pi / 2), Qwt.qwtPolar2Pos(p1, triangleSize, direction - math.pi / 2), ]) color = self.palette().color(cg, Qt.QPalette.Text) painter.setBrush(color) painter.drawPolygon(pa) painter.setPen(Qt.QPen(color, 3)) painter.drawLine( Qwt.qwtPolar2Pos(p0, length - 2, direction + math.pi / 2), Qwt.qwtPolar2Pos(p0, length - 2, direction - math.pi / 2)) painter.restore()
def draw(self, painter, center, length, direction, cg): direction *= math.pi / 180.0 triangleSize = int(round(length * 0.1)) painter.save() p0 = Qt.QPoint(center.x() + 1, center.y() + 1) p1 = Qwt.qwtPolar2Pos(p0, length - 2 * triangleSize - 2, direction) pa = Qt.QPolygon([ Qwt.qwtPolar2Pos(p1, 2 * triangleSize, direction), Qwt.qwtPolar2Pos(p1, triangleSize, direction + math.pi/2), Qwt.qwtPolar2Pos(p1, triangleSize, direction - math.pi/2), ]) color = self.palette().color(cg, Qt.QPalette.Text) painter.setBrush(color) painter.drawPolygon(pa) painter.setPen(Qt.QPen(color, 3)) painter.drawLine( Qwt.qwtPolar2Pos(p0, length - 2, direction + math.pi/2), Qwt.qwtPolar2Pos(p0, length - 2, direction - math.pi/2)) painter.restore()