show3D

Визуализация сценария БПЛА в 3-D

    Описание

    пример

    [ax,plottedFrames] = show3D(scene) визуализирует последние состояния платформ и датчиков в сценарии БПЛА scene наряду со всеми статическими сетками. Функция также возвращает оси, на которых строится сцена, и системы координат, на которых строится каждый объект.

    [ax,plottedFrames] = show3D(scene,time) визуализирует сценарий БПЛА в заданном time.

    [ax,plottedFrames] = show3D(___,Name,Value) задает дополнительные опции с использованием Пар "имя-значение". Заключайте каждую Name в кавычках.

    Примеры

    свернуть все

    Создайте сценарий БПЛА и установите его локальный источник.

    scene = uavScenario("UpdateRate",200,"StopTime",2,"ReferenceLocation",[46, 42, 0]); 

    Добавьте инерционную систему координат MAP к скнеарио.

    scene.addInertialFrame("ENU","MAP",trvec2tform([1 0 0])); 

    Добавьте к сценарию один mesh заземления и две цилиндрические сетки препятствий.

    scene.addMesh("Polygon", {[-100 0; 100 0; 100 100; -100 100],[-5 0]},[0.3 0.3 0.3]);
    scene.addMesh("Cylinder", {[20 10 10],[0 30]}, [0 1 0]); 
    scene.addMesh("Cylinder", {[46 42 5],[0 20]}, [0 1 0], "UseLatLon", true); 

    Создайте платформу БПЛА с заданной траекторией путевой точки в сценарии. Определите mesh для платформы БПЛА.

    traj = waypointTrajectory("Waypoints", [0 -20 -5; 20 -20 -5; 20 0 -5],"TimeOfArrival",[0 1 2]); 
    uavPlat = uavPlatform("UAV",scene,"Trajectory",traj); 
    updateMesh(uavPlat,"quadrotor", {4}, [1 0 0],eul2tform([0 0 pi])); 
    addGeoFence(uavPlat,"Polygon", {[-50 0; 50 0; 50 50; -50 50],[0 100]},true,"ReferenceFrame","ENU"); 

    Прикрепить датчик INS к передней части платформы БПЛА.

    insModel = insSensor(); 
    ins = uavSensor("INS",uavPlat,insModel,"MountingLocation",[4 0 0]); 

    Визуализируйте сценарий в 3-D.

    ax = show3D(scene); 
    axis(ax,"equal"); 

    Симулируйте сценарий.

    setup(scene); 
    while advance(scene) 
        % Update sensor readings 
        updateSensors(scene); 
    
        % Visualize the scenario 
        show3D(scene,"Parent",ax,"FastUpdate",true); 
        drawnow limitrate 
    end 

    Входные параметры

    свернуть все

    Сценарий БПЛА, заданный как uavScenario объект.

    Метка времени, в которой можно показать сценарий, заданная как неотрицательный скаляр. Метка времени должна быть уже сохранена в сценарии. Для изменения количества сохраненных меток времени используйте HistoryBufferSize свойство uavScenario объект, scene.

    Аргументы в виде пар имя-значение

    Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

    Пример:

    Родительские оси для графического изображения, заданные как axes объект или uiaxes объект.

    Включите обновление с предыдущей карты, заданное как true или false. Если задано как trueграфики функций карты посредством легкого обновления предыдущей карты на рисунке. Если задано как falseКаждый раз графиков функций всю сцену на фигуре.

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

    свернуть все

    Оси, на которых построен сценарий, возвращаются как axes объект или uiaxes объект.

    Построенная информация о системе координат, возвращенная как структура hgtransform объекты. Этот struct имеет два типа имен полей:

    • Имена инерционных систем координат - Соответствующее значение поля является hgtransform объект, который содержит информацию преобразования из системы координат ego в системе координат ENU.

    • Имена платформ БПЛА - Соответствующее значение поля представляет собой структуру, содержащую hgtransform информацию для всех систем координат, определенных на платформе.

    Введенный в R2020b