【发布时间】:2017-01-11 17:05:19
【问题描述】:
我需要将三个几何图形导出为 JSON,以便与 xml3D 一起使用。
我试图找到 THREE.GeometryExporter() 但我找不到。它已被完全弃用吗? 这里提到了
一旦我有了三个 JSON,我应该能够使用这个转换器来获取 xml3D JSON。
以前有人试过吗?
【问题讨论】:
我需要将三个几何图形导出为 JSON,以便与 xml3D 一起使用。
我试图找到 THREE.GeometryExporter() 但我找不到。它已被完全弃用吗? 这里提到了
一旦我有了三个 JSON,我应该能够使用这个转换器来获取 xml3D JSON。
以前有人试过吗?
【问题讨论】:
你应该试试toJSON() 方法:
var json = geometry.toJSON();
此方法适用于几何体、材质、灯光、网格......
【讨论】:
Realease 68 似乎是示例文件夹中包含 GeometyExporter 的最后一个。 https://github.com/mrdoob/three.js/tree/r68/examples/js/exporters
不确定您希望它如何输出为 xml3D 格式(我从未尝试过),但如果需要更改它应该不会太难。
这个three.js json to xml3d 转换器可能会派上用场。 https://github.com/xml3d/threejs-to-xml3d
【讨论】:
geometry.toJSON() 没有以我需要执行类似操作的格式输出信息。我的解决方案如下:
cannonPoints = geometry.vertices.map(function(v) {
return new CANNON.Vec3( v.x, v.y, v.z )
})
cannonFaces = geometry.faces.map(function(f) {
return [f.a, f.b, f.c]
})
我在这里分享了一个类似问题的解决方案: Create CANNON.RigidBody from THREE.Mesh or THREE.Geometry
【讨论】: