Add labels to boxes
Added labels to AngledBox, BasedBox, ClosedBox, Console2, DinRailBox, DisplayCase and ElectronicsBox
This commit is contained in:
parent
6238903237
commit
c0eca5ea5f
|
@ -35,7 +35,7 @@ class AngledBox(Boxes):
|
|||
choices=["none", "angled hole", "angled lid", "angled lid2"],
|
||||
help="style of the top and lid")
|
||||
|
||||
def floor(self, x, y, n, edge='e', hole=None, move=None, callback=None):
|
||||
def floor(self, x, y, n, edge='e', hole=None, move=None, callback=None, label=""):
|
||||
r, h, side = self.regularPolygon(2*n+2, h=y/2.0)
|
||||
t = self.thickness
|
||||
|
||||
|
@ -70,7 +70,7 @@ class AngledBox(Boxes):
|
|||
edge(l)
|
||||
self.edgeCorner(edge, edge, 360.0/(2*n + 2))
|
||||
|
||||
self.move(tx, ty, move)
|
||||
self.move(tx, ty, move, label=label)
|
||||
|
||||
def render(self):
|
||||
|
||||
|
@ -108,36 +108,41 @@ class AngledBox(Boxes):
|
|||
|
||||
with self.saved_context():
|
||||
if b != "e":
|
||||
self.floor(x, y , n, edge='f', move="right")
|
||||
self.floor(x, y , n, edge='f', move="right", label="Bottom")
|
||||
if self.top == "angled lid":
|
||||
self.floor(x, y, n, edge='e', move="right")
|
||||
self.floor(x, y, n, edge='E', move="right")
|
||||
self.floor(x, y, n, edge='e', move="right", label="Lower Lid")
|
||||
self.floor(x, y, n, edge='E', move="right", label="Upper Lid")
|
||||
elif self.top in ("angled hole", "angled lid2"):
|
||||
self.floor(x, y, n, edge='F', move="right", hole=True)
|
||||
self.floor(x, y, n, edge='F', move="right", hole=True, label="Top Rim and Lid")
|
||||
if self.top == "angled lid2":
|
||||
self.floor(x, y, n, edge='E', move="right")
|
||||
self.floor(x, y, n, edge='E', move="right", label="Upper Lid")
|
||||
self.floor(x, y , n, edge='F', move="up only")
|
||||
|
||||
fingers = self.top in ("angled lid2", "angled hole")
|
||||
|
||||
self.rectangularWall(lx, h, move="right",
|
||||
edges=b+"GfG" if fingers else b+"GeG")
|
||||
edges=b+"GfG" if fingers else b+"GeG",
|
||||
label="wall {}".format(1))
|
||||
|
||||
for i in range(2):
|
||||
for j in range(2):
|
||||
for i in range(n):
|
||||
if i % 2:
|
||||
self.rectangularWall(side, h, move="right",
|
||||
edges=b+"GfG" if fingers else b+"GeG")
|
||||
edges=b+"GfG" if fingers else b+"GeG",
|
||||
label="wall {}".format(i+2+j*(n+1)))
|
||||
else:
|
||||
self.rectangularWall(side, h, move="right",
|
||||
edges=b+"gfg" if fingers else b+"geg")
|
||||
edges=b+"gfg" if fingers else b+"geg",
|
||||
label="wall {}".format(i+2+j*(n+1)))
|
||||
|
||||
if i % 2:
|
||||
if n % 2:
|
||||
self.rectangularWall(lx, h, move="right",
|
||||
edges=b+"gfg" if fingers else b+"geg")
|
||||
edges=b+"GfG" if fingers else b+"GeG",
|
||||
label="wall {}".format(n+2))
|
||||
else:
|
||||
self.rectangularWall(lx, h, move="right",
|
||||
edges=b+"GfG" if fingers else b+"GeG")
|
||||
edges=b+"gfg" if fingers else b+"geg",
|
||||
label="wall {}".format(n+2))
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -46,13 +46,13 @@ See ClosedBox for variant without a base.
|
|||
|
||||
t = self.thickness
|
||||
|
||||
self.rectangularWall(x, h, "fFFF", move="right")
|
||||
self.rectangularWall(y, h, "ffFf", move="up")
|
||||
self.rectangularWall(y, h, "ffFf")
|
||||
self.rectangularWall(x, h, "fFFF", move="left up")
|
||||
self.rectangularWall(x, h, "fFFF", move="right", label="Wall 1")
|
||||
self.rectangularWall(y, h, "ffFf", move="up", label="Wall 2")
|
||||
self.rectangularWall(y, h, "ffFf", label="Wall 4")
|
||||
self.rectangularWall(x, h, "fFFF", move="left up", label="Wall 3")
|
||||
|
||||
self.rectangularWall(x, y, "ffff", move="right")
|
||||
self.rectangularWall(x, y, "hhhh")
|
||||
self.rectangularWall(x, y, "ffff", move="right", label="Top")
|
||||
self.rectangularWall(x, y, "hhhh", label="Base")
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -49,13 +49,13 @@ See BasedBox for variant with a base."""
|
|||
|
||||
d2 = d3 = None
|
||||
|
||||
self.rectangularWall(x, h, "FFFF", bedBolts=[d2] * 4, move="right")
|
||||
self.rectangularWall(y, h, "FfFf", bedBolts=[d3, d2, d3, d2], move="up")
|
||||
self.rectangularWall(y, h, "FfFf", bedBolts=[d3, d2, d3, d2])
|
||||
self.rectangularWall(x, h, "FFFF", bedBolts=[d2] *4, move="left up")
|
||||
self.rectangularWall(x, h, "FFFF", bedBolts=[d2] * 4, move="right", label="Wall 1")
|
||||
self.rectangularWall(y, h, "FfFf", bedBolts=[d3, d2, d3, d2], move="up", label="Wall 2")
|
||||
self.rectangularWall(y, h, "FfFf", bedBolts=[d3, d2, d3, d2], label="Wall 4")
|
||||
self.rectangularWall(x, h, "FFFF", bedBolts=[d2] *4, move="left up", label="Wall 3")
|
||||
|
||||
self.rectangularWall(x, y, "ffff", bedBolts=[d2, d3, d2, d3], move="right")
|
||||
self.rectangularWall(x, y, "ffff", bedBolts=[d2, d3, d2, d3])
|
||||
self.rectangularWall(x, y, "ffff", bedBolts=[d2, d3, d2, d3], move="right", label="Top")
|
||||
self.rectangularWall(x, y, "ffff", bedBolts=[d2, d3, d2, d3], label="Bottom")
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -190,7 +190,7 @@ To remove the panel you have to press in the four tabs at the side. It is easies
|
|||
|
||||
self.move(tw, th, move)
|
||||
|
||||
def side(self, borders, bottom="s", move=None):
|
||||
def side(self, borders, bottom="s", move=None, label=""):
|
||||
|
||||
t = self.thickness
|
||||
bottom = self.edges.get(bottom, bottom)
|
||||
|
@ -230,7 +230,7 @@ To remove the panel you have to press in the four tabs at the side. It is easies
|
|||
self.edges["f"](borders[-2]+bottom.startwidth())
|
||||
self.corner(borders[-1])
|
||||
|
||||
self.move(tw, th, move)
|
||||
self.move(tw, th, move, label=label)
|
||||
|
||||
def render(self):
|
||||
x, y, h = self.x, self.y, self.h
|
||||
|
@ -248,42 +248,41 @@ To remove the panel you have to press in the four tabs at the side. It is easies
|
|||
self.latchpos = latchpos = 6*t
|
||||
|
||||
borders = self.borders()
|
||||
self.side(borders, bottom, move="right")
|
||||
self.side(borders, bottom, move="right")
|
||||
self.side(borders, bottom, move="right", label="Left Side")
|
||||
self.side(borders, bottom, move="right", label="Right Side")
|
||||
|
||||
self.rectangularWall(borders[0], x, "ffff", move="right") # floor
|
||||
self.rectangularWall( #front
|
||||
self.rectangularWall(borders[0], x, "ffff", move="right", label="Floor")
|
||||
self.rectangularWall(
|
||||
borders[2]-d1, x, ("F", "e", "F", bottom), ignore_widths=[7, 4],
|
||||
move="right")
|
||||
move="right", label="Front")
|
||||
|
||||
# panel
|
||||
if self.glued_panel:
|
||||
self.rectangularWall(borders[4], x, "EEEE", move="right")
|
||||
self.rectangularWall(borders[4], x, "EEEE", move="right", label="Panel")
|
||||
elif self.removable_panel:
|
||||
self.rectangularWall(borders[4], x-2*t, "hEhE", move="right")
|
||||
self.rectangularWall(borders[4], x-2*t, "hEhE", move="right", label="Panel")
|
||||
else:
|
||||
self.rectangularWall(borders[4], x, "FEFE", move="right")
|
||||
self.rectangularWall(borders[4], x, "FEFE", move="right", label="Panel")
|
||||
|
||||
if len(borders) == 10: # top
|
||||
self.rectangularWall(borders[6]-d2, x, "FEFe", move="right")
|
||||
if len(borders) == 10:
|
||||
self.rectangularWall(borders[6]-d2, x, "FEFe", move="right", label="Top")
|
||||
|
||||
if self.removable_backwall:
|
||||
self.rectangularWall( # back wall
|
||||
self.rectangularWall(
|
||||
borders[-2]-1.05*t, x, "EeEe",
|
||||
callback=[
|
||||
lambda:self.latch_hole(latchpos),
|
||||
lambda: self.fingerHolesAt(.5*t, 0, borders[-2]-4.05*t-latchpos),
|
||||
lambda:self.latch_hole(borders[-2]-1.2*t-latchpos),
|
||||
lambda: self.fingerHolesAt(.5*t, 3.05*t+latchpos, borders[-2]-4.05*t-latchpos)],
|
||||
move="right")
|
||||
self.rectangularWall(2*t, borders[-2]-4.05*t-latchpos, "EeEf", move="right")
|
||||
self.rectangularWall(2*t, borders[-2]-4.05*t-latchpos, "EeEf", move="right")
|
||||
# backwall bottom
|
||||
move="right",
|
||||
label="Back Wall")
|
||||
self.rectangularWall(2*t, borders[-2]-4.05*t-latchpos, "EeEf", move="right", label="Guide")
|
||||
self.rectangularWall(2*t, borders[-2]-4.05*t-latchpos, "EeEf", move="right", label="Guide")
|
||||
self.rectangularWall(t, x, ("F", bottom, "F", "e"),
|
||||
ignore_widths=[0, 3], move="right")
|
||||
ignore_widths=[0, 3], move="right", label="Bottom Back")
|
||||
else:
|
||||
self.rectangularWall(borders[-2], x, ("F", bottom, "F", "e"),
|
||||
ignore_widths=[0, 3], move="right")
|
||||
ignore_widths=[0, 3], move="right", label="Back Wall")
|
||||
|
||||
# hardware for panel
|
||||
if self.removable_panel:
|
||||
|
|
|
@ -110,34 +110,38 @@ class DinRailBox(Boxes):
|
|||
o = self.rail_offset
|
||||
t = self.thickness
|
||||
|
||||
# lid
|
||||
self.rectangularWall(x, y, "EEEE", callback=[
|
||||
lambda:self.fingerHolesAt(.55*t, .05*t, y-.1*t, 90), None,
|
||||
lambda:self.fingerHolesAt(.55*t, .05*t, y-.1*t, 90), None],
|
||||
move="right")
|
||||
move="right", label="Front")
|
||||
|
||||
self.lid_lip(y-.1*t, move="rotated right")
|
||||
self.lid_lip(y-.1*t, move="rotated right")
|
||||
# floor
|
||||
|
||||
self.rectangularWall(x, y, "ffff",
|
||||
callback=[
|
||||
lambda:self.fingerHolesAt(0, (y-w)/2-0.5*t+o-9, x, 0)],move="right")
|
||||
lambda:self.fingerHolesAt(0, (y-w)/2-0.5*t+o-9, x, 0)],
|
||||
move="right", label="Back")
|
||||
|
||||
# Change h edge to 8mm!
|
||||
self.edges["f"].settings.setValues(t, False, edge_width=8)
|
||||
dr = DinRailEdge(self, self.edges["f"].settings, w, o)
|
||||
|
||||
self.rectangularWall(y, h, [dr, "F", "e", "F"],
|
||||
ignore_widths=[1, 6], move="rotated right")
|
||||
ignore_widths=[1, 6], move="rotated right",
|
||||
label="Left Side")
|
||||
self.rectangularWall(y, h, [dr, "F", "e", "F"],
|
||||
ignore_widths=[1, 6], move="rotated mirror right")
|
||||
ignore_widths=[1, 6], move="rotated mirror right",
|
||||
label="Right Side")
|
||||
self.rectangularWall(x, h, ["h", "f", "e", "f"],
|
||||
callback=[None, None, self.lid_holes],
|
||||
ignore_widths=[1, 6], move="up")
|
||||
ignore_widths=[1, 6], move="up",
|
||||
label="Bottom")
|
||||
self.rectangularWall(x, h, ["h", "f", "e", "f"],
|
||||
ignore_widths=[1, 6], callback=[
|
||||
self.spring, None, self.lid_holes],
|
||||
move="up")
|
||||
move="up",
|
||||
label="Top")
|
||||
|
||||
|
||||
self.rectangularWall(x, 8, "feee", callback=[
|
||||
|
|
|
@ -51,11 +51,11 @@ class DisplayCase(Boxes):
|
|||
|
||||
d2 = d3 = None
|
||||
|
||||
self.rectangularWall(x, h, "ffff", bedBolts=[d2] * 4, move="right")
|
||||
self.rectangularWall(y, h, "fFfF", bedBolts=[d3, d2, d3, d2], move="up")
|
||||
self.rectangularWall(y, h, "fFfF", bedBolts=[d3, d2, d3, d2])
|
||||
self.rectangularWall(x, h, "ffff", bedBolts=[d2] * 4, move="left up")
|
||||
self.rectangularWall(x, h, "ffff", bedBolts=[d2] * 4, move="right", label="Wall 1")
|
||||
self.rectangularWall(y, h, "fFfF", bedBolts=[d3, d2, d3, d2], move="up", label="Wall 2")
|
||||
self.rectangularWall(y, h, "fFfF", bedBolts=[d3, d2, d3, d2], label="Wall 4")
|
||||
self.rectangularWall(x, h, "ffff", bedBolts=[d2] * 4, move="left up", label="Wall 3")
|
||||
|
||||
self.flangedWall(x, y, "FFFF", flanges=[self.overhang] * 4, move="right")
|
||||
self.flangedWall(x, y, "FFFF", flanges=[self.overhang] * 4)
|
||||
self.flangedWall(x, y, "FFFF", flanges=[self.overhang] * 4, move="right", label="Top")
|
||||
self.flangedWall(x, y, "FFFF", flanges=[self.overhang] * 4, label="Bottom")
|
||||
|
||||
|
|
|
@ -71,22 +71,26 @@ class ElectronicsBox(Boxes):
|
|||
self.h = h = h - 3*t
|
||||
|
||||
self.rectangularWall(x, h, "fFeF", callback=[self.wallxCB],
|
||||
move="right")
|
||||
self.rectangularWall(y, h, "ffef", callback=[self.wallyCB], move="up")
|
||||
self.rectangularWall(y, h, "ffef", callback=[self.wallyCB])
|
||||
move="right", label="Wall 1")
|
||||
self.rectangularWall(y, h, "ffef", callback=[self.wallyCB],
|
||||
move="up", label="Wall 2")
|
||||
self.rectangularWall(y, h, "ffef", callback=[self.wallyCB],
|
||||
label="Wall 4")
|
||||
self.rectangularWall(x, h, "fFeF", callback=[self.wallxCB],
|
||||
move="left up")
|
||||
move="left up", label="Wall 3")
|
||||
|
||||
if not self.outsidemounts:
|
||||
self.rectangularWall(x, y, "FFFF", callback=[
|
||||
lambda:self.hole(hd, hd, d=d3)] *4, move="right")
|
||||
lambda:self.hole(hd, hd, d=d3)] *4, move="right",
|
||||
label="Bottom")
|
||||
else:
|
||||
self.flangedWall(x, y, edges="FFFF",
|
||||
flanges=[0.0, 2*hd, 0., 2*hd], r=hd,
|
||||
callback=[
|
||||
lambda:self.hole(hd, hd, d=d3)] * 4, move='up')
|
||||
lambda:self.hole(hd, hd, d=d3)] * 4, move='up',
|
||||
label="Bottom")
|
||||
self.rectangularWall(x, y, callback=[
|
||||
lambda:self.hole(trh, trh, d=d2)] * 4, move='up')
|
||||
lambda:self.hole(trh, trh, d=d2)] * 4, move='up', label="Top")
|
||||
|
||||
self.rectangularTriangle(tr, tr, "ffe", num=4,
|
||||
callback=[None, lambda: self.hole(trh, trh, d=d1)])
|
||||
|
|
Loading…
Reference in New Issue