Français : Voisinage tubulaire de la courbe y=sin(x)
defmain():f=sin(x)a=0b=2*piN=1000# consider N points in the interval [a, b]X=[a+(b-a)/N*kforkinrange(N+1)]Y=[f(x=u)foruinX]ll=3# length of lines perpendicular to the curvells=0.3# smaller subsegmentsthin_line=2thick_line=4# will draw lines perpendicular to the graph of Y=f(X) at# points separted by length of 'spacing'spacing=0.015M=floor(spacing*N)# colorsred=[0.867,0.06,0.14]blue=list(vector([0,129,205])/QQ(256))green=list(vector([0,200,70])/QQ(256))G=Graphics()# plot the linesforkinrange(1,N+1):p=(k-1)*M+2ifp>=N:break# the normal to the curve at (X(p), Y(p))Normal=vector([-(Y[p+1]-Y[p-1]),X[p+1]-X[p-1]])Normal=Normal/norm(Normal)G+=line([(X[p]-lls*Normal[0],Y[p]-lls*Normal[1]),(X[p]+lls*Normal[0],Y[p]+lls*Normal[1])],color=red,thickness=0.7*thick_line)# plot the curveG+=line2d(zip(X,Y),thickness=thick_line,color=blue)G.axes(False)G.set_aspect_ratio(1)returnG
делиться произведением – копировать, распространять и передавать данное произведение
создавать производные – переделывать данное произведение
При соблюдении следующих условий:
атрибуция – Вы должны указать авторство, предоставить ссылку на лицензию и указать, внёс ли автор какие-либо изменения. Это можно сделать любым разумным способом, но не создавая впечатление, что лицензиат поддерживает вас или использование вами данного произведения.
распространение на тех же условиях – Если вы изменяете, преобразуете или создаёте иное произведение на основе данного, то обязаны использовать лицензию исходного произведения или лицензию, совместимую с исходной.
Файл содержит дополнительные данные, обычно добавляемые цифровыми камерами или сканерами. Если файл после создания редактировался, то некоторые параметры могут не соответствовать текущему изображению.