Интерполяция между состояниями
Создайте пространство состояний SE (2) со свойствами по умолчанию.
space = stateSpaceSE2
space = stateSpaceSE2 with properties: Name: 'SE2' StateBounds: [3×2 double] NumStateVariables: 3 WeightXY: 1 WeightTheta: 0.1000
Создайте пару состояний в 2-D пространстве.
state1 = [2 10 -pi]; state2 = [0 -2.5 -pi/4];
Интерполяция на полпути между двумя состояниями.
state = interpolate(space,state1,state2,0.5)
state = 1×3
1.0000 3.7500 -1.9635
Интерполяция нескольких точек с фиксированным интервалом.
states = interpolate(space,state1,state2,0:0.02:1)
states = 51×3
2.0000 10.0000 -3.1416
1.9600 9.7500 -3.0945
1.9200 9.5000 -3.0473
1.8800 9.2500 -3.0002
1.8400 9.0000 -2.9531
1.8000 8.7500 -2.9060
1.7600 8.5000 -2.8588
1.7200 8.2500 -2.8117
1.6800 8.0000 -2.7646
1.6400 7.7500 -2.7175
⋮
Создайте пространство состояний SE (3) со свойствами по умолчанию.
space = stateSpaceSE3
space = stateSpaceSE3 with properties: Name: 'SE3' StateBounds: [7×2 double] NumStateVariables: 7 WeightXYZ: 1 WeightQuaternion: 0.1
Создайте пару состояний в трехмерном пространстве.
state1 = [2 10 3 0.2 0 0 0.8]; state2 = [0 -2.5 4 0.7 0.3 0 0];
Интерполяция на полпути между двумя состояниями.
state = interpolate(space,state1,state2,0.5)
state = 1×7
1 3.75 3.5 0.7428 0.25188 0 0.62033
Интерполяция нескольких точек с фиксированным интервалом.
states = interpolate(space,state1,state2,0:0.02:1)
states = 51×7
2 10 3 0.24254 0 0 0.97014
1.96 9.75 3.02 0.26633 0.010877 0 0.96382
1.92 9.5 3.04 0.28994 0.021745 0 0.9568
1.88 9.25 3.06 0.31333 0.032598 0 0.94908
1.84 9 3.08 0.3365 0.043428 0 0.94068
1.8 8.75 3.1 0.35943 0.054225 0 0.9316
1.76 8.5 3.12 0.38209 0.064984 0 0.92184
1.72 8.25 3.14 0.40448 0.075695 0 0.91141
1.68 8 3.16 0.42657 0.086352 0 0.90032
1.64 7.75 3.18 0.44835 0.096946 0 0.88858
⋮
space
- Объект пространства состоянийstateSpaceSE2
| объекта stateSpaceSE3
| объекта stateSpaceDubins
| объекта stateSpaceReedsShepp
объектОбъект пространства состояний, заданный как stateSpaceSE2
, stateSpaceSE3
, stateSpaceDubins
, или stateSpaceReedsShepp
объект.
state1
- Начальное состояние для интерполяцииНачальное состояние для интерполяции, заданное как трехэлементный или семиэлементный вектор действительных значений.
Для 2-D объектов пространства состояний stateSpaceSE2
, stateSpaceDubins
, и stateSpaceReedsShepp
, состояние является вектором формы [x y theta]
, который задает xy положение и угол ориентации theta
состояния в пространстве состояний.
Для объекта пространства состояний 3-D stateSpaceSE3
, состояние является вектором формы [x y z qw qx qy qz]
, который определяет xyz ориентацию -позиции и кватерниона [qw qx qy qz]
состояния в пространстве состояний.
Типы данных: single
| double
state2
- Конечное состояние для интерполяцииКонечное состояние для интерполяции, заданное как трехэлементный или семиэлементный вектор действительных значений.
Для 2-D объектов пространства состояний stateSpaceSE2
, stateSpaceDubins
, и stateSpaceReedsShepp
, состояние является вектором формы [x y theta]
, который задает xy положение и угол ориентации theta
состояния в пространстве состояний.
Для объекта пространства состояний 3-D stateSpaceSE3
, состояние является вектором формы [x y z qw qx qy qz]
, который определяет xyz ориентацию -позиции и кватерниона [qw qx qy qz]
состояния в пространстве состояний.
Типы данных: single
| double
ratio
- Коэффициент интерполяцииКоэффициент интерполяции, заданный как скаляр в области значений [0, 1] или n элемент значений в области значений [0, 1]. n - количество необходимых точек интерполяции.
Типы данных: single
| double
interpStates
- Интерполированные состоянияИнтерполированные состояния, возвращенные как n -by-3 или n -by-7 матрица вещественных значений. n - количество точек интерполяции, заданное ratio
входной параметр.
Для 2-D объектов пространства состояний stateSpaceSE2
, stateSpaceDubins
, и stateSpaceReedsShepp
каждая строка имеет форму [x y theta]
, который задает xy положение и угол ориентации theta
из интерполированных состояний.
Для объекта пространства состояний 3-D stateSpaceSE3
каждая строка имеет форму [x y z qw qx qy qz]
, который определяет xyz ориентацию -позиции и кватерниона [qw qx qy qz]
из интерполированных состояний.
Типы данных: single
| double
stateSpaceDubins
| stateSpaceReedsShepp
| stateSpaceSE2
| stateSpaceSE3
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.