Dibujando una línea que consiste en múltiples puntos usando PyQt
Quiero dibujar una línea que consta de varios puntos a través del clic del ratón en un script de Python utilizando PyQt. Necesito todas las coordenadas de los ponts y quiero poder eliminar la línea. Aquí está mi script haciendo todo el trabajo, excepto por el dibujo de líneas gráfico, que simplemente imprime lo que hace:
#!/usr/bin/python3
import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
class endomess(QMainWindow):
def __init__(self):
QMainWindow.__init__(self)
self.draw = False
def mousePressEvent(self, event):
if event.button() == Qt.LeftButton:
if self.draw == False:
print('Starting to draw at', str(event.pos()))
self.draw = True
self.linePoints = []
elif self.draw == True:
print('Appending', str(event.pos()))
self.linePoints.append(event.pos())
elif event.button() == Qt.RightButton:
if self.draw == True:
print('Finished drawing. List of all points:', str(self.linePoints))
self.draw = False
def main(argv):
app = QApplication(argv, True)
wnd = endomess()
wnd.show()
sys.exit(app.exec_())
if __name__ == "__main__":
main(sys.argv)
Entonces, aquí está mi problema: ¿cómo dibujar esa línea que se puede definir a través del script anterior? Ya eché un vistazo a scribble.py y algunos documentos de Qt paint, pero no lo entiendo. Probablemente, esto no es un problema para alguien con más experiencia con Qt?
¡Gracias de antemano por toda la ayuda!