주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

Lane

RoadRunner 장면의 도로 위의 차선

R2025a 이후

    설명

    Lane 객체는 현재 RoadRunner 장면의 도로에 있는 차선을 나타냅니다. Lane 객체를 사용하면 차선을 프로그래밍 방식으로 추가하고 차선 유형 및 이동 방향과 같은 차선 특성을 수정할 수 있습니다. 차선 표시와 차선 바깥쪽 경계의 너비도 지정할 수 있습니다.

    생성

    다음과 같은 방법으로 Lane 객체를 생성할 수 있습니다.

    • RoadRunner 장면에서 Lane 객체를 검색하려면 road 객체의 Lanes 속성을 추출합니다. 예를 들어, rrLane1 = rrRoad.Lanes(1)은 도로 rrRoadLanes 속성에서 첫 번째 Lane 객체를 추출합니다.

    • addLaneToLeft 또는 addLaneToRight 함수를 사용하면 도로 방향을 기준으로 기존 차선의 왼쪽이나 오른쪽에 새 차선을 추가할 수 있습니다.

    속성

    모두 확장

    차선의 이동 방향으로, 표에 나열된 값 중 하나로 지정됩니다.

    설명
    "Undirected"차량은 도로의 어느 방향으로든 이동할 수 있습니다.
    "Forward"차량은 도로의 앞쪽으로 주행합니다. 예를 들어, 왼쪽에서 오른쪽으로 가는 도로에 이 차선 방향을 설정하면 차량은 차선을 따라 왼쪽에서 오른쪽으로만 앞으로 이동할 수 있습니다.
    "Backward"차량은 도로의 반대 방향으로 주행합니다. 예를 들어, 왼쪽에서 오른쪽으로 가는 도로에 이 차선 방향을 설정하면 차량은 차선을 따라 오른쪽에서 왼쪽으로만 뒤로 이동할 수 있습니다.
    "Bidirectional"차량은 도로의 앞뒤 방향으로 모두 주행할 수 있습니다.

    차선 유형으로, 다음 표에 나열된 값 중 하나로 지정됩니다.

    설명
    "Driving"차량 통행을 위한 일반 차선으로 다른 목적으로 예약되어 있지 않습니다.
    "Biking"자전거 전용 차선입니다.
    "Shoulder"도로 가장자리의 매끄러운 경계를 나타내는 차선입니다. 이 차선은 긴급 정지나 차량 고장 시에만 사용할 수 있습니다.
    "Border" 도로 경계에 인접한 도로 가장자리의 경계를 나타내는 차선입니다. 차량은 이 차선을 넘어 이동할 수 없습니다.
    "Restricted"승객이 많이 탑승한 차량만 통행할 수 있는 차선입니다.
    "Center Turn"양방향 도로의 중앙에 있는 차로로, 회전을 위해 만들어졌습니다.
    "Median"주행 방향이 반대인 두 주행 차선 사이의 비주행 차선입니다.
    "Raised Median"두 주행 차선 사이에 높은 구역이 있는 중앙분리대. 주행 방향이 반대입니다.
    "Curb"도로 가장자리에 있는 연석을 나타내는 차선입니다. 차량은 종종 이 차선에서 멈춰서 승객을 태우거나 내립니다.
    "Sidewalk"보행자 전용 차선입니다.
    "Parking"차량이 주차할 수 있도록 만들어진 주행 차선 옆의 차선입니다.
    "Stop"고속도로의 비상 정지 차선.
    "Road Works"비주행 차선은 도로 공사로 인한 차선 폐쇄를 지정하는 데 사용됩니다.
    "Tram"트램 전용 차선입니다.
    "Rail"경전철 차량 전용 차로입니다.
    "Entry"주행 차선과 평행한 가속 차선.
    "Exit"주행 차선과 평행한 감속 차선.
    "Off Ramp"고속도로에서 나와 지방도로로 가는 경사로입니다.
    "On Ramp"지방 도로에서 고속도로로 진입하기 위한 경사로.
    "None"비주행 차선은 도로의 가장 바깥쪽 가장자리에 있는 공간을 지정하는 데 사용됩니다.

    읽기 전용 속성입니다.

    LaneWidthProfile 객체로 표현된 차선의 폭 프로필입니다. 차선의 폭 프로필은 차선의 바깥쪽 경계의 지오메트리를 정의합니다.

    읽기 전용 속성입니다.

    차선의 차선 표시 프로필은 LaneMarkingProfile 객체로 표현됩니다. 차선의 표시 프로필은 차선의 바깥쪽 경계에 있는 표시를 정의합니다.

    객체 함수

    addLaneToRight지정된 차선의 오른쪽에 차선 추가
    addLaneToLeft지정된 차선의 왼쪽에 차선 추가

    예제

    모두 축소

    수평 도로 1개로 RoadRunner 장면을 만들고 이동 방향이 반대인 주행 차선 2개를 추가합니다.

    기존 프로젝트의 경로를 지정하여 roadrunner 객체를 만듭니다. 예를 들어, 이 코드는 "C:\RR\MyProject"에 있는 Windows® 컴퓨터의 프로젝트 경로를 보여줍니다. 이 코드는 RoadRunner가 기본 위치에 설치되어 있다고 가정하고 장면과 프로젝트를 열고, 닫고, 저장하는 등의 기본 작업을 수행하기 위한 함수를 제공하는 객체 rrApp을 반환합니다.

    rrApp = roadrunner(ProjectFolder="C:\RR\MyProject");

    참고: 처음으로 MATLAB®에서 RoadRunner를 열거나 마지막으로 MATLAB에서 연 이후 RoadRunner 설치 위치를 변경한 경우 roadrunnerSetup 함수를 사용하여 RoadRunner를 열 때 사용할 새 기본 프로젝트 및 설치 폴더를 지정할 수 있습니다. 해당 드롭다운에서 Across MATLAB sessions 옵션을 선택하면 MATLAB 세션 사이에 이러한 폴더를 저장할 수 있습니다.

    newScene 함수를 사용하여 현재 프로젝트에 새로운 RoadRunner 장면을 만들고, roadrunner 객체 rrApp을 지정합니다.

    newScene(rrApp);

    현재 RoadRunner 인스턴스 rrApp에 대한 객체를 참조하는 RoadRunner 저작 API rrApi에 대한 객체를 생성합니다. rrApi 객체를 사용하면 MATLAB을 사용하여 도로 및 차선 컴포넌트를 추가하고 수정하는 등의 방식으로 장면을 프로그래밍 방식으로 작성할 수 있습니다.

    rrApi = roadrunnerAPI(rrApp);

    저작 API 객체 rrApiScene 속성에서 장면의 객체를 추출합니다. 추출된 Scene 객체를 사용하면 도로 및 차선과 같은 장면 요소를 추가할 장면을 지정할 수 있습니다.

    scn = rrApi.Scene;

    addLineArcRoad 함수를 사용하여 길이가 100m인 수평 직선-호 곡선 도로를 장면에 추가합니다. RoadRunner 로컬 좌표계의 X축과 Y축을 따라 제어점의 위치를 지정하여 도로의 위치를 지정합니다. 이러한 제어점은 도로의 시작과 끝 위치를 정의합니다. 제어점의 위치를 수정하여 장면 원점을 기준으로 도로의 길이와 방향을 조정할 수 있습니다. 직선-호 곡선의 시작점과 끝점 사이에 제어점을 추가하여 도로 곡선의 곡률과 반경을 조정할 수도 있습니다.

    controlPoints = [-50 0; 50 0];
    rrHorizontalRoad = addLineArcRoad(scn,controlPoints);

    도로 객체 rrHorizontalRoadReferenceLane 속성에서 도로의 참조 차선을 추출합니다. 참조 차선은 RoadRunner 장면에서 도로의 중앙 차선 또는 참조선을 정의합니다. 이 차선은 너비가 없으며 다른 모든 차선을 배치하는 기준이 되며, RoadRunner는 기준선에서 바깥쪽으로 배치합니다.

    refLane = rrHorizontalRoad.ReferenceLane;

    Roadrunner scene canvas with a reference lane

    추출된 refLane 객체를 사용하여 addLaneToLeftaddLaneToRight 함수를 사용하여 도로의 참조 차선 양쪽에 차선을 추가합니다. 그런 다음 추가된 차선의 LaneTypeTravelDirection 속성을 사용하여 각 차선의 유형과 이동 방향을 각각 지정합니다. 먼저, 수평 도로의 왼쪽에 앞으로의 이동 방향을 갖는 주행 차선을 추가합니다.

    horizontalLane1 = addLaneToLeft(refLane);
    horizontalLane1.LaneType = "Driving";
    horizontalLane1.TravelDirection = "Forward";

    Roadrunner scene canvas with a driving lane to the left of the reference lane

    그런 다음 수평 도로 오른쪽에 후진 방향으로 주행하는 또 다른 주행 차선을 추가합니다.

    horizontalLane2 = addLaneToRight(refLane);
    horizontalLane2.LaneType = "Driving";
    horizontalLane2.TravelDirection = "Backward";

    Roadrunner scene canvas with two driving lanes, one with a forward and one with a backward travel direction

    버전 내역

    R2025a에 개발됨