Main Content

Cette page a été traduite par traduction automatique. Cliquez ici pour voir la dernière version en anglais.

plannerLineSpec.goalTree

Spécifications pour tracer l'arbre de recherche de l'objectif au début

Depuis R2023b

    Description

    exemple

    spec = plannerLineSpec.goalTree spécifie les propriétés de couleur, de ligne et de marqueur par défaut pour tracer l'arborescence de recherche de l'objectif au début.

    exemple

    spec = plannerLineSpec.goalTree(Name=Value) spécifie de nouvelles valeurs pour les propriétés de couleur, de ligne et de marqueur en utilisant un ou plusieurs arguments nom-valeur.

    [spec,structData] = plannerLineSpec.goalTree(___) renvoie les propriétés et leurs valeurs sous forme de structure utilisant n'importe quelle combinaison d'entrées des syntaxes précédentes.

    Exemples

    réduire tout

    Charger la carte d'occupation

    Chargez une grille d'occupation de probabilité dans l'espace de travail MATLAB® .

    load("exampleMaps.mat","simpleMap")

    Créez une carte d'occupation à partir de la grille d'occupation d'entrée.

    map = occupancyMap(simpleMap);

    Définissez les limites inférieure et supérieure des variables de l'espace d'état x, y et theta à partir de la carte d'occupation.

    x = map.XWorldLimits;
    y =  map.YWorldLimits;
    theta = [-pi pi];

    Spécifiez l'état de départ et l'état final pour la planification du chemin.

    start = [2 5 0];
    goal = [22 22 0];

    Afficher la carte d'occupation.

    figure
    show(map)
    hold on

    Début du tracé et états d’objectif

    Utilisez les fonctions plannerLineSpec.start et plannerLineSpec.goal pour tracer les états de début et d'objectif, respectivement.

    plot(start(1),start(2),plannerLineSpec.start{:})
    plot(goal(1),goal(2),plannerLineSpec.goal{:})

    Figure contains an axes object. The axes object with title Occupancy Grid, xlabel X [meters], ylabel Y [meters] contains 3 objects of type image, line. One or more of the lines displays its values using only markers These objects represent Start, Goal.

    Configurer le planificateur de chemin Bi-RRT et rechercher le chemin entre deux états

    Créez un objet SE(2) d'espace d'état à l'aide des variables d'espace d'état spécifiées.

    stateSpace = stateSpaceSE2([x; y; theta]);

    Vérifiez la validité des états dans l'espace d'état d'entrée à l'aide d'un validateur d'état.

    stateValidator = validatorOccupancyMap(stateSpace,Map=map);

    Configurez le planificateur de chemin Bi-RRT.

    planner = plannerBiRRT(stateSpace,stateValidator);

    Calculez le chemin entre le point de départ et le point d'arrivée à l'aide du planificateur de chemin 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
    
    

    Tracer les arbres de recherche

    Utilisez la fonction plannerLineSpec.tree pour tracer l'arborescence de recherche directe.

    startTree = plannerLineSpec.tree;
    plot(info.StartTreeData(:,1),info.StartTreeData(:,2),startTree{:})

    Utilisez la fonction plannerLineSpec.goalTree pour tracer l'arborescence de recherche de l'état objectif à l'état de départ. Définissez la couleur de la ligne pour tracer l'arborescence de recherche de l'objectif au début à cyan.

    goalTree = plannerLineSpec.goalTree(color="cyan");
    plot(info.GoalTreeData(:,1),info.GoalTreeData(:,2),goalTree{:})
    legend

    Tracer le chemin calculé

    Utilisez la fonction plannerLineSpec.path pour tracer le chemin dérivé.

    plot(path.States(:,1),path.States(:,2),plannerLineSpec.path{:})
    legend(Position=[0.8 0.11 0.2 0.2])

    Figure contains an axes object. The axes object with title Occupancy Grid, xlabel X [meters], ylabel Y [meters] contains 6 objects of type image, line. One or more of the lines displays its values using only markers These objects represent Start, Goal, Tree, Goal Tree, Path.

    Arguments d'entrée

    réduire tout

    Arguments nom-valeur

    Spécifiez des paires d'arguments facultatives sous la forme Name1=Value1,...,NameN=ValueN, où Name est le nom de l'argument et Value est la valeur correspondante. Les arguments nom-valeur doivent apparaître après les autres arguments, mais l'ordre des paires n'a pas d'importance.

    Exemple : plannerLineSpec.goalTree(Color="Red")

    Couleur de ligne, spécifiée comme l'une de ces valeurs :

    • Triplet RVB — Spécifiez les intensités des composantes rouge, verte et bleue de la couleur sous la forme d'un vecteur à trois éléments dans l'ordre [R G B]. Chaque intensité doit être comprise entre [0, 1]. Par exemple, vous pouvez spécifier une nuance de rose sous la forme [1 0.5 0.8].

    • Vecteur de caractères ou scalaire de chaîne — Spécifiez le code de couleur hexadécimal, le nom de la couleur ou le nom abrégé de la couleur.

    Pour plus d'informations sur les types de valeurs de couleur et comment les spécifier, voir Specify Plot Colors.

    Style de ligne, spécifié comme l'une de ces valeurs :

    • "-" — Pour une ligne continue. C'est la valeur par défaut.

    • "--" — Pour une ligne pointillée.

    • ":" — Pour une ligne pointillée.

    • "-." — Pour une ligne en pointillés.

    • "none" — Pour aucune ligne.

    Largeur de ligne, spécifiée sous forme de scalaire numérique positif.

    Symbole de marqueur, spécifié comme l'une des valeurs répertoriées dans ce tableau.

    MarqueurDescriptionMarqueur résultant
    "o" Cercle

    Sample of circle marker

    "+" Signe plus

    Sample of plus sign marker

    "*" Astérisque

    Sample of asterisk marker

    "." Indiquer

    Sample of point marker

    "x" Croix

    Sample of cross marker

    "_" Ligne horizontale

    Sample of horizontal line marker

    "|" Ligne verticale

    Sample of vertical line marker

    "square" Carré

    Sample of square marker

    "diamond" diamant

    Sample of diamond marker

    "^" Triangle pointant vers le haut

    Sample of upward-pointing triangle marker

    "v" Triangle pointant vers le bas

    Sample of downward-pointing triangle marker

    ">" Triangle pointant vers la droite

    Sample of right-pointing triangle marker

    "<" Triangle pointant vers la gauche

    Sample of left-pointing triangle marker

    "pentagram" Pentacle

    Sample of pentagram marker

    "hexagram" Hexagramme

    Sample of hexagram marker

    "none" Pas de marqueursN'est pas applicable

    Taille du marqueur, spécifiée sous forme de scalaire numérique positif.

    Couleur du contour du marqueur, spécifiée comme l'une de ces valeurs :

    • Triplet RVB — Spécifiez les intensités des composantes rouge, verte et bleue de la couleur sous la forme d'un vecteur à trois éléments dans l'ordre [R G B]. Chaque intensité doit être comprise entre [0, 1]. Par exemple, vous pouvez spécifier une nuance de rose sous la forme [1 0.5 0.8].

    • Vecteur de caractères ou scalaire de chaîne — Spécifiez le code de couleur hexadécimal, le nom de la couleur ou le nom abrégé de la couleur.

    Pour plus d'informations sur les types de valeurs de couleur et comment les spécifier, voir Specify Plot Colors.

    Couleur de remplissage du marqueur, spécifiée comme l'une de ces valeurs :

    • Triplet RVB — Spécifiez les intensités des composantes rouge, verte et bleue de la couleur sous la forme d'un vecteur à trois éléments dans l'ordre [R G B]. Chaque intensité doit être comprise entre [0, 1]. Par exemple, vous pouvez spécifier une nuance de rose sous la forme [1 0.5 0.8].

    • Vecteur de caractères ou scalaire de chaîne — Spécifiez le code de couleur hexadécimal, le nom de la couleur ou le nom abrégé de la couleur.

    Pour plus d'informations sur les types de valeurs de couleur et comment les spécifier, voir Specify Plot Colors.

    Étiquette à inclure dans la légende, spécifiée sous forme de vecteur de caractères ou de chaîne scalaire.

    Arguments de sortie

    réduire tout

    Spécifications de couleur, de ligne et de marqueur pour tracer l’arbre de recherche de l’objectif au début, renvoyées sous forme de cell array de taille 1 sur 16.

    Types de données : cell

    Spécifications du tracé, renvoyées sous forme de structure avec les champs Color, LineStyle, LineWidth, Marker, MarkerSize, MarkerEdgecolor, MarkerFaceColor et DisplayName. Chaque champ contient la valeur spécifiée pour l'argument nom-valeur correspondant.

    Types de données : struct

    Historique des versions

    Introduit dans R2023b