var x = Cx + a * Math.cos(ang);
var y = Cy + b * Math.sin(ang);
Cx, Cy
是中心的绳索。 ang
是radians
中的角度。 a
是宽度的一半,b
是高度的一半。
如果我更改ang
的值,我会在椭圆的圆周上得到不同的点。下面是路径,我可以通过上面的方程式获得。
但不是这个椭圆形,我想要像椭圆形的东西,像凹面镜子。即使我们将其两端延伸到无限远,它们也不应形成椭圆形状。
有人可以为我提供第二条曲线的极坐标方程。我在数字绘图方面非常糟糕,但你可以把它想象成凹面镜。
答案 0 :(得分:1)
根据角度,焦点在(Fx, Fy)
和焦点参数2a
的抛物线的参数方程将是:
x = Fx + (2*a*cos(ang))/(1 + cos(ang))
y = Fy + (2*a*sin(ang))/(1 + cos(ang))
还不错。 :)您可以根据需要调整a
。你可以通过调整从焦点到绘图的距离的比例来实际修改它,而不是直方图的绘图:
x = Fx + (2*a*cos(ang))/(1 + cos(ang))
y = Fy + (2*b*sin(ang))/(1 + cos(ang))
此处的比率为b/a
。因此,您可以从原点到顶点(2a)具有相同的距离,并使b
更大,以“展平”抛物线。