Florian Festi
95f2fbeb82
corner(): Make more robust against division by zero
2020-02-01 15:03:49 +01:00
Florian Festi
2121228036
TrayLayout: Error out if tray is just a single wall
2020-02-01 14:51:38 +01:00
Florian Festi
f8401aac75
rectangularRectangle: Make angle calculation more robust
2020-02-01 14:43:45 +01:00
Florian Festi
2a7e1e62d1
PaintStorage: Prevent division by zero
2020-02-01 14:31:24 +01:00
Florian Festi
dd0f2d748c
ChestHingeSettings: check pin_height for minimal size
2020-02-01 14:27:17 +01:00
Florian Festi
0f3eb5b21a
StackableSettings: check angle for invalid values
2020-02-01 14:16:26 +01:00
Florian Festi
9706816fe4
gears: prevent division by zero
2020-02-01 13:59:30 +01:00
Stefan Reichhard
37bff9d358
fixed d3 diameter (mounting screw holes)
2020-01-22 16:11:18 +01:00
Florian Festi
1f3110c6fa
New generator: TriangleLamp
2020-01-21 21:34:02 +01:00
Florian Festi
10e2085eef
Remove Python 2 compat foo
2019-12-21 17:47:54 +01:00
Florian Festi
4d53bd17cc
partsMatrix: support width=0 for all parts in one row
2019-12-16 20:07:30 +01:00
Florian Festi
e2b87af2a4
UniversalBox: Add outside parameter
...
Fixes : #144
2019-12-14 19:13:40 +01:00
Florian Festi
aba9631b00
Make joints of box sides go to the very bottom
...
for NotesHolder, TypeTray and UniversalBox.
The same should be done to many other boxes as soon as they get the
bottom_edge parameter
Resolves : #111
2019-12-14 14:18:38 +01:00
Florian Festi
8cb5a8e042
Check values of flex settings
2019-12-14 13:09:43 +01:00
Florian Festi
fe9555a79f
checkValues
2019-12-14 13:09:43 +01:00
Florian Festi
c5474e7488
DiscRack: Limit lower_factor and rear_factor to smaller than one
2019-12-14 12:23:08 +01:00
Florian Festi
024b574763
TrayLayout: Add default for layout param
2019-12-14 12:14:24 +01:00
Florian Festi
093e10a3ac
AngledBox: Use FingerJointSettings for vertical edges, too
2019-12-06 23:37:22 +01:00
Florian Festi
bd1db150c7
New geneator: SpicesRack
2019-11-29 19:58:27 +01:00
Florian Festi
182d222f01
Prevent not having any sections at all for argparseSections
2019-11-24 19:10:35 +01:00
Florian Festi
d2d97b01c9
grip(): Prevent division by zero
2019-11-24 16:42:47 +01:00
Marius Bergmann
9f8b84b3f1
add parameters for banana socket and flipswitch diameters
2019-11-20 11:57:13 +01:00
Marius Bergmann
2c367562a9
remove commented code
2019-11-20 11:57:13 +01:00
Marius Bergmann
90fdf897a9
formatting: whitespace cleanup
2019-11-20 11:57:13 +01:00
Florian Festi
c67d1f874c
StorageShelf: Add retainer_hole_edge param
...
to allow strengthening the retainer walls by using an h edge.
Also use a h edge on the bottom retainer wall if selected as bottom_edge.
2019-11-09 23:32:12 +01:00
Florian Festi
e8cda89381
StorageShelf: Fix holes for inner vertical walls
2019-11-09 23:31:26 +01:00
Florian Festi
71711baa1a
StorageShelf: Add retainer wall
...
This patch does not add finger joints to the vertical walls to attach the
retainer walls as the walls are likely to be to small to be able to make use
of them. In hte long run they should be added, though.
2019-11-09 17:10:23 +01:00
Florian Festi
0cdc930459
StorageShelf: Change front edge from E to e
...
This makes the shelf one thickness less deep - as it should be
2019-11-09 16:10:30 +01:00
Florian Festi
923798beb9
SBCMicroRack: Fix dowel diameter
2019-11-07 15:38:16 +01:00
Florian Festi
2860a32360
SBCMicroRack: Comment out unfinished fan parameter
2019-11-07 15:38:16 +01:00
Florian Festi
d9c190073b
SBCMicroRack: Don't draw bottom fingerholes twice
2019-11-07 15:38:16 +01:00
Florian Festi
af6c9be8f7
SBCMicroRack: Rearrange parts
2019-11-07 15:38:16 +01:00
gmorell
569eb2f49c
New generator: SBCMicroRack
2019-11-07 15:37:57 +01:00
Florian Festi
199251ae52
Add lid for StackableEdge (S) as top_edge
2019-11-04 17:13:12 +01:00
Florian Festi
83b5363bc8
StackableEdge: Fix margin for upper (S) variant
2019-11-04 17:05:18 +01:00
Florian Festi
4ac46840d2
NotesHolder: Fix various issues
...
Code for opening == 0.0 was broken (See #187 )
Fixed placement of bottom
Fixed margin of USlotEdge
Resolves : #187
2019-11-04 08:52:26 +01:00
Florian Festi
927f483c19
New generator: LaserHoldfast - A holdfast for honey comb tables
2019-10-19 23:47:44 +02:00
Florian Festi
e2cb90db89
NotesHolder: Split front into two pieces and set better default values
...
Resolves : #129
2019-10-19 21:49:43 +02:00
Florian Festi
b0b35d6084
Mention BurnTest in docs and in the burn parameter description
2019-10-19 12:29:56 +02:00
Florian Festi
cfbcbb065c
Clarify doc string for FingerJointSettings.play
2019-10-19 12:03:57 +02:00
Florian Festi
011024f0a4
TrayLayout: Add comment to clarify the purpose of the classes
...
Resolves : #179
2019-10-18 19:06:07 +02:00
Florian Festi
228335a993
BurnTest: fix part placement
2019-10-13 18:42:40 +02:00
Florian Festi
89ea774a39
New generator: BurnTest
2019-10-13 18:39:06 +02:00
Florian Festi
13ecfc9914
Support springs for finger joints (FingerJointSettings.style)
...
Resolves : #177
2019-10-11 22:32:57 +02:00
Florian Festi
f5ed90ca88
SlatwallWrenchHolder: Add extra_distance parameter for Jonas
2019-10-10 20:00:22 +02:00
Florian Festi
8afdfdf3f5
New generator: BaynonetBox
2019-09-23 23:44:02 +02:00
Florian Festi
877915eb74
Arcade: Make height of monitor and depth of keyboard adjustable
...
Resolves : #166
2019-09-23 21:42:57 +02:00
Florian Festi
d6495fc7b4
DrillBox: Fix font size
...
Now that the text() function has a fontsize parameter, setting the font size
on ctx before calling text() has no impact.
Resolves : #173
Thanks to Marko Luther for reporting and suggesting this fix!
2019-09-23 12:15:49 +02:00
Florian Festi
3ba90c517c
TrayLayout: Fix cli
...
TrayLayout was still trying to produce a drawing and failed. Now TrayLayout is
not using most of the infrastructure and only TrayLayout2 has the capacity to
create a drawing.
Resolves : #172
2019-09-22 22:37:33 +02:00
Florian Festi
b124c96c63
UnevenHeightBox: Use lid and bottom_egde for height calculation
...
when "outside" is set
2019-09-08 23:26:23 +02:00
Florian Festi
657b978aa0
StorageShelf: Use top and bottom_egde for height calculation with "outside" set
2019-09-08 23:26:23 +02:00
Florian Festi
605692f751
StorageRack: Use top and bottom_egde for height calculation with "outside" set
2019-09-08 23:26:23 +02:00
Florian Festi
5c0cc4d732
SlatwallTypeTray: Remove unused code carried over from TypeTray
2019-09-08 23:26:23 +02:00
Florian Festi
2b0bdde145
SlatwallTypeTray: Adjust height according to bottom_edge if outside selected
2019-09-08 23:26:23 +02:00
Florian Festi
52484b0d55
adjustSize(): add support for edge chars
2019-09-08 23:26:23 +02:00
Guillaume Collic
6c9d23af6e
New generator DividerTray
2019-08-30 21:00:32 +02:00
Florian Festi
c3185f5129
Rename to Rack19HalfWidth to better fit with other Rack boxes
...
Move to Box group
Support more than one row of equipement
Move defaults to arguments to conform with general coding style
2019-08-30 12:27:13 +02:00
Stefan Schwarz
681ebbb694
add h19rack for a ported half 19inch rackmount
2019-08-30 11:58:21 +02:00
Florian Festi
9a17e3efa9
Precompile optimizations REs and fix performance issue
2019-08-22 00:31:45 +02:00
Florian Festi
39bd912c90
Harden Extend.addPoint for None arguments
2019-08-18 14:46:13 +02:00
Florian Festi
9db79243f8
Make Slide-on Lid with pin easier to insert
...
Make slot half a thickness wider and round the corners
Resolves : #156
Thanks to Matthijs Kooijman for suggesting this change!
2019-08-17 00:05:13 +02:00
Florian Festi
0409bcbe65
Fix SVG merging for Inkscape
...
Resolves : #163
2019-08-16 22:37:42 +02:00
Florian Festi
65d2293e25
Fix Extend.__add__ for None values
2019-08-15 23:12:35 +02:00
Florian Festi
02988d12c5
Catch exceptions from failed ps2edit calls
2019-08-15 23:12:35 +02:00
Florian Festi
c81d23e605
SlatwallDrillBox: Fix all kind of errors
2019-08-15 23:12:35 +02:00
Florian Festi
e4bdc190bb
Flexbox3: Fix lid length
2019-08-08 22:53:08 +02:00
Florian Festi
73422b0faf
Fix name space handling in new svg code
2019-07-31 23:40:48 +02:00
Florian Festi
6a3a9b984a
SlatwallTypetray: Fix side joints of front wall (F -> f)
2019-07-31 23:40:06 +02:00
Matthijs Kooijman
8ecf04cbe8
Fix handling of space in LidSideRight/Left
...
Previously, the extra space was added above the first pin and below the
(optional) second pin. This would cause the lid to misalign with the
holes in the back wall, making it harder to close the lid.
With this commit, the extra space is divided evenly above and below the
nominal position of the pin.
For this to work, the startwidth (or endwidth, depending on the side) is
slightly adjusted (since the start of the first pin slot is actually
generated by the adjacent edge). This moves the starting point, so the
location of the spring hole is adjusted to compensate for that.
2019-07-27 13:30:06 +02:00
Matthijs Kooijman
3bd4dc9907
Fix spring hole offsets by burn in LidSideRight/Left
2019-07-27 13:30:06 +02:00
Matthijs Kooijman
4691a65a29
Let LidSideRight/Left respect edge_width
...
This allows modifying the height of the wall that extends above the lid.
The box back wall (with holes) would already support edge_width, so this
makes it supported on all three walls where needed.
2019-07-27 13:30:06 +02:00
Matthijs Kooijman
db1da4ec12
Fix hole positions offset by burn in FingerHoleEdge
...
When rendering the FingerHoleEdge, the current position would be
corrected for burn (e.g. it would be on the center of the laser path,
rather than the actual edge of the final part). However, the FingerHoles
class (or actually the rectangularHole method called by it) that draws
the actual holes already corrects for burn, which caused the hole
position to be offset by the burn value.
This offset was particularly problematic when making a sliding lid,
since the holes would not align perfectly with the lid, making it hard
to close the lid. With this change, the sliding slots in the side walls
and the holes in the back wall align perfectly (though only when the lid
settings have zero play, which is a separate problem).
This commit fixes FingerHoleEdge (and its subclass LidHoleEdge), but
there might be other users of the FingerHole class (usually indirectly
through boxes.fingerHolesAt) that still have the same problem.
2019-07-27 13:30:06 +02:00
Matthijs Kooijman
eeb2c344d5
Clarify where l and L edges should be used
2019-07-27 13:30:06 +02:00
Marko Luther
ca1a3575d0
forward holesSettings to hexHolesRectangle from within rectangularWall
2019-07-21 01:21:55 +02:00
Rotzbua
c06b95d2d0
link: http -> https
2019-07-20 00:23:29 +02:00
Florian Festi
0a55e9ca6b
Optimize SVG paths
...
Resolves #63
2019-07-19 21:49:55 +02:00
Florian Festi
a38254667c
Remove no longer needed line in _template.py
2019-07-18 20:55:07 +02:00
Florian Festi
17d7cd80ab
Don't show generators in modules starting with underscore (templates)
2019-07-12 00:47:09 +02:00
Florian Festi
11174f2ecc
New generator SlatwallDrillBox
2019-07-12 00:43:06 +02:00
Florian Festi
88e99a5726
New generator: FlexBox5
...
Resolves #147
2019-07-12 00:24:50 +02:00
Florian Festi
e6f431ab15
New generator: MakitaPowerSupply
2019-07-07 16:26:29 +02:00
Florian Festi
fff74cf382
Add metadata as a xml comment
...
Resolves #66
2019-07-07 13:43:04 +02:00
Florian Festi
a19debf1bd
Rename remaining Slatwall generators from Sw* to Slatwall*
2019-07-04 22:59:32 +02:00
Florian Festi
573b630adc
New generator: SlatwallPlaneHolder
2019-07-04 22:39:34 +02:00
Florian Festi
31d46088c2
Move drawing to origin for SVGs
2019-07-04 17:52:28 +02:00
Florian Festi
635a42a25e
Use eTree to caclulate the eytend of the drawing
...
Also check symbols (text character) now
2019-07-04 17:52:28 +02:00
Florian Festi
d162c769b4
Use built in eTree implementation instead of lxml
2019-07-04 17:52:08 +02:00
Florian Festi
4a9cdc8d8e
Switch to eTree as a xml library (instead of minidom)
2019-07-04 17:48:53 +02:00
Stefan Grosshauser
443c8a1c38
properly rewrite svg viewPort using minidom for xml
...
This avoids raising the 'Not enough space for size' exception.
2019-07-04 17:48:53 +02:00
Florian Festi
abdab6866a
New generator: StorageRack - Box with rails to slide other boxes in
2019-06-30 20:53:42 +02:00
Florian Festi
2f7603b4b4
New generator: SlatWallWrenchHolder
2019-06-30 20:53:42 +02:00
Florian Festi
0105957c05
New generator: SlatWallChiselHolder
2019-06-30 17:19:02 +02:00
Florian Festi
138dffbf2a
New generator: SlatWallCaliperHolder
2019-06-30 15:48:09 +02:00
Florian Festi
be8aed394a
New generator: Slatwall PlaneHolder
2019-06-30 15:18:11 +02:00
Florian Festi
09df973d69
New generator: SlatwallConsole - an outset and angled plate to mount stuff to
2019-06-22 00:07:23 +02:00
Florian Festi
810c3dbe3e
New generator: SwTypeTray - a tray to hang at a slat wall
2019-06-22 00:05:57 +02:00
Florian Festi
f1ce996aae
New generator: SwPliersHolder - a bar to hang pliers on
2019-06-22 00:04:30 +02:00
Florian Festi
6c85ae7ea2
Add trapezoidSideWall() that supports radius param for additional strength
2019-06-21 23:16:59 +02:00
Florian Festi
6a809e17e7
Move trapezoidWall() from UnevenHeightBox to Boxes class
2019-06-21 21:37:57 +02:00
Florian Festi
01ca56fdce
Support all different section syntaxes (sx, sy, ...) side by side
2019-06-21 21:37:57 +02:00