return cos(zeta) * r + sin(zeta) * tw._axis
class MoebiusHalf:
- def __init__(m, n_u):
+ def __init__(m, nu):
'''
MoebiusHalf().edge is a Twirler for the edge,
expecting theta = u * tau (see MoebiusHalf().point)
'''
m.edge = Twirler(origin, unit_z, unit_x, -2, tau/2)
m.midline = Twirler(-unit_z, unit_z, unit_y, -0.5, 0)
- m._beziers = [ m._bezier(u) for u in np.linspace(0, 1, n_u+1) ]
+ m._beziers = [ m._bezier(u) for u in np.linspace(0, 1, nu+1) ]
def _bezier(m,u):
theta = u * tau
cp = [None] * 4
return BezierSegment(cp)
def point(m, ix_u, t):
'''
- 0 <= ix_u <= n_u meaning 0 <= u <= 1
+ 0 <= ix_u <= nu meaning 0 <= u <= 1
along the extent
0 and 1 are both the top half of the flat traverse
0.5 is the bottom half of the flat traverse