cosplay: Touhou/Houjuu Nue #4
|
@ -271,6 +271,8 @@ class TorsionJoint:
|
|||
|
||||
groove_radius_outer: float = 35
|
||||
groove_radius_inner: float = 20
|
||||
# Gap on inner groove to ease movement
|
||||
groove_inner_gap: float = 0.2
|
||||
groove_depth: float = 5
|
||||
rider_gap: float = 1
|
||||
rider_n_slots: float = 4
|
||||
|
@ -285,7 +287,7 @@ class TorsionJoint:
|
|||
def __post_init__(self):
|
||||
assert self.radius_track > self.groove_radius_outer
|
||||
assert self.radius_rider > self.groove_radius_outer
|
||||
assert self.groove_radius_outer > self.groove_radius_inner
|
||||
assert self.groove_radius_outer > self.groove_radius_inner + self.groove_inner_gap
|
||||
assert self.groove_radius_inner > self.radius_spring
|
||||
assert self.spring_height > self.groove_depth, "Groove is too deep"
|
||||
assert self.radius_spring > self.radius_axle
|
||||
|
@ -415,7 +417,7 @@ class TorsionJoint:
|
|||
contact_profile = (
|
||||
Cq.Sketch()
|
||||
.circle(self.groove_radius_outer, mode='a')
|
||||
.circle(self.groove_radius_inner, mode='s')
|
||||
.circle(self.groove_radius_inner + self.groove_inner_gap, mode='s')
|
||||
)
|
||||
if not self.spring_hole_cover_rider:
|
||||
contact_profile = (
|
||||
|
|
Loading…
Reference in New Issue