メインコンテンツ

getAsset

指定したアセットのオブジェクトを抽出

R2025a 以降

    説明

    asset = getAsset(project,assetPath,assetType) は、指定したプロジェクトの指定した Asset フォルダーへの相対パスにあるアセットについて、指定したアセット タイプのオブジェクトを抽出します。たとえば、mySedan = getAsset(prj,"Vehicles/Sedan.fbx","VehicleAsset") は、プロジェクト prj から、相対パス "Vehicles/Sedan.fbx" をもつアセットの VehicleAsset オブジェクト mySedan を抽出します。アセット オブジェクトを使用すると、道路に車線区分線テクスチャを追加したり、シナリオでアクターを表現したり、シミュレーション中にアクターの動作を変更したりできます。

    すべて折りたたむ

    getAsset 関数を使用して、RoadRunner プロジェクト内の Sedan.fbx アセットを表す VehicleAsset オブジェクトを抽出します。次に、addActor 関数を使用して、新しく作成されたアセット オブジェクトを使用するシナリオにアクターを追加します。

    既存のプロジェクトのパスを指定して、roadrunner オブジェクトを作成します。たとえば、次のコードは、Windows® マシン上の "C:\RR\MyProject" にあるプロジェクトへのパスを示しています。このコードでは、RoadRunner が既定の場所にインストールされていると仮定しており、rrApp オブジェクトが返されます。このオブジェクトは、シーンやプロジェクトの開閉や保存などの基本的なタスクを実行する関数を提供します。

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

    メモ

    MATLAB® から初めて RoadRunner を開く場合、または前回 MATLAB から RoadRunner を開いた後にそのインストール場所を変更した場合は、roadrunnerSetup 関数を使用して、RoadRunner を開くときに使用する新しい既定のプロジェクト フォルダーとインストール フォルダーを指定できます。対応するドロップ ダウンから [すべての MATLAB セッション] オプションを選択すると、MATLAB セッション間でこれらのフォルダーを保存できます。

    roadrunner オブジェクト rrApp および開こうとしている特定のシーンのファイル名を指定して openScene 関数を使用し、RoadRunner で既存のシーンを開きます。次に、newScenario 関数を使用して新しいシナリオを作成します。

    openScene(rrApp,"ScenarioBasic.rrscene")
    newScenario(rrApp)

    現在の RoadRunner インスタンス rrApp のオブジェクトを参照する、RoadRunner オーサリング API のオブジェクト rrApi を作成します。rrApi オブジェクトを使用すると、MATLAB を使用して道路、アクター、ロジック コンポーネントを追加および変更することで、シーンやシナリオをプログラムで作成できます。

    rrApi = roadrunnerAPI(rrApp);
    
    オーサリング API オブジェクト rrApiScene プロパティと Scenario プロパティから、シーン オブジェクトとシナリオ オブジェクトをそれぞれ抽出します。抽出した Scene オブジェクトを使用すると、道路や車線などのシーン コンポーネントを追加するシーンを指定できます。抽出した Scenario オブジェクトを使用すると、アクターやロジックなどのシナリオ コンポーネントを追加するシナリオを指定できます。
    scn = rrApi.Scene;
    scnro = rrApi.Scenario;
    オーサリング API オブジェクト rrApiProject プロパティから、RoadRunner プロジェクトのオブジェクトを抽出します。抽出した Project オブジェクトにより、アセット オブジェクトの取得元として、現在の RoadRunner セッションのプロジェクト フォルダーを指定できます。アセット オブジェクトを使用すると、シーンの道路やシナリオのアクターにアセットを割り当てることができます。
    prj = rrApi.Project;

    getAsset 関数を使用して、プロジェクト prj 内の Sedan.fbx アセットを表す VehicleAsset オブジェクト mySedan を抽出します。次に、addActor 関数を使用して、mySedan アセットで表される Vehicle アクター car をシナリオ scnro のワールド原点に追加します。

    mySedan = getAsset(prj,"Vehicles/Sedan.fbx","VehicleAsset");
    car = addActor(scnro,mySedan,[0 0 0]);

    入力引数

    すべて折りたたむ

    現在の RoadRunner セッションのプロジェクト フォルダー。Project オブジェクトとして指定します。

    例: prj = rrApi.Project (ここで、rrApiRoadRunner オーサリング API オブジェクト) は、現在の RoadRunner セッションの Project オブジェクト prj を返します。

    アセットの相対パス。string スカラーまたは文字ベクトルとして指定します。指定するパスは、project 内の Assets サブフォルダーに対して相対的でなければなりません。getAsset 関数は絶対パスをサポートしていません。

    メモ

    既定では、アセットの相対パスを指定すると、RoadRunnerRoadRunner プロジェクトの Assets フォルダーを検索します。RoadRunner プロジェクトの Assets フォルダーの外部にあるアセットを追加する場合は、新しいパスを指定する前に、<PROJECT> 接頭辞を使用して現在のプロジェクト フォルダーを指定します。たとえば、getAsset(prj,"<PROJECT>/CustomFiles/CustomVehicles/CustomSedan.fbx","VehicleAsset") のようにします。

    抽出されるアセットのタイプ。次のいずれかのオプションとして指定します。

    • "VehicleAsset" — 抽出されるアセットのタイプを [Vehicle] として指定します。

    • "CharacterAsset" — 抽出されるアセットのタイプを [Character] として指定します。

    • "MovableObjectAsset" — 抽出されるアセットのタイプを [Movable Object] として指定します。

    • "BehaviorAsset" — 抽出されるアセットのタイプを [Behavior] として指定します。RoadRunner は動作アセットのデータを .rrbehavior ファイルに保存します。

    • "LaneMarkingStyle" — 抽出されるアセットのタイプを [Lane Marking] として指定します。

    出力引数

    すべて折りたたむ

    アセット オブジェクト。次のいずれかのオブジェクトとして返されます。

    • VehicleAsset[Vehicle] アセット タイプのアセットを表します。

    • CharacterAsset[Character] アセット タイプのアセットを表します。

    • MovableObjectAsset[Movable Object] アセット タイプのアセットを表します。

    • BehaviorAsset[Behavior] アセット タイプのアセットを表します。RoadRunner は動作アセットのデータを .rrbehavior ファイルに保存します。

    • LaneMarkingStyle[Lane Marking] アセット タイプのアセットを表します。

    バージョン履歴

    R2025a で導入