주요 콘텐츠

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

LaneMarkingStyle

RoadRunner 장면의 차선 경계 표시 스타일

R2025a 이후

    설명

    LaneMarkingStyle 객체는 RoadRunner 프로젝트의 차선 표시 에셋 유형을 나타냅니다. 차선 표시 에셋은 색상, 너비, 대시 간격 등 차선 표시의 속성을 설명합니다. LaneMarkingStyle 객체를 사용하여 장면에서 차선 경계의 표시 스타일을 나타냅니다. 차선 표시 에셋에 대한 자세한 내용은 Lane Marking Assets 항목을 참조하세요.

    생성

    getAsset 함수는 지정된 프로젝트의 Asset 폴더를 기준으로 지정된 경로에서 지정된 에셋 유형의 에셋에 대한 객체를 추출합니다. LaneMarkingStyle 객체를 추출하려면 assetType 인수를 "LaneMarkingStyle"로 지정하세요.

    속성

    모두 확장

    읽기 전용 속성입니다.

    RoadRunner 프로젝트의 차선 표시 에셋에 대한 상대 경로로, string형 스칼라로 표현됩니다.

    예제

    모두 축소

    4차선 수평 도로가 있는 RoadRunner 장면을 만들고 차선 경계에 표시를 추가합니다.

    기존 프로젝트의 경로를 지정하여 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;

    저작 API 객체 rrApiProject 속성에서 RoadRunner 프로젝트의 Project 객체를 추출합니다. 추출된 Project 객체를 사용하면 에셋 객체를 검색할 현재 RoadRunner 세션의 프로젝트 폴더를 지정할 수 있습니다. 에셋 객체를 사용하여 장면의 차선에 표시를 할당할 수 있습니다.

    prj = rrApi.Project;

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

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

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

    refLane = rrHorizontalRoad.ReferenceLane;

    getAsset (RoadRunner Scenario) 함수를 사용하여 프로젝트 prj에서 SolidSingleYellow.rrlms 에셋을 나타내는 차선 표시 스타일 객체를 추출합니다. 기준 차선의 표시 프로필을 정의하려면 먼저 기준 차선 객체 refLane의 차선 표시 프로필 객체 refLaneMarkingProfile을 추출합니다. 그런 다음, 차선 표시 프로필 객체 refLaneMarkingProfileSpans 속성에서 차선 표시를 배치할 스팬을 나타내는 차선 표시 스팬 객체 refLaneSpan을 추출합니다. 마지막으로 추출된 스팬 객체의 LaneMarkingStyle 속성을 설정하여 노란색 실선 표시 스타일로 참조 차선을 표시합니다.

    solidYellowMarkingStyle = getAsset(prj,"<PROJECT>/Assets/Markings/SolidSingleYellow.rrlms","LaneMarkingStyle");
    refLaneMarkingProfile = refLane.LaneMarkingProfile;
    refLaneSpan = refLaneMarkingProfile.Spans;
    refLaneSpan.LaneMarkingStyle = solidYellowMarkingStyle;

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

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

    점선으로 된 단일 흰색 표시 스타일 객체 dashedWhiteMarkingStyle을 추출하고 주행 차선의 경계를 표시합니다.

    dashedWhiteMarkingStyle = getAsset(prj,"<PROJECT>/Assets/Markings/DashedSingleWhite.rrlms","LaneMarkingStyle");
    horLane1MarkingProfile = horizontalLane1.LaneMarkingProfile;
    horLane1Span = horLane1MarkingProfile.Spans;
    horLane1Span.LaneMarkingStyle = dashedWhiteMarkingStyle;
    horLane2MarkingProfile = horizontalLane2.LaneMarkingProfile;
    horLane2Span = horLane2MarkingProfile.Spans;
    horLane2Span.LaneMarkingStyle = dashedWhiteMarkingStyle;

    첫 번째 수평 차선의 왼쪽에 경계 차선 하나를 추가하고, 두 번째 수평 차선의 오른쪽에 경계 차선 하나를 추가합니다. 단색 단일 흰색 표시 스타일 객체 solidWhiteMarkingStyle을 추출하고 경계 차선의 경계를 표시합니다.

    endLane1 = addLaneToLeft(horizontalLane1);
    endLane1.LaneType = "Border";
    endLane1.TravelDirection = "Forward";
    endLane2 = addLaneToRight(horizontalLane2);
    endLane2.LaneType = "Border";
    endLane2.TravelDirection = "Backward";
    solidWhiteMarkingStyle = getAsset(prj,"<PROJECT>/Assets/Markings/SolidSingleWhite.rrlms","LaneMarkingStyle");
    endLane1MarkingProfile = endLane1.LaneMarkingProfile;
    endLane1Span = endLane1MarkingProfile .Spans;
    endLane1Span.LaneMarkingStyle = solidWhiteMarkingStyle;
    endLane2MarkingProfile = endLane2.LaneMarkingProfile;
    endLane2Span = endLane2MarkingProfile.Spans;
    endLane2Span.LaneMarkingStyle = solidWhiteMarkingStyle;

    RoadRunner scene of a road with four driving lanes. The reference lane of the road is marked with the solid yellow marking style. The outer boundaries of the inner driving lanes are marked with dashed white and the outer boundaries of the outer driving lanes are marked with solid white

    버전 내역

    R2025a에 개발됨