如何快速启动 Weir 生成式系统:面向新手的完整配置指南

如何快速启动 Weir 生成式系统:面向新手的完整配置指南

【免费下载链接】weir (deprecated) A system for making generative systems 【免费下载链接】weir 项目地址: https://gitcode.com/gh_mirrors/we/weir

Weir 是一个功能强大的生成式系统构建工具包,专门为创建各种生成算法艺术而设计。作为 snek 的下一代版本,它提供了丰富的数学运算、图形处理和随机生成功能,让开发者能够轻松构建复杂的生成式艺术作品。

🚀 快速安装步骤

1. 获取项目源码

首先克隆 Weir 项目到本地:

git clone https://gitcode.com/gh_mirrors/we/weir

2. 安装依赖配置

Weir 使用 Quicklisp 管理依赖。安装完成后,在 Lisp REPL 中执行:

(ql:quickload :weir)

如果出现加载问题,可以通过以下方式解决:

(load "weir.asd")

或者将项目路径添加到 Quicklisp 配置中:

#+quicklisp
(push "/path/to/dir/containing/weir" ql:*local-project-directories*)

🔧 核心功能模块详解

2D/3D 向量运算系统

Weir 提供了完整的向量运算支持,位于 src/vec/ 目录:

  • 基础向量操作:加法、乘法、除法、减法
  • 高级几何运算:叉积、点积、线插值、线线交点
  • 标量和列表支持:支持向量列表的批量操作

随机数生成器

强大的随机数生成功能,支持多种分布:

; 0到a之间的随机双精度数
(rnd:rnd a)

; 正态分布随机数
(rnd:norm :mu 0d0 :sigma 1d0)

; 圆形区域内的均匀分布
(rnd:in-circ a :xy p)

Weir 图数据结构

核心的图数据结构,用于处理顶点和边的关系:

(let ((wer (weir:make)))
  ; 添加三个随机边
  (loop repeat 3
        do (weir:add-edge! wer
             (weir:add-vert! wer (rnd:in-circ 200d0))
             (weir:add-vert! wer (rnd:in-circ 200d0
                         :xy (vec:rep 500d0)))))

Weir生成式系统效果展示

其他实用工具

  • 颜色处理pigment 包支持丰富的颜色操作
  • 样条曲线bzspl 提供贝塞尔样条支持
  • 路径简化simplify-path 优化复杂路径

🎨 实际应用示例

基本图形生成

Weir 可以轻松创建复杂的几何图案:

(let* ((points (rnd:nin-circ 5 400d0))
       (bz (bzspl:make points)))
  ; 在样条上采样点
  (bzspl:pos bz (rnd:rnd)))

SVG 矢量图输出

使用 draw-svg 包生成适合绘图的矢量文件:

(let ((psvg (draw-svg:make :stroke "black")))
  ; 绘制路径和圆形
  (draw-svg:path psvg pts :sw 3d0)
  (draw-svg:circ psvg (vec:rep 30d0) 10d0 :sw 3d0 :stroke "red"))

📁 项目结构概览

Weir 项目采用模块化设计:

  • src/weir/:核心图数据结构
  • src/vec/:向量运算系统
  • src/rnd/:随机数生成
  • examples/:丰富的使用示例

🛠️ 测试与验证

运行测试确保系统正常工作:

(asdf:test-system :weir)

或者使用提供的测试脚本:

./run-tests.sh

💡 进阶使用技巧

自定义变更操作

通过 alterations 机制,可以定义复杂的变更逻辑:

(weir:with (wer %)
  (weir:itr-verts (wer v)
    (% (weir:move-vert? v (rnd:in-circ 10d0)))))

查看 examples/custom-alt.lisp 获取更多自定义示例。

🎯 总结

Weir 生成式系统为艺术创作和算法生成提供了强大的工具集。通过简单的配置和丰富的功能模块,开发者可以快速构建复杂的生成艺术作品。无论是简单的几何图案还是复杂的动态系统,Weir 都能提供优雅的解决方案。

开始你的生成式艺术创作之旅,探索 Weir 带来的无限可能性!✨

【免费下载链接】weir (deprecated) A system for making generative systems 【免费下载链接】weir 项目地址: https://gitcode.com/gh_mirrors/we/weir

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值