show
Visualizar segmento de ruta
Descripción
show(
traza el segmento de la ruta con las posiciones de inicio y destino y sus rumbos.pathSeg
)
show(
también especifica pares pathSeg
,Name,Value
)Name,Value
para controlar la configuración de visualización.
Ejemplos
Cree un objeto dubinsConnection
.
dubConnObj = dubinsConnection;
Define las poses de inicio y destino como vectores [x y theta]
.
startPose = [0 0 0]; goalPose = [1 1 pi];
Calcula un segmento de ruta válido para conectar las poses.
[pathSegObj, pathCosts] = connect(dubConnObj,startPose,goalPose);
Muestra la ruta generada.
show(pathSegObj{1})
Cree un objeto reedsSheppConnection
.
reedsConnObj = reedsSheppConnection;
Define las poses de inicio y destino como vectores [x y theta]
.
startPose = [0 0 0]; goalPose = [1 1 pi];
Calcula un segmento de ruta válido para conectar las poses.
[pathSegObj,pathCosts] = connect(reedsConnObj,startPose,goalPose);
Muestra la ruta generada. Observe la dirección de los giros.
show(pathSegObj{1})
pathSegObj{1}.MotionTypes
ans = 1×5 cell
{'L'} {'R'} {'L'} {'N'} {'N'}
pathSegObj{1}.MotionDirections
ans = 1×5
1 -1 1 1 1
Deshabilite esta secuencia de movimiento específica en un nuevo objeto de conexión. Reduce MinTurningRadius
si el robot es más maniobrable. Aumente el coste inverso para reducir la probabilidad de que se utilicen direcciones inversas. Conecta las poses nuevamente para obtener una ruta diferente.
reedsConnObj = reedsSheppConnection('DisabledPathTypes',{'LpRnLp'}); reedsConnObj.MinTurningRadius = 0.5; reedsConnObj.ReverseCost = 5; [pathSegObj,pathCosts] = connect(reedsConnObj,startPose,goalPose); pathSegObj{1}.MotionTypes
ans = 1×5 cell
{'L'} {'S'} {'L'} {'N'} {'N'}
show(pathSegObj{1}) xlim([0 1.5]) ylim([0 1.5])
Cree un objeto dubinsConnection
.
dubConnObj = dubinsConnection;
Define las poses de inicio y destino como vectores [x y theta]
.
startPose = [0 0 0]; goalPose = [1 1 pi];
Calcula un segmento de ruta válido para conectar las poses.
[pathSegObj,pathCosts] = connect(dubConnObj,startPose,goalPose);
Muestra la ruta generada.
show(pathSegObj{1})
Interpola poses a lo largo de la ruta. Haz una pose cada 0,2 metros, incluidas las transiciones entre giros.
length = pathSegObj{1}.Length; poses = interpolate(pathSegObj{1},0:0.2:length)
poses = 32×3
0 0 0
0.1987 -0.0199 6.0832
0.3894 -0.0789 5.8832
0.5646 -0.1747 5.6832
0.7174 -0.3033 5.4832
0.8309 -0.4436 5.3024
0.8418 -0.4595 5.3216
0.9718 -0.6110 5.5216
1.1293 -0.7337 5.7216
1.3081 -0.8226 5.9216
1.5010 -0.8743 6.1216
1.7003 -0.8866 0.0384
1.8980 -0.8590 0.2384
2.0864 -0.7927 0.4384
2.2578 -0.6904 0.6384
⋮
Utilice la función quiver
para trazar estas poses.
quiver(poses(:,1),poses(:,2),cos(poses(:,3)),sin(poses(:,3)),0.5)
Argumentos de entrada
Segmento de ruta, especificado como un objeto dubinsPathSegment
o reedsSheppPathSegment
.
Argumentos de par nombre-valor
Especifique pares de argumentos opcionales como Name1=Value1,...,NameN=ValueN
, donde Name
es el nombre del argumento y Value
es el valor correspondiente. Los argumentos nombre-valor deben aparecer después de los otros argumentos, pero el orden de los pares no importa.
En versiones anteriores a R2021a, use comas para separar cada nombre y valor, y encierre Name
entre comillas.
Ejemplo: 'Headings',{'transitions'}
Ejes sobre los que se trazará la ruta, especificados como un controlador Axes
.
Ángulos de rumbo que se mostrarán, especificados como un arreglo de celdas de vectores de caracteres o escalares de cadena. Las opciones son cualquier combinación de 'start'
,'goal'
y 'transitions'
. Para deshabilitar la visualización de todos los encabezados, especifique {''}
.
Posiciones para mostrar, especificadas como 'both'
, 'start'
, 'goal'
o 'none'
. La posición inicial está marcada en verde y la posición de meta está marcada en rojo.
Longitud del encabezado, especificada como escalar numérico positivo. De forma predeterminada, el valor se calcula de acuerdo con los límites de los ejes x
y y
del gráfico.
Tipos de datos: double
Historial de versiones
Introducido en R2019b
Consulte también
Funciones
Objetos
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Seleccione un país/idioma
Seleccione un país/idioma para obtener contenido traducido, si está disponible, y ver eventos y ofertas de productos y servicios locales. Según su ubicación geográfica, recomendamos que seleccione: .
También puede seleccionar uno de estos países/idiomas:
Cómo obtener el mejor rendimiento
Seleccione China (en idioma chino o inglés) para obtener el mejor rendimiento. Los sitios web de otros países no están optimizados para ser accedidos desde su ubicación geográfica.
América
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)