from visual import * eps = 0.1 step = 10 L=[] Laxis=[] for t in arange(0,2*pi+eps, eps): L.append((cos(t), sin(t))) Laxis.append((-sin(t),cos(t))) curve(pos = L, radius = 0.01, color=color.red) points(pos = L, radius = 0.1, color = color.white) for i in arange(len(L)): if i % step == 0: arrow(pos = L[i], axis = Laxis[i], shaftwidth=0.01, color=color.blue) #tangent arrow(pos = L[i], axis = (Laxis[i][1], -Laxis[i][0]), shaftwidth=0.01, color=color.green) # tangent = (x,y), normal = (-y, x) or (y, -x)