plannerLineSpec.goal
Sintaxis
Descripción
especifica las propiedades predeterminadas de color, línea y marcador para trazar el estado objetivo.spec
= plannerLineSpec.goal
especifica nuevos valores para las propiedades de color, línea y marcador mediante el uso de uno o más argumentos de nombre-valor.spec
= plannerLineSpec.goal(Name=Value
)
[
devuelve las propiedades y sus valores como una estructura utilizando cualquier combinación de entradas de las sintaxis anteriores.spec
,structData
] = plannerLineSpec.goal(___)
Ejemplos
Visualice la salida del Planificador de rutas Bi-RRT utilizando especificaciones de trazado predefinidas
Mapa de ocupación de carga
Cargue una cuadrícula de probabilidad de ocupación en el espacio de trabajo de MATLAB® .
load("exampleMaps.mat","simpleMap")
Cree un mapa de ocupación a partir de la cuadrícula de ocupación de entrada.
map = occupancyMap(simpleMap);
Defina los límites inferior y superior de las variables del espacio de estados x
, y
y theta
del mapa de ocupación.
x = map.XWorldLimits; y = map.YWorldLimits; theta = [-pi pi];
Especifique el estado inicial y el estado objetivo para la planificación de rutas.
start = [2 5 0]; goal = [22 22 0];
Mostrar el mapa de ocupación.
figure
show(map)
hold on
Estados de inicio y objetivo de la trama
Utilice las funciones plannerLineSpec.start
y plannerLineSpec.goal
para trazar los estados inicial y objetivo, respectivamente.
plot(start(1),start(2),plannerLineSpec.start{:}) plot(goal(1),goal(2),plannerLineSpec.goal{:})
Configure el planificador de rutas Bi-RRT y encuentre la ruta entre dos estados
Cree un objeto SE(2) de espacio de estados utilizando las variables de espacio de estados especificadas.
stateSpace = stateSpaceSE2([x; y; theta]);
Verifique la validez de los estados en el espacio de estados de entrada utilizando un validador de estados.
stateValidator = validatorOccupancyMap(stateSpace,Map=map);
Configure el planificador de rutas Bi-RRT.
planner = plannerBiRRT(stateSpace,stateValidator);
Calcule la ruta entre el punto inicial y el punto objetivo utilizando el planificador de rutas Bi-RRT.
[path,info] = plan(planner,start,goal)
path = navPath with properties: StateSpace: [1x1 stateSpaceSE2] States: [306x3 double] NumStates: 306 MaxNumStates: Inf
info = struct with fields:
IsPathFound: 1
ExitFlag: 1
NumIterations: 294
StartTreeData: [569x3 double]
GoalTreeData: [710x3 double]
StartTreeNumNodes: 189
GoalTreeNumNodes: 236
Trazar árboles de búsqueda
Utilice la función plannerLineSpec.tree
para trazar el árbol de búsqueda directa.
startTree = plannerLineSpec.tree; plot(info.StartTreeData(:,1),info.StartTreeData(:,2),startTree{:})
Utilice la función plannerLineSpec.goalTree
para trazar el árbol de búsqueda desde el estado objetivo hasta el estado inicial. Establezca el color de la línea para trazar el árbol de búsqueda desde el objetivo hasta el inicio hasta cyan
.
goalTree = plannerLineSpec.goalTree(color="cyan");
plot(info.GoalTreeData(:,1),info.GoalTreeData(:,2),goalTree{:})
legend
Trazar ruta calculada
Utilice la función plannerLineSpec.path
para trazar la ruta derivada.
plot(path.States(:,1),path.States(:,2),plannerLineSpec.path{:}) legend(Position=[0.8 0.11 0.2 0.2])
Visualice la salida del Planificador de rutas RRT utilizando especificaciones de trazado personalizadas
Mapa de ocupación de carga
Cargue una cuadrícula de probabilidad de ocupación en el espacio de trabajo de MATLAB® .
load("exampleMaps.mat","simpleMap")
Cree un mapa de ocupación a partir de la cuadrícula de ocupación de entrada.
map = occupancyMap(simpleMap);
Defina los límites inferior y superior de las variables del espacio de estados x
, y
y theta
del mapa de ocupación.
x = map.XWorldLimits; y = map.YWorldLimits; theta = [-pi pi];
Mostrar el mapa de ocupación.
figure
show(map)
hold on
Especifique el estado inicial y el estado objetivo para la planificación de rutas.
start = [2 5 0]; goal = [22 22 0];
Estados de inicio y objetivo de la trama
Utilice las funciones plannerLineSpec.start
y plannerLineSpec.goal
para trazar los estados inicial y objetivo, respectivamente.
plot(start(1),start(2),plannerLineSpec.start{:})
Establezca el color para trazar el estado objetivo en red
y trace el estado objetivo.
goalState = plannerLineSpec.goal(MarkerEdgeColor="red",MarkerFaceColor="red"); plot(goal(1),goal(2),goalState{:})
Configurar el planificador de rutas RRT
Cree un objeto SE(2) de espacio de estados utilizando las variables de espacio de estados especificadas.
stateSpace = stateSpaceSE2([x; y; theta]);
Verifique la validez de los estados en el espacio de estados de entrada utilizando un validador de estados.
stateValidator = validatorOccupancyMap(stateSpace,Map=map);
Configure el planificador de rutas RRT.
planner = plannerRRT(stateSpace,stateValidator);
Encuentre la ruta entre dos estados
Calcule la ruta entre el punto inicial y el punto objetivo utilizando el planificador de ruta RRT.
[path,info] = plan(planner,start,goal)
path = navPath with properties: StateSpace: [1x1 stateSpaceSE2] States: [320x3 double] NumStates: 320 MaxNumStates: Inf
info = struct with fields:
IsPathFound: 1
ExitFlag: 1
NumNodes: 1192
NumIterations: 1331
TreeData: [3578x3 double]
Trazar árboles de búsqueda
Utilice la función plannerLineSpec.tree
para trazar el árbol de búsqueda directa. Establezca el color para trazar el árbol de búsqueda en green
.
Además, establezca la etiqueta de leyenda en "Forward search tree"
.
startTree = plannerLineSpec.tree(Color="green",DisplayName="Forward search tree"); plot(info.TreeData(:,1),info.TreeData(:,2),startTree{:})
Trazar ruta calculada
Utilice la función plannerLineSpec.path
para trazar la ruta derivada.
plot(path.States(:,1),path.States(:,2),plannerLineSpec.path{:}) legend(Position=[0.6 0.11 0.2 0.2])
Argumentos de entrada
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.
Ejemplo: plannerLineSpec.goal(Color="Red")
Color
— Color de linea
"#0072BD"
(predeterminado) | triplete RGB | vector de caracteres | escalar de cadena
Color de línea, especificado como uno de estos valores:
Triplete RGB: especifique las intensidades de los componentes rojo, verde y azul del color como un vector de tres elementos en el orden
[R G B]
. Cada intensidad debe estar en el rango [0, 1]. Por ejemplo, puede especificar un tono de rosa como[1 0.5 0.8]
.Vector de caracteres o cadena escalar: especifique el código de color hexadecimal, el nombre del color o el nombre corto del color.
Para obtener más información sobre los tipos de valores de color y cómo especificarlos, consulte Especificar colores de gráfica.
LineStyle
— Estilo de línea
"none"
(predeterminado) | "-"
| "--"
| ":"
| "-."
Estilo de línea, especificado como uno de estos valores:
"-"
— Para una línea continua."--"
— Para una línea discontinua.":"
— Para una línea de puntos."-."
: para una línea de puntos y guiones."none"
— Para sin línea. Este es el valor predeterminado.
LineWidth
— Ancho de línea
1
(predeterminado) | escalar numérico positivo
Ancho de línea, especificado como un escalar numérico positivo.
Marker
— Símbolo de marcador
"pentagram"
(predeterminado) | "."
| "o"
| "+"
| "*"
| "x"
| ...
Símbolo de marcador, especificado como uno de los valores enumerados en esta tabla.
Marcador | Descripción | Marcador resultante |
---|---|---|
"o" | Círculo |
|
"+" | Signo de más |
|
"*" | Asterisco |
|
"." | Punto |
|
"x" | Cruz |
|
"_" | Linea horizontal |
|
"|" | Linea vertical |
|
"square" | Cuadrado |
|
"diamond" | Diamante |
|
"^" | Triángulo que apunta hacia arriba |
|
"v" | Triángulo que apunta hacia abajo |
|
">" | Triángulo que apunta hacia la derecha |
|
"<" | Triángulo que apunta hacia la izquierda |
|
"pentagram" | Pentagrama |
|
"hexagram" | hexagrama |
|
"none" | Sin marcadores | No aplica |
MarkerSize
— Tamaño del marcador
15
(predeterminado) | escalar numérico positivo
Tamaño del marcador, especificado como un escalar numérico positivo.
MarkerEdgeColor
— Color del contorno del marcador
"#0072BD"
(predeterminado) | triplete RGB | vector de caracteres | escalar de cadena
Color del contorno del marcador, especificado como uno de estos valores:
Triplete RGB: especifique las intensidades de los componentes rojo, verde y azul del color como un vector de tres elementos en el orden
[R G B]
. Cada intensidad debe estar en el rango [0, 1]. Por ejemplo, puede especificar un tono de rosa como[1 0.5 0.8]
.Vector de caracteres o cadena escalar: especifique el código de color hexadecimal, el nombre del color o el nombre corto del color.
Para obtener más información sobre los tipos de valores de color y cómo especificarlos, consulte Especificar colores de gráfica.
MarkerFaceColor
— Color de relleno del marcador
"#0072BD"
(predeterminado) | triplete RGB | vector de caracteres | escalar de cadena
Color de relleno del marcador, especificado como uno de estos valores:
Triplete RGB: especifique las intensidades de los componentes rojo, verde y azul del color como un vector de tres elementos en el orden
[R G B]
. Cada intensidad debe estar en el rango [0, 1]. Por ejemplo, puede especificar un tono de rosa como[1 0.5 0.8]
.Vector de caracteres o cadena escalar: especifique el código de color hexadecimal, el nombre del color o el nombre corto del color.
Para obtener más información sobre los tipos de valores de color y cómo especificarlos, consulte Especificar colores de gráfica.
DisplayName
— Etiqueta para incluir en la leyenda
"Goal"
(predeterminado) | vector de caracteres | escalar de cadena
Etiqueta que se incluirá en la leyenda, especificada como un vector de caracteres o una cadena escalar.
Argumentos de salida
spec
— Especificaciones de color, línea y marcador.
arreglo de celdas
Especificaciones de color, línea y marcador para trazar el estado objetivo, devueltas como un arreglo de celdas de tamaño 1 por 16.
Tipos de datos: cell
structData
— Especificaciones para la gráfica.
estructura
Especificaciones para el gráfico, devueltas como una estructura con campos Color
, LineStyle
, LineWidth
, Marker
, MarkerSize
, MarkerEdgecolor
, MarkerFaceColor
y DisplayName
. Cada campo contiene el valor especificado para el argumento nombre-valor correspondiente.
Tipos de datos: struct
Historial de versiones
Introducido en R2023b
Comando de MATLAB
Ha hecho clic en un enlace que corresponde a este comando de MATLAB:
Ejecute el comando introduciéndolo en la ventana de comandos de MATLAB. Los navegadores web no admiten comandos de MATLAB.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)