cosplay: Touhou/Houjuu Nue #4
|
@ -62,8 +62,8 @@ class WingProfile(Model):
|
|||
shoulder_base_bezier_x: float = -30.0
|
||||
shoulder_base_bezier_y: float = 30.0
|
||||
|
||||
s0_hole_loc: Cq.Location = Cq.Location.from2d(-25, 33)
|
||||
s0_hole_diam: float = 15.0
|
||||
s0_hole_width: float = 40.0
|
||||
s0_hole_height: float = 10.0
|
||||
s0_top_hole: bool = False
|
||||
s0_bot_hole: bool = True
|
||||
|
||||
|
@ -235,11 +235,17 @@ class WingProfile(Model):
|
|||
)
|
||||
top = top == self.flip
|
||||
if (self.s0_top_hole and top) or (self.s0_bot_hole and not top):
|
||||
assert self.base_width > self.s0_hole_width
|
||||
x = (self.base_width - self.s0_hole_width) / 2
|
||||
sketch = (
|
||||
sketch
|
||||
.reset()
|
||||
.push([self.s0_hole_loc.to2d_pos()])
|
||||
.circle(self.s0_hole_diam / 2, mode='s')
|
||||
.polygon([
|
||||
(-x, 0),
|
||||
(-x, self.s0_hole_height),
|
||||
(-self.base_width + x, self.s0_hole_height),
|
||||
(-self.base_width + x, 0),
|
||||
], mode='s')
|
||||
)
|
||||
return sketch
|
||||
|
||||
|
|
Loading…
Reference in New Issue