VRML到X3D转换

时间:2013-02-13 08:48:38

标签: python django vrml x3d x3dom

我正在处理管理VRML文件的Web应用程序。我还想让用户看到上传的文件,而无需特定的插件或播放器。 X3DOM允许在大多数浏览器上查看没有插件的X3D文件,所以我想使用它。

唉,它适用于X3D文件,而不适用于VRML文件。我需要将VRML文件转换为X3D格式。

X3DOM背后的同一个人发布了一个名为InstantReality的软件包,它有一个将VRML转换为X3D的实用程序。但是,我宁愿不使用外部工具(我甚至不确定我是否允许在商业环境中使用它,我无法找到其使用条款)但是从我的应用程序代码中调用转换例程。

7 个答案:

答案 0 :(得分:8)

MeshLab!有一个名为MeshLab的开源项目,可以对3D网格进行各种处理。它还有一个名为MeshlabServer的命令行工具。

正在运行meshlabserver.exe -i <wrl file> -o <x3d file>执行转换(非常快)。由于它是开源的,我没有任何许可问题。

答案 1 :(得分:5)

你在谈论这个在线转换器吗? http://doc.instantreality.org/tools/x3d_encoding_converter/ 您可以构建一些脚本来将vrml转换为x3d / x3dom,然后存储和/或显示

以及blender aopt和其他人应该能够在命令行上将vrml转换为x3d。根据你的服务器,这也可以批量/编写脚本

我急于完成其他工作,但希望这会有所帮助。

如果您需要更多信息或示例,请告诉我并了解我能做些什么

答案 2 :(得分:2)

好吧所以我认为这是你的完整解决方案

1)用户上传vrml文件

2)该文件被保存到(文件或数据库)

3)在确认vrml文件已被保存(并且可能被验证为正确的vrml语法)后,它将被转换并保存到x3d(再次作为文件或数据库),aopt这将通过aopt -i输入完成。 wrl -o output.x3d

仅供参考:aopt适用于linux windows和mac

因为你使用python这也许你可以用blender这样做,虽然没有完整的vrml到x3d的例子这个链接应该让你开始 http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Import-Export/Wavefront_OBJ#Command_Line_Converting

4)通过x3dom显示x3d

答案 3 :(得分:2)

我还需要将VRML .wrl转换为.x3d;我尝试了meshlabmeshlabserver),但不幸的是,我在Ubuntu 14.04上的版本(.deb 2016.12~trusty2)将所有内容压缩为单个网格,并在此过程中丢失了颜色

我发现view3dscene可以从命令行进行转换,其中材料/颜色保存在.x3d中,就像在.wrl中一样:

view3dscene mymodel.wrl --write --write-encoding xml > mymodel.x3d

由于view3dscene充当.wrl.x3d文件的查看器,因此它也可以立即使用,以检查转换后的(或原始的)文件是否有颜色

答案 4 :(得分:1)

如果您只想将X3D XML编码文件转换为VRML Classic编码文件,则可以使用Titania http://titania.create3000.de/。打开.x3d文件并将其另存为.x3dv或.wrl。

Titania还附带了一个可以进行转换的命令行“x3dtidy”。

答案 5 :(得分:1)

您可以使用此工具(可以从命令行运行的Java jar)将VRML转换为X3D:

http://www.deem7.com/vrmlmerge/howto.php

java -jar VrmlMerge-[version].jar -convert inputfile.wrl [outputfile.x3d] 

license

  

VrmlMerge可免费用于非商业用途。如果你以某种方式从VrmlMerge赚钱,那么我希望你联系我同意一些使用条款。 VrmlMerge“按原样”提供,我对其对您,您的计算机,文件,数据,妻子,大脑等造​​成的任何损害不承担任何责任。

答案 6 :(得分:1)

由于ClassicVRML X3D编码是VRML97标准的直接继承者,因此在大多数情况下,您可以复制文件,将 .wrl 文件扩展名重命名为 .x3dv 文件扩展名,并从

更改场景标题
#VRML V2.0 utf8

#VRML V3.3 utf8
PROFILE Immersive

存在许多转换器,包括商业和开源。

维护完整列表