在Carla地图中找到确定的坐标点,并把车放在这个坐标地上是很麻烦的一件事,毕竟地图太大,找坐标如同大海捞针。不如我们利用waypoint方法,找到地图中的道路的id,确定好id之后,在把车放在此路上,比找坐标快多了。

第一步,咱们先把道路给画出来,看看是不是咱们想要的地方:

def draw_waypoints(waypoints, road_id=None, life_time=50.0):for waypoint in waypoints:if(waypoint.road_id == road_id):world.debug.draw_string(waypoint.transform.location, 'O', draw_shadow=False,color=carla.Color(r=0, g=255, b=0), life_time=life_time,persistent_lines=True)#以距离为1的间距创建waypoints
waypoints = world.get_map().generate_waypoints(distance=1.0)
#life_time 为画出的辅助标志存活时间
draw_waypoints(waypoints, road_id=11, life_time=20)

上文代码段中,waypoints 里存放地图里所有的道路点,所以执行此代码段,我们将看到road_id 为11的道路将被标识出来:

就这样我们不断变换road_id的数值,直到找到咱们心仪的道路来安放我们的小车。

假设road_id 为10的道路就是我们要找的路,接下来我们到了第二步:找到这条路上的所有waypoints

filtered_waypoints = []
for waypoint in waypoints:if(waypoint.road_id == 10):filtered_waypoints.append(waypoint)

根据上文代码,所有的绿色点都在这个array里啦。这样范围就缩小很多了。

最后一步在这些点里找心仪的点更方便,将车放在此点上就大功告成了

spawn_point = filtered_waypoints[0].transform
spawn_point.location.z += 2
#bp为blueprint制造出来的小车
vehicle = world.spawn_actor(bp, spawn_point)

当我们运行此代码后车便出现在我们想要的点上了

ps:个人经验这个waypoints的array排列是有规律的,奇数在左,偶数在右,如果说错也请大家指教~

在Carla模拟地图中定位到特定位置并创建汽车相关推荐

  1. SQL截取字符串中的某个特定位置部分

    0x00 前言 在数据库中查询的结果中只想取其中一部分字符串作为结果输出,该如何写sql语句呢? 0x01 根据偏移截取部分字符串 mysql select SUBSTR(name, 1, 5) fr ...

  2. html 各种字符 换位键,excel替换特定位置处的字符

    怎样替换excel单元格中指定位置的字符 EXCEL中,如何替换一个字符串中指定位置的字符? 字符串如下:asdfgv051234501 asdfgv051234503 asdfgv051234505 ...

  3. dom4j在特定位置添加节点

    //在第一个p1下面的age标签之前添加<school>ecit</schlool> public static void addAgeBefore() throws Exce ...

  4. 【Android 逆向】逆向修改游戏应用 ( 分析应用结构 | 定位动态库位置 | 定位动态库中的修改点 | 修改动态库 | 重打包 )

    文章目录 一.应用结构分析 二.定位动态库位置 三.定位动态库中的修改点 四.修改动态库 五.重打包 一.应用结构分析 分析上一篇博客 [Android 逆向]逆向修改游戏应用 ( APK 解析工具 ...

  5. pdf 中的java运行,java - 从pdf文件读取特定位置的itext在intellij中运行,并提供所需的输出,但是可执行jar抛出错误 - 堆栈内存溢出...

    我正在从n个页面的输入pdf文件中读取特定位置,并在这些位置上列出文本. 然后,我编写一个新的pdf文档,并将列表中的这些字符串写入包含单元格的表中. 我提出了两个主要问题. 我想在表中有三列,但是如 ...

  6. Java黑皮书课后题第9章:**9.13(Location类)设计一个名为Location的类,定位二维数组中的最大值及其位置。

    Java黑皮书课后题第9章:**9.13(Location类)设计一个名为Location的类,定位二维数组中的最大值及其位置 题目 破题 代码 Test13 Test13_Location 运行结果 ...

  7. Java黑皮书课后题第8章:*8.13(定位最大的元素)编写下面的方法,返回二维数组中最大元素的位置。返回值是包含两个元素的一维数组,这两个元素表示二维数组中最大元素的行下标和列下标

    *8.13(定位最大的元素)编写下面的方法,返回二维数组中最大元素的位置.返回值是包含两个元素的一维数组,这两个元素表示二维数组中最大元素的行下标和列下标 题目 题目描述与运行示例 破题 代码 题目 ...

  8. 精确定位网页中各个元素的位置

    精确定位网页中各个元素的位置有两种方法:使用表格或层.使用表格是目前比较通用的做法,具体方法是:先在网页中建立一个表格,注意表格的边框宽度应为0.然后再把各个元素按照你的要求放在各个表格单元之中.仔细 ...

  9. 使用python在已存在的excel数据表中的特定位置写入数据

    使用python在已存在的excel数据表中的特定位置写入数据 excel表中的行和列都是从1开始的 代码: # 使用python在已存在的excel数据表中的特定位置写入数据 # excel表中的行 ...

最新文章

  1. 2022-2028年中国汽车工业行业研究及前瞻分析报告
  2. PHP7 学习笔记(八)JetBrains PhpStorm 2017.1 x64 MySQL数据库管理工具的使用
  3. 08 | 替换策略: 缓存满了怎么办?
  4. php atlas,apache atlas是什么
  5. NAND FLASH Controler for IMX31
  6. Seastar:多核机器上编写高效复杂的服务器应用程序的 C++ 库
  7. 机器学习入门|线性回归(二)
  8. 关于php变量的赋值和引用的区别
  9. 存储过程插入100 条数据
  10. 26. Location assign() 方法
  11. 一张图告诉你,选择企业安全软件真的不难!
  12. ZZULIOJ.1092:素数表(函数专题)
  13. 五大常用数据库的应用领域介绍
  14. 2008r2 请检查名称的拼写_甲状腺素、甲状腺激素、T3、T4…这些名称你分得清吗?...
  15. 浅谈Oracle RAC --集群管理软件GI
  16. 怎么查服务器域名 mac系统,苹果6s肿么查看服务器域名
  17. python下载某网站收费文档(一)——配合fiddler半自动版
  18. java nio rewind_java.nio.ByteBuffer 以及flip,clear及rewind区别
  19. 50岁能自学python吗_35岁了零基础自学Python可行吗?
  20. 使用socket.io实现强制踢出其他在线账号

热门文章

  1. php 二维数组更改键名
  2. 2018年农村地区支付总体情况:移动支付接近互联网支付20倍
  3. win10远程计算机管理,教你如何使用Win10远程桌面控制他人电脑?,爱纯净官网
  4. csv数据,已区分训练集和验证集,需要用r语言建立随机森林回归模型,计算模型精度,包括训练集和验证集的r方、mae、rmse
  5. 尚硅谷大数据技术Hadoop教程-笔记03【Hadoop-HDFS】
  6. iOS SpriteKit/SceneKit/Metal浅析
  7. 十二省联考 2019 简要题解
  8. STM32+安信可GP-01定位模块实现获取定位经纬度信息
  9. GripSeal快速接头钢管 铝管 不锈钢管外径密封堵头 G30系列高压外包快速连接器
  10. bfgs算法 matlab,BFGS算法的最优化问题及在MATLAB中的实现