笔记10:Carla官方文档阅读 -- 2nd【Actors and Blueprints】/【(3)Types of Actors】/【5)Walkers】
import sys
try:sys.path.append('D:\work_software\Carla\Carla_0.9.10\CARLA_0.9.10\WindowsNoEditor\PythonAPI\carla\dist\carla-0.9.10-py3.7-win-amd64.egg')
except IndexError:passimport carla
import random
import time# 创建 client
client = carla.Client("localhost", 2000)
client.set_timeout(5.0)
# 创建 world
world = client.get_world()#(3)Types of actorss
# ------------------------------------------------------------------------------------------------------------------------
# 5.行人 -- Walkers
# 注1:有配套的蓝图,可以使用函数spawn_actor()生成
# 注2:生成对象的类型是【carla.Walker】,属于类【carla.Actor】的子类
# 注3:行人的控制通过两个类实现 -- 【carla.WalkerControl】 -- 以一定的方向和速度移动行人,还允许他们跳跃
# 【carla.WalkerBoneControl】 -- 提供对3D骨架的控制
# ------------------------------------------------------------------------------------------------------------------------# ------------------------------------------------------------------------------------------------------------------------
# 创建 -- Walker
blueprint_library = world.get_blueprint_library()
walker_blueprint = blueprint_library.filter("walker.*.*")[0]
walker_transform = carla.Transform(carla.Location(x = 100, y = 200 , z = 10), carla.Rotation(yaw = -180))
walker_actor = world.spawn_actor(walker_blueprint, walker_transform)
print("\n", walker_actor) # 输出:Actor(id=86, type=walker.pedestrian.0007)
print(type(walker_actor)) # 输出:<class 'carla.libcarla.Walker'># 创建 -- 对 Walker 的控制器(即:人工智能控制器)
walker_ai_blueprint = world.get_blueprint_library().find('controller.ai.walker')
walker_ai_actor = world.spawn_actor(walker_ai_blueprint, carla.Transform(), attach_to = walker_actor)
print("\n", walker_ai_actor) # 输出:Actor(id=87, type=controller.ai.walker)
print(type(walker_ai_actor)) # 输出:<class 'carla.libcarla.WalkerAIController'># 注意1:人工智能控制器是无形的,没有物理特性。它不会出现在现场
# 这里定义的 walker_ai_actor 其实是对步行者进行 AI 控制的类,而不是一个参与交通的 actor
# 注意2:控制器被定义为参与者,但它们与其他控制器有很大不同,它们在创建过程中需要附加到父 Actor,这是它们将控制的步行者
# 他们还需要一个特殊的蓝图(已在carla.BlueprintLibrary中定义为“controller.ai.walker”),这是一个空的蓝图,因为人工智能控制器在模拟中是不可见的,但会跟随其父控制器来指示每一步
# ------------------------------------------------------------------------------------------------------------------------# ------------------------------------------------------------------------------------------------------------------------
# 注:每个【人工智能控制器】都需要初始化 + 目标 + 可选的速度
walker_ai_actor.start() # 函数【carla.WalkerAIController.start()】:为其父步行者启用AI控制
walker_ai_actor.go_to_location(world.get_random_location_from_navigation()) # 函数【carla.WalkerAIController.go_to_location(参数类型 carla.Location)】:设置行人将到达的目的地
walker_ai_actor.set_max_speed(1 + random.random()) # 函数【carla.WalkerAIController.set_max_speed(参数类型 float)】:设置步行者的速度(以米每秒为单位)time.sleep(10.0) # 注:没有这一行行人就动不起来walker_ai_actor.stop() # 函数【carla.WalkerAIController.stop()】:禁用其父步行者的 AI 控制
# ------------------------------------------------------------------------------------------------------------------------
注:my_test_script_8.py
笔记10:Carla官方文档阅读 -- 2nd【Actors and Blueprints】/【(3)Types of Actors】/【5)Walkers】相关推荐
- JMeter官方文档阅读及实践笔记(上)
JMeter笔记 一.测试计划元件概览 本节简单介绍测试计划的不同部分. 最小测试将包括测试计划.线程组和一个或多个采样器. 1.Thread Group,线程组 线程组元素是任何测试计划的起点.所有 ...
- Qt官方文档阅读笔记-对官方Star Delegate Example实例的解析
对应的博文为: 目录 Star Delegate Example StarDelegate Class Definition StarDelegate Class Implementation Sta ...
- 零基础Python修炼笔记——整理自官方文档
零基础Python修炼笔记 题外话 "编外人员"学Python 书籍 交互课程 中小学儿童学习 教材和网站 科学工作者教程 视频 工具 后记 题外话 去年我自学Python的时候, ...
- 苹果官方文档阅读的入门
1.下载和打开官方文档的步骤 (1).在code->preferences->components(目录下的document栏目)可以下载相关的官方文档 (2).在help->doc ...
- python@最容易上手的图形界面开发框架之一PySimpleGUI@PySimpleGUI学习路线和官方文档阅读
文章目录 PySimpleGUI 底层GUI框架及其状态 自行扩展框架@The Chain Link Fence The PySimpleGUI "Family" The &quo ...
- carla官方文档笔记1
介绍 介绍 CARLA是一个开源的自动驾驶模拟器.它是从零开始构建的,作为一个模块化和灵活的API来解决一系列涉及到自动驾驶问题的任务.carla的主要目标之一是帮助实现自主驾驶研发的灵活化,作为一种 ...
- spring官方文档阅读笔记
前言 几个月前阅读spring文档时做的笔记,记录了以写我认为重要的内容. IOC container IOC(Inverse of Control) 控制反转,也称为DI(Dependency In ...
- Flume官方文档阅读笔记及实际操作
欢迎来到Apache Flume Flume是一个分布式的,高可靠的,高可用的,高性能的海量日志数据采集.聚合和传输的系统.它是基于数据流的简单的灵活的架构.它具有高鲁棒性并且有着可调节的可靠的故障恢 ...
- Qt官方文档阅读笔记-QStyledItemDelegate Class描述
对应的原文为: 笔记如下: 简单描述: QStyledItemDelegate提供了展示和编辑item的功能,让这两种功能更有个性化.QStyledItemDelegate是所有Item View的默 ...
- Ti 官方文档阅读笔记
文章目录 参考资料 Optimizing TI mmWave Radar Configurations for FCC Certification Programming Chirp Paramete ...
最新文章
- 1.5s~0.02s,期间我们可以做些什么?
- Java Setamp;HashSet
- python【数据结构与算法】表达式(前缀中缀后缀表达式)与Two fork tree
- PyTorch + NumPy这么做会降低模型准确率,这是bug还是预期功能?
- sql数据库实例(c#查询登录界面)
- 迪杰斯特拉算法(最短路径)
- 【渝粤教育】电大中专新媒体营销实务 (10)作业 题库
- 千兆云路由器Dlink850L10个0Day漏洞成筛子 PoC满天飞 随便拿Root权限
- Android 属性动画实现一个简单的PopupWindow
- 三菱plc和三菱E700变频器专用协议通讯程序
- ThinkPHP 漏洞检测
- EventListenerTouchOneByOne::create() 单点触摸
- 斐讯 k3 设置 虚拟服务器,斐讯K3无线中继设置教程(无线扩展)
- 哈斯图的画法,以及利用哈斯图寻找极大元之类
- 高校考的计算机应用能力一级,四川省普通高等学校计算机应用知识和能力等级考试一级考.PDF...
- uniapp app微信授权登录
- 配色,蓝色加点橙色好看
- 牛客上C++的面试题和答案
- 获取当前登录用户的IP地址代码
- 人工智能写作的春天来了 除了写作, 人工智能还能写诗、画画
热门文章
- WPF 控件【U】ContentControl(一) ContentControl使用ContentPresenter显示content内容
- Python之时间与时间戳转换
- 抓取预测二手车价格的机器学习模型
- python 字符串转换,如:IloveYOUmoreTHANiCANsay=I love you more than i can say`
- IDEA中alt+enter快捷键不能用,intentions这一项压根就不存在(Nothing to show),不能用我serialVersionUID怎么自动生成!
- 如何编写 Kubernetes 的 YAML 文件?
- 在安卓中使用SVG矢量图
- 电源口防雷器电路设计方案
- 专升本考试计算机知识小抄,考试带“小抄”也是一门技术活
- 爬虫-京东商城商品搜索页爬取