主要内容

光线交叉

找到光线和被占用的地图单元格的交点

描述

intersectionPts=光线交点(地图,姿势,,最大范围)返回指定区域中光线和占用单元格的交点地图.光线从指定的光源发出姿势.交点将在世界坐标系中返回。如果指定坐标系下没有交点最大范围,[楠楠]他回来了。默认情况下占用阈值属性用于确定占用的单元格。

实例

intersectionPts=光线交点(地图,姿势,,最大范围,阈值)基于指定的方向返回交点阈值对于占用率值。大于或等于阈值的值被视为占用。

例子

全部崩溃

创建占用栅格地图。添加障碍物并将其充气。使用低分辨率地图说明使用栅格单元的重要性。显示地图。

地图=职业地图(10,10,2);障碍=[4 10;3 5;7 7];设置占用率(地图,障碍物,一个(长度(障碍物),1))充气(地图,0.25)显示(地图)

图中包含一个轴。带有标题占用网格的轴包含一个image类型的对象。

查找从给定车辆姿势发射的已占用单元和光线的交点。指定这些光线的最大范围和角度。最后一条光线不与“最大范围”内的障碍物相交,因此它没有碰撞点。

maxrange=6;角度=[pi/4,-pi/4,0,-pi/8];vehiclePose=[4,4,pi/2];intsectionPts=光线交叉点(地图,车辆模式,角度,maxrange,0.7)
INTPTS=4×23.5000 4.5000 6.0000 6.0000 4.0000 9.0000楠楠楠

从这个姿势画出交点和光线。

持有情节(intsectionPts (: 1) intsectionPts (:, 2),“*r”)%交集点地块(车辆通行证(1)、车辆通行证(2),“ob”)%车辆构成对于i=1:3绘图([车辆状态(1),intsectionPts(i,1)],...[车辆牌照(二),牌照(一,二)],,“- b”)%绘制相交光线终止绘图([车辆状态(1),车辆状态(1)-6*sin(角度(4)),...[vehiclePose(2),vehiclePose(2)+6*cos(角度(4))],“- b”)%无交叉射线传奇(“碰撞点”,车辆位置的,“射线”,“位置”,“东南”)

图中包含一个坐标轴。以“占用网格”为标题的坐标轴包含图像、直线等7个对象。这些对象代表碰撞点,车辆位置,光线。

输入参数

全部崩溃

映射表示,指定为职业地图对象。这个对象表示传感器的环境。对象包含一个矩阵网格,其值表示该单元格占用的概率。接近1的值表示该单元格包含障碍的高概率。接近0的值表示该单元未被占用和无障碍物的高概率。

传感器的位置和方向,指定为[xY西塔]向量。传感器姿势是一个xY角方位位置西塔(以弧度为单位)从x-轴心国。

从传感器发出的光线角度,指定为以弧度为单位的元素矢量。这些角度与指定的传感器相关姿势.

激光范围传感器的最大范围,以米为单位指定为标量。范围值大于或等于最大范围沿光线的整个长度被视为自由,直到最大范围.

已占用单元格的阈值,指定为0到1之间的标量。大于或等于阈值的占用值将被视为占用单元,以触发交点。

输出参数

全部崩溃

交叉点,返回为N2的矩阵[xY]世界框架中的配对,在哪里N长度是多少.

另见

|||(机器人系统工具箱)

话题

在R2019b中引入