Main Content

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

show

Afficher la carte d'occupation binaire

Description

show(map) affiche la grille d'occupation binaire map dans les axes courants, avec les étiquettes des axes représentant les coordonnées du monde.

show(map, "local") affiche la grille d'occupation binaire map dans les axes actuels, avec les étiquettes des axes représentant les coordonnées locales au lieu des coordonnées mondiales.

show(map, "grid") affiche la grille d'occupation binaire map dans les axes courants, avec les étiquettes des axes représentant les coordonnées de la grille.

exemple

show(___,Name,Value) spécifie des options supplémentaires spécifiées par un ou plusieurs arguments de paire nom-valeur.

mapImage = show(___) renvoie le handle de l'objet image créé par show.

Exemples

réduire tout

Cet exemple montre comment déplacer une carte égocentrique locale et la synchroniser avec une carte du monde plus grande. Ce processus émule un véhicule circulant dans un environnement et obtient des mises à jour sur les obstacles dans les nouvelles zones.

Chargez des exemples de cartes. Créez une carte d'occupation binaire à partir du complexMap.

load exampleMaps.mat
map = binaryOccupancyMap(complexMap);
show(map)

Figure contains an axes object. The axes object with title Binary Occupancy Grid, xlabel X [meters], ylabel Y [meters] contains an object of type image.

Créez une carte locale plus petite.

mapLocal = binaryOccupancyMap(complexMap(end-20:end,1:20));
show(mapLocal)

Figure contains an axes object. The axes object with title Binary Occupancy Grid, xlabel X [meters], ylabel Y [meters] contains an object of type image.

Suivez un chemin prévu sur la carte du monde et mettez à jour la carte locale à mesure que vous déplacez votre cadre local.

Spécifiez les emplacements des chemins et tracez-les sur la carte.

path = [5 2
        8 2
        8 8
        30 8];
show(map)
hold on
plot(path(:,1),path(:,2))
hold off

Figure contains an axes object. The axes object with title Binary Occupancy Grid, xlabel X [meters], ylabel Y [meters] contains 2 objects of type image, line.

Créez une boucle pour vous déplacer entre les points en fonction de la résolution de la carte. Divisez la différence entre les points par la résolution de la carte pour voir combien de mouvements incrémentiels vous pouvez effectuer.

for i = 1:length(path)-1
    moveAmount = (path(i+1,:)-path(i,:))/map.Resolution;
    for j = 1:abs(moveAmount(1)+moveAmount(2))
        moveValue = sign(moveAmount).*map.Resolution;
        move(mapLocal,moveValue, ...
            "MoveType","relative","SyncWith",map)
 
        show(mapLocal)
        drawnow limitrate
        pause(0.2)
    end
end

Figure contains an axes object. The axes object with title Binary Occupancy Grid, xlabel X [meters], ylabel Y [meters] contains an object of type image.

Arguments d'entrée

réduire tout

Représentation cartographique, spécifiée comme objet binaryOccupancyMap . Cet objet représente l'environnement du véhicule.

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.

Avant R2021a, utilisez des virgules pour séparer chaque nom et valeur, et mettez Name entre guillemets.

Exemple : 'Parent',axHandle

Axes pour tracer la carte spécifiée comme objet Axes ou UIAxes. Voir axes ou uiaxes.

Mettre à jour le tracé cartographique existant, spécifié comme 0 ou 1. Si vous avez déjà tracé votre carte sur votre figure, réglez-la sur 1 pour une mise à jour plus rapide de la figure. Ceci est utile pour mettre à jour la figure en boucle pour des animations rapides.

Historique des versions

Introduit dans R2015a