driving.scenario.guardrailMesh

Поймайте в сети представление поручня в ведущем сценарии

Описание

пример

mesh = driving.scenario.guardrailMesh создает представление mesh поручня как extendedObjectMesh объект, mesh.

Примеры

свернуть все

Добавьте предварительно созданную mesh поручня в ведущий сценарий. Затем используйте lidarPointCloudGenerator Системный объект, чтобы сгенерировать облако точек mesh поручня.

Создайте и покажите предварительно созданную mesh поручня.

mesh = driving.scenario.guardrailMesh;
show(mesh);

Figure contains an axes. The axes contains an object of type patch.

Создайте ведущий сценарий.

s = drivingScenario;

Добавьте прямую дорогу к ведущему сценарию. Дорога имеет одну полосу в каждом направлении.

road1 = road(s, [0 0 0; 25 0 0], 'Lanes', lanespec([1 1]));

Добавьте поручень в дорогу вдоль правого края.

barrier(s, road1, 'Mesh', mesh); 

Добавьте автомобиль как автомобиль, оборудованный датчиком и как агент неэго и примените автомобильную mesh к обоим использованиям driving.scenario.carMesh.

carMesh = driving.scenario.carMesh;
egoVehicle = vehicle(s,'ClassID',1,'Mesh',carMesh);
smoothTrajectory(egoVehicle,[1 -2 0; 21.3 -2 0], 20);
car = vehicle(s,'Position',[15 2 0],'Yaw',180,'ClassID',1,'Mesh',carMesh);

Постройте ведущий сценарий. Установите пару "имя-значение" 'Meshes','on' показать сетки агентов в графике.

plot(s,'Meshes','on');

Создайте lidarPointCloudGenerator Системный объект. Установите профили агента Системного объекта тем в ведущем сценарии.

lidar = lidarPointCloudGenerator;
lidar.ActorProfiles = actorProfiles(s);

Сгенерируйте облако точек лидара ведущего сценария.

player = pcplayer([-20 20],[-10 10],[0 4]);

while advance(s)
  tgts = targetPoses(egoVehicle);
  rdmesh = roadMesh(egoVehicle);
  [ptCloud, isValidTime] = lidar(tgts,rdmesh,s.SimulationTime);
  if isValidTime
      view(player,ptCloud);
  end
end

Figure contains an axes. The axes contains 6 objects of type patch, line.

Figure Point Cloud Player contains an axes. The axes contains an object of type scatter.

Выходные аргументы

свернуть все

Поймайте в сети представление поручня, возвращенного как extendedObjectMesh объект. Источник mesh расположен в ее геометрическом центре.

Можно разработать собственные сетки при помощи этой предварительно созданной mesh поручня как начальная точка. В командной строке MATLAB®, введите:

edit driving.scenario.guardrailMesh
Введенный в R2021a