用途:algorithmic-art 用于通过代码创作生成式艺术,基于 p5.js,强调种子随机性(seeded randomness)以实现可复现结果,并支持交互式参数探索。当用户要求用代码创作艺术、生成式图形或可复现的随机图案时使用。
主要能力:
- 种子随机:在 setup() 中调用 randomSeed(42) 与 noiseSeed(42),使随机结果可复现。
- 噪声函数:使用 Perlin noise 生成有机图案,例如 let x = noise(frameCount * 0.01) * width; let y = noise(frameCount * 0.01 + 1000) * height;。
- 常见模式:流场(Flow Fields)、递归树(Recursive Trees)、粒子系统(Particle Systems)。
- 调色板:定义颜色数组,如 const palette = ['#264653', '#2a9d8f', '#e9c46a', '#f4a261', '#e76f51'];,并用 fill(random(palette)) 随机取色。
使用方式:在 p5.js 环境中编写 sketch。流场示例中设置 cols、rows、scale=20,创建 flowfield 数组与粒子,在 draw() 中按噪声角度生成向量并让粒子跟随。递归树通过 branch(len) 递归绘制并旋转分支。粒子系统定义 Particle 类,包含 pos、vel、acc、maxSpeed,并实现 follow、update、show 方法。
最佳实践:静态作品使用 noLoop(),用 save('art.png') 保存;尝试混合模式 blendMode(ADD);利用图层透明度增加深度;用 frameCount 实现动画。
限制:资料未提供安装命令、依赖版本、平台支持、收费或价格信息,暂未提供。具体运行环境与部署方式需依据 p5.js 官方文档自行确认。