这适用于P5JS,但我也对通用解决方案感兴趣。我现在有一个图形化程序,可以在其中输入一个形式为y = f(x)的方程。这可能是y = x^2,y = sin(x+5),y = x^3 + 5*(x^2) + 6等。
它的工作原理是运行一个从-30到30的for-循环,并将这个值给x,然后计算方程的右边,得到有效的y坐标,然后在那里画一个点。(然后在各点之间画一条线)。
这是很好的,但是不允许方程中给定的x值可以有多个y值,反之亦然,例如椭圆的任何方程。(基本圆的y^2 + x^2 = 5)
绘图软件是如何绘制这些形状的,并且是否有一个给定的伪代码可以用来绘制这样的形状的点?
发布于 2018-10-22 09:59:20
这是一个令人惊讶的容易的问题,如果你不关心纯度。实际上,你所做的就是试图找出方程成立的点。所以,在最基本的意义上,你可以通过x和y的所有1000x1000(假设这里有一个分辨率)的组合,然后计算方程的每一边,看看它是否适合一个相当紧的公差(大约一个像素,取决于你的“缩放”)。
这在电脑上比听起来容易。你可以通过使用梯度来提高效率,但是这在99%的方程式中可能不需要,因为计算机非常强大,做这个方程一百万次并不会对它们造成伤害。
https://stackoverflow.com/questions/51502233
复制相似问题