add SampleSketch class
This commit is contained in:
parent
e398a6e6c8
commit
edd8fd6107
43
SampleSketch.py
Normal file
43
SampleSketch.py
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
|
||||||
|
from Sketch import Sketch
|
||||||
|
from shapes import *
|
||||||
|
from constraints import *
|
||||||
|
|
||||||
|
class SampleSketch(Sketch):
|
||||||
|
def __init__(self):
|
||||||
|
Sketch.__init__(self)
|
||||||
|
|
||||||
|
l1 = Line(0, 1, 1, 1)
|
||||||
|
self.shapes.append(l1)
|
||||||
|
l2 = Line(1, 1, 1, 0)
|
||||||
|
self.shapes.append(l2)
|
||||||
|
l3 = Line(1, 0, 0, 0)
|
||||||
|
self.shapes.append(l3)
|
||||||
|
l4 = Line(0, 0, 0, 1)
|
||||||
|
self.shapes.append(l4)
|
||||||
|
c = Circle(0, 0, 0.3)
|
||||||
|
self.shapes.append(c)
|
||||||
|
l5 = Line(0, 0, 0, 0)
|
||||||
|
self.shapes.append(l5)
|
||||||
|
|
||||||
|
self.constraints.append(Horizontal(l1, 0, l1, 1))
|
||||||
|
self.constraints.append(Connect(l1, 1, l2, 0))
|
||||||
|
self.constraints.append(Vertical(l2, 0, l2, 1))
|
||||||
|
self.constraints.append(Connect(l2, 1, l3, 0))
|
||||||
|
self.constraints.append(Horizontal(l3, 0, l3, 1))
|
||||||
|
self.constraints.append(Connect(l3, 1, l4, 0))
|
||||||
|
self.constraints.append(Vertical(l4, 0, l4, 1))
|
||||||
|
self.constraints.append(Connect(l4, 1, l1, 0))
|
||||||
|
|
||||||
|
self.constraints.append(Connect(c, 1, l2, 0))
|
||||||
|
self.constraints.append(Horizontal(c, 4, l3, 1))
|
||||||
|
# self.constraints.append(Connect(c, 4, l3, 1))
|
||||||
|
|
||||||
|
self.constraints.append(XDistance(l1, 0, l1, 1, 1.2))
|
||||||
|
self.constraints.append(YDistance(l4, 0, l4, 1, 0.8))
|
||||||
|
|
||||||
|
self.constraints.append(XFix(l1, 0, 0))
|
||||||
|
self.constraints.append(YFix(l1, 0, 0))
|
||||||
|
|
||||||
|
self.constraints.append(Connect(l5, 0, l2, 1))
|
||||||
|
self.constraints.append(Connect(l5, 2, l1, 0))
|
44
Window.py
44
Window.py
@ -2,11 +2,9 @@
|
|||||||
import gtk
|
import gtk
|
||||||
|
|
||||||
from Sketch import Sketch
|
from Sketch import Sketch
|
||||||
|
from SampleSketch import SampleSketch
|
||||||
from SketchWidget import SketchWidget
|
from SketchWidget import SketchWidget
|
||||||
|
|
||||||
from shapes import *
|
|
||||||
from constraints import *
|
|
||||||
|
|
||||||
class Window:
|
class Window:
|
||||||
def __init__(self, title):
|
def __init__(self, title):
|
||||||
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
|
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
|
||||||
@ -15,45 +13,11 @@ class Window:
|
|||||||
self.window.connect("destroy", self.destroy_event)
|
self.window.connect("destroy", self.destroy_event)
|
||||||
self.window.connect("key-press-event", self.key_press_event)
|
self.window.connect("key-press-event", self.key_press_event)
|
||||||
|
|
||||||
s = Sketch()
|
ss = SampleSketch()
|
||||||
l1 = Line(0, 1, 1, 1)
|
|
||||||
s.shapes.append(l1)
|
|
||||||
l2 = Line(1, 1, 1, 0)
|
|
||||||
s.shapes.append(l2)
|
|
||||||
l3 = Line(1, 0, 0, 0)
|
|
||||||
s.shapes.append(l3)
|
|
||||||
l4 = Line(0, 0, 0, 1)
|
|
||||||
s.shapes.append(l4)
|
|
||||||
c = Circle(0, 0, 0.3)
|
|
||||||
s.shapes.append(c)
|
|
||||||
l5 = Line(0, 0, 0, 0)
|
|
||||||
s.shapes.append(l5)
|
|
||||||
|
|
||||||
s.constraints.append(Horizontal(l1, 0, l1, 1))
|
ss.solve()
|
||||||
s.constraints.append(Connect(l1, 1, l2, 0))
|
|
||||||
s.constraints.append(Vertical(l2, 0, l2, 1))
|
|
||||||
s.constraints.append(Connect(l2, 1, l3, 0))
|
|
||||||
s.constraints.append(Horizontal(l3, 0, l3, 1))
|
|
||||||
s.constraints.append(Connect(l3, 1, l4, 0))
|
|
||||||
s.constraints.append(Vertical(l4, 0, l4, 1))
|
|
||||||
s.constraints.append(Connect(l4, 1, l1, 0))
|
|
||||||
|
|
||||||
s.constraints.append(Connect(c, 1, l2, 0))
|
sw = SketchWidget(ss, self.window)
|
||||||
s.constraints.append(Horizontal(c, 4, l3, 1))
|
|
||||||
# s.constraints.append(Connect(c, 4, l3, 1))
|
|
||||||
|
|
||||||
s.constraints.append(XDistance(l1, 0, l1, 1, 1.2))
|
|
||||||
s.constraints.append(YDistance(l4, 0, l4, 1, 0.8))
|
|
||||||
|
|
||||||
s.constraints.append(XFix(l1, 0, 0))
|
|
||||||
s.constraints.append(YFix(l1, 0, 0))
|
|
||||||
|
|
||||||
s.constraints.append(Connect(l5, 0, l2, 1))
|
|
||||||
s.constraints.append(Connect(l5, 2, l1, 0))
|
|
||||||
|
|
||||||
s.solve()
|
|
||||||
|
|
||||||
sw = SketchWidget(s, self.window)
|
|
||||||
|
|
||||||
self.statusbar = gtk.Statusbar()
|
self.statusbar = gtk.Statusbar()
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user