Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/simplecairodraw.py
diff options
context:
space:
mode:
authorGonzalo Odiard <godiard@gmail.com>2014-09-12 21:04:47 (GMT)
committer Gonzalo Odiard <godiard@gmail.com>2014-09-12 21:04:47 (GMT)
commite40924288954679b718fe000c51a29c2e398a148 (patch)
treee3604c929c464387fc5fca44b68a91ceb9cb28bc /simplecairodraw.py
parent566ee052c69ca02427f2874b5bc19e8577dd6b0f (diff)
Many more tests
Diffstat (limited to 'simplecairodraw.py')
-rw-r--r--simplecairodraw.py54
1 files changed, 54 insertions, 0 deletions
diff --git a/simplecairodraw.py b/simplecairodraw.py
new file mode 100644
index 0000000..9b87aeb
--- /dev/null
+++ b/simplecairodraw.py
@@ -0,0 +1,54 @@
+#!/usr/bin/python
+
+# ZetCode PyGTK tutorial
+#
+# This code example draws basic shapes
+# with the cairo library
+#
+# author: jan bodnar
+# website: zetcode.com
+# last edited: February 2009
+
+import gtk
+import math
+
+class PyApp(gtk.Window):
+
+ def __init__(self):
+ super(PyApp, self).__init__()
+
+ self.set_title("Basic shapes")
+ self.set_size_request(390, 240)
+ self.set_position(gtk.WIN_POS_CENTER)
+
+ self.connect("destroy", gtk.main_quit)
+
+ darea = gtk.DrawingArea()
+ darea.connect("expose-event", self.expose)
+ self.add(darea)
+
+ self.show_all()
+
+ def expose(self, widget, event):
+
+ cr = widget.window.cairo_create()
+ cr.set_source_rgb(0.6, 0.6, 0.6)
+
+ cr.rectangle(20, 20, 120, 80)
+ cr.rectangle(180, 20, 80, 80)
+ cr.fill()
+
+ cr.arc(330, 60, 40, 0, 2*math.pi)
+ cr.fill()
+
+ cr.arc(90, 160, 40, math.pi/4, math.pi)
+ cr.fill()
+
+ cr.translate(220, 180)
+ cr.scale(1, 0.7)
+ cr.arc(0, 0, 50, 0, 2*math.pi)
+ cr.fill()
+
+
+PyApp()
+gtk.main()