Remove the Edges instances form the Boxes name space.

Move over all generators to use Boxes.edges.
This commit is contained in:
Florian Festi 2016-04-02 20:52:27 +02:00
parent 7b0129b2b1
commit 0399bafe1b
8 changed files with 38 additions and 37 deletions

View File

@ -217,9 +217,10 @@ class Boxes:
name = part.__class__.__name__
name = name[0].lower() + name[1:]
#if not hasattr(self, name):
setattr(self, name, part)
if isinstance(part, edges.Edge):
self.edges[part.char] = part
else:
setattr(self, name, part)
def _buildObjects(self):
"""Add default edges and parts """
@ -884,35 +885,35 @@ class Boxes:
"""
overallwidth = x+2*self.fingerJointEdge.spacing()
overallheight = y+2*self.fingerJointEdge.spacing()
overallwidth = x+2*self.edges["f"].spacing()
overallheight = y+2*self.edges["f"].spacing()
if self.move(overallwidth, overallheight, move, before=True):
return
self.ctx.save()
self.moveTo(self.fingerJointEdge.margin(),
self.fingerJointEdge.margin())
self.moveTo(self.edges["f"].margin(),
self.edges["f"].margin())
self.moveTo(r, 0)
self.cc(callback, 0)
self.fingerJointEdge(x/2.0-r, bedBolts=self.getEntry(bedBolts, 0),
self.edges["f"](x/2.0-r, bedBolts=self.getEntry(bedBolts, 0),
bedBoltSettings=self.getEntry(bedBoltSettings, 0))
self.cc(callback, 1)
self.fingerJointEdge(x/2.0-r, bedBolts=self.getEntry(bedBolts, 1),
self.edges["f"](x/2.0-r, bedBolts=self.getEntry(bedBolts, 1),
bedBoltSettings=self.getEntry(bedBoltSettings, 1))
for i, l in zip(range(3), (y, x, y)):
self.corner(90, r)
self.cc(callback, i+2)
self.fingerJointEdge(l-2*r, bedBolts=self.getEntry(bedBolts, i+2),
self.edges["f"](l-2*r, bedBolts=self.getEntry(bedBolts, i+2),
bedBoltSettings=self.getEntry(bedBoltSettings, i+2))
self.corner(90, r)
self.ctx.restore()
self.ctx.save()
self.moveTo(self.fingerJointEdge.margin(),
self.fingerJointEdge.margin())
self.moveTo(self.edges["f"].margin(),
self.edges["f"].margin())
if holesMargin is not None:
self.moveTo(holesMargin, holesMargin)
@ -974,13 +975,13 @@ class Boxes:
self.cc(callback, 0, y=bottomwidth+self.burn)
bottom(x/2.0-r)
if (y-2*r) < 1E-3:
self.flexEdge(2*c4, h+topwidth+bottomwidth)
self.edges["X"](2*c4, h+topwidth+bottomwidth)
self.cc(callback, 2, y=bottomwidth+self.burn)
bottom(x-2*r)
self.flexEdge(2*c4, h+topwidth+bottomwidth)
self.edges["X"](2*c4, h+topwidth+bottomwidth)
else:
for i, l in zip(range(4), (y, x, y, 0)):
self.flexEdge(c4, h+topwidth+bottomwidth)
self.edges["X"](c4, h+topwidth+bottomwidth)
self.cc(callback, i+1, y=bottomwidth+self.burn)
if i < 3:
bottom(l-2*r)

View File

@ -31,7 +31,7 @@ class FlexBox(boxes.Boxes):
self.moveTo(r, 0)
for i, l in zip(range(2), (x, y)):
self.cc(callback, i)
self.fingerJointEdge(l-2*r)
self.edges["f"](l-2*r)
self.corner(90, r)
self.cc(callback, 2)
self.edge(x-2*r)
@ -39,7 +39,7 @@ class FlexBox(boxes.Boxes):
self.cc(callback, 3)
self.latch(self.latchsize)
self.cc(callback, 4)
self.fingerJointEdge(y-2*r-self.latchsize)
self.edges["f"](y-2*r-self.latchsize)
self.corner(90, r)
def surroundingWall(self):
@ -48,13 +48,13 @@ class FlexBox(boxes.Boxes):
c4 = math.pi * r * 0.5
self.edges["F"](y-2*r-self.latchsize, False)
self.flexEdge(c4, h+2*self.thickness)
self.edges["X"](c4, h+2*self.thickness)
self.edges["F"](x-2*r, False)
self.flexEdge(c4, h+2*self.thickness)
self.edges["X"](c4, h+2*self.thickness)
self.edges["F"](y-2*r, False)
self.flexEdge(c4, h+2*self.thickness)
self.edges["X"](c4, h+2*self.thickness)
self.edge(x-2*r)
self.flexEdge(c4, h+2*self.thickness)
self.edges["X"](c4, h+2*self.thickness)
self.latch(self.latchsize, False)
self.edge(h+2*self.thickness)
self.latch(self.latchsize, False, True)

View File

@ -29,10 +29,10 @@ class FlexBox(Boxes):
@restore
def flexBoxSide(self, x, y, r, callback=None):
self.cc(callback, 0)
self.fingerJointEdge(x)
self.edges["f"](x)
self.corner(90, 0)
self.cc(callback, 1)
self.fingerJointEdge(y-r)
self.edges["f"](y-r)
self.corner(90, r)
self.cc(callback, 2)
self.edge(x-2*r)
@ -40,7 +40,7 @@ class FlexBox(Boxes):
self.cc(callback, 3)
self.latch(self.latchsize)
self.cc(callback, 4)
self.fingerJointEdge(y-r-self.latchsize)
self.edges["f"](y-r-self.latchsize)
self.corner(90)
def surroundingWall(self):
@ -48,11 +48,11 @@ class FlexBox(Boxes):
self.edges["F"](y-r, False)
if (x-2*r < 0.1):
self.flexEdge(2*self.c4, h+2*self.thickness)
self.edges["X"](2*self.c4, h+2*self.thickness)
else:
self.flexEdge(self.c4, h+2*self.thickness)
self.edges["X"](self.c4, h+2*self.thickness)
self.edge(x-2*r)
self.flexEdge(self.c4, h+2*self.thickness)
self.edges["X"](self.c4, h+2*self.thickness)
self.latch(self.latchsize, False)
self.edge(h+2*self.thickness)
self.latch(self.latchsize, False, True)

View File

@ -63,7 +63,7 @@ class FlexBox(Boxes):
x, y, z, r, d = self.x, self.y, self.z, self.radius, self.d
self.edges["F"](y-r, False)
self.flexEdge(self.c4, z+2*self.thickness)
self.edges["X"](self.c4, z+2*self.thickness)
self.corner(-90)
self.edge(d)
self.corner(90)

View File

@ -34,7 +34,7 @@ class Folder(Boxes):
self.open(width=2*x+3*h+20, height=y+20)
self.moveTo(r+self.thickness, self.thickness)
self.edge(x-r)
self.flexEdge(c2, y)
self.edges["X"](c2, y)
self.edge(x-r)
self.corner(90, r)
self.edge(y-2*r)

View File

@ -61,11 +61,11 @@ class Lamp(Boxes):
def side(self, y, h):
return
self.fingerJointEdge(y)
self.edges["f"](y)
self.corner(90)
self.fingerJointEdge(h)
self.edges["f"](h)
self.roundedTriangle(y, 75, 25)
self.fingerJointEdge(h)
self.edges["f"](h)
self.corner(90)
def render(self, r, w, x, y, h):
@ -79,14 +79,14 @@ class Lamp(Boxes):
self.open(width=1000, height=1000)
self.fingerJointSettings = (5, 5) # XXX
#self.edges["f"].settings = (5, 5) # XXX
s = RoundedTriangleSettings(self.thickness, angle=72, r_hole=2)
self.addPart(RoundedTriangle(self, s))
self.flexSettings = (3, 5.0, 20.0)
self.fingerJointEdge.settings.setValues(self.thickness, finger=5, space=5, relative=False)
self.edges["f"].settings.setValues(self.thickness, finger=5, space=5, relative=False)
d = 2*(r+w)
self.roundedPlate(d, d, r, move="right", callback=[

View File

@ -45,24 +45,24 @@ using flex for rounded corners"""
def centerWall(self, x, h):
self.ctx.save()
self.moveTo(self.fingerJointEdge.spacing(), self.fingerJointEdge.spacing())
self.moveTo(self.edges["f"].spacing(), self.edges["f"].spacing())
for i in range(2, 5):
self.fingerHolesAt(i*x/6.0, 0, h-10)
self.fingerJointEdge(x)
self.edges["f"](x)
self.corner(90)
self.fingerJointEdge(h-10)
self.edges["f"](h-10)
self.corner(90)
self.handle(x, 150, 120)
#self.handle(x, 40, 30, r=2)
self.corner(90)
self.fingerJointEdge(h-10)
self.edges["f"](h-10)
self.corner(90)
self.ctx.restore()
self.moveTo(x+2*self.fingerJointEdge.spacing())
self.moveTo(x+2*self.edges["f"].spacing())
##################################################
### main

Binary file not shown.