cosplay: Touhou/Houjuu Nue #4
|
@ -1051,7 +1051,7 @@ class DiskJoint(Model):
|
|||
angle: float = 0.0,
|
||||
) -> Cq.Assembly:
|
||||
assert 0 <= angle <= self.movement_angle
|
||||
deflection = angle - self.neutral_movement_angle
|
||||
deflection = angle - (self.spring.angle_neutral - self.spring_angle_at_0)
|
||||
spring_name = disk.replace("/", "__Z") + "_spring"
|
||||
(
|
||||
assembly
|
||||
|
|
|
@ -27,12 +27,12 @@ ELBOW_PARAMS = dict(
|
|||
actuator=LINEAR_ACTUATOR_50,
|
||||
parent_arm_width=15,
|
||||
)
|
||||
WRIST_DISK_PARAMS = dict(
|
||||
movement_angle=30,
|
||||
radius_disk=13.0,
|
||||
radius_housing=15.0,
|
||||
)
|
||||
WRIST_PARAMS = dict(
|
||||
disk_joint=DiskJoint(
|
||||
movement_angle=30,
|
||||
radius_disk=13.0,
|
||||
radius_housing=15.0,
|
||||
),
|
||||
)
|
||||
|
||||
@dataclass(kw_only=True)
|
||||
|
@ -1096,6 +1096,7 @@ class WingR(WingProfile):
|
|||
elbow_joint: ElbowJoint = field(default_factory=lambda: ElbowJoint(
|
||||
disk_joint=DiskJoint(
|
||||
movement_angle=55,
|
||||
spring_angle_at_0=75,
|
||||
),
|
||||
flexor_offset_angle=15,
|
||||
flexor_mount_angle_child=-75,
|
||||
|
@ -1108,6 +1109,10 @@ class WingR(WingProfile):
|
|||
wrist_bot_loc: Cq.Location = Cq.Location.from2d(403.0, 289.0, 45.0)
|
||||
wrist_height: float = 60.0
|
||||
wrist_joint: ElbowJoint = field(default_factory=lambda: ElbowJoint(
|
||||
disk_joint=DiskJoint(
|
||||
spring_angle_at_0=120,
|
||||
**WRIST_DISK_PARAMS,
|
||||
),
|
||||
flip=True,
|
||||
angle_neutral=-20.0,
|
||||
child_arm_radius=23.0,
|
||||
|
@ -1344,6 +1349,7 @@ class WingL(WingProfile):
|
|||
elbow_rotate: float = 15.0
|
||||
elbow_joint: ElbowJoint = field(default_factory=lambda: ElbowJoint(
|
||||
disk_joint=DiskJoint(
|
||||
spring_angle_at_0=100,
|
||||
movement_angle=50,
|
||||
),
|
||||
angle_neutral=30.0,
|
||||
|
@ -1370,6 +1376,9 @@ class WingL(WingProfile):
|
|||
wrist_bot_loc: Cq.Location = Cq.Location.from2d(460.0, -10.0, -45.0)
|
||||
wrist_height: float = 43.0
|
||||
wrist_joint: ElbowJoint = field(default_factory=lambda: ElbowJoint(
|
||||
disk_joint=DiskJoint(
|
||||
**WRIST_DISK_PARAMS,
|
||||
),
|
||||
flip=False,
|
||||
hole_pos=[10],
|
||||
lip_length=30,
|
||||
|
|
Loading…
Reference in New Issue