文件

虚拟世界数据类型

节点使用VRML和X3D虚拟世界数据类型定义对象和可以出现在节点字段和事件中的数据类型。

本节介绍这些现场数据类型和数据类类型。

现场数据类型

金宝app®3D动画™产品在Matlab之间提供界面®和Sim金宝appulink环境和虚拟现实场景。使用此界面,您可以设置并获取场景节点字段值。使用这些值要求您了解虚拟世界数据类型与相应的MATLAB数据类型之间的关系。下表说明了虚拟世界数据类型以及它们如何转换为MATLAB类型。

有关VRML字段的详细说明,请参阅VRML97标准。

您可以使用MATLAB命令读取和保存X3D文件,并将X3D文件与Simulink模型相关联。金宝app有关X3D支持的其他信息金宝app金宝appSimulink 3D动画, 看X3D支金宝app持

有关支持的X3D规范的信息,请参阅金宝appISO / IEC 19775-1:2013。有关支持X3D编码的信息,请参阅金宝appISO / IEC 19776-1.3:201xISO / IEC 19776-2.3:201x

VRML类型 描述 金宝appSimulink 3D动画类型

SFBOOL.

布尔值为true或false。

逻辑

Sffloat.

32位,浮点值。

单身的

sfint32.

32位,签名 - 整数值。

INT32.

sftime.

绝对或相对时间值。

双倍的

sfvec2f.

您通常使用2-D坐标的两个浮点值矢量。例如,纹理坐标。

单阵列(1-by-2)

sfvec3f.

您通常使用3-D坐标的三个浮点值矢量。

单阵列(1-by-3)

sfcolor.

您用于RGB颜色规范的三个浮点值矢量。

单阵列(1-by-3)

strotation.

您用于指定旋转坐标的四个浮点值矢量(XyZ.)轴加上该轴周围的旋转角度。

单阵列(1-by-4)

Sfimage.

由一系列浮点数表示的二维阵列。

UINT8阵列(n-by-m-by-3)

SFString.

UTF-8编码中的字符串。兼容ASCII,允许您使用Unicode®人物。

char

sfnode.

节点的容器。

vrnode.

Mffloat.

数组Sffloat.价值观。

单数组(n-by-1)

mfint32.

数组sfint32.价值观。

INT32.阵列(n-by-1)

mfvec2f.

数组sfvec2f.价值观。

单阵列(n-by-2)

mfvec3f.

数组sfvec3f.价值观。

单阵列(n-by-3)

mfcolor.

数组sfcolor.价值观。

单阵列(n-by-3)

MFrotation.

数组strotation.价值观。

单阵列(n-by-4)

MFString.

数组SFString.价值观。

char阵列(n-by-1)

MFnode.

数组sfnode.价值观。

vrnode.

金宝appSimulink 3D动画软件可以使用各种MATLAB数据类型,如有必要,转换它们:

  • 输入的输入setfield.功能(及其点表示法)和VR接收器和VR源块,接受输入上的所有有意义的数据类型。两者都根据需要将数据类型转换为自然虚拟世界类型。数据类型包括逻辑,签名和无符号整数,单打和双打。

  • Getfield.功能及其点表示法表单根据上表返回其自然数据类型。

要确保与现有模型和应用程序的向后兼容,请使用金宝appSimulink 3D动画vrsetpref.函数来定义数据类型支持。金宝app他们的名字如下:

财产 描述

datatypebool.

指定布尔数据类型vrnode / setfield.vrnode / getfield.。有效值是'逻辑''icr'。如果设置为'逻辑',虚拟世界布尔数据类型作为逻辑值返回。如果设置为'icr',虚拟世界布尔数据类型返回'在'要么'离开'

datatypeint32.

指定INT32.数据类型vrnode / setfield.vrnode / getfield.。有效值是'int32''双倍的'。如果设置为'int32',虚拟世界INT32.数据类型返回为INT32.。如果设置为'双倍的',虚拟世界INT32.数据类型返回为'双倍的'

dataTypefloat.

指定漂浮数据类型vrnode / setfield.vrnode / getfield.。有效值是'单身的''双倍的'。如果设置为'单身的',虚拟世界漂浮颜色数据类型(大多数虚拟世界字段的类型)返回为'单身的'。如果设置为'双倍的',虚拟世界漂浮颜色数据类型返回为'双倍的'

虚拟世界数据类类型

节点可以包含四类数据:场地exposedfield.赛事, 和事实。这些类定义节点的行为,节点如何存储在内存中,以及它们如何与其他节点和外部对象交互。

VRML数据类 描述

赛事

节点可以接收的事件

事实

节点可以发送的事件

场地

私有节点成员,保持节点数据

exposedfield.

公共节点成员,保持节点数据

赛事

通常,赛事事件对应于节点中的字段。Node字段无法从节点外部访问。你可以改变它们的唯一方法是相应的赛事

一些节点有赛事与该节点的任何字段不对应的事件,但为其提供了其他功能。例如转变节点有一个addchildren feftin.。收到此事件时,传递的子节点被添加到给定变换的子节点。

您对暴露于其他对象的字段使用此类类型。

事实

每当允许发送事件的相应节点字段的值更改其值时,请发送此事件。

您对具有此功能的字段使用此类类型。

场地

可以将字段设置为虚拟世界3D文件中的特定值。通常,该字段私有到节点,只有在其节点接收到对应的时,才能改变其值赛事。重要的是要理解其他节点或外部创作界面无法更改字段。

您使用此类类型为未暴露的字段,并且没有事实功能。

exposedfield.

这种强大的数据类提供了许多目的。您可以使用此类类型的符号赛事事实功能。相应的替代名称赛事始终是字段名称放_字首。的名称事实始终是字段名称_加剧后缀。

exposedfield.班级定义了相应的方式赛事事实表现。对所有人exposedfield.类,当发生事件时,将更改字段值,对应于场景外观更改,以及事实用新的字段值发送。这些变化允许通过许多节点链接事件。

exposedfield.脚本可以访问类,而场地课不是。

相关话题