Add reinforcements to motor seat

This commit is contained in:
Leni Aniva 2025-05-30 01:33:14 -07:00
parent 6ad74047bc
commit ef0b0dad91
Signed by: aniva
GPG Key ID: D5F96287843E8DFB
1 changed files with 28 additions and 3 deletions

View File

@ -1053,6 +1053,7 @@ class Onbashira(Model):
theta = math.pi / self.n_side theta = math.pi / self.n_side
theta2 = theta * 0.5 theta2 = theta * 0.5
theta1 = theta * 1.3 theta1 = theta * 1.3
cover_thickness = 4.0
track_width = 7.0 track_width = 7.0
r0 = self.bulk_radius r0 = self.bulk_radius
r1 = self.rotation_radius + gap r1 = self.rotation_radius + gap
@ -1113,8 +1114,6 @@ class Onbashira(Model):
Cq.Workplane() Cq.Workplane()
.sketch() .sketch()
.circle(r1) .circle(r1)
.circle(self.rotation_radius+track_width/2, mode="s")
.circle(self.rotation_radius-track_width/2)
.circle(r2_5, mode="s") .circle(r2_5, mode="s")
.polygon([ .polygon([
(0, 0), (0, 0),
@ -1130,6 +1129,29 @@ class Onbashira(Model):
.finalize() .finalize()
.extrude(t1) .extrude(t1)
) )
channel = (
Cq.Workplane()
.sketch()
.circle(self.rotation_radius+track_width/2)
.circle(self.rotation_radius-track_width/2, mode="s")
.finalize()
.extrude(t1)
.translate((0, 0, self.motor_seat_depth - t1))
)
channel_cover = (
Cq.Workplane()
.sketch()
.circle(self.rotation_radius+track_width/2)
.circle(self.rotation_radius-track_width/2, mode="s")
.polygon([
(0, 0),
(r0 * math.cos(theta1), r0 * math.sin(theta1)),
(r0 * math.cos(theta2), r0 * math.sin(theta2)),
], mode="i")
.finalize()
.extrude(cover_thickness)
.translate((0, 0, self.motor_seat_depth - cover_thickness))
)
# Construct the connection between the front and back # Construct the connection between the front and back
@ -1148,7 +1170,7 @@ class Onbashira(Model):
profile_bridge_outer_top = ( profile_bridge_outer_top = (
Cq.Sketch() Cq.Sketch()
.circle(r1) .circle(r1)
.circle(self.rotation_radius+track_width/2, mode="s") .circle(self.rotation_radius, mode="s")
.polygon([ .polygon([
(0, 0), (0, 0),
(r0 * math.cos(theta1), r0 * math.sin(theta1)), (r0 * math.cos(theta1), r0 * math.sin(theta1)),
@ -1198,6 +1220,9 @@ class Onbashira(Model):
+ bridge_inner + bridge_inner
+ bridge_inner.mirror("XZ") + bridge_inner.mirror("XZ")
- hole_subtractor - hole_subtractor
- channel
+ channel_cover
+ channel_cover.mirror("XZ")
) )
# Mark the mount points # Mark the mount points