pyqtgraph/examples/Draw.py

50 lines
1.1 KiB
Python
Raw Normal View History

2010-11-22 03:50:04 +00:00
# -*- coding: utf-8 -*-
2013-02-25 04:09:03 +00:00
"""
Demonstrate ability of ImageItem to be used as a canvas for painting with
the mouse.
"""
2012-03-17 15:47:20 +00:00
import initExample ## Add path to library (just for examples; you do not need this)
2010-11-22 03:50:04 +00:00
2012-03-02 03:58:02 +00:00
from pyqtgraph.Qt import QtCore, QtGui
2010-11-22 03:50:04 +00:00
import numpy as np
import pyqtgraph as pg
2010-11-22 03:50:04 +00:00
app = QtGui.QApplication([])
## Create window with GraphicsView widget
w = pg.GraphicsView()
w.show()
w.resize(800,800)
2013-02-25 04:09:03 +00:00
w.setWindowTitle('pyqtgraph example: Draw')
view = pg.ViewBox()
w.setCentralItem(view)
## lock the aspect ratio
2010-11-22 03:50:04 +00:00
view.setAspectLocked(True)
## Create image item
img = pg.ImageItem(np.zeros((200,200)))
view.addItem(img)
2010-11-22 03:50:04 +00:00
## Set initial view bounds
view.setRange(QtCore.QRectF(0, 0, 200, 200))
## start drawing with 3x3 brush
kern = np.array([
[0.0, 0.5, 0.0],
[0.5, 1.0, 0.5],
[0.0, 0.5, 0.0]
])
img.setDrawKernel(kern, mask=kern, center=(1,1), mode='add')
img.setLevels([0, 10])
2010-11-22 03:50:04 +00:00
2012-03-17 15:47:20 +00:00
## Start Qt event loop unless running in interactive mode or using pyside.
if __name__ == '__main__':
import sys
if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'):
QtGui.QApplication.instance().exec_()