Main Content

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

mapMaze

Générer une carte de labyrinthe 2D aléatoire

Depuis R2021a

    Description

    map = mapMaze génère une carte de labyrinthe 2D aléatoire, map, en tant qu'objet binaryOccupancyMap d'une largeur et d'une hauteur de 50 mètres et d'un résolution de 5 cellules par mètre. La carte du labyrinthe contient des passages droits, des virages et des jonctions en T avec une largeur de passage de 4 cellules de grille et une épaisseur de paroi de 1 cellule de grille.

    map = mapMaze(passageWidth) génère un binaryOccupancyMap d'un labyrinthe de taille et de résolution par défaut avec une largeur de passage spécifiée, passageWidth, en nombre de cellules de la grille .

    map = mapMaze(passageWidth,wallThickness) spécifie une épaisseur de paroi, wallThickness, en nombre de cellules de la grille.

    map = mapMaze(___,Name,Value) spécifie les options utilisant un ou plusieurs arguments de paire nom-valeur en plus de toute combinaison d'arguments d'entrée des syntaxes précédentes. Par exemple, 'MapSize',[50 30] génère une carte de labyrinthe aléatoire d'une largeur de 50 mètres et d'une hauteur de 30 mètres.

    exemple

    Exemples

    réduire tout

    Générez une carte de labyrinthe 2D aléatoire avec une largeur de passage de 5 cellules de grille et une épaisseur de paroi de 2 cellules de grille. Spécifiez la taille de la carte comme étant de 50 mètres de large et 30 mètres de haut avec une résolution de 5 cellules par mètre.

    map = mapMaze(5,2,'MapSize',[50 30],'MapResolution',5);

    Visualisez la carte d'obstacles générée.

    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.

    Arguments d'entrée

    réduire tout

    Largeur du passage du labyrinthe, spécifiée sous forme d'entier positif en nombre de cellules de la grille.

    Types de données : single | double

    Épaisseur de la paroi du labyrinthe, spécifiée sous forme d'entier positif en nombre de cellules de la grille.

    Types de données : single | double

    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 : 'MapSize',[50 40] génère une carte d'obstacles distribuée aléatoirement avec une largeur de 50 mètres et une hauteur de 40 mètres.

    Largeur et hauteur de la carte générée, spécifiées comme une paire séparée par des virgules composée de 'MapSize' et d'un vecteur à deux éléments de nombres finis réels positifs de la forme [Width Height]. Spécifiez les deux valeurs en mètres.

    Exemple : 'MapSize',[50 30]

    Types de données : single | double

    Résolution de la carte générée, spécifiée comme la paire séparée par des virgules composée de 'MapResolution' et d'un scalaire réel positif en cellules par mètre.

    Exemple : 'MapResolution',10

    Types de données : single | double

    Arguments de sortie

    réduire tout

    Carte de labyrinthe aléatoire, renvoyée sous la forme d'un objet binaryOccupancyMap .

    Conseils

    • lorsque le nombre de cellules de la grille le long de la largeur de la carte ne peut pas prendre en charge les paramètres de labyrinthe donnés, ceil(MapWidth*MapResolution) doit être supérieur ou égal à (passageWidth+2*wallThickness).

    • lorsque le nombre de cellules de la grille le long de la hauteur de la carte ne peut pas prendre en charge les paramètres de labyrinthe donnés, ceil(MapHeight*MapResolution) doit être supérieur ou égal à (passageWidth+2*wallThickness).

    Historique des versions

    Introduit dans R2021a