import Batched3DModel3DTileContent from "./Batched3DModel3DTileContent.js"; import Composite3DTileContent from "./Composite3DTileContent.js"; import Geometry3DTileContent from "./Geometry3DTileContent.js"; import Instanced3DModel3DTileContent from "./Instanced3DModel3DTileContent.js"; import PointCloud3DTileContent from "./PointCloud3DTileContent.js"; import Tileset3DTileContent from "./Tileset3DTileContent.js"; import Vector3DTileContent from "./Vector3DTileContent.js"; /** * Maps a tile's magic field in its header to a new content object for the tile's payload. * * @private */ var Cesium3DTileContentFactory = { b3dm: function (tileset, tile, resource, arrayBuffer, byteOffset) { return new Batched3DModel3DTileContent( tileset, tile, resource, arrayBuffer, byteOffset ); }, pnts: function (tileset, tile, resource, arrayBuffer, byteOffset) { return new PointCloud3DTileContent( tileset, tile, resource, arrayBuffer, byteOffset ); }, i3dm: function (tileset, tile, resource, arrayBuffer, byteOffset) { return new Instanced3DModel3DTileContent( tileset, tile, resource, arrayBuffer, byteOffset ); }, cmpt: function (tileset, tile, resource, arrayBuffer, byteOffset) { // Send in the factory in order to avoid a cyclical dependency return new Composite3DTileContent( tileset, tile, resource, arrayBuffer, byteOffset, Cesium3DTileContentFactory ); }, json: function (tileset, tile, resource, arrayBuffer, byteOffset) { return new Tileset3DTileContent( tileset, tile, resource, arrayBuffer, byteOffset ); }, geom: function (tileset, tile, resource, arrayBuffer, byteOffset) { return new Geometry3DTileContent( tileset, tile, resource, arrayBuffer, byteOffset ); }, vctr: function (tileset, tile, resource, arrayBuffer, byteOffset) { return new Vector3DTileContent( tileset, tile, resource, arrayBuffer, byteOffset ); }, }; export default Cesium3DTileContentFactory;