所以我一直在搞乱http://processingjs.org/。
我想画一个圆,上面有一堆线。这些线中的每一条都应垂直于圆的切线。
我不一定需要知道如何在 processing.js 中执行此操作,但我真的不记得我的三角函数,所以更多关于绘制这条线所需的数学解释会有所帮助,但如果你知道如何在 processing.js 中做,那也很酷。
谢谢。
所以我一直在搞乱http://processingjs.org/。
我想画一个圆,上面有一堆线。这些线中的每一条都应垂直于圆的切线。
我不一定需要知道如何在 processing.js 中执行此操作,但我真的不记得我的三角函数,所以更多关于绘制这条线所需的数学解释会有所帮助,但如果你知道如何在 processing.js 中做,那也很酷。
谢谢。
如果这条线垂直于圆的切线,如果延伸,它将通过圆的中心。如果您的圆以 (a,b) 为中心,半径为 r,并且您希望它以角度 t 出来,那么起点是 x1=a+r cos t, y1=b+r sin t(我已经假设您希望线从圆周开始,这就是您的问题似乎暗示的)并且如果您希望线的长度为 z,那么您的端点是 x2=x1+z cos t, y2=y1+z sin t 你可以使用处理命令
line(x1,y1,x2,y2)
编辑:请注意,我的 t 是从 x 轴顺时针测量的。如果您希望它是逆时针的(这在数学中是正常的),您可以在上面的两个地方用 -sin t 替换 sin t,因为处理增加了 y 下降。
我建议您忘记切线,并从圆心向您希望线突出的方向画一条线。您可以将线偏移半径距离,使其从圆的边缘开始。
对于圆,切线的垂线会通过圆心。任何通过圆心的直线都垂直于与圆相交点的切线。
理想情况下,一个圆可以有无限的切线,因此您可以有无限的线从一个圆中出来。
如果我确实正确理解了您的问题,那么以下内容可能会有所帮助。
您可以选择位于圆上的随机点,然后将它们连接到圆的中心。为了使线条真正从圆中出来,请考虑一个半径比原始圆稍大的圆,但具有相同的中心坐标。然后在这个外圆的圆周上选择随机点并将它们连接到它的中心。
干杯