主要内容

obstacleGeometry

障碍物的几何性质

描述

障碍物geomStruct) = obstacleGeometry (胶囊返回胶囊列表中每个障碍物的障碍物ID和几何参数。

例子

障碍物geomStruct) = obstacleGeometry (胶囊选择性障碍物指定要为哪个障碍返回ID和几何参数。

障碍物geomStruct状态) = obstacleGeometry (胶囊选择性障碍物返回每个ID是否在的指示符selectobstacleIDs的存在。

例子

全部折叠

在使用的环境中添加障碍dynamicCapsuleList对象。修改障碍物的属性。清除环境中的障碍。可视化环境中所有对象在不同时间戳下的状态。

创建dynamicCapsuleList对象。提取用于对象路径的时间戳数目的最大步骤数。

capsuleList = dynamicCapsuleList;numSteps = capsuleList.MaxNumSteps;

增加障碍

指定两个障碍的状态为线性路径x= 0米至x= 100两个障碍物在地面上的相反方向相隔10 my设在。

obsState = linspace (0, 1, numSteps)”。* (100 0 0);obsState1 = obsState+[0 10 0];obsState2 = obsState+[0 -10 0];

使用障碍物id为两个障碍物生成默认的姿态和几何结构。

[obsid,obsPoseStruct] = obstaclePose(胶囊列表,[1 2]);[obsIDs, obsGeomStruct] = obstacleGeometry (capsuleList obsIDs);

更新障碍

给障碍分配状态。

obsposstruct(1)。状态=obsState1;obsposstruct(2)。状态=obsState2;

增加第一个障碍物的半径到2米。

obsGeomStruct (1) .Geometry。半径= 2;

更新障碍使用updateObstaclePose更新障碍几何体对象函数。

UpdateObstacleState(胶囊列表、OBSID、obsPoseStruct);updateObstacleGeometry(胶囊列表、OBSID、OBSGomestruct);

想象的障碍。

显示(capsuleList“时间步”1: numSteps);轴平等的

图中包含一个轴对象。axis对象包含2个patch类型的对象。

移除障碍

通过指定它的ID,从胶囊列表中移除第一个障碍。

removeObstacle (capsuleList, 1);

再次想象障碍。

显示(capsuleList“时间步”1: numSteps);轴平等的

图中包含一个轴对象。axis对象包含一个patch类型的对象。

输入参数

全部折叠

动态胶囊列表,指定为dynamicCapsuleListdynamicCapsuleList3D对象。

障碍物id,指定为一个正整数向量。这个函数只返回在这个向量中指定的障碍物id和几何参数。

输出参数

全部折叠

障碍物的id,返回为正整数向量。

障碍物的几何参数,作为结构或结构数组返回,其中每个结构包含几何相关障碍物的字段。此结构的字段取决于您是否正在使用dynamicCapsuleListdynamicCapsuleList3D对象。

表示存在障碍,返回为N-元素列向量为1、0和负1。每个值表示相关障碍物是否存在(1)、更新(0),或复制品(-1).如果你不止一次地指定同一个自我肉体本我选择性障碍物参数,则函数将该ID的所有实例标记为第一个实例之后的重复实例并忽略它们。

扩展功能

C / c++代码生成
使用Matlab®编码器生成C和C++代码™.

介绍了R2020b