Создание плоттера ориентации
создает ориентировочный плоттер для использования с графиком кинотеатра oPlotter = orientationPlotter(tp)tp.
создает ориентировочный плоттер с дополнительными опциями, заданными одним или несколькими oPlotter = orientationPlotter(tp,Name,Value)Name,Value аргументы пары.
В этом примере показано, как анимировать ориентацию колебательного устройства.
Груз rpy_9axis.mat. Данные в rpy_9axis.mat регистрируют данные акселерометра, гироскопа и датчика магнитометра от устройства, колеблющегося по тангажу (вокруг оси y), затем рыскание (вокруг оси z), затем крен (вокруг оси x). При записи ось X устройства указывала на юг.
ld = load('rpy_9axis.mat')ld = struct with fields:
Fs: 200
sensorData: [1x1 struct]
Установите частоту дискретизации. Извлеките данные акселерометра и гироскопа. Установите коэффициент прореживания равным 2. Использовать fuse для создания косвенного фильтра слияния датчиков Калмана на основе данных.
accel = ld.sensorData.Acceleration; gyro = ld.sensorData.AngularVelocity; Fs = ld.Fs; decim = 2; fuse = imufilter('SampleRate',Fs,'DecimationFactor',decim);
Получение информации о позе данных предохранителя.
pose = fuse(accel,gyro);
Создайте театральный сюжет. Добавить в график кинотеатра ориентировочный плоттер с 'DisplayName' установить в значение 'Fused Data' и 'LocalAxesLength' установить в значение 2.
tp = theaterPlot('XLimit',[-2 2],'YLimit',[-2 2],'ZLimit',[-2 2]); op = orientationPlotter(tp,'DisplayName','Fused Data',... 'LocalAxesLength',2);
Выполните цикл с информацией о позе для анимации изменяющейся ориентации.
for i=1:numel(pose) plotOrientation(op, pose(i)) drawnow end

tp - Театральный сюжетtheaterPlot объектТеатральный участок, указанный как theaterPlot объект.
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
'HistoryDepth',6'DisplayName' - Имя графика для отображения в легендеИмя графика для отображения в легенде, указанное как разделенная запятыми пара, состоящая из 'DisplayName' и вектор символов или строковый скаляр. Если имя не указано, запись не отображается.
Пример: 'DisplayName','Radar Detections'
'HistoryDepth' - Количество предыдущих обновлений дорожки для отображения0 (по умолчанию) | неотрицательное целое число, меньшее или равное 100Количество предыдущих обновлений дорожки для отображения, указанное как пара, разделенная запятыми, состоящая из 'HistoryDepth' и неотрицательное целое число, меньшее или равное 100. Если установлено значение 0, то предыдущие обновления не отображаются.
'Marker' - Символ маркера'o' (по умолчанию) | символьный вектор | строковый скалярСимвол маркера, заданный как разделенная запятыми пара, состоящая из 'Marker' и один из этих символов.
| Стоимость | Описание |
|---|---|
'o' | Круг |
'+' | Знак «Плюс» |
'*' | Звездочка |
'.' | Пункт |
'x' | Крест |
'_' | Горизонтальная линия |
'|' | Вертикальная линия |
'square' или 's' | Квадрат |
'diamond' или 'd' | Алмаз |
'^' | Треугольник, направленный вверх |
'v' | Треугольник, направленный вниз |
'>' | Прямоугольный треугольник |
'<' | Треугольник, указывающий влево |
'pentagram' или 'p' | Пятиконечная звезда (пентаграмма) |
'hexagram' или 'h' | Шестиконечная звезда (гексаграмма) |
'none' | Без маркеров |
'MarkerSize' - Размер маркера10 (по умолчанию) | положительное целое числоРазмер маркера, указанного в точках как разделенная запятыми пара, состоящая из 'MarkerSize' и положительное целое число.
'MarkerEdgeColor' - Цвет контура маркера'black' (по умолчанию) | символьный вектор | строковый скаляр | триплет RGB | шестнадцатеричный цветовой кодЦвет контура маркера, заданный как разделенная запятыми пара, состоящая из 'MarkerEdgeColor' и вектор символа, скаляр строки, триплет RGB или шестнадцатеричный цветовой код. Цвет по умолчанию: 'black'.
'MarkerFaceColor' - Цвет заливки маркера'none' (по умолчанию) | символьный вектор | строковый скаляр | триплет RGB | шестнадцатеричный цветовой кодЦвет контура маркера, заданный как разделенная запятыми пара, состоящая из 'MarkerFaceColor' и символьный вектор, строковый скаляр, триплет RGB, шестнадцатеричный цветовой код или 'none'. Значение по умолчанию: 'none'.
'FontSize' - Размер шрифта для маркировки дорожек10 (по умолчанию) | положительное целое числоРазмер шрифта для маркировки дорожек, указанный как разделенная запятыми пара, состоящая из 'FontSize' и положительное целое число, представляющее размер точки шрифта.
'LabelOffset' - Зазор между меткой и позиционной точкой[0 0 0] (по умолчанию) | трехэлементный вектор строкиПромежуток между меткой и позиционной точкой, которую она аннотирует, определяемый как разделенная запятыми пара, состоящая из 'LabelOffset' и трехэлементный вектор строки. Задайте
смещение [x y z] в
метрах.
'LocalAxesLength' - Длина линии1 (по умолчанию) | положительный скалярДлина линии, используемой для обозначения каждой из локальных осей x, y и z заданной ориентации, определяемой как разделенная запятыми пара, состоящая из 'LocalAxesLength' и положительный скаляр. 'LocalAxesLength' в метрах.
'Tag' - Марка для связи с плоттером'PlotterN'
(по умолчанию) | символьный вектор | строковый скалярМарка для связи с плоттером, заданная как разделенная запятыми пара, состоящая из 'Tag' и вектор символов или строковый скаляр. Значение по умолчанию: 'PlotterN', где N - целое число, соответствующее N-му плоттеру, связанному с theaterPlot.
Марки позволяют идентифицировать объекты плоттера, например, при поиске с помощью findPlotter.
clearData | clearPlotterData | plotOrientation | theaterPlot
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.