Main Content

Questa pagina è stata tradotta con la traduzione automatica. Fai clic qui per vedere l'ultima versione in inglese.

roadrunnerHDMap

Crea la mappa RoadRunner HD utilizzando MATLAB

Da R2022b

    Descrizione

    Un oggetto roadrunnerHDMap consente di creare una mappa RoadRunner HD utilizzando MATLAB®. Puoi anche popolare la mappa con corsie, limiti di corsia, segnaletica orizzontale e incroci.

    RoadRunner HD Map è un modello di dati stradali per rappresentare dati cartografici ad alta definizione (HD) in una scena RoadRunner . Questo modello definisce una struttura dati semplice per rappresentare i tracciati stradali utilizzando corsie, confini delle corsie, segnaletica orizzontale e incroci. È possibile utilizzare RoadRunner HD Map per creare un file binario per i dati della mappa HD personalizzata, importare il file binario in RoadRunner e creare scene.

    Creazione

    Descrizione

    rrMap = roadrunnerHDMap() crea una mappa RoadRunner HD vuota. È possibile popolare la mappa con corsie, confini di corsia, segnaletica orizzontale e incroci utilizzando le proprietà dell'oggetto roadrunnerHDMap . I dati nella mappa vengono serializzati utilizzando buffer di protocollo e salvati in formato binario con estensione .rrhd utilizzando il metodo di scrittura. È possibile utilizzare il metodo read per leggere un file con estensione .rrhd e popolare un oggetto roadrunnerHDMap vuoto.

    esempio

    rrMap = roadrunnerHDMap(Name=Value) imposta le proprietà utilizzando coppie nome-valore.

    Proprietà

    espandi tutto

    Nome dell'autore della mappa, specificato come stringa scalare.

    Esempio rrMap= roadrunnerHDMap(Author= "Map Author") crea una mappa RoadRunner HD di proprietà di "Map Author".

    Tipi di dati: char | string

    Coordinate geografiche di origine della rete stradale, specificate come vettore riga nella forma [lat, lon] con due elementi. lat rappresenta la latitudine delle coordinate in gradi e lon rappresenta la longitudine delle coordinate in gradi. Questi valori si riferiscono all'ellissoide di riferimento WGS84, che è un ellissoide standard utilizzato dai dati GPS. Per ulteriori dettagli, vedere Spazio Coordinato e Georeferenziazione.

    Tipi di dati: double

    Limiti spaziali dei dati geometrici rappresentati nello spazio delle coordinate 3D della proiezione RoadRunner HD Map, specificati come matrice 2 per 3 di doppia precisione. Gli elementi nella matrice rappresentano la posizione minima e massima di una scatola allineata all'asse 3D.

    Esempio rrMap= roadrunnerHDMap(Author= "Map Author", GeographicBoundary= [-0.782 -3.13 0;101.565 50 0]) crea una mappa RoadRunner HD di proprietà di "Map Author". I limiti spaziali dei dati geometrici nello spazio delle coordinate 3D della proiezione cartografica sono specificati dai valori di doppia precisione del parametro GeographicBoundary.

    Tipi di dati: double

    Proprietà della corsia di una strada, specificate come array di oggetti roadrunner.hdmap.Lane .

    Esempio rrMap.Lanes(1)= roadrunner.hdmap.Lane(ID= "Lane1", Geometry= [-0.782 -1.56;50.78 23.43], LaneType= "Driving", TravelDirection= "Forward") aggiunge queste informazioni sulle corsie per la mappa: ID corsia, coordinate che definiscono la geometria della corsia, tipo di corsia e direzione di guida.

    Confini della corsia, specificati come array di oggetti roadrunner.hdmap.LaneBoundary .

    Esempio rrMap.LaneBoundaries(1)= roadrunner.hdmap.LaneBoundary(ID= "LaneBoundary1", Geometry= [0 0;50 25]) aggiunge i confini della corsia alla corsia e definisce la geometria per ciascun confine della corsia.

    Gruppo di corsie con geometria simile, specificate come array di oggetti roadrunner.hdmap.LaneGroup .

    Esempio rrMap.LaneGroups= roadrunner.hdmap.LaneGroup(ID= "LaneGroup1") aggiunge un gruppo di corsie con ID "LaneGroup1" sulla mappa.

    Definizioni di segnaletica orizzontale, specificate come array di oggetti roadrunner.hdmap.LaneMarking .

    Esempio rrMap.LaneMarkings= roadrunner.hdmap.LaneMarking(ID= "Dashed1", AssetPath= "Assets/Markings/DashedSingleWhite.rrlms") aggiunge la risorsa di segnalazione della corsia "Dashed1" dalla sua posizione relativa alla corsia.

    Noci stradali nella mappa, specificati come array di oggetti roadrunner.hdmap.Junction .

    Esempio rrMap.Junctions= roadrunner.hdmap.Junction(ID= "Junction1") aggiunge un incrocio con ID "Junction1" sulla mappa.

    Tipi di barriera per l'estrusione della barriera e informazioni sul tipo, specificati come array di oggetti roadrunner.hdmap.BarrierType .

    Esempio rrMap.BarrierTypes= roadrunner.hdmap.BarrierType(ID= "BarrierType1", ExtrusionPath= path) aggiunge un tipo di barriera con ID "BarrierType1" per un'estrusione di barriera con il percorso dell'asset, path, che punta alle informazioni di estrusione di questo tipo di barriera.

    Barriere nella mappa, specificate come array di oggetti roadrunner.hdmap.Barrier .

    Esempio rrMap.Barrier= roadrunner.hdmap.Barrier(ID= "Barrier1") aggiunge una barriera con ID "Barrier1" sulla mappa.

    Tipi di segni di caratteristiche di segni e informazioni sul tipo, specificati come array di oggetti roadrunner.hdmap.SignType .

    Esempio rrMap.SignTypes= roadrunner.hdmap.SignType(ID= "SignType1", ExtrusionPath= AssetPath="Assets/Signs/UK/Sign_Parking.svg") aggiunge un tipo di segnale con id "SignType1" per un segnale di parcheggio situato sul relativo percorso "Assets/Signs/UK/Sign_Parking.svg".

    Segni nella mappa, specificati come array di oggetti roadrunner.hdmap.Sign .

    Esempio rrMap.Sign= roadrunner.hdmap.Sign(ID= "Sign1") aggiunge un segno con ID "Sign1" sulla mappa.

    Attributi di oggetti fisici (inclusi arredi stradali e oggetti di scena), specificati come un array di oggetti roadrunner.hdmap.StaticObjectType .

    Esempio rrMap.StaticObjectType= roadrunner.hdmap.StaticObjectType(ID= "StaticObjectType1") aggiunge un tipo di oggetto statico con ID "StaticObjectType1" sulla mappa.

    Attributi di oggetti fisici (inclusi arredi stradali e oggetti di scena), specificati come un array di oggetti roadrunner.hdmap.StaticObject .

    Esempio rrMap.StaticObject= roadrunner.hdmap.StaticObject(ID= "StaticObject1") aggiunge un oggetto statico con ID "StaticObject1" sulla mappa.

    Funzioni oggetto

    writeScrivi la mappa HD in un file binario utilizzando MATLAB
    readLeggi la mappa HD dal file binario utilizzando MATLAB
    plotTraccia la mappa RoadRunner HD utilizzando MATLAB
    readCRSLeggi i dati del sistema di riferimento delle coordinate (CRS) dalla mappa RoadRunner HD utilizzando MATLAB

    Esempi

    comprimi tutto

    Crea una mappa RoadRunner HD chiamando l'oggetto roadrunnerHDMap . L'oggetto restituisce una mappa con un autore e limiti spaziali di attributi di dati geometrici.

    rrMap = roadrunnerHDMap(Author="Map Author",GeographicBoundary=[-0.782 -3.13 0;101.565 50 0]);

    Creare le corsie stradali utilizzando l'oggetto roadrunner.hdmap.Lane . Specificare le informazioni sulla corsia per l'ID corsia, le coordinate che definiscono la geometria della corsia, la direzione di guida e il tipo di corsia.

    rrMap.Lanes(2) = roadrunner.hdmap.Lane(ID="Lane2",Geometry=[50.78 23.43;100.78 48.43],LaneType="Driving", TravelDirection="Forward");
    rrMap.Lanes(1) = roadrunner.hdmap.Lane(ID="Lane1",Geometry=[0.782 -1.56;50.78 23.43],LaneType="Driving", TravelDirection="Forward");

    Aggiungere informazioni sulla connettività per Lane1 e Lane2. Specificare l'allineamento tra le corsie definendo le informazioni sulla relazione predecessore e successore.

    addPredecessor(rrMap.Lanes(2),"Lane1",Alignment="Forward");
    addSuccessor(rrMap.Lanes(1),"Lane2",Alignment="Forward");

    Crea i confini della corsia della strada utilizzando l'oggetto roadrunner.hdmap.LaneBoundary . Specificare le informazioni sul confine della corsia per l'ID della corsia e le coordinate che definiscono la geometria della corsia.

    rrMap.LaneBoundaries(4) = roadrunner.hdmap.LaneBoundary(ID="LaneBoundary4",Geometry=[50 25; 100 50]);
    rrMap.LaneBoundaries(3) = roadrunner.hdmap.LaneBoundary(ID="LaneBoundary3",Geometry=[51.565 21.864; 101.565 46.869]);
    rrMap.LaneBoundaries(2) = roadrunner.hdmap.LaneBoundary(ID="LaneBoundary2",Geometry=[1.565 -3.13; 51.565 21.864]);
    rrMap.LaneBoundaries(1) = roadrunner.hdmap.LaneBoundary(ID="LaneBoundary1",Geometry=[0 0; 50 25]);

    Collegare i confini delle corsie alle corsie. Definire i confini delle corsie sinistra e destra per ciascuna corsia e specificare l'allineamento tra le corsie e i confini delle corsie.

    leftBoundary(rrMap.Lanes(1),"LaneBoundary1",Alignment="Forward");
    rightBoundary(rrMap.Lanes(1),"LaneBoundary2",Alignment="Forward");
    leftBoundary(rrMap.Lanes(2),"LaneBoundary4",Alignment="Forward");
    rightBoundary(rrMap.Lanes(2),"LaneBoundary3",Alignment="Forward");

    Cronologia versioni

    Introdotto in R2022b