coveragePlotter

Создайте плоттер покрытия

Описание

cPlotter = coveragePlotter(tp) создает CoveragePlotter объект для использования с театром строит объект, tp. Используйте plotCoverage функционируйте, чтобы построить покрытие датчика через созданный CoveragePlotter объект.

пример

cPlotter = coveragePlotter(tp,Name,Value) создает CoveragePlotter объект с дополнительными опциями, заданными одним или несколькими Name,Value парные аргументы.

Примеры

свернуть все

Создайте театральный график и установите пределы для его осей. Создайте плоттер покрытия с DisplayName установите на 'Sensor Coverage'.

tp = theaterPlot('XLim',[-40 40],'YLim',[-40 40],'ZLim',[-40 40]);
covp = coveragePlotter(tp,'DisplayName','Sensor Coverage');

Настройте настройку датчиков, покрытие которых должно быть построено.

 sensor = struct('Index',1,'ScanLimits',[-45 45],'FieldOfView',[10;40],...
       'LookAngle',-10,'Range',30,'Position',zeros(1,3),'Orientation',zeros(1,3));

Постройте покрытие с помощью plotCoverage функционируйте и визуализируйте результаты. Темно-синий представляет луч датчика тока, и голубой представляет зону охвата.

plotCoverage(covp,sensor)
view(70,30)

Figure contains an axes object. The axes object contains an object of type patch. This object represents Sensor Coverage.

Создайте театральный график и создайте плоттер покрытия.

tp = theaterPlot('XLim',[-1e7 1e7],'YLim',[-1e7 1e7],'ZLim',[-2e6 1e6]);
covp = coveragePlotter(tp,'DisplayName','Sensor Coverage');
view(25,20)

Смоделируйте радар несканирования и растровый радар сканирования.

radarIndex = 1;
radar =fusionRadarSensor(radarIndex,'No Scanning','RangeLimits',[0 1e8]);
RasterIndex = 2;
raster = fusionRadarSensor(RasterIndex,'Raster','RangeLimits',[0 1e8]);

Создайте целевую платформу.

tgt = struct( ...
        'PlatformID', 1, ...
        'Position', [0 -50e3 -1e3], ...
        'Speed', -1e3);

Симулируйте датчики и визуализируйте их шаблон сканирования.

time = 0;
timestep = 1;
stopTime = 90;
while time < stopTime
    time = time+timestep;
    radar(tgt,time);
    raster(tgt,time);
    
    % Obtain sensor configuration using coverageConfig. 
    radarcov = coverageConfig(radar);
    ircov = coverageConfig(raster);
    
    % Update plotter
    plotCoverage(covp,[radarcov,ircov],... 
        [radarIndex, RasterIndex],... 
        {'blue','red'}... 
        );
    pause(0.03)
end

Figure contains an axes object. The axes object contains an object of type patch. This object represents Sensor Coverage.

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

свернуть все

Театральный график в виде theaterPlot объект.

Аргументы name-value

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

Пример: 'DisplayName', 'Radar1'

Постройте имя, чтобы отобразиться в легенде в виде разделенной запятой пары, состоящей из 'DisplayName' и вектор символов или строковый скаляр. Если никакое имя не задано, никакую запись не показывают.

Пример: 'DisplayName','Radar Detections'

Зона охвата и датчик излучают цвет в виде вектора символов, строкового скаляра, триплета RGB, шестнадцатеричного цветового кода или 'auto'. Когда цвет задан, плоттер чертит все зоны охвата и излучает с заданным цветом. Если цвет выбран к 'auto', плоттер использует последовательность цветов оси, чтобы присвоить цвета датчикам на основе их индексов датчика.

Столкнитесь с альфа-значениями зоны охвата и луча датчика в виде вектора с 2 элементами из неотрицательных скаляров. Первым элементом является значение, применился к лучу, и вторым элементом является значение, применился к зоне охвата.

Тег, сопоставленный с плоттером в виде вектора символов или строки. Можно использовать findPlotter функция, чтобы идентифицировать плоттеры на основе их тега. Значением по умолчанию является 'PlotterN', где N является целым числом, которое соответствует N th плоттер, сопоставленный с theaterPlot.

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

свернуть все

Плоттер покрытия, возвращенный как CoveragePlotter объект. Можно изменить этот объект путем изменения его значений свойств. Имена свойства соответствуют аргументам пары "имя-значение" coveragePlotter функция.

Чтобы построить покрытие, используйте plotCoverage функция.

Смотрите также

| | |

Введенный в R2021a