""" 群体智能插件完整示例 演示各种群体行为和配置选项 """ def basic_example(): """ 基础使用示例 """ print("=== 群体智能插件基础示例 ===") print("1. 启用插件后,将自动创建一个包含20个成员的群体") print("2. 群体成员会根据Boids算法进行移动") print("3. 按F1键可以暂停/继续群体模拟") print("4. 通过控制面板可以调节群体行为参数") print() def advanced_example(): """ 高级使用示例 """ print("=== 群体智能插件高级示例 ===") print("1. 可以通过配置文件自定义群体参数") print("2. 支持动态添加/删除群体成员") print("3. 可以与场景中的其他对象进行交互") print("4. 支持自定义群体行为规则") print() def scenario_examples(): """ 场景示例说明 """ print("=== 场景示例 ===") print("1. 鸟类群体:模拟鸟类飞行行为") print("2. 鱼群:模拟水下鱼群行为") print("3. 昆虫群体:模拟昆虫飞行行为") print("4. V字形队形:模拟候鸟迁徙队形") print("5. 圆形队形:模拟环形群体行为") print("6. 路径跟随:群体沿着预设路径移动") print("7. 捕猎场景:群体躲避捕食者") print("8. 避障场景:群体避开障碍物") print() def configuration_examples(): """ 配置示例说明 """ print("=== 配置示例 ===") print("1. cohesion_weight: 聚集权重,控制群体成员向中心聚集的趋势") print("2. separation_weight: 分离权重,控制群体成员避免碰撞的趋势") print("3. alignment_weight: 对齐权重,控制群体成员速度方向对齐的趋势") print("4. max_speed: 最大速度,限制群体成员的移动速度") print("5. perception_radius: 感知半径,决定群体成员能感知到邻居的距离") print("6. obstacle_weight: 避障权重,控制避开障碍物的力量") print("7. wander_weight: 游走权重,控制随机移动的力量") print("8. formation_weight: 队形权重,控制保持队形的力量") print() def usage_guide(): """ 使用指南 """ print("=== 使用指南 ===") print("1. 在主程序中启用群体智能插件") print("2. 通过控制面板调节参数观察不同效果") print("3. 尝试不同的群体类型和行为组合") print("4. 使用示例函数快速创建特定场景") print("5. 通过配置管理功能保存和加载参数设置") print() def api_examples(): """ API使用示例 """ print("=== API使用示例 ===") print("# 创建群体管理器") print("swarm_manager = SwarmManager(world)") print() print("# 设置群体参数") print("swarm_manager.config.set('cohesion_weight', 1.5)") print("swarm_manager.config.set('separation_weight', 2.0)") print() print("# 创建示例群体") print("swarm_manager.create_example_swarm()") print() print("# 添加障碍物") print("swarm_manager.create_obstacle(Vec3(10, 10, 5), 3.0)") print() print("# 添加捕食者") print("swarm_manager.create_predator(Vec3(-10, -10, 8))") print() print("# 设置目标") print("swarm_manager.set_target(Vec3(20, 20, 10))") print() print("# 切换暂停状态") print("swarm_manager.toggle_pause()") print() if __name__ == "__main__": basic_example() advanced_example() scenario_examples() configuration_examples() usage_guide() api_examples()