将ThreeJS Geometry导出为JSON

时间:2015-06-20 22:14:27

标签: three.js xml3d

我需要将Three Geometry导出为JSON,以便我可以使用xml3D。

我试图找到THREE.GeometryExporter(),但我不能。是否完全弃用了? 这里提到

一旦我拥有了三个JSON,我应该可以使用这个转换器来获取xml3D JSON。

以前有人试过吗?

3 个答案:

答案 0 :(得分:3)

您应该尝试toJSON()方法:

var json = geometry.toJSON();

此方法适用于几何,材质,灯光,网格......

答案 1 :(得分:2)

Realease 68似乎是示例文件夹中GeometyExporter的最后一个。 https://github.com/mrdoob/three.js/tree/r68/examples/js/exporters

不确定你希望它如何输出到xml3D格式(我从来没有尝试过),尽管如果需要的话也不应该太难改变。

这三个.js json到xml3d转换器可能会派上用场。 https://github.com/xml3d/threejs-to-xml3d

答案 2 :(得分:2)

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