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.

distance

Distancia entre dos estados

Desde R2019b

Descripción

ejemplo

dist = distance(space,states1,states2) devuelve la distancia entre states1 y states2 en el espacio de estado especificado space.

Ejemplos

contraer todo

Cree un espacio de estados SE(3).

space = stateSpaceSE3
space = 
  stateSpaceSE3 with properties:

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

Calcular la distancia entre dos estados.

dist = distance(space,[2 10 3 0.2 0 0 0.8],[0 -2.5 4 0.7 0.3 0 0])
dist = 12.7269

Calcula la distancia euclidiana entre dos estados.

space.WeightQuaternion = 0;
distEuc = distance(space,[2 10 3 0.2 0 0 0.8; 4 5 2 1 2 4 2],[62 5 33 0.2 0 0 0.8; 9 9 3 3 1 3.1 7])
distEuc = 2×1

   67.2681
    6.4807

Argumentos de entrada

contraer todo

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

Estados iniciales para el cálculo de la distancia, especificados como una n por 3 o n por 7 de valores reales. n es el número de estados especificados.

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 un estado en el espacio de estados.

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 un estado en el espacio de estados.

La función admite las siguientes combinaciones para el cálculo de distancias:

  • n-a- nn número de estados en states1 y n número de estados en states2.

    Por ejemplo, distance(space,rand(10,7),rand(10,7))

  • 1 a n - 1 estado en states1 y n número de estados en states2.

    Por ejemplo, distance(space,rand(1,7),rand(10,7))

  • n-to-1 - n número de estados en states1 y 1 estado en states2.

    Por ejemplo, distance(space,rand(10,7),rand(1,7))

Tipos de datos: single | double

Estados finales para el cálculo de la distancia, especificados como una n por 3 o n por 7 de valores reales. n es el número de estados especificados.

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 un estado en el espacio de estados.

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 un estado en el espacio de estados.

La función admite las siguientes combinaciones para el cálculo de distancias:

  • n-a- nn número de estados en states1 y n número de estados en states2.

    Por ejemplo, distance(space,rand(10,7),rand(10,7))

  • 1 a n - 1 estado en states1 y n número de estados en states2.

    Por ejemplo, distance(space,rand(1,7),rand(10,7))

  • n-to-1 - n número de estados en states1 y 1 estado en states2.

    Por ejemplo, distance(space,rand(10,7),rand(1,7))

Tipos de datos: single | double

Argumentos de salida

contraer todo

Distancia entre estados, devuelta como un vector columna de elemento n . n es el número de estados especificados.

La función admite las siguientes combinaciones para el cálculo de distancias:

  • n-a- nn número de estados en states1 y n número de estados en states2.

  • 1 a n - 1 estado en states1 y n número de estados en states2.

  • n-to-1 - n número de estados en states1 y 1 estado en states2.

Tipos de datos: single | double

Historial de versiones

Introducido en R2019b