cosplay: Touhou/Houjuu Nue #4
|
@ -204,7 +204,7 @@ class RootJoint(Model):
|
||||||
plane = result.copyWorkplane(Cq.Workplane('XY', origin=(0, 0, -self.child_extra_thickness)))
|
plane = result.copyWorkplane(Cq.Workplane('XY', origin=(0, 0, -self.child_extra_thickness)))
|
||||||
|
|
||||||
for i, (px, py) in enumerate(conn):
|
for i, (px, py) in enumerate(conn):
|
||||||
plane.moveTo(px, py).tagPlane(f"conn{i}")
|
plane.moveTo(px, py).tagPlane(f"conn{i}", direction="-Z")
|
||||||
result = (
|
result = (
|
||||||
result
|
result
|
||||||
.faces(">Z")
|
.faces(">Z")
|
||||||
|
|
|
@ -983,9 +983,10 @@ class WingProfile(Model):
|
||||||
if "s0" in parts and "root" in parts:
|
if "s0" in parts and "root" in parts:
|
||||||
(
|
(
|
||||||
result
|
result
|
||||||
.constrain("s0/base?conn0", "root/child?conn0", "Plane", param=0)
|
.constrain("s0/base?conn0", "root/child?conn0", "Point")
|
||||||
.constrain("s0/base?conn1", "root/child?conn1", "Plane", param=0)
|
.constrain("s0/base?conn1", "root/child?conn1", "Point")
|
||||||
.constrain("s0/base?conn2", "root/child?conn2", "Plane", param=0)
|
.constrain("s0/base?conn2", "root/child?conn2", "Point")
|
||||||
|
#.constrain("s0/base?conn3", "root/child?conn3", "Point")
|
||||||
)
|
)
|
||||||
if "shoulder" in parts:
|
if "shoulder" in parts:
|
||||||
angle = shoulder_deflection * self.shoulder_joint.angle_max_deflection
|
angle = shoulder_deflection * self.shoulder_joint.angle_max_deflection
|
||||||
|
|
Loading…
Reference in New Issue