@loaders.gl/3d-tiles 3.1.0-alpha.3 → 3.1.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle.d.ts +2 -0
- package/dist/bundle.d.ts.map +1 -0
- package/dist/bundle.js +9972 -4
- package/dist/cesium-ion-loader.d.ts +6 -0
- package/dist/cesium-ion-loader.d.ts.map +1 -0
- package/dist/cesium-ion-loader.js +36 -32
- package/dist/es5/bundle.js +7 -0
- package/dist/es5/bundle.js.map +1 -0
- package/dist/es5/cesium-ion-loader.js +45 -0
- package/dist/es5/cesium-ion-loader.js.map +1 -0
- package/dist/es5/index.js +72 -0
- package/dist/es5/index.js.map +1 -0
- package/dist/es5/lib/classes/helpers/tile-3d-accessor-utils.js +108 -0
- package/dist/es5/lib/classes/helpers/tile-3d-accessor-utils.js.map +1 -0
- package/dist/es5/lib/classes/tile-3d-batch-table-hierarchy.js +223 -0
- package/dist/es5/lib/classes/tile-3d-batch-table-hierarchy.js.map +1 -0
- package/dist/es5/lib/classes/tile-3d-batch-table.js +312 -0
- package/dist/es5/lib/classes/tile-3d-batch-table.js.map +1 -0
- package/dist/es5/lib/classes/tile-3d-feature-table.js +103 -0
- package/dist/es5/lib/classes/tile-3d-feature-table.js.map +1 -0
- package/dist/es5/lib/constants.js +31 -0
- package/dist/es5/lib/constants.js.map +1 -0
- package/dist/es5/lib/encoders/encode-3d-tile-batched-model.js +56 -0
- package/dist/es5/lib/encoders/encode-3d-tile-batched-model.js.map +1 -0
- package/dist/es5/lib/encoders/encode-3d-tile-composite.js +34 -0
- package/dist/es5/lib/encoders/encode-3d-tile-composite.js.map +1 -0
- package/dist/es5/lib/encoders/encode-3d-tile-instanced-model.js +48 -0
- package/dist/es5/lib/encoders/encode-3d-tile-instanced-model.js.map +1 -0
- package/dist/es5/lib/encoders/encode-3d-tile-point-cloud.js +52 -0
- package/dist/es5/lib/encoders/encode-3d-tile-point-cloud.js.map +1 -0
- package/dist/es5/lib/encoders/encode-3d-tile.js +48 -0
- package/dist/es5/lib/encoders/encode-3d-tile.js.map +1 -0
- package/dist/es5/lib/encoders/helpers/encode-3d-tile-header.js +41 -0
- package/dist/es5/lib/encoders/helpers/encode-3d-tile-header.js.map +1 -0
- package/dist/es5/lib/ion/ion.js +91 -0
- package/dist/es5/lib/ion/ion.js.map +1 -0
- package/dist/es5/lib/parsers/helpers/normalize-3d-tile-colors.js +75 -0
- package/dist/es5/lib/parsers/helpers/normalize-3d-tile-colors.js.map +1 -0
- package/dist/es5/lib/parsers/helpers/normalize-3d-tile-normals.js +40 -0
- package/dist/es5/lib/parsers/helpers/normalize-3d-tile-normals.js.map +1 -0
- package/dist/es5/lib/parsers/helpers/normalize-3d-tile-positions.js +40 -0
- package/dist/es5/lib/parsers/helpers/normalize-3d-tile-positions.js.map +1 -0
- package/dist/es5/lib/parsers/helpers/parse-3d-tile-gltf-view.js +83 -0
- package/dist/es5/lib/parsers/helpers/parse-3d-tile-gltf-view.js.map +1 -0
- package/dist/es5/lib/parsers/helpers/parse-3d-tile-header.js +24 -0
- package/dist/es5/lib/parsers/helpers/parse-3d-tile-header.js.map +1 -0
- package/dist/es5/lib/parsers/helpers/parse-3d-tile-subtree.js +73 -0
- package/dist/es5/lib/parsers/helpers/parse-3d-tile-subtree.js.map +1 -0
- package/dist/es5/lib/parsers/helpers/parse-3d-tile-tables.js +100 -0
- package/dist/es5/lib/parsers/helpers/parse-3d-tile-tables.js.map +1 -0
- package/dist/es5/lib/parsers/helpers/parse-utils.js +31 -0
- package/dist/es5/lib/parsers/helpers/parse-utils.js.map +1 -0
- package/dist/es5/lib/parsers/parse-3d-tile-batched-model.js +43 -0
- package/dist/es5/lib/parsers/parse-3d-tile-batched-model.js.map +1 -0
- package/dist/es5/lib/parsers/parse-3d-tile-composite.js +25 -0
- package/dist/es5/lib/parsers/parse-3d-tile-composite.js.map +1 -0
- package/dist/es5/lib/parsers/parse-3d-tile-header.js +86 -0
- package/dist/es5/lib/parsers/parse-3d-tile-header.js.map +1 -0
- package/dist/es5/lib/parsers/parse-3d-tile-instanced-model.js +195 -0
- package/dist/es5/lib/parsers/parse-3d-tile-instanced-model.js.map +1 -0
- package/dist/es5/lib/parsers/parse-3d-tile-point-cloud.js +265 -0
- package/dist/es5/lib/parsers/parse-3d-tile-point-cloud.js.map +1 -0
- package/dist/es5/lib/parsers/parse-3d-tile.js +41 -0
- package/dist/es5/lib/parsers/parse-3d-tile.js.map +1 -0
- package/dist/es5/lib/utils/version.js +9 -0
- package/dist/es5/lib/utils/version.js.map +1 -0
- package/dist/es5/tile-3d-subtree-loader.js +26 -0
- package/dist/es5/tile-3d-subtree-loader.js.map +1 -0
- package/dist/es5/tile-3d-writer.js +32 -0
- package/dist/es5/tile-3d-writer.js.map +1 -0
- package/dist/es5/tiles-3d-loader.js +85 -0
- package/dist/es5/tiles-3d-loader.js.map +1 -0
- package/dist/es5/types.js +2 -0
- package/dist/{types.js.map → es5/types.js.map} +0 -0
- package/dist/esm/bundle.js +5 -0
- package/dist/esm/bundle.js.map +1 -0
- package/dist/esm/cesium-ion-loader.js +36 -0
- package/dist/esm/cesium-ion-loader.js.map +1 -0
- package/dist/esm/index.js +9 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/lib/classes/helpers/tile-3d-accessor-utils.js +96 -0
- package/dist/esm/lib/classes/helpers/tile-3d-accessor-utils.js.map +1 -0
- package/dist/esm/lib/classes/tile-3d-batch-table-hierarchy.js +215 -0
- package/dist/esm/lib/classes/tile-3d-batch-table-hierarchy.js.map +1 -0
- package/dist/esm/lib/classes/tile-3d-batch-table.js +304 -0
- package/dist/esm/lib/classes/tile-3d-batch-table.js.map +1 -0
- package/dist/esm/lib/classes/tile-3d-feature-table.js +94 -0
- package/dist/esm/lib/classes/tile-3d-feature-table.js.map +1 -0
- package/dist/esm/lib/constants.js +21 -0
- package/dist/esm/lib/constants.js.map +1 -0
- package/dist/esm/lib/encoders/encode-3d-tile-batched-model.js +46 -0
- package/dist/esm/lib/encoders/encode-3d-tile-batched-model.js.map +1 -0
- package/dist/esm/lib/encoders/encode-3d-tile-composite.js +25 -0
- package/dist/esm/lib/encoders/encode-3d-tile-composite.js.map +1 -0
- package/dist/esm/lib/encoders/encode-3d-tile-instanced-model.js +38 -0
- package/dist/esm/lib/encoders/encode-3d-tile-instanced-model.js.map +1 -0
- package/dist/esm/lib/encoders/encode-3d-tile-point-cloud.js +41 -0
- package/dist/esm/lib/encoders/encode-3d-tile-point-cloud.js.map +1 -0
- package/dist/esm/lib/encoders/encode-3d-tile.js +35 -0
- package/dist/esm/lib/encoders/encode-3d-tile.js.map +1 -0
- package/dist/esm/lib/encoders/helpers/encode-3d-tile-header.js +31 -0
- package/dist/esm/lib/encoders/helpers/encode-3d-tile-header.js.map +1 -0
- package/dist/esm/lib/ion/ion.js +77 -0
- package/dist/esm/lib/ion/ion.js.map +1 -0
- package/dist/esm/lib/parsers/helpers/normalize-3d-tile-colors.js +67 -0
- package/dist/esm/lib/parsers/helpers/normalize-3d-tile-colors.js.map +1 -0
- package/dist/esm/lib/parsers/helpers/normalize-3d-tile-normals.js +30 -0
- package/dist/esm/lib/parsers/helpers/normalize-3d-tile-normals.js.map +1 -0
- package/dist/esm/lib/parsers/helpers/normalize-3d-tile-positions.js +31 -0
- package/dist/esm/lib/parsers/helpers/normalize-3d-tile-positions.js.map +1 -0
- package/dist/esm/lib/parsers/helpers/parse-3d-tile-gltf-view.js +69 -0
- package/dist/esm/lib/parsers/helpers/parse-3d-tile-gltf-view.js.map +1 -0
- package/dist/esm/lib/parsers/helpers/parse-3d-tile-header.js +17 -0
- package/dist/esm/lib/parsers/helpers/parse-3d-tile-header.js.map +1 -0
- package/dist/esm/lib/parsers/helpers/parse-3d-tile-subtree.js +64 -0
- package/dist/esm/lib/parsers/helpers/parse-3d-tile-subtree.js.map +1 -0
- package/dist/esm/lib/parsers/helpers/parse-3d-tile-tables.js +89 -0
- package/dist/esm/lib/parsers/helpers/parse-3d-tile-tables.js.map +1 -0
- package/dist/esm/lib/parsers/helpers/parse-utils.js +19 -0
- package/dist/esm/lib/parsers/helpers/parse-utils.js.map +1 -0
- package/dist/esm/lib/parsers/parse-3d-tile-batched-model.js +29 -0
- package/dist/esm/lib/parsers/parse-3d-tile-batched-model.js.map +1 -0
- package/dist/esm/lib/parsers/parse-3d-tile-composite.js +17 -0
- package/dist/esm/lib/parsers/parse-3d-tile-composite.js.map +1 -0
- package/dist/esm/lib/parsers/parse-3d-tile-header.js +77 -0
- package/dist/esm/lib/parsers/parse-3d-tile-header.js.map +1 -0
- package/dist/esm/lib/parsers/parse-3d-tile-instanced-model.js +177 -0
- package/dist/esm/lib/parsers/parse-3d-tile-instanced-model.js.map +1 -0
- package/dist/esm/lib/parsers/parse-3d-tile-point-cloud.js +245 -0
- package/dist/esm/lib/parsers/parse-3d-tile-point-cloud.js.map +1 -0
- package/dist/esm/lib/parsers/parse-3d-tile.js +28 -0
- package/dist/esm/lib/parsers/parse-3d-tile.js.map +1 -0
- package/dist/esm/lib/utils/version.js +2 -0
- package/dist/esm/lib/utils/version.js.map +1 -0
- package/dist/esm/tile-3d-subtree-loader.js +14 -0
- package/dist/esm/tile-3d-subtree-loader.js.map +1 -0
- package/dist/esm/tile-3d-writer.js +20 -0
- package/dist/esm/tile-3d-writer.js.map +1 -0
- package/dist/esm/tiles-3d-loader.js +72 -0
- package/dist/esm/tiles-3d-loader.js.map +1 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +26 -8
- package/dist/lib/classes/helpers/tile-3d-accessor-utils.d.ts +8 -0
- package/dist/lib/classes/helpers/tile-3d-accessor-utils.d.ts.map +1 -0
- package/dist/lib/classes/helpers/tile-3d-accessor-utils.js +106 -89
- package/dist/lib/classes/tile-3d-batch-table-hierarchy.d.ts +10 -0
- package/dist/lib/classes/tile-3d-batch-table-hierarchy.d.ts.map +1 -0
- package/dist/lib/classes/tile-3d-batch-table-hierarchy.js +184 -202
- package/dist/lib/classes/tile-3d-batch-table.d.ts +34 -0
- package/dist/lib/classes/tile-3d-batch-table.d.ts.map +1 -0
- package/dist/lib/classes/tile-3d-batch-table.js +223 -267
- package/dist/lib/classes/tile-3d-feature-table.d.ts +15 -0
- package/dist/lib/classes/tile-3d-feature-table.d.ts.map +1 -0
- package/dist/lib/classes/tile-3d-feature-table.js +64 -79
- package/dist/lib/constants.d.ts +21 -0
- package/dist/lib/constants.d.ts.map +1 -0
- package/dist/lib/constants.js +22 -18
- package/dist/lib/encoders/encode-3d-tile-batched-model.d.ts +2 -0
- package/dist/lib/encoders/encode-3d-tile-batched-model.d.ts.map +1 -0
- package/dist/lib/encoders/encode-3d-tile-batched-model.js +45 -45
- package/dist/lib/encoders/encode-3d-tile-composite.d.ts +2 -0
- package/dist/lib/encoders/encode-3d-tile-composite.d.ts.map +1 -0
- package/dist/lib/encoders/encode-3d-tile-composite.js +23 -24
- package/dist/lib/encoders/encode-3d-tile-instanced-model.d.ts +2 -0
- package/dist/lib/encoders/encode-3d-tile-instanced-model.d.ts.map +1 -0
- package/dist/lib/encoders/encode-3d-tile-instanced-model.js +37 -37
- package/dist/lib/encoders/encode-3d-tile-point-cloud.d.ts +2 -0
- package/dist/lib/encoders/encode-3d-tile-point-cloud.d.ts.map +1 -0
- package/dist/lib/encoders/encode-3d-tile-point-cloud.js +36 -38
- package/dist/lib/encoders/encode-3d-tile.d.ts +2 -0
- package/dist/lib/encoders/encode-3d-tile.d.ts.map +1 -0
- package/dist/lib/encoders/encode-3d-tile.js +30 -32
- package/dist/lib/encoders/helpers/encode-3d-tile-header.d.ts +3 -0
- package/dist/lib/encoders/helpers/encode-3d-tile-header.d.ts.map +1 -0
- package/dist/lib/encoders/helpers/encode-3d-tile-header.js +28 -29
- package/dist/lib/ion/ion.d.ts +4 -0
- package/dist/lib/ion/ion.d.ts.map +1 -0
- package/dist/lib/ion/ion.js +60 -69
- package/dist/lib/parsers/helpers/normalize-3d-tile-colors.d.ts +7 -0
- package/dist/lib/parsers/helpers/normalize-3d-tile-colors.d.ts.map +1 -0
- package/dist/lib/parsers/helpers/normalize-3d-tile-colors.js +60 -62
- package/dist/lib/parsers/helpers/normalize-3d-tile-normals.d.ts +6 -0
- package/dist/lib/parsers/helpers/normalize-3d-tile-normals.d.ts.map +1 -0
- package/dist/lib/parsers/helpers/normalize-3d-tile-normals.js +26 -26
- package/dist/lib/parsers/helpers/normalize-3d-tile-positions.d.ts +2 -0
- package/dist/lib/parsers/helpers/normalize-3d-tile-positions.d.ts.map +1 -0
- package/dist/lib/parsers/helpers/normalize-3d-tile-positions.js +39 -28
- package/dist/lib/parsers/helpers/parse-3d-tile-gltf-view.d.ts +7 -0
- package/dist/lib/parsers/helpers/parse-3d-tile-gltf-view.d.ts.map +1 -0
- package/dist/lib/parsers/helpers/parse-3d-tile-gltf-view.js +82 -63
- package/dist/lib/parsers/helpers/parse-3d-tile-header.d.ts +2 -0
- package/dist/lib/parsers/helpers/parse-3d-tile-header.d.ts.map +1 -0
- package/dist/lib/parsers/helpers/parse-3d-tile-header.js +26 -15
- package/dist/lib/parsers/helpers/parse-3d-tile-subtree.d.ts +9 -0
- package/dist/lib/parsers/helpers/parse-3d-tile-subtree.d.ts.map +1 -0
- package/dist/lib/parsers/helpers/parse-3d-tile-subtree.js +74 -0
- package/dist/lib/parsers/helpers/parse-3d-tile-tables.d.ts +3 -0
- package/dist/lib/parsers/helpers/parse-3d-tile-tables.d.ts.map +1 -0
- package/dist/lib/parsers/helpers/parse-3d-tile-tables.js +85 -81
- package/dist/lib/parsers/helpers/parse-utils.d.ts +4 -0
- package/dist/lib/parsers/helpers/parse-utils.d.ts.map +1 -0
- package/dist/lib/parsers/helpers/parse-utils.js +25 -16
- package/dist/lib/parsers/parse-3d-tile-batched-model.d.ts +2 -0
- package/dist/lib/parsers/parse-3d-tile-batched-model.d.ts.map +1 -0
- package/dist/lib/parsers/parse-3d-tile-batched-model.js +30 -26
- package/dist/lib/parsers/parse-3d-tile-composite.d.ts +2 -0
- package/dist/lib/parsers/parse-3d-tile-composite.d.ts.map +1 -0
- package/dist/lib/parsers/parse-3d-tile-composite.js +25 -16
- package/dist/lib/parsers/parse-3d-tile-header.d.ts +3 -0
- package/dist/lib/parsers/parse-3d-tile-header.d.ts.map +1 -0
- package/dist/lib/parsers/parse-3d-tile-header.js +59 -70
- package/dist/lib/parsers/parse-3d-tile-instanced-model.d.ts +2 -0
- package/dist/lib/parsers/parse-3d-tile-instanced-model.d.ts.map +1 -0
- package/dist/lib/parsers/parse-3d-tile-instanced-model.js +179 -170
- package/dist/lib/parsers/parse-3d-tile-point-cloud.d.ts +3 -0
- package/dist/lib/parsers/parse-3d-tile-point-cloud.d.ts.map +1 -0
- package/dist/lib/parsers/parse-3d-tile-point-cloud.js +350 -184
- package/dist/lib/parsers/parse-3d-tile.d.ts +2 -0
- package/dist/lib/parsers/parse-3d-tile.d.ts.map +1 -0
- package/dist/lib/parsers/parse-3d-tile.js +33 -27
- package/dist/lib/utils/version.d.ts +2 -0
- package/dist/lib/utils/version.d.ts.map +1 -0
- package/dist/lib/utils/version.js +7 -2
- package/dist/tile-3d-subtree-loader.d.ts +7 -0
- package/dist/tile-3d-subtree-loader.d.ts.map +1 -0
- package/dist/tile-3d-subtree-loader.js +23 -0
- package/dist/tile-3d-writer.d.ts +6 -0
- package/dist/tile-3d-writer.d.ts.map +1 -0
- package/dist/tile-3d-writer.js +24 -17
- package/dist/tiles-3d-loader.d.ts +6 -0
- package/dist/tiles-3d-loader.d.ts.map +1 -0
- package/dist/tiles-3d-loader.js +63 -62
- package/dist/types.d.ts +75 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -2
- package/package.json +14 -12
- package/src/index.ts +1 -0
- package/src/lib/classes/helpers/{tile-3d-accessor-utils.js → tile-3d-accessor-utils.ts} +0 -0
- package/src/lib/classes/{tile-3d-batch-table-hierarchy.js → tile-3d-batch-table-hierarchy.ts} +0 -0
- package/src/lib/classes/{tile-3d-batch-table.js → tile-3d-batch-table.ts} +14 -4
- package/src/lib/classes/{tile-3d-feature-table.js → tile-3d-feature-table.ts} +5 -2
- package/src/lib/{constants.js → constants.ts} +0 -0
- package/src/lib/encoders/{encode-3d-tile-batched-model.js → encode-3d-tile-batched-model.ts} +0 -0
- package/src/lib/encoders/{encode-3d-tile-composite.js → encode-3d-tile-composite.ts} +0 -0
- package/src/lib/encoders/{encode-3d-tile-instanced-model.js → encode-3d-tile-instanced-model.ts} +0 -0
- package/src/lib/encoders/{encode-3d-tile-point-cloud.js → encode-3d-tile-point-cloud.ts} +0 -0
- package/src/lib/encoders/{encode-3d-tile.js → encode-3d-tile.ts} +0 -0
- package/src/lib/encoders/helpers/{encode-3d-tile-header.js → encode-3d-tile-header.ts} +0 -0
- package/src/lib/parsers/helpers/{normalize-3d-tile-colors.js → normalize-3d-tile-colors.ts} +1 -1
- package/src/lib/parsers/helpers/{normalize-3d-tile-normals.js → normalize-3d-tile-normals.ts} +0 -0
- package/src/lib/parsers/helpers/{normalize-3d-tile-positions.js → normalize-3d-tile-positions.ts} +0 -0
- package/src/lib/parsers/helpers/{parse-3d-tile-gltf-view.js → parse-3d-tile-gltf-view.ts} +1 -1
- package/src/lib/parsers/helpers/{parse-3d-tile-header.js → parse-3d-tile-header.ts} +0 -0
- package/src/lib/parsers/helpers/parse-3d-tile-subtree.ts +104 -0
- package/src/lib/parsers/helpers/{parse-3d-tile-tables.js → parse-3d-tile-tables.ts} +1 -1
- package/src/lib/parsers/helpers/{parse-utils.js → parse-utils.ts} +0 -0
- package/src/lib/parsers/{parse-3d-tile-batched-model.js → parse-3d-tile-batched-model.ts} +0 -0
- package/src/lib/parsers/{parse-3d-tile-composite.js → parse-3d-tile-composite.ts} +0 -0
- package/src/lib/parsers/{parse-3d-tile-header.js → parse-3d-tile-header.ts} +1 -1
- package/src/lib/parsers/{parse-3d-tile-instanced-model.js → parse-3d-tile-instanced-model.ts} +6 -0
- package/src/lib/parsers/{parse-3d-tile-point-cloud.js → parse-3d-tile-point-cloud.ts} +2 -2
- package/src/lib/parsers/{parse-3d-tile.js → parse-3d-tile.ts} +4 -0
- package/src/lib/utils/{version.js → version.ts} +0 -0
- package/src/tile-3d-subtree-loader.ts +19 -0
- package/src/types.ts +33 -0
- package/dist/bundle.js.map +0 -1
- package/dist/cesium-ion-loader.js.map +0 -1
- package/dist/dist.min.js +0 -2
- package/dist/dist.min.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/lib/classes/helpers/tile-3d-accessor-utils.js.map +0 -1
- package/dist/lib/classes/tile-3d-batch-table-hierarchy.js.map +0 -1
- package/dist/lib/classes/tile-3d-batch-table.js.map +0 -1
- package/dist/lib/classes/tile-3d-feature-table.js.map +0 -1
- package/dist/lib/constants.js.map +0 -1
- package/dist/lib/encoders/encode-3d-tile-batched-model.js.map +0 -1
- package/dist/lib/encoders/encode-3d-tile-composite.js.map +0 -1
- package/dist/lib/encoders/encode-3d-tile-instanced-model.js.map +0 -1
- package/dist/lib/encoders/encode-3d-tile-point-cloud.js.map +0 -1
- package/dist/lib/encoders/encode-3d-tile.js.map +0 -1
- package/dist/lib/encoders/helpers/encode-3d-tile-header.js.map +0 -1
- package/dist/lib/ion/ion.js.map +0 -1
- package/dist/lib/parsers/helpers/normalize-3d-tile-colors.js.map +0 -1
- package/dist/lib/parsers/helpers/normalize-3d-tile-normals.js.map +0 -1
- package/dist/lib/parsers/helpers/normalize-3d-tile-positions.js.map +0 -1
- package/dist/lib/parsers/helpers/parse-3d-tile-gltf-view.js.map +0 -1
- package/dist/lib/parsers/helpers/parse-3d-tile-header.js.map +0 -1
- package/dist/lib/parsers/helpers/parse-3d-tile-tables.js.map +0 -1
- package/dist/lib/parsers/helpers/parse-utils.js.map +0 -1
- package/dist/lib/parsers/parse-3d-tile-batched-model.js.map +0 -1
- package/dist/lib/parsers/parse-3d-tile-composite.js.map +0 -1
- package/dist/lib/parsers/parse-3d-tile-header.js.map +0 -1
- package/dist/lib/parsers/parse-3d-tile-instanced-model.js.map +0 -1
- package/dist/lib/parsers/parse-3d-tile-point-cloud.js.map +0 -1
- package/dist/lib/parsers/parse-3d-tile.js.map +0 -1
- package/dist/lib/utils/version.js.map +0 -1
- package/dist/tile-3d-writer.js.map +0 -1
- package/dist/tiles-3d-loader.js.map +0 -1
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import type {SubtreeAvailability, ExplicitBitstream} from '../../../types';
|
|
2
|
+
import {fetchFile} from '@loaders.gl/core';
|
|
3
|
+
|
|
4
|
+
const SUBTREE_FILE_MAGIC = 0x74627573;
|
|
5
|
+
const SUBTREE_FILE_VERSION = 1;
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Parse subtree file
|
|
9
|
+
* Spec - https://github.com/CesiumGS/3d-tiles/tree/main/extensions/3DTILES_implicit_tiling#subtree-file-format
|
|
10
|
+
* @param data
|
|
11
|
+
* @returns
|
|
12
|
+
*/
|
|
13
|
+
export default async function parse3DTilesSubtree(data: ArrayBuffer): Promise<SubtreeAvailability> {
|
|
14
|
+
const magic = new Uint32Array(data.slice(0, 4));
|
|
15
|
+
|
|
16
|
+
if (magic[0] !== SUBTREE_FILE_MAGIC) {
|
|
17
|
+
throw new Error('Wrong subtree file magic number');
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const version = new Uint32Array(data.slice(4, 8));
|
|
21
|
+
|
|
22
|
+
if (version[0] !== SUBTREE_FILE_VERSION) {
|
|
23
|
+
throw new Error('Wrong subtree file verson, must be 1');
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
const jsonByteLength = parseUint64Value(data.slice(8, 16));
|
|
27
|
+
const stringAttribute = new Uint8Array(data, 24, jsonByteLength);
|
|
28
|
+
|
|
29
|
+
const textDecoder = new TextDecoder('utf8');
|
|
30
|
+
const string = textDecoder.decode(stringAttribute);
|
|
31
|
+
const subtree = JSON.parse(string);
|
|
32
|
+
|
|
33
|
+
const binaryByteLength = parseUint64Value(data.slice(16, 24));
|
|
34
|
+
let internalBinaryBuffer = new ArrayBuffer(0);
|
|
35
|
+
|
|
36
|
+
if (binaryByteLength) {
|
|
37
|
+
internalBinaryBuffer = data.slice(24 + jsonByteLength);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
if ('bufferView' in subtree.tileAvailability) {
|
|
41
|
+
subtree.tileAvailability.explicitBitstream = await getExplicitBitstream(
|
|
42
|
+
subtree,
|
|
43
|
+
'tileAvailability',
|
|
44
|
+
internalBinaryBuffer
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
if ('bufferView' in subtree.contentAvailability) {
|
|
49
|
+
subtree.contentAvailability.explicitBitstream = await getExplicitBitstream(
|
|
50
|
+
subtree,
|
|
51
|
+
'contentAvailability',
|
|
52
|
+
internalBinaryBuffer
|
|
53
|
+
);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
if ('bufferView' in subtree.childSubtreeAvailability) {
|
|
57
|
+
subtree.childSubtreeAvailability.explicitBitstream = await getExplicitBitstream(
|
|
58
|
+
subtree,
|
|
59
|
+
'childSubtreeAvailability',
|
|
60
|
+
internalBinaryBuffer
|
|
61
|
+
);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
return subtree;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Get explicit bitstream for subtree availability data.
|
|
69
|
+
* @param subtree
|
|
70
|
+
* @param name
|
|
71
|
+
* @param internalBinaryBuffer
|
|
72
|
+
*/
|
|
73
|
+
async function getExplicitBitstream(
|
|
74
|
+
subtree: SubtreeAvailability,
|
|
75
|
+
name: string,
|
|
76
|
+
internalBinaryBuffer: ArrayBuffer
|
|
77
|
+
): Promise<ExplicitBitstream> {
|
|
78
|
+
const bufferViewIndex = subtree[name].bufferView;
|
|
79
|
+
const bufferView = subtree.bufferViews[bufferViewIndex];
|
|
80
|
+
const buffer = subtree.buffers[bufferView.buffer];
|
|
81
|
+
|
|
82
|
+
// External bitstream loading
|
|
83
|
+
if (buffer.uri) {
|
|
84
|
+
const response = await fetchFile(buffer.uri);
|
|
85
|
+
const data = await response.arrayBuffer();
|
|
86
|
+
// Return view of bitstream.
|
|
87
|
+
return new Uint8Array(data, bufferView.byteOffset, bufferView.byteLength);
|
|
88
|
+
}
|
|
89
|
+
// Return view of bitstream.
|
|
90
|
+
return new Uint8Array(internalBinaryBuffer, bufferView.byteOffset, bufferView.byteLength);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Parse buffer to return uint64 value
|
|
95
|
+
* @param buffer
|
|
96
|
+
* @returns 64-bit value until precision is lost after Number.MAX_SAFE_INTEGER
|
|
97
|
+
*/
|
|
98
|
+
function parseUint64Value(buffer: ArrayBuffer): number {
|
|
99
|
+
const dataView = new DataView(buffer);
|
|
100
|
+
const left = dataView.getUint32(0, true);
|
|
101
|
+
const right = dataView.getUint32(4, true);
|
|
102
|
+
// combine the two 32-bit values
|
|
103
|
+
return left + 2 ** 32 * right;
|
|
104
|
+
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import {getStringFromArrayBuffer} from './parse-utils';
|
|
5
5
|
|
|
6
6
|
const SIZEOF_UINT32 = 4;
|
|
7
|
-
const DEPRECATION_WARNING =
|
|
7
|
+
const DEPRECATION_WARNING = 'b3dm tile in legacy format.';
|
|
8
8
|
|
|
9
9
|
// eslint-disable-next-line max-statements
|
|
10
10
|
export function parse3DTileTablesHeaderSync(tile, arrayBuffer, byteOffset) {
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/lib/parsers/{parse-3d-tile-instanced-model.js → parse-3d-tile-instanced-model.ts}
RENAMED
|
@@ -146,6 +146,7 @@ function extractInstancedAttributes(tile, featureTable, batchTable, instancesLen
|
|
|
146
146
|
}
|
|
147
147
|
|
|
148
148
|
instancePosition.copy(position);
|
|
149
|
+
// @ts-expect-error
|
|
149
150
|
instanceTranslationRotationScale.translation = instancePosition;
|
|
150
151
|
|
|
151
152
|
// Get the instance rotation
|
|
@@ -203,6 +204,7 @@ function extractInstancedAttributes(tile, featureTable, batchTable, instancesLen
|
|
|
203
204
|
}
|
|
204
205
|
|
|
205
206
|
instanceQuaternion.fromMatrix3(instanceRotation);
|
|
207
|
+
// @ts-expect-error
|
|
206
208
|
instanceTranslationRotationScale.rotation = instanceQuaternion;
|
|
207
209
|
|
|
208
210
|
// Get the instance scale
|
|
@@ -216,6 +218,7 @@ function extractInstancedAttributes(tile, featureTable, batchTable, instancesLen
|
|
|
216
218
|
instanceScale.scale(nonUniformScale);
|
|
217
219
|
}
|
|
218
220
|
|
|
221
|
+
// @ts-expect-error
|
|
219
222
|
instanceTranslationRotationScale.scale = instanceScale;
|
|
220
223
|
|
|
221
224
|
// Get the batchId
|
|
@@ -225,12 +228,15 @@ function extractInstancedAttributes(tile, featureTable, batchTable, instancesLen
|
|
|
225
228
|
batchId = i;
|
|
226
229
|
}
|
|
227
230
|
|
|
231
|
+
// @ts-expect-error
|
|
228
232
|
const rotationMatrix = new Matrix4().fromQuaternion(instanceTranslationRotationScale.rotation);
|
|
229
233
|
|
|
230
234
|
// Create the model matrix and the instance
|
|
231
235
|
instanceTransform.identity();
|
|
236
|
+
// @ts-expect-error
|
|
232
237
|
instanceTransform.translate(instanceTranslationRotationScale.translation);
|
|
233
238
|
instanceTransform.multiplyRight(rotationMatrix);
|
|
239
|
+
// @ts-expect-error
|
|
234
240
|
instanceTransform.scale(instanceTranslationRotationScale.scale);
|
|
235
241
|
|
|
236
242
|
const modelMatrix = instanceTransform.clone();
|
|
@@ -137,7 +137,7 @@ function parseNormals(tile, featureTable) {
|
|
|
137
137
|
}
|
|
138
138
|
|
|
139
139
|
function parseBatchIds(tile, featureTable) {
|
|
140
|
-
let batchTable = null;
|
|
140
|
+
let batchTable: Tile3DBatchTable | null = null;
|
|
141
141
|
if (!tile.batchIds && featureTable.hasProperty('BATCH_ID')) {
|
|
142
142
|
tile.batchIds = featureTable.getPropertyArray('BATCH_ID', GL.UNSIGNED_SHORT, 1);
|
|
143
143
|
|
|
@@ -250,7 +250,7 @@ export async function loadDraco(tile, dracoData, options, context) {
|
|
|
250
250
|
|
|
251
251
|
tile.attributes = {
|
|
252
252
|
positions: decodedPositions,
|
|
253
|
-
colors: normalize3DTileColorAttribute(tile, decodedColors),
|
|
253
|
+
colors: normalize3DTileColorAttribute(tile, decodedColors, undefined),
|
|
254
254
|
normals: decodedNormals,
|
|
255
255
|
batchIds: decodedBatchIds,
|
|
256
256
|
...batchTableAttributes
|
|
@@ -11,9 +11,12 @@ import {parseComposite3DTile} from './parse-3d-tile-composite';
|
|
|
11
11
|
|
|
12
12
|
// Extracts
|
|
13
13
|
export async function parse3DTile(arrayBuffer, byteOffset = 0, options, context, tile = {}) {
|
|
14
|
+
// @ts-expect-error
|
|
14
15
|
tile.byteOffset = byteOffset;
|
|
16
|
+
// @ts-expect-error
|
|
15
17
|
tile.type = getMagicString(arrayBuffer, byteOffset);
|
|
16
18
|
|
|
19
|
+
// @ts-expect-error
|
|
17
20
|
switch (tile.type) {
|
|
18
21
|
case TILE3D_TYPE.COMPOSITE:
|
|
19
22
|
// Note: We pass this function as argument so that embedded tiles can be parsed recursively
|
|
@@ -36,6 +39,7 @@ export async function parse3DTile(arrayBuffer, byteOffset = 0, options, context,
|
|
|
36
39
|
return await parsePointCloud3DTile(tile, arrayBuffer, byteOffset, options, context);
|
|
37
40
|
|
|
38
41
|
default:
|
|
42
|
+
// @ts-expect-error
|
|
39
43
|
throw new Error(`3DTileLoader: unknown type ${tile.type}`); // eslint-disable-line
|
|
40
44
|
}
|
|
41
45
|
}
|
|
File without changes
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type {LoaderWithParser} from '@loaders.gl/loader-utils';
|
|
2
|
+
import parse3DTilesSubtree from './lib/parsers/helpers/parse-3d-tile-subtree';
|
|
3
|
+
import {VERSION} from './lib/utils/version';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Loader for 3D Tiles Subtree
|
|
7
|
+
*
|
|
8
|
+
*/
|
|
9
|
+
export const Tile3DSubtreeLoader: LoaderWithParser = {
|
|
10
|
+
id: '3d-tiles-subtree',
|
|
11
|
+
name: '3D Tiles Subtree',
|
|
12
|
+
module: '3d-tiles',
|
|
13
|
+
version: VERSION,
|
|
14
|
+
extensions: ['subtree'],
|
|
15
|
+
mimeTypes: ['application/octet-stream'],
|
|
16
|
+
tests: ['subtree'],
|
|
17
|
+
parse: parse3DTilesSubtree,
|
|
18
|
+
options: {}
|
|
19
|
+
};
|
package/src/types.ts
CHANGED
|
@@ -49,3 +49,36 @@ type BoundingVolume = {
|
|
|
49
49
|
box?: number[];
|
|
50
50
|
sphere?: number[];
|
|
51
51
|
};
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* 3DTILES_implicit_tiling types
|
|
55
|
+
* Spec - https://github.com/CesiumGS/3d-tiles/tree/main/extensions/3DTILES_implicit_tiling#subtree-file-format
|
|
56
|
+
*/
|
|
57
|
+
export type SubtreeAvailability = {
|
|
58
|
+
buffers: Buffer[];
|
|
59
|
+
bufferViews: BufferView[];
|
|
60
|
+
tileAvailability: Availability;
|
|
61
|
+
contentAvailability: Availability;
|
|
62
|
+
childSubtreeAvailability: Availability;
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
type Availability = {
|
|
66
|
+
constant?: 0 | 1;
|
|
67
|
+
bufferView?: number;
|
|
68
|
+
// Internal bitstream type
|
|
69
|
+
explicitBitstream?: ExplicitBitstream;
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
export type ExplicitBitstream = Uint8Array;
|
|
73
|
+
|
|
74
|
+
type Buffer = {
|
|
75
|
+
name: string;
|
|
76
|
+
uri?: string;
|
|
77
|
+
byteLength: number;
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
type BufferView = {
|
|
81
|
+
buffer: number;
|
|
82
|
+
byteOffset: number;
|
|
83
|
+
byteLength: number;
|
|
84
|
+
};
|
package/dist/bundle.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/bundle.ts"],"names":["moduleExports","require","globalThis","loaders","module","exports","Object","assign"],"mappings":"AACA,MAAMA,aAAa,GAAGC,OAAO,CAAC,SAAD,CAA7B;;AACAC,UAAU,CAACC,OAAX,GAAqBD,UAAU,CAACC,OAAX,IAAsB,EAA3C;AACAC,MAAM,CAACC,OAAP,GAAiBC,MAAM,CAACC,MAAP,CAAcL,UAAU,CAACC,OAAzB,EAAkCH,aAAlC,CAAjB","sourcesContent":["// @ts-nocheck\nconst moduleExports = require('./index');\nglobalThis.loaders = globalThis.loaders || {};\nmodule.exports = Object.assign(globalThis.loaders, moduleExports);\n"],"file":"bundle.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/cesium-ion-loader.ts"],"names":["Tiles3DLoader","getIonTilesetMetadata","preload","url","options","accessToken","assetId","Number","isFinite","matched","match","CesiumIonLoader","id","name","parse","data","context","loader"],"mappings":"AACA,SAAQA,aAAR,QAA4B,mBAA5B;AACA,SAAQC,qBAAR,QAAoC,eAApC;;AAEA,eAAeC,OAAf,CAAuBC,GAAvB,EAA4BC,OAAO,GAAG,EAAtC,EAA0C;AACxCA,EAAAA,OAAO,GAAGA,OAAO,CAAC,YAAD,CAAP,IAAyB,EAAnC;AAEA,QAAM;AAACC,IAAAA;AAAD,MAAgBD,OAAtB;AAEA,MAAIE,OAAO,GAAGF,OAAO,CAACE,OAAtB;;AACA,MAAI,CAACC,MAAM,CAACC,QAAP,CAAgBF,OAAhB,CAAL,EAA+B;AAC7B,UAAMG,OAAO,GAAGN,GAAG,CAACO,KAAJ,CAAU,0BAAV,CAAhB;AACAJ,IAAAA,OAAO,GAAGG,OAAO,IAAIA,OAAO,CAAC,CAAD,CAA5B;AACD;;AACD,SAAOR,qBAAqB,CAACI,WAAD,EAAcC,OAAd,CAA5B;AACD;;AAKD,OAAO,MAAMK,eAAiC,GAAG,EAC/C,GAAGX,aAD4C;AAE/CY,EAAAA,EAAE,EAAE,YAF2C;AAG/CC,EAAAA,IAAI,EAAE,YAHyC;AAK/CX,EAAAA,OAL+C;AAM/CY,EAAAA,KAAK,EAAE,OAAOC,IAAP,EAAaX,OAAb,EAAuBY,OAAvB,KAAoC;AACzCZ,IAAAA,OAAO,GAAG,EAAC,GAAGA;AAAJ,KAAV;AACAA,IAAAA,OAAO,CAAC,UAAD,CAAP,GAAsBA,OAAO,CAAC,YAAD,CAA7B;AAEAA,IAAAA,OAAO,CAACa,MAAR,GAAiBN,eAAjB;AACA,WAAOX,aAAa,CAACc,KAAd,CAAoBC,IAApB,EAA0BX,OAA1B,EAAmCY,OAAnC,CAAP;AACD,GAZ8C;AAa/CZ,EAAAA,OAAO,EAAE;AACP,kBAAc,EACZ,GAAGJ,aAAa,CAACI,OAAd,CAAsB,UAAtB,CADS;AAEZC,MAAAA,WAAW,EAAE;AAFD;AADP;AAbsC,CAA1C","sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {Tiles3DLoader} from './tiles-3d-loader';\nimport {getIonTilesetMetadata} from './lib/ion/ion';\n\nasync function preload(url, options = {}) {\n options = options['cesium-ion'] || {};\n // @ts-ignore\n const {accessToken} = options;\n // @ts-ignore\n let assetId = options.assetId;\n if (!Number.isFinite(assetId)) {\n const matched = url.match(/\\/([0-9]+)\\/tileset.json/);\n assetId = matched && matched[1];\n }\n return getIonTilesetMetadata(accessToken, assetId);\n}\n\n/**\n * Loader for 3D tiles from Cesium ION\n */\nexport const CesiumIonLoader: LoaderWithParser = {\n ...Tiles3DLoader,\n id: 'cesium-ion',\n name: 'Cesium Ion',\n // @ts-ignore\n preload,\n parse: async (data, options?, context?) => {\n options = {...options};\n options['3d-tiles'] = options['cesium-ion'];\n // @ts-ignore\n options.loader = CesiumIonLoader;\n return Tiles3DLoader.parse(data, options, context); // , loader);\n },\n options: {\n 'cesium-ion': {\n ...Tiles3DLoader.options['3d-tiles'],\n accessToken: null\n }\n }\n};\n"],"file":"cesium-ion-loader.js"}
|