主要内容

虚拟现实世界和动态系统实例

金宝app接口的例子

对于所有有Simulink的例子金宝app®模型,使用以下过程运行示例并查看模型:

  1. 在MATLAB®命令窗口,输入Simulink模型的名称。金宝app例如,输入:

    vrbounce

    打开金宝app一个带有模型框图的Simulink窗口。默认情况下,虚拟世界也会在金宝app仿真软件3 d动画™浏览器或支持html5的网络浏览器。如果你关闭虚拟世界窗口,双击VR下沉块再次显示它。

    请注意

    如果查看器没有打开,双击Simulink模型中的VR Sink块。金宝app在金宝app仿真软件3 d动画查看器,从模拟”菜单上,单击“块的参数.打开“块参数”对话框。的自动打开查看器复选框应在默认情况下被选中。当你双击VR Sink块时,这个选择使虚拟世界窗口打开。

  2. 在Simuli金宝appnk窗口,从模拟”菜单上,单击“运行.(或者,在金宝app仿真软件3 d动画查看器,从模拟”菜单上,单击“开始.)

    一个仿真开始运行,虚拟世界使用来自仿真的信号数据动画。

控件提供的Simulink示例金宝app金宝app仿真软件3 d动画产品。示例的描述如下表所示。

例子 金宝app仿真软件编码器™准备好了 VR水槽 虚拟现实来源 操纵杆 空间鼠标
sl3dex_rigidbodytree X
sl3dex_uav X X X

vrbounce

X

X

vrcrane_joystick

X

X

vrcrane_panel

X

X

vrcrane_traj

X

X

vrlights

X

X

vrmaglev

X

X

vrmaglev_sldrt

X

X

vrmanipul

X

X

vrmanipul_global

X

X

vrmemb1

X

X

vrmorph

X

X

vr_octavia

X

X

vr_octavia_2cars

X

vr_octavia_graphs

X

vr_octavia_mirror

X

vr_octavia_video

X

vrdemo_panel

X

X

vrpend

X

X

vrplanets

X

X

vrtkoff

X

X

vrtkoff_trace

X

vrtkoff_hud

X

vrcollisions

X

X

vrcollisions_lidar

X

X

vrmaze

X

X

无人机竞赛示例(sl3dex_uav)

sl3dex_uav示例展示了如何使用虚拟碰撞传感器交互控制仿真,并使用Simulink®3D Animation™改变虚拟世界对象的外观。金宝app这个例子代表了一个简单的无人机(UAV)挑战。

无人机比赛场景是基于2013年在法国图卢兹举行的IMAV飞行比赛。(http://www.imav2013.org

刚体树可视化(sl3dex_rigidbodytree)

sl3dex_rigidbodytree示例演示了金宝app仿真软件3 d动画VR RigidBodyTree块。这个例子需要Robotics System Toolbox™

VR RigidBodyTree块在虚拟世界中插入机器人系统工具箱RigidBodyTree对象的可视化表示,并将其显示在虚拟现实查看器中。在模拟过程中,刚体树随后根据Config输入中定义的配置动画化。

在本例中,机器人系统工具箱提供了机械手配置逆运动学块。您可以使用滑块来改变机器人的末端执行器的位置和一个轴的方向。

弹跳球示例(vrbounce)

vrbounce示例表示从地板上弹跳的球。球在着地的时候会变形,保持球的体积不变。通过修改球的比例尺场来实现变形。

操纵式门式起重机(vrcrane_joystick)

vrcrane_joystick示例说明了Simulink模型如何与虚拟世界交互。金宝app在Simulink界面中建立了门式起重机的动力学模型,并在虚拟现实中实现了可视化。金宝app模型使用操纵杆输入块来控制设定值。操纵杆3轴控制设定位置,按钮1启动起重机。这个例子需要一个标准的操纵杆,至少有三个独立的轴连接到PC。

为了最小化Simulink模型与虚拟现实世界之间传输的信号数量,并尽可能保持模型的简单和灵活,只有最小的移动对象属性金宝app集从模型发送到VR Sink块。描述虚拟现实对象移动所需的所有其他值都是使用关联虚拟世界3D文件中的VRMLScript从这个最小值集计算出来的。

有关crane模型层次结构和脚本逻辑是如何实现的详细信息,请参阅相关的注释虚拟世界3D文件portal_crane.wrl

虚拟控制面板(vrdemo_panel)

vrdemo_panel示例展示了在3D世界编辑器组件库中可用的传感对象的使用。这些物体结合了虚拟世界传感器和逻辑,根据用户输入改变其视觉外观。通过VR Source模块可以将传感器值读取到Simulink中。金宝app该逻辑使用VRML脚本和路由实现。

控制面板包含一个按钮、开关按钮、拨动开关和一个二维设定值选择区域。这些元素的输出被读入Simulink模型中,然后使用标准接收器显示,或者作为控制虚拟金宝app世界中某些对象的块的输入。

按钮、开关按钮和拨动开关具有布尔类型的状态输出。它们的值使用Scope显示。

2D设定值区域的两个输出用于实现以下行为。当指针位于传感器区域上方时,“SetPoint_Changed”eventOut的值会不断更新。该值由第二个输出“isActive”触发,只有在单击指针按钮时才为真。通过XY Graph显示传感器平面上活动点的触发值-坐标,并通过两种方式发送回虚拟世界:作为绿色锥形标记的位置和VR text Output块在控制面板上显示的文本。

预定轨迹门式起重机实例(vrcrane_traj)

vrcrane_traj示例基于vrcrane_joystick但是它没有交互式控制,而是有一个预定义的加载轨迹。的vrcrane_traj模型说明了一种在虚拟世界中创建连接和分裂移动对象的视觉印象的技术。

吊车磁铁将装载箱连接在一起,将其移动到另一个位置,然后释放装载箱并返回到初始位置。这个效果是通过使用一个附加的、几何上相同的阴影对象来实现的,这个阴影对象被放置在起重机对象层次结构之外,作为一个独立的对象。在任何时候,只有一个负载影子对象显示,使用两个开关连接的节点路线声明。

当起重机将负载移动到新的位置后,在负载释放时,VRMLScript脚本根据当前位置分配新的阴影对象位置负载的位置。的影子对象变得可见。因为它独立于起重机运动部件层次结构的其余部分,所以当起重机移动时,它保持在它的位置。

照明示例(vrlights)

vrlights例如使用光源。在场景中,您可以移动Sun(建模为方向性光源)和Lamp(模型为PointLight)对象围绕Simulink模型。金宝app这种运动创造了白天和夜晚之间的变化,以及夜间地形照明的错觉。相关的虚拟世界3D文件定义了几个视点,允许您从不同的角度观察光线的逐渐变化。

磁悬浮模型实例(vrmaglev)

vrmaglev实例说明了Simulink环境中动态模型与虚拟世界之间的交互作用。金宝appSimu金宝applink模型代表了HUMUSOFT®ce152磁悬浮教育/演示比例模型。针对磁悬浮系统的非线性问题,采用带前馈的PID控制器对被控对象进行控制。为了更容易地观察和控制球,设置虚拟世界观察者相机3视点。

你可以通过两种方式设置球的位置设定点:

  • 使用一个信号发生器(金宝app模型)

  • 在你想要的位置点击虚拟现实场景

要达到拖动效果,请使用PlaneSensor在垂直坐标中,其输出限制为<0,1>,并由VR Sensor Reader块处理。的vrextins功能提供数据连接。

有关如何以编程方式从虚拟世界读取值的详细信息,请参见向虚拟世界添加传感器

磁悬浮模型金宝app桌面实时示例(vrmaglev_sldrt)

除了vrmaglev的例子中,vrmaglev_sldrt实例直接与实际的ce152比例模型硬件在实时工作。该模型与HUMUSOFT MF 624数据采集板一起工作金宝app仿真软件编码器金宝app仿真软件桌面实时™软件然而,您可以将此模型应用于其他目标和收购董事会。数字IIR滤波器,来自DSP系统工具箱™库,过滤物理系统输出。您可以通过使用内置的工厂模型绕过物理系统。实时运行该模型是一个例子,显示了Simulink产品在控制系统设计和快速原型方面的能力。金宝app

在VR Sink块对话框中启用远程视图后,您甚至可以从另一个(远程)客户端计算机控制Simulink模型。金宝app这种控制对于在一台机器上运行的实时Simulink模型和在另一台机器上渲染虚拟现实世界之间分配计算能力非常有用。金宝app

要使用这个模型,请尽可能使用功能强大的机器,或者在两台机器上分割计算和渲染。

机械手与空间鼠标示例(vrmanipul)

vrmanipul例子说明了…的用法金宝app仿真软件3 d动画在实施阶段之前,用于虚拟现实原型和测试设计可行性的软件。此外,这个示例还演示了如何使用空间鼠标输入在虚拟世界中操作对象。要运行此示例,必须有空格鼠标输入。

虚拟现实模型代表了一个核热室机械手。它由一个简单的Simulink模型进行操作,该模型包含金宝app空间鼠标输入块。该模型使用了太空鼠标的所有6个自由度来操纵机械臂,并使用鼠标按钮1来关闭机械手钳口的抓地力。

太空鼠标是一种有6个自由度的输入设备。它对于在虚拟世界中导航和操作对象非常有用。空间鼠标也适合作为Simulink模型的通用输入设备。金宝app您可以使用空间鼠标来实现更高性能的应用程序和用户舒适度。空格鼠标输入支持通过金宝app空间鼠标输入块,它包含在金宝app仿真软件3 d动画块库的Simulink环境。金宝app

空间鼠标输入Block可以在三种模式下运行,以覆盖这种设备在三维环境中最典型的用途:

  • 速度

  • 职位

  • 视点坐标

使用全局坐标移动负载的机械手(vrmanipul_global)

vrmanipul_global中全局坐标的使用示例金宝app仿真软件3 d动画模型。在模型中使用全局坐标有很多方法,包括:

  • 目标跟踪和操作

  • 简单的碰撞检测

  • 模拟触觉效果

VR Source块支持对虚拟世界中的对金宝app象使用全局坐标。对于场景中的每个变换,虚拟现实源块参数对话框中的树视图显示扩展分支。在那个分支中,您可以选择translation_absrotation_abs字段。字段的_abs后缀包含对象的全局坐标。田地里没有_abs后缀将其数据输入到Simulink模型对象的局部坐标中(相金宝app对于模型层次结构中的父对象)。

虚拟现实模型代表了一个核热室机械手。机械手将负载从一个灰色圆柱形平台移动到另一个。利用信号构建器给出了机械手末端执行器的运动轨迹。机械臂的每个部分都是独立驱动的,使用分解的轨迹组件,借助VR Expander块(见虚拟现实的转换子系统)。

左侧虚拟场景树中的VR Source块捕获了负载操作中所有重要对象的全局坐标:

  • 机械手夹紧参考点(夹紧中心)

  • 目的地的参考点

  • 负载的初始位置

机械手的抓取位置是由机械手手臂各部分复杂的运动形成的层次化结构所引起的。对于场景中受层次关系影响的对象,一般很难计算其全局坐标。然而,金宝app仿真软件3 d动画提供了一种简单的方法来读取受层次关系影响的对象的全局坐标到Simulink模型中。金宝app

在拥有所有重要对象的全局坐标的基础上,可以实现一个简单的机械手控制逻辑。

旋转膜实例(vrmemb1)

vrmemb1示例类似于vrmemb例,但在vrmemb1例如,关联的虚拟世界是由Simulink模型驱动的。金宝app

几何变形示例(vrmorph)

vrmorph示例演示了如何在Simulink接口和虚拟现实世界之间传输矩阵类型或可变大小的信号数据。金宝app有了这个功能,您可以执行大量的颜色变化或变形。该模型将一个立方体变形为八面体,然后再将其变回立方体。

车辆动力学可视化(vr_octavia)

vr_octavia实例说明了在虚拟现实环境中实现复杂动态模型可视化的好处。它还显示了金宝app仿真软件3 d动画3-D离线动画记录功能。

车辆动力学可视化-多对象仿真(vr_octavia_2cars)

这个例子扩展了vr_octavia演示多对象场景可视化的示例。

预计算的仿真数据代表了在两车配置下进行的标准双车道变道机动。一种配置涉及电子稳定程序控制单元。其他配置开关控制单元关闭。该示例向虚拟现实场景并行发送两组车辆动态数据,以驱动两辆不同的车辆。

车辆的模型使用EXTERNPROTO机制。在与VR Sink块相关的主虚拟世界中,您可以创建几个相同的车辆作为一个普通3d对象的实例。这种方法极大地简化了虚拟世界的创作。例如,创建第三辆车来同时可视化另一个模拟场景是非常容易的。的octavia_scene_lchg_2cars.wrl虚拟世界,代码后定义原型说明一种易于定义的可重用对象的方法。

除控制车辆性能外vr_octavia例如,车辆原型也允许你定义车辆的颜色和比例。这些属性区分了单独的汽车实例(颜色),并避免了两个几乎对齐的3-D对象(比例)不愉快的视觉交互。根据每个模拟步骤中当前的模拟数据,将其中一辆车缩放一小部分,将一辆车包围到另一辆车中,这样它们的脸就不会随机剪切。

若要看到并排的车辆,在其中一辆车的位置上添加偏移量。

车辆动力学图形可视化(vr_octavia_graphs)

vr_octavia_graphs示例扩展了vr_octavia示例,展示如何将一个虚拟现实画布与其他图形用户界面对象组合在一个图形中。在这种情况下,虚拟世界显示了三个图,它们在每个主要的模拟时间步更新。

基于实时后视镜图像的车辆动力学可视化(vr_octavia_mirror)

vr_octavia_mirror示例扩展了vr_octavia示例,展示了VR Sink块处理输入视频流的能力。在虚拟世界中PixelTexture纹理贴图定义在车辆左后视镜的位置。该示例将一个从视点获得的二维图像放置在相同的位置(向后看)。这个图像被环回同一个虚拟世界,并投射到后视镜上,创造出一种实时反射的印象。纹理图像可以有不同的格式(相应的可用SFImage根据VRML97标准定义)。这个例子使用了与从VR到Video块的输出格式相同的RGB图像。在与场景相关的虚拟世界3D文件中,您只能定义一个琐碎的纹理(在本例中是一个4x4像素的棋盘),它会在模拟过程中根据输入信号的当前大小调整大小。参见平面操作使用空间鼠标MATLAB对象示例。

车辆动态可视化与视频输出示例(vr_octavia_video)

vr_octavia_video示例演示了如何使用来自虚拟视频块。该模型对视频输出进行简单操作。它需要计算机视觉工具箱™产品。

倒立摆实例(vrpend)

vrpend示例说明了Simulink界面中的动态模型与虚拟现实场景交互的各种方式。金宝app它是一个由PID控制器控制的二维倒立摆模型。这个模型与普通倒立摆模型的区别在于设置设定值的方法。通过使用轨迹图和VR Sink块,你可以可视化并与虚拟世界进行交互。轨迹图块允许您跟踪历史的钟摆位置和改变设置点的三种方式:

  • 鼠标-单击并拖动鼠标指针轨迹图二维窗口

  • 输入信号-此模型的外部轨迹图输入(由随机数发生器驱动)

  • VR传感器-激活来自VRML触摸传感器的输入

当虚拟世界查看器中的指针设备移动到主动TouchSensor区域时,光标的形状会发生变化。通过单击鼠标左键,将此模型中的触发逻辑设置为应用新的设定值。

注意在关联的虚拟世界3D文件中定义的伪图像视图。您可以通过创建一个远离感兴趣的对象的视角来实现这个效果FieldOfView参数。当你使用广角镜头时,正射影视图对于消除全景失真是有用的。这种技术的缺点是,在一些导航模式(如检查模式)中,在远处定位视点会使标准的查看器导航变得棘手或困难。如果你想在虚拟的摆台周围导航,你应该使用一些其他的观点。

太阳系示例(vrplanets)

vrplanets例子显示了太阳系的前四颗行星、绕地球运行的月球和太阳本身的动态表示。这个模型使用了天体的真实属性。只有相对行星的大小和地球和月球之间的距离被调整,以提供一个有趣的观点。

在虚拟世界中定义了几个视点,它们都是静态的,并附属于地球上的观察者。你可以看到行星体并不是完美的球体。使用以这种方式呈现的图形原语简化了模型。如果你想让行星更真实,你可以使用更复杂的IndexedFaceSet节点类型。

物体的相互重力加速度是使用Simulink矩阵型数据支持计算的。金宝app金宝app

飞机起飞示例(vrtkoff)

vrtkoff示例是一架从跑道起飞的简化飞机。在这个模型中定义了几个视点,包括静态的和附加在飞机上的,允许您从不同的角度看到起飞。

该模型展示了将多个从不同来源(CAD包、通用三维建模器等)导入或获得的对象组合到虚拟现实场景的技术。通常,您有必要将这些导入的对象包装为附加的变换节点。这个包装器允许您适当地设置对象的缩放、位置和方向,以适应场景。在这个例子中,来自Ligos的飞机模型®V-Realm构建器对象库被整合到场景中。该文件vrtkoff2.wrl使用相同的场景与不同类型的飞机。

带有轨迹跟踪的飞机起飞示例(vrtkoff_trace)

vrtkoff_trace是the的变体vrtkoff这个例子说明了如何在场景中跟踪一个移动的物体(平面)的轨迹。它使用了VR追踪器块。使用预定义的示例时间,该块允许您在对象的当前位置放置标记。当模拟停止时,标记点指示目标的轨迹。本例使用八面体作为标记。

平面起飞与HUD文本示例(vrtkoff_hud)

vrtkoff_hud示例演示了如何在虚拟世界中以文本形式显示信号值和简单的平视显示器(HUD)。它是the的变体vrtkoff的例子。

属性将文本发送到虚拟世界虚拟现实文本输出块。该块使用在其掩码中定义的格式字符串对输入向量进行格式化(参见sprintf获取更多信息),并将结果字符串发送到“字符串”关联域文本场景中的节点。

这个例子实现了HUD行为(在用户和文本节点)通过定义ProximitySensor.当它在场景中导航时,这个传感器感知用户的位置和方向,并将此信息传递到HUD对象的平移和旋转(在本例中,a变换包含文本节点)。

使用线传感器(vrcollisions)进行碰撞检测

vrcollisions示例演示了如何实现碰撞检测的简单方法。

在虚拟世界中,X3DLinePickSensor定义。该传感器检测几条射线的近似碰撞(模型为IndexedLineSet)与场景中的任意几何图形。对于几何基元,精确碰撞检测。之一LinePickSensor输出字段是\\字段,它变成真正的一旦检测到任何光线和周围场景物体之间的碰撞。

机器人在一个有几个障碍的房间里。在模拟过程中,只要传感器不撞到墙壁或障碍物,机器人就会向前移动。使用正确的按钮来转动机器人,使其前方有一条自由的路径,然后机器人开始再次移动。

该模型定义了VR水槽虚拟现实来源块,与相同的虚拟场景相关联。的虚拟现实来源读取传感器isActive信号和机器人当前的位置。的VR水槽块设置机器人的位置、旋转和颜色。

在虚拟世界中,定义了两个视点——一个是静态的,一个是附加在机器人上的。

带激光雷达传感器的差动轮式机器人(vrcollisions_lidar)

vrcollisions_lidar示例显示了LinePickSensor可以用来模拟激光雷达传感器的行为金宝app仿真软件3 d动画

在一个简单的虚拟世界中,定义了一个顶部安装有激光雷达传感器的轮式机器人。该激光雷达传感器是利用LinePickSensor探测多条射线的碰撞(模型为IndexedLineSet)与周围的场景对象。传感器pickedRangepickedPoint字段在该模型中仅用于可视化目的,但与机器人姿态信息一起,它们可以用于同步定位和映射(SLAM)和其他类似目的。

传感器传感线可见,为透明绿色线。在-90度和90度之间的水平面上均匀分布着51条传感射线。激光雷达的射程是10米。

为了可视化激光雷达传感器输出,有一个可视化代理LineSet定义的线与定义为LinePickSensor传感几何学。可视化线是蓝色的。的组合pickedPointpickedRangeLinePickSensor输出用于可视化碰撞点。的pickedPoint输出包含与周围物体碰撞的点的坐标。这个输出的大小取决于有多少传感器射线相撞。的pickedRange输出大小是固定的,等于传感射线的数量。输出返回每条传感线从激光雷达传感器原点到碰撞点的距离。对于不碰撞的射线,这个输出返回-1。的pickedRange用于确定碰撞点在pickedPoint传感器的输出。实际上,蓝线被缩短了,以便每条线只显示射线扇原点和碰撞点之间的线段。

利用该方法对机器人的轨迹进行了简单的建模信号生成器斜坡块。在信号生成器,在模拟的前40秒定义了一个简单的1x1平方米轨迹。在回到原来的位置后,机器人只能无限地旋转。

在模型中,两者都有VR水槽虚拟现实来源已定义的块,与同一个虚拟世界相关联。的虚拟现实来源用于读取传感器信号。的VR水槽用于设置机器人的位置/旋转和传感器视觉代理线端点的坐标。

在虚拟世界中,定义了几个视点,包括静态的和附加在机器人上的,允许从不同的角度观察激光雷达可视化。

迷宫差动轮式机器人(vrmaze)

vrmaze示例演示了如何使用碰撞检测来模拟一个解决迷宫挑战的差动轮式机器人。机器人控制算法使用来自虚拟超声波传感器的信息来感知与周围物体的距离。

一个简单的差动轮式机器人配备了两个虚拟超声波传感器。其中一个传感器面向前方,另一个则指向机器人的左侧。传感器被简化,其活动距离用绿线表示。传感器实现为X3DLinePickSensor节点。这些传感器检测光线的近似碰撞(模型为IndexedLineSet)与场景中的任意几何图形。对于几何基元,精确碰撞检测。其中的一个LinePickSensor输出字段是isActive字段,它变成了真正的一旦它的光线和周围的场景物体之间的碰撞被检测到。当激活时,传感器线使用直接在虚拟世界中编写的脚本将其颜色从绿色变为红色。

在模型中,两者都有VR水槽虚拟现实来源块定义,关联同一个虚拟场景。的虚拟现实来源读取传感器isActive信号。的VR水槽设置机器人在虚拟世界中的位置和旋转。

机器人控制算法是使用statflow®图表实现的。

MATLAB接口的例子

下表列出了软件附带的MATLAB接口示例。示例的描述如下表所示。MATLAB界面示例在默认查看器中显示虚拟世界。如果你的默认值是金宝app仿真软件3 d动画查看器,有些按钮不可用。特别是模拟和录音的模拟按钮不可用。

例子 移动
对象
变形
对象
文本 记录 vrml()函数使用 空间鼠标
vrcar

X

vrheat

X

X

vrheat_anim

X

X

X

vrmemb

X

X

X

vrterrain_simple

X

vrtkoff_spacemouse

X

X

山脉中的汽车示例(vrcar)

这个例子演示了金宝app仿真软件3 d动画产品与MATLAB接口。在一个循序渐进的教程中,它展示了引导虚拟汽车沿着山路行驶的命令。

  1. 在MATLAB命令窗口中,输入

    vrcar
  2. 教程脚本开始运行。按照MATLAB命令窗口中的说明操作。

传热实例(vrheat)

这个例子演示了金宝app仿真软件3 d动画产品与MATLAB接口,用于操作复杂对象。

在这个例子中,矩阵类型的数据在MATLAB软件和虚拟现实世界之间传输。使用这个功能,你可以实现大量的颜色变化或变形。这对于表示各种物理过程很有用。采用了l型金属块内基于时间的温度分布预计算数据。然后数据被发送到虚拟世界。这就形成了一个变化相对较大的动画。

这是一个循序渐进的例子。如下图所示:

  • 改造的对象

  • 应用调色板来表示跨对象形状的分布式参数

  • 使用VRML或X3D文本对象

  • 使用MATLAB界面制作场景动画

  • 多场景属性的同步

在本例的最后,可以将虚拟世界对象保存在MATLAB工作空间中,然后将生成的场景保存到相应的虚拟世界3D文件中,或者对其进行其他后续操作。

传热可视化与二维动画(vrheat_anim)

这个例子演示了金宝app仿真软件3 d动画C界面创建2-D脱机动画文件。

您可以通过设置相关的离线动画录制机制来控制vrworldvrfigure对象属性。你应该使用金宝app仿真软件3 d动画查看器记录动画。然而,直接控制录音也是可能的。

这个例子使用的热量分布数据vrheat使用实例创建动画文件。您可以稍后将此动画文件分发给其他人独立查看。对于这种可视化,静态几何表示为IndexedFaceSet在结点着色的基础上模拟一些物理现象,适合创建二维图形.avi动画文件。软件使用MATLABVideoWriter对象来记录2-D动画,就像它在观众图中显示的那样。

有几种方法可以用来记录动画。在本例中,我们使用预定的记录。当预定记录是活动的,一个时间框架记录到动画文件与每个设置的虚拟世界时间财产。当您在结束时或在预定义的录音间隔之外设置场景时间时,录音就完成了。

当使用金宝app仿真软件3 d动画MATLAB界面,您可以根据需要设置场景时间。从模拟现象的角度来看,这通常是等距时间。这是与记录与Simulink模型相关的虚拟世界动画最重要的区别,在Simulink模型中,场景时间直接对应于Simulink时间。金宝app

场景时间可以表示任何独立的量,您希望沿着这个量动画计算的解。

这是一个循序渐进的例子。如下图所示:

  • 使用MATLAB接口记录二维脱机动画

  • 应用调色板来可视化对象形状上的分布式参数

  • 动画场景

  • 使用系统AVI播放器播放创建的2d动画文件

在这个例子的最后,得到的文件vrheat_anim.avi保留在工作文件夹中供以后使用。

旋转膜与MATLAB图形界面示例(vrmemb)

vrmemb示例演示了如何使用MATLAB环境生成的三维图形对象金宝app仿真软件3 d动画产品。这种膜是由标志函数,并按标准格式保存为VRML格式vrml函数。你可以保存所有手柄图形®对象,并将它们与金宝app仿真软件3 d动画作为相关虚拟世界组件的软件。

启动示例后,您将看到一个带有两个滑块和三个复选框的控制面板。使用滑块旋转和缩放薄膜,同时使用复选框确定要旋转的轴。

在虚拟场景中,注意文本对象。它是一个孩子广告牌节点。您可以将此节点配置为本地节点z-axis在任何时候都指向查看器。这对于虚拟控制面板和平视显示器(hud)的建模非常有用。

地形可视化示例(vrterrain_simple)

这个示例演示了如何将可用的数字高程模型转换为VRML格式,以便在虚拟现实场景中使用。

作为地形数据的来源,使用了南旧金山DEM模型(包含在Mapping Toolbox™软件中)。一个简单的波音公司®747®模型包含在场景中,以展示从多个源动态创建虚拟世界的技术。

此示例需要来自MathWorks的Mapping Toolbox软件®

使用空间鼠标操纵平面MATLAB对象

这个例子说明了如何使用MATLAB接口使用空间鼠标。启动本示例后,将显示一个带有飞机的虚拟世界金宝app仿真软件3 d动画查看器。您可以使用空间鼠标输入设备在场景中导航飞机。按下按钮1,在当前平面位置放置标记。

这个例子需要一个空间鼠标或兼容设备。

相关的话题