Main Content

Esta página se ha traducido mediante traducción automática. Haga clic aquí para ver la última versión en inglés.

interpolate

Interpolar entre estados

Desde R2019b

Descripción

ejemplo

interpStates = interpolate(space,state1,state2,ratio) interpola estados entre el estado inicial especificado state1 y el estado final state2 basado en la relación de interpolación especificada ratio.

Ejemplos

contraer todo

Cree un espacio de estado SE(2) con propiedades predeterminadas.

space = stateSpaceSE2
space = 
  stateSpaceSE2 with properties:

                 Name: 'SE2'
          StateBounds: [3x2 double]
    NumStateVariables: 3
             WeightXY: 1
          WeightTheta: 0.1000

Crea un par de estados en el espacio 2-D.

state1 = [2 10 -pi];
state2 = [0 -2.5 -pi/4];

Interpolar a mitad de camino entre dos estados.

state = interpolate(space,state1,state2,0.5)
state = 1×3

    1.0000    3.7500   -1.9635

Interpola múltiples puntos con un intervalo fijo.

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
      ⋮

Cree un espacio de estado SE(3) con propiedades predeterminadas.

space = stateSpaceSE3
space = 
  stateSpaceSE3 with properties:

                 Name: 'SE3'
          StateBounds: [7x2 double]
    NumStateVariables: 7
            WeightXYZ: 1
     WeightQuaternion: 0.1000

Crea un par de estados en el espacio 3-D.

state1 = [2 10 3 0.2 0 0 0.8];
state2 = [0 -2.5 4 0.7 0.3 0 0];

Interpolar a mitad de camino entre dos estados.

state = interpolate(space,state1,state2,0.5)
state = 1×7

    1.0000    3.7500    3.5000    0.7428    0.2519         0    0.6203

Interpola múltiples puntos con un intervalo fijo.

states = interpolate(space,state1,state2,0:0.02:1)
states = 51×7

    2.0000   10.0000    3.0000    0.2425         0         0    0.9701
    1.9600    9.7500    3.0200    0.2663    0.0109         0    0.9638
    1.9200    9.5000    3.0400    0.2899    0.0217         0    0.9568
    1.8800    9.2500    3.0600    0.3133    0.0326         0    0.9491
    1.8400    9.0000    3.0800    0.3365    0.0434         0    0.9407
    1.8000    8.7500    3.1000    0.3594    0.0542         0    0.9316
    1.7600    8.5000    3.1200    0.3821    0.0650         0    0.9218
    1.7200    8.2500    3.1400    0.4045    0.0757         0    0.9114
    1.6800    8.0000    3.1600    0.4266    0.0864         0    0.9003
    1.6400    7.7500    3.1800    0.4484    0.0969         0    0.8886
      ⋮

Argumentos de entrada

contraer todo

Objeto de espacio de estado, especificado como objeto stateSpaceSE2, stateSpaceSE3, stateSpaceDubins o stateSpaceReedsShepp .

Estado inicial para la interpolación, especificado como un vector de valores reales de tres o siete elementos.

Para los objetos del espacio de estados 2-D stateSpaceSE2, stateSpaceDubins y stateSpaceReedsShepp, el estado es un vector de la forma [x y theta], que define la posición xy y el ángulo de orientación theta de un estado en el espacio de estados.

Para el objeto de espacio de estados 3-D stateSpaceSE3, el estado es un vector de la forma [x y z qw qx qy qz], que define la posición xyz y orientación del cuaternión [qw qx qy qz] de un estado en el espacio de estados.

Tipos de datos: single | double

Estado final de la interpolación, especificado como un vector de valores reales de tres o siete elementos.

Para los objetos del espacio de estados 2-D stateSpaceSE2, stateSpaceDubins y stateSpaceReedsShepp, el estado es un vector de la forma [x y theta], que define la posición xy y el ángulo de orientación theta de un estado en el espacio de estados.

Para el objeto de espacio de estados 3-D stateSpaceSE3, el estado es un vector de la forma [x y z qw qx qy qz], que define la posición xyz y orientación del cuaternión [qw qx qy qz] de un estado en el espacio de estados.

Tipos de datos: single | double

Relación de interpolación, especificada como un escalar en el rango de [0, 1], o un vector columna de elemento n de valores en el rango [0, 1] . n es el número de puntos de interpolación deseados.

Tipos de datos: single | double

Argumentos de salida

contraer todo

Estados interpolados, devueltos como una n por 3 o n por 7 de valores reales. n es el número de puntos de interpolación especificados por el argumento de entrada ratio .

Para los objetos del espacio de estados 2-D stateSpaceSE2, stateSpaceDubins y stateSpaceReedsShepp, cada fila tiene la forma [x y theta], que define la posición xy y el ángulo de orientación theta de los estados interpolados.

Para el objeto de espacio de estados 3-D stateSpaceSE3, cada fila tiene la forma [x y z qw qx qy qz], que define la posición xyz y la orientación del cuaternión. [qw qx qy qz] de los estados interpolados.

Tipos de datos: single | double

Historial de versiones

Introducido en R2019b