我使用以下算法实现了一个非常基本的Serpiensky三角形:
For each pixel (Px, Py)
if (Px & Py)
draw_pixel(Px, Py, color);
我想知道是否有可能在其上实现变焦模拟,逐步且无限期地“进入”具有漂亮动画的三角形。我不能围绕公式来解决这个问题,也没有发现任何与网络密切相关的内容。
答案 0 :(得分:1)
您正在使用的算法将生成如下内容:
可以有不同的方法来获得缩放动画效果,但基本原则始终相同。您显示 shift&原始帧的缩放版本以快速速率逐个缩放。
在这里,我描述了一种非常简单的方法(假设我们使用T
步骤在N
秒内达到相同的状态):
N
th 迭代?转到步骤 2 N
和T
的选择取决于您希望动画的速度和平滑程度。必须选择偏移和缩放因子,以便:在N
缩放和移位步骤之后,您将看到一个看起来与起始(原始)图像非常相似的图像。
值得一提的重要一点是,为了使这种方法产生平滑(即下降外观)动画,需要将计算出的Serpiensky三角形的分辨率大约为显示分辨率的20-30倍。