mirror of
https://git.mirrors.martin98.com/https://github.com/google/draco
synced 2025-08-11 23:19:00 +08:00
Merge pull request #11 from fanzhanggoogle/update_js_decoder_doc
Updated doc of JS decoder in README
This commit is contained in:
commit
5544c1d3f8
23
README.md
23
README.md
@ -250,21 +250,28 @@ Javascript Decoder
|
||||
------------------
|
||||
|
||||
The Javascript decoder is located in `javascript/draco_decoder.js`. The
|
||||
Javascript decoder can currently only decode mesh geometry. In order to use the
|
||||
decoder you must create `DecoderBuffer` and `WebIDLWrapper` objects. Set the
|
||||
encoded data in the `DecoderBuffer`. Then call `DecodeMeshFromBuffer()`, which
|
||||
will return a Mesh object. E.g.
|
||||
Javascript decoder can decode mesh and point cloud. In order to use the
|
||||
decoder you must first create `DecoderBuffer` and `WebIDLWrapper` objects. Set the
|
||||
encoded data in the `DecoderBuffer`. Then call `GetEncodedGeometryType()` to identify
|
||||
the type of geometry, e.g. mesh or point cloud. Then call either `DecodeMeshFromBuffer()` or
|
||||
`DecodePointCloudFromBuffer()` which will return a Mesh object or a point cloud. E.g.
|
||||
|
||||
~~~~~ js
|
||||
var buffer = new Module.DecoderBuffer();
|
||||
buffer.Init(encFileData, encFileData.length);
|
||||
|
||||
var wrapper = new WebIDLWrapper();
|
||||
var outputMesh = wrapper.DecodeMeshFromBuffer(buffer);
|
||||
const geometryType = wrapper.GetEncodedGeometryType(buffer);
|
||||
let outputGeometry;
|
||||
if (geometryType == DracoModule.TRIANGULAR_MESH) {
|
||||
var outputGeometry = wrapper.DecodeMeshFromBuffer(buffer);
|
||||
} else {
|
||||
var outputGeometry = wrapper.DecodePointCloudFromBuffer(buffer);
|
||||
}
|
||||
|
||||
destroy(outputMesh);
|
||||
destroy(wrapper);
|
||||
destroy(buffer);
|
||||
DracoModule.destroy(outputGeometry);
|
||||
DracoModule.destroy(wrapper);
|
||||
DracoModule.destroy(buffer);
|
||||
~~~~~
|
||||
|
||||
Please see `javascript/emscripten/draco_web.idl` for the full API.
|
||||
|
Loading…
x
Reference in New Issue
Block a user