mirror of
https://git.mirrors.martin98.com/https://github.com/google/draco
synced 2025-08-12 15: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
|
The Javascript decoder is located in `javascript/draco_decoder.js`. The
|
||||||
Javascript decoder can currently only decode mesh geometry. In order to use the
|
Javascript decoder can decode mesh and point cloud. In order to use the
|
||||||
decoder you must create `DecoderBuffer` and `WebIDLWrapper` objects. Set the
|
decoder you must first create `DecoderBuffer` and `WebIDLWrapper` objects. Set the
|
||||||
encoded data in the `DecoderBuffer`. Then call `DecodeMeshFromBuffer()`, which
|
encoded data in the `DecoderBuffer`. Then call `GetEncodedGeometryType()` to identify
|
||||||
will return a Mesh object. E.g.
|
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
|
~~~~~ js
|
||||||
var buffer = new Module.DecoderBuffer();
|
var buffer = new Module.DecoderBuffer();
|
||||||
buffer.Init(encFileData, encFileData.length);
|
buffer.Init(encFileData, encFileData.length);
|
||||||
|
|
||||||
var wrapper = new WebIDLWrapper();
|
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);
|
DracoModule.destroy(outputGeometry);
|
||||||
destroy(wrapper);
|
DracoModule.destroy(wrapper);
|
||||||
destroy(buffer);
|
DracoModule.destroy(buffer);
|
||||||
~~~~~
|
~~~~~
|
||||||
|
|
||||||
Please see `javascript/emscripten/draco_web.idl` for the full API.
|
Please see `javascript/emscripten/draco_web.idl` for the full API.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user