主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

LineArcRoadCurvePoint

RoadRunner 场景中指定线弧道路曲线的控制点

自 R2025a 起

    说明

    LineArcRoadCurvePoint 对象表示 RoadRunner 场景中一条线弧道路曲线上的控制点。

    创建对象

    要为 RoadRunner 场景中的控制点返回 LineArcRoadCurvePoint 对象,请从表示对应线弧道路曲线的 LineArcRoadCurve 对象的 ControlPoints 属性中提取该对象。例如,lineArcPoint = lineArc.ControlPoints(1) 从线弧道路曲线 lineArc 中提取第一个控制点。

    当使用 addControlPoint 函数在指定位置向指定道路曲线添加控制点时,该函数会将该控制点作为 LineArcRoadCurvePoint 对象添加到指定线弧道路曲线的 ControlPoints 属性中。

    属性

    全部展开

    控制点在 RoadRunner 局部坐标系中的位置,以两元素向量形式指定。

    控制点弧的最大半径(单位:米),指定为数值标量。

    控制点弧线前后曲率平滑的程度,以数值标量形式指定,取值范围为[0,1]。RoadRunner 在控制点弧线前后使用螺旋曲线来计算曲率过渡。

    示例

    全部折叠

    在场景中添加一条线弧道路,然后提取线弧道路曲线的控制点对象。

    创建一个 roadrunner 对象,指定现有工程的路径。例如,此代码显示 Windows® 计算机上位于 "C:\RR\MyProject" 的工程的路径。此代码假设 RoadRunner 已安装在默认位置,并返回一个名为 rrApp 的对象,该对象提供用于执行基本任务的函数,例如打开、关闭和保存场景及工程。

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

    注意

    若您首次从 MATLAB® 打开 RoadRunner,或自上次从 MATLAB 打开以来更改了 RoadRunner 的安装位置,可使用 roadrunnerSetup 功能指定新的默认工程和安装文件夹,以便在打开 RoadRunner 时使用。您可以在 MATLAB 会话之间通过从对应下拉菜单中选择 Across MATLAB sessions 选项来保存这些文件夹。

    创建一个对象,用于 RoadRunner 创作 API 的 rrApi,该对象引用当前 RoadRunner 实例 rrApp 的对象。rrApi 对象支持通过编程方式创建场景与情境,例如利用 MATLAB 添加和修改道路、交通参与者及逻辑组件。

    rrApi = roadrunnerAPI(rrApp);
    
    分别从创作 API 对象 rrApiSceneScenario 属性中提取场景对象和情境对象。提取的 Scene 对象可用于指定添加场景组件(如道路和车道)的场景。提取的 Scenario (RoadRunner Scenario) 对象使您能够指定添加情境组件(如交通参与者和逻辑)的场景。
    scn = rrApi.Scene;
    scnro = rrApi.Scenario;
    从创作 API 对象 rrApiProject 属性中提取 RoadRunner 工程的对象。提取的 Project 对象可让您指定当前 RoadRunner 会话的工程文件夹,以便从中检索资源对象。您可以使用素材对象将素材分配给场景中的道路,或分配给情境中的交通参与者。
    prj = rrApi.Project;

    要创建一条线弧道路,请使用 addLineArcRoad 函数,并指定添加道路的场景以及控制点的 xy 坐标位置。然后,从道路 rrRoadHorizontalCurve 属性中提取线弧曲线。

    rrRoad = addLineArcRoad(scn,[-100 0; 100 0]);
    lineArc = rrRoad.HorizontalCurve;
    

    提取 LineArcRoadCurvePoint 对象

    要提取线弧曲线 lineArc 的第一和第二控制点的 LineArcRoadCurvePoint 对象,请从 lineArcControlPoints 属性中指定第一和第二个元素。

    arcPoint1 = lineArc.ControlPoints(1)
    arcPoint2 = lineArc.ControlPoints(2)

    您可以使用 LineArcRoadCurvePoint 对象来修改道路曲线控制点的属性。通过修改控制点属性,您可以在 RoadRunner 场景中改变道路的形状和位置。

    要移动场景中的道路 rrRoad,请修改线弧道路曲线点 arcPoint1arcPoint2Positions 属性值。

    arcPoint1.Position = [-100 -50];
    arcPoint2.Position = [100 50];

    版本历史记录

    在 R2025a 中推出