Support springs for finger joints (FingerJointSettings.style)
Resolves: #177
This commit is contained in:
parent
f5ed90ca88
commit
13ecfc9914
|
@ -528,7 +528,7 @@ class FingerJointSettings(Settings):
|
||||||
Values:
|
Values:
|
||||||
|
|
||||||
* absolute
|
* absolute
|
||||||
|
* style : "rectangular" : style of the fingers
|
||||||
* surroundingspaces : 2 : maximum space at the start and end in multiple of normal spaces
|
* surroundingspaces : 2 : maximum space at the start and end in multiple of normal spaces
|
||||||
* angle: 90 : Angle of the walls meeting
|
* angle: 90 : Angle of the walls meeting
|
||||||
|
|
||||||
|
@ -543,6 +543,7 @@ Values:
|
||||||
"""
|
"""
|
||||||
|
|
||||||
absolute_params = {
|
absolute_params = {
|
||||||
|
"style" : ("rectangular", "springs"),
|
||||||
"surroundingspaces": 2.0,
|
"surroundingspaces": 2.0,
|
||||||
"angle" : 90.0,
|
"angle" : 90.0,
|
||||||
}
|
}
|
||||||
|
@ -634,7 +635,15 @@ class FingerJointEdge(BaseEdge, FingerJointBase):
|
||||||
else:
|
else:
|
||||||
self.edge(s)
|
self.edge(s)
|
||||||
|
|
||||||
self.polyline(0, -90 * p, h, 90 * p, f, 90 * p, h, -90 * p)
|
if positive and self.settings.style == "springs":
|
||||||
|
self.polyline(
|
||||||
|
0, -90 * p, 0.8*h, (90 * p, 0.2*h),
|
||||||
|
0.1 * h, 90, 0.9*h, -180, 0.9*h, 90,
|
||||||
|
f - 0.6*h,
|
||||||
|
90, 0.9*h, -180, 0.9*h, 90, 0.1*h,
|
||||||
|
(90 * p, 0.2 *h), 0.8*h, -90 * p)
|
||||||
|
else:
|
||||||
|
self.polyline(0, -90 * p, h, 90 * p, f, 90 * p, h, -90 * p)
|
||||||
|
|
||||||
self.edge(leftover / 2.0, tabs=1)
|
self.edge(leftover / 2.0, tabs=1)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue