gpt4 book ai didi

javascript - 如何防止 draw() 重置 p5.js 中的转换

转载 作者:行者123 更新时间:2023-12-05 03:51:42 25 4
gpt4 key购买 nike

有什么方法可以防止 draw() 在每次重置时重置所有转换?我正在尝试模拟 L 系统的增长,并希望实现这样的目标: Barnsley Fern

为了实现这一点,我需要跟踪 draw 函数中的所有变换和旋转,以显示增长效果。使用用户定义的函数而不是 draw 只是绘制最终的树并且不显示正在“绘制”的树

所以我的问题基本上是这样的:有什么方法可以阻止 draw() 重置所有转换?要么我可以通过任何方式跟踪 Canvas 的 x、y 坐标和 Angular ,这样每次绘图重置时,我都可以使用存储的坐标转换回之前的状态。

最佳答案

尝试使用 push()pop() :

function setup() {
createCanvas(400, 400);

//some initializations

push(); //save an initial drawing state
}

function draw() {
pop(); //restore latest saved drawing state (including transformations)

// do some stuff

push(); //save current drawing state (including transformations)
}

关于javascript - 如何防止 draw() 重置 p5.js 中的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62697242/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com