Main Content

load

Load or import 3D file

Since R2022b

    Description

    load(actor,source) loads the 3D file called source to the actor specified by actor.

    example

    load(actor,source,scale) specifies the overall scale applied to all the actors in source.

    Examples

    collapse all

    This example shows how to build an actor from an imported 3D file using MATLAB®. If you have a custom actor defined in a supported 3D file, you can import the file. You can import 3D file formats including FBX, STL, and URDF.

    To build an actor from an imported 3D file using Simulink®, see Build Actor from Imported 3D File Using Simulink.

    You can use the sim3d.World object and functions to create and view a 3D environment. You can use the sim3d.Actor object and functions to create an actor in the 3D environment and build an appearance for the actor from an imported 3D file. Use the load function of the sim3d.Actor object to import the file.

    Create 3D Environment

    Create a world object.

    world = sim3d.World();

    Build Actor from File

    Use the load function to import a 3D file. This example uses an STL file.

    rotor = sim3d.Actor(ActorName='Rotor');
    load(rotor,'rotor.stl', 0.01*[1 1 1]);
    rotor.Rotation = [0 pi/2 0];
    add(world,rotor);

    Set Viewer Window Point of View

    If you do not create a viewport, then the default view is set and you can use the keyboard shortcuts and mouse controls to navigate in the Simulation 3D Viewer window.

    For this example, use the createViewport function to create a viewport.

    viewport = createViewport(world,Translation=[-0.5 0 0]);

    Run Animation

    Run the animation set for 5 seconds with a sample time of 0.01 seconds.

    sampletime = 0.01;
    stoptime = 5;
    run(world,sampletime,stoptime)

    Imported 3D actor in the virtual world.

    Delete World

    Delete the world object.

    delete(world)

    Import a scene built in RoadRunner into the Unreal Engine® simulation environment. To export a RoadRunner scene, use the option CARLA Filmbox. For more information, see Export Using CARLA Filmbox (RoadRunner). For more information on the exported RoadRunner scene files, see the Project parameter of the Simulation 3D Scene Configuration block.

    Create a world object using sim3d.World.

    world = sim3d.World();

    Create an empty actor using the sim3d.Actor object. Load the Filmbox (.fbx) file to import the RoadRunner scene. To add a vehicle and simulate in this scene, set the sim3d.Actor object properties, Shadows and PreciseContacts to 1.

    scene = sim3d.Actor(ActorName='RoadRunnerScene');
    add(world,scene);
    filepath = fullfile(pwd,'Data','sim3dRoad.fbx');
    load(scene,filepath);
    

    Set the Simulation 3D Viewer window point of view and run the simulation.

    viewport = createViewport(world);
    viewport.Translation = [-2, 0, 1];
    sampletime = 0.01;
    stoptime = 5;
    run(world,sampletime,stoptime);

    RoadRunner scene containing a straight road.

    Input Arguments

    collapse all

    Actor class where the 3D file is loaded, specified as a sim3d.Actor object.

    Name of location from where actor is loaded, specified as a character array. The source can be a file path or file name. load supports these as sources.

    File Formats

    • MAT (MAT file from MATLAB®)

    • STL (Stereolithography)

    • FBX (Autodesk® FilmBoX format)

    • URDF (Unified Robot Description File)

    • X3D (Extensible 3D)

    • VRML (Virtual Reality Modeling Language)

    • DAE COLLADA (Collada digital asset exchange)

    MATLAB Objects

    • RigidBodyTree

    • surf (only 3D shapes based on polygons)

    • patch (only 3D shapes based on polygons)

    Overall scale applied to the entire loaded model, specified as a real positive scalar. Scale parameters of individual objects are not affected by using this parameter.

    Tips

    You can load STL files even with sim3d.Actor objects that are not currently added to the World.

    Version History

    Introduced in R2022b