当毕达哥拉斯螺旋遇上追踪曲线
a 是三角形的中心角
b 是三角形的数量
n 是追逐曲线沿线延伸的距离
20260718 修改自:Sam Hartburn — 2021年4月6日 - 下午1:33 的 Pythagorean Spiral meets Pursuit Curves – GeoGebra
A = (19.41, 22.32)
B = (38.18, 30.9)
A'=旋转(A, -90°, B)
a=滑动条(-45°,45°,0.1°)
赋值(a,-10°)
B'=旋转(B, a, A)
f=直线(A, B')
g=直线(B, A')
C=交点(g, f)
base=多边形(A, B, C)
adj=线段(A, B, base)
opp=线段(B, C, base)
hyp=线段(C, A, base)
#以上为了求的基本多边形和adj / hyp
#由任意两点点和角度a获得,
#A = (19.41, 22.32)
#B = (38.18, 30.9)
#C=A+tan(a) (B-A) 这步还没写好
#base=多边形(A, B, C)
perim=adj + opp + hyp
#b螺旋数量
maxb = 53
b=滑动条(1,max_b,1)
赋值(b,10)
#偏移量、定比分点
n=滑动条(0,0.13,0.001)
赋值(n,0.1)
#⬛勾股螺线,A位旋转和位似中心,统一具有相同锐角,即所有三角形全等
l1=迭代列表(位似(旋转(T, -a, A), adj / hyp, A), T, {base}, b)
#可修改为:用cos(a)替代 adj / hyp
#
#⬛构成螺线的三角形内部制作追赶三边形,利用定比分点公式迭代求点。可用于任意三角形、多边形
l3=映射(迭代列表(多边形(描点(T, 0) + n (描点(T, 1 / 3) - 描点(T, 0)), 描点(T, 1 / 3) + n (描点(T, 2 / 3) - 描点(T, 1 / 3)), 描点(T, 2 / 3) + n (描点(T, 0) - 描点(T, 2 / 3))), T, {Z}, 10), Z, l1)
Export1 = (6, 40)
Export2 = (42, 12)
#⬛进阶:使用以下代码也可以制作
m=滑动条(3,20,1)
赋值(m,6)
l32=迭代列表(映射((1-n) p+n q,p,lst,q,合并({提取(lst,2),最前元素(lst)})),lst,{{顶点(l1(1))}},m)
l33=映射(多边形(p), p, l32)
l34=迭代列表(位似(旋转(T, -a, A), adj / hyp, A), T, {l33}, b)