@deck.gl/geo-layers 8.10.0-alpha.7 → 9.0.0-alpha.4

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.
Files changed (115) hide show
  1. package/dist/dist.dev.js +2374 -19037
  2. package/dist/es5/geo-cell-layer/GeoCellLayer.js.map +1 -1
  3. package/dist/es5/geohash-layer/geohash-layer.js.map +1 -1
  4. package/dist/es5/great-circle-layer/great-circle-layer.js.map +1 -1
  5. package/dist/es5/h3-layers/h3-cluster-layer.js +10 -1
  6. package/dist/es5/h3-layers/h3-cluster-layer.js.map +1 -1
  7. package/dist/es5/h3-layers/h3-hexagon-layer.js.map +1 -1
  8. package/dist/es5/index.js +0 -8
  9. package/dist/es5/index.js.map +1 -1
  10. package/{src/mesh-layer/mesh-layer.ts → dist/es5/mesh-layer/mesh-layer.ts.disabled} +8 -7
  11. package/dist/es5/mvt-layer/mvt-layer.js +15 -6
  12. package/dist/es5/mvt-layer/mvt-layer.js.map +1 -1
  13. package/dist/es5/quadkey-layer/quadkey-layer.js.map +1 -1
  14. package/dist/es5/s2-layer/s2-layer.js.map +1 -1
  15. package/dist/es5/terrain-layer/terrain-layer.js.map +1 -1
  16. package/{src/tile-3d-layer/tile-3d-layer.ts → dist/es5/tile-3d-layer/tile-3d-layer.ts.disabled} +10 -11
  17. package/dist/es5/tile-layer/tile-layer.js +19 -9
  18. package/dist/es5/tile-layer/tile-layer.js.map +1 -1
  19. package/dist/es5/tileset-2d/tile-2d-traversal.js.map +1 -1
  20. package/dist/es5/tileset-2d/tileset-2d.js +1 -1
  21. package/dist/es5/tileset-2d/tileset-2d.js.map +1 -1
  22. package/dist/es5/tileset-2d/utils.js +2 -3
  23. package/dist/es5/tileset-2d/utils.js.map +1 -1
  24. package/dist/es5/trips-layer/trips-layer.js.map +1 -1
  25. package/dist/es5/wms-layer/wms-layer.js +6 -8
  26. package/dist/es5/wms-layer/wms-layer.js.map +1 -1
  27. package/dist/esm/geo-cell-layer/GeoCellLayer.js.map +1 -1
  28. package/dist/esm/geohash-layer/geohash-layer.js.map +1 -1
  29. package/dist/esm/great-circle-layer/great-circle-layer.js.map +1 -1
  30. package/dist/esm/h3-layers/h3-cluster-layer.js +5 -0
  31. package/dist/esm/h3-layers/h3-cluster-layer.js.map +1 -1
  32. package/dist/esm/h3-layers/h3-hexagon-layer.js.map +1 -1
  33. package/dist/esm/index.js +0 -1
  34. package/dist/esm/index.js.map +1 -1
  35. package/dist/esm/mesh-layer/mesh-layer.ts.disabled +176 -0
  36. package/dist/esm/mvt-layer/mvt-layer.js +6 -1
  37. package/dist/esm/mvt-layer/mvt-layer.js.map +1 -1
  38. package/dist/esm/quadkey-layer/quadkey-layer.js.map +1 -1
  39. package/dist/esm/s2-layer/s2-layer.js.map +1 -1
  40. package/dist/esm/terrain-layer/terrain-layer.js.map +1 -1
  41. package/dist/esm/tile-3d-layer/tile-3d-layer.ts.disabled +435 -0
  42. package/dist/esm/tile-layer/tile-layer.js +10 -6
  43. package/dist/esm/tile-layer/tile-layer.js.map +1 -1
  44. package/dist/esm/tileset-2d/tile-2d-traversal.js.map +1 -1
  45. package/dist/esm/tileset-2d/tileset-2d.js +1 -1
  46. package/dist/esm/tileset-2d/tileset-2d.js.map +1 -1
  47. package/dist/esm/tileset-2d/utils.js +2 -2
  48. package/dist/esm/tileset-2d/utils.js.map +1 -1
  49. package/dist/esm/trips-layer/trips-layer.js.map +1 -1
  50. package/dist/esm/wms-layer/wms-layer.js +5 -5
  51. package/dist/esm/wms-layer/wms-layer.js.map +1 -1
  52. package/dist.min.js +29 -161
  53. package/package.json +14 -14
  54. package/src/geo-cell-layer/GeoCellLayer.ts +1 -1
  55. package/src/geohash-layer/geohash-layer.ts +2 -2
  56. package/src/great-circle-layer/great-circle-layer.ts +1 -1
  57. package/src/h3-layers/h3-cluster-layer.ts +6 -2
  58. package/src/h3-layers/h3-hexagon-layer.ts +2 -2
  59. package/src/index.ts +4 -2
  60. package/src/mesh-layer/mesh-layer.ts.disabled +176 -0
  61. package/src/mvt-layer/mvt-layer.ts +16 -6
  62. package/src/quadkey-layer/quadkey-layer.ts +3 -2
  63. package/src/s2-layer/s2-layer.ts +2 -2
  64. package/src/terrain-layer/terrain-layer.ts +2 -2
  65. package/src/tile-3d-layer/tile-3d-layer.ts.disabled +435 -0
  66. package/src/tile-layer/tile-layer.ts +20 -10
  67. package/src/tileset-2d/tile-2d-traversal.ts +1 -1
  68. package/src/tileset-2d/tileset-2d.ts +6 -7
  69. package/src/tileset-2d/utils.ts +4 -4
  70. package/src/trips-layer/trips-layer.ts +3 -3
  71. package/src/wms-layer/wms-layer.ts +10 -8
  72. package/typed/geo-cell-layer/GeoCellLayer.d.ts +1 -1
  73. package/typed/geo-cell-layer/GeoCellLayer.d.ts.map +1 -1
  74. package/typed/geohash-layer/geohash-layer.d.ts +2 -2
  75. package/typed/geohash-layer/geohash-layer.d.ts.map +1 -1
  76. package/typed/great-circle-layer/great-circle-layer.d.ts +2 -2
  77. package/typed/great-circle-layer/great-circle-layer.d.ts.map +1 -1
  78. package/typed/h3-layers/h3-cluster-layer.d.ts +7 -2
  79. package/typed/h3-layers/h3-cluster-layer.d.ts.map +1 -1
  80. package/typed/h3-layers/h3-hexagon-layer.d.ts +2 -2
  81. package/typed/h3-layers/h3-hexagon-layer.d.ts.map +1 -1
  82. package/typed/index.d.ts +0 -2
  83. package/typed/index.d.ts.map +1 -1
  84. package/typed/mvt-layer/mvt-layer.d.ts +9 -1
  85. package/typed/mvt-layer/mvt-layer.d.ts.map +1 -1
  86. package/typed/quadkey-layer/quadkey-layer.d.ts +2 -2
  87. package/typed/quadkey-layer/quadkey-layer.d.ts.map +1 -1
  88. package/typed/s2-layer/s2-layer.d.ts +2 -2
  89. package/typed/s2-layer/s2-layer.d.ts.map +1 -1
  90. package/typed/terrain-layer/terrain-layer.d.ts +2 -2
  91. package/typed/terrain-layer/terrain-layer.d.ts.map +1 -1
  92. package/typed/tile-layer/tile-layer.d.ts +7 -2
  93. package/typed/tile-layer/tile-layer.d.ts.map +1 -1
  94. package/typed/tileset-2d/tile-2d-traversal.d.ts +1 -1
  95. package/typed/tileset-2d/tile-2d-traversal.d.ts.map +1 -1
  96. package/typed/tileset-2d/tileset-2d.d.ts +4 -4
  97. package/typed/tileset-2d/tileset-2d.d.ts.map +1 -1
  98. package/typed/tileset-2d/utils.d.ts +2 -2
  99. package/typed/tileset-2d/utils.d.ts.map +1 -1
  100. package/typed/trips-layer/trips-layer.d.ts +3 -3
  101. package/typed/trips-layer/trips-layer.d.ts.map +1 -1
  102. package/typed/wms-layer/wms-layer.d.ts.map +1 -1
  103. package/LICENSE +0 -19
  104. package/dist/es5/mesh-layer/mesh-layer.js +0 -212
  105. package/dist/es5/mesh-layer/mesh-layer.js.map +0 -1
  106. package/dist/es5/tile-3d-layer/tile-3d-layer.js +0 -512
  107. package/dist/es5/tile-3d-layer/tile-3d-layer.js.map +0 -1
  108. package/dist/esm/mesh-layer/mesh-layer.js +0 -177
  109. package/dist/esm/mesh-layer/mesh-layer.js.map +0 -1
  110. package/dist/esm/tile-3d-layer/tile-3d-layer.js +0 -443
  111. package/dist/esm/tile-3d-layer/tile-3d-layer.js.map +0 -1
  112. package/typed/mesh-layer/mesh-layer.d.ts +0 -38
  113. package/typed/mesh-layer/mesh-layer.d.ts.map +0 -1
  114. package/typed/tile-3d-layer/tile-3d-layer.d.ts +0 -62
  115. package/typed/tile-3d-layer/tile-3d-layer.d.ts.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/tile-3d-layer/tile-3d-layer.ts"],"names":["Geometry","CompositeLayer","COORDINATE_SYSTEM","log","PointCloudLayer","ScenegraphLayer","default","MeshLayer","load","Tileset3D","TILE_TYPE","Tiles3DLoader","SINGLE_DATA","defaultProps","getPointColor","type","value","pointSize","data","loader","onTilesetLoad","tileset3d","onTileLoad","tileHeader","onTileUnload","onTileError","tile","message","url","_getMeshColor","Tile3DLayer","state","initializeState","props","removed","layerMap","activeViewports","lastUpdatedViewports","isLoaded","shouldUpdateState","changeFlags","somethingChanged","updateState","oldProps","_loadTileset","viewportChanged","viewportsNumber","Object","keys","length","_updateTileset","propsChanged","key","needsUpdate","activateViewport","viewport","internalState","id","lastViewport","equals","setChangeFlags","setNeedsUpdate","getPickingInfo","info","sourceLayer","sourceTile","picked","object","filterSubLayer","layer","viewportId","selected","viewportIds","includes","_updateAutoHighlight","layerCache","updateAutoHighlight","tilesetUrl","loadOptions","loaders","Array","isArray","options","actualTilesetUrl","preload","preloadOptions","headers","fetch","assign","tilesetJson","_onTileLoad","bind","_onTileUnload","setState","viewports","timeline","context","selectTiles","values","then","frameNumber","tilesetChanged","_getSubLayer","oldLayer","content","POINTCLOUD","_makePointCloudLayer","SCENEGRAPH","_make3DModelLayer","MESH","_makeSimpleMeshLayer","Error","attributes","pointCount","constantRGBA","cartographicOrigin","modelMatrix","positions","normals","colors","header","vertexCount","POSITION","NORMAL","COLOR_0","SubLayerClass","getSubLayerClass","getSubLayerProps","coordinateSystem","METER_OFFSETS","coordinateOrigin","getColor","_offset","gltf","instances","_lighting","scenegraph","getTransformMatrix","instance","getPosition","indices","material","featureIds","geometry","mesh","drawMode","getMeshGeometry","pbrMaterial","renderLayers","tiles","map","filter","Boolean","layerName","contentAttributes","Float32Array","texCoords","uvRegions"],"mappings":"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","sourcesContent":["import GL from '@luma.gl/constants';\nimport {Geometry} from '@luma.gl/core';\n\nimport {\n Accessor,\n Color,\n CompositeLayer,\n CompositeLayerProps,\n COORDINATE_SYSTEM,\n FilterContext,\n GetPickingInfoParams,\n Layer,\n LayersList,\n log,\n PickingInfo,\n UpdateParameters,\n Viewport,\n DefaultProps\n} from '@deck.gl/core';\nimport {PointCloudLayer} from '@deck.gl/layers';\nimport {ScenegraphLayer} from '@deck.gl/mesh-layers';\nimport {default as MeshLayer} from '../mesh-layer/mesh-layer';\n\nimport {load} from '@loaders.gl/core';\nimport {MeshAttributes} from '@loaders.gl/schema';\nimport {Tileset3D, Tile3D, TILE_TYPE} from '@loaders.gl/tiles';\nimport {Tiles3DLoader} from '@loaders.gl/3d-tiles';\n\nconst SINGLE_DATA = [0];\n\nconst defaultProps: DefaultProps<Tile3DLayerProps> = {\n getPointColor: {type: 'accessor', value: [0, 0, 0, 255]},\n pointSize: 1.0,\n\n // Disable async data loading (handling it in _loadTileSet)\n data: '',\n loader: Tiles3DLoader,\n\n onTilesetLoad: {type: 'function', value: tileset3d => {}},\n onTileLoad: {type: 'function', value: tileHeader => {}},\n onTileUnload: {type: 'function', value: tileHeader => {}},\n onTileError: {type: 'function', value: (tile, message, url) => {}},\n _getMeshColor: {type: 'function', value: tileHeader => [255, 255, 255]}\n};\n\n/** All properties supported by Tile3DLayer */\nexport type Tile3DLayerProps<DataT = any> = _Tile3DLayerProps<DataT> & CompositeLayerProps;\n\n/** Props added by the Tile3DLayer */\ntype _Tile3DLayerProps<DataT> = {\n data: string;\n /** Color Accessor for point clouds. **/\n getPointColor?: Accessor<DataT, Color>;\n\n /** Global radius of all points in pixels. **/\n pointSize?: number;\n\n /** A loader which is used to decode the fetched tiles.\n * @deprecated Use `loaders` instead\n */\n loader?: typeof Tiles3DLoader;\n\n /** Called when Tileset JSON file is loaded. **/\n onTilesetLoad?: (tile: Tileset3D) => void;\n\n /** Called when a tile in the tileset hierarchy is loaded. **/\n onTileLoad?: (tile: Tile3D) => void;\n\n /** Called when a tile is unloaded. **/\n onTileUnload?: (tile: Tile3D) => void;\n\n /** Called when a tile fails to load. **/\n onTileError?: (tile: Tile3D, url: string, message: string) => void;\n\n /** (Experimental) Accessor to change color of mesh based on properties. **/\n _getMeshColor?: (tile: Tile3D) => Color;\n};\n\n/** Render 3d tiles data formatted according to the [3D Tiles Specification](https://www.opengeospatial.org/standards/3DTiles) and [`ESRI I3S`](https://github.com/Esri/i3s-spec) */\nexport default class Tile3DLayer<DataT = any, ExtraPropsT extends {} = {}> extends CompositeLayer<\n ExtraPropsT & Required<_Tile3DLayerProps<DataT>>\n> {\n static defaultProps = defaultProps;\n static layerName = 'Tile3DLayer';\n\n state!: {\n activeViewports: {};\n frameNumber?: number;\n lastUpdatedViewports: {[viewportId: string]: Viewport} | null;\n layerMap: {[layerId: string]: any};\n tileset3d: Tileset3D | null;\n };\n\n initializeState() {\n if ('onTileLoadFail' in this.props) {\n log.removed('onTileLoadFail', 'onTileError')();\n }\n // prop verification\n this.state = {\n layerMap: {},\n tileset3d: null,\n activeViewports: {},\n lastUpdatedViewports: null\n };\n }\n\n get isLoaded(): boolean {\n const {tileset3d} = this.state;\n return tileset3d !== null && tileset3d.isLoaded();\n }\n\n shouldUpdateState({changeFlags}: UpdateParameters<this>): boolean {\n return changeFlags.somethingChanged;\n }\n\n updateState({props, oldProps, changeFlags}: UpdateParameters<this>): void {\n if (props.data && props.data !== oldProps.data) {\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n this._loadTileset(props.data);\n }\n\n if (changeFlags.viewportChanged) {\n const {activeViewports} = this.state;\n const viewportsNumber = Object.keys(activeViewports).length;\n if (viewportsNumber) {\n this._updateTileset(activeViewports);\n this.state.lastUpdatedViewports = activeViewports;\n this.state.activeViewports = {};\n }\n }\n if (changeFlags.propsChanged) {\n const {layerMap} = this.state;\n for (const key in layerMap) {\n layerMap[key].needsUpdate = true;\n }\n }\n }\n\n activateViewport(viewport: Viewport): void {\n const {activeViewports, lastUpdatedViewports} = this.state;\n this.internalState!.viewport = viewport;\n\n activeViewports[viewport.id] = viewport;\n const lastViewport = lastUpdatedViewports?.[viewport.id];\n if (!lastViewport || !viewport.equals(lastViewport)) {\n this.setChangeFlags({viewportChanged: true});\n this.setNeedsUpdate();\n }\n }\n\n getPickingInfo({info, sourceLayer}: GetPickingInfoParams) {\n const sourceTile = sourceLayer && (sourceLayer.props as any).tile;\n if (info.picked) {\n info.object = sourceTile;\n }\n (info as any).sourceTile = sourceTile;\n\n return info;\n }\n\n filterSubLayer({layer, viewport}: FilterContext): boolean {\n // All sublayers will have a tile prop\n const {tile} = layer.props as unknown as {tile: Tile3D};\n const {id: viewportId} = viewport;\n return tile.selected && tile.viewportIds.includes(viewportId);\n }\n\n protected _updateAutoHighlight(info: PickingInfo): void {\n const sourceTile = (info as any).sourceTile;\n const layerCache = this.state.layerMap[sourceTile?.id];\n if (layerCache && layerCache.layer) {\n layerCache.layer.updateAutoHighlight(info);\n }\n }\n\n private async _loadTileset(tilesetUrl) {\n const {loadOptions = {}} = this.props;\n\n // TODO: deprecate `loader` in v9.0\n // @ts-ignore\n let loader = this.props.loader || this.props.loaders;\n if (Array.isArray(loader)) {\n loader = loader[0];\n }\n\n const options = {loadOptions: {...loadOptions}};\n let actualTilesetUrl = tilesetUrl;\n if (loader.preload) {\n const preloadOptions = await loader.preload(tilesetUrl, loadOptions);\n if (preloadOptions.url) {\n actualTilesetUrl = preloadOptions.url;\n }\n\n if (preloadOptions.headers) {\n options.loadOptions.fetch = {\n ...options.loadOptions.fetch,\n headers: preloadOptions.headers\n };\n }\n Object.assign(options, preloadOptions);\n }\n const tilesetJson = await load(actualTilesetUrl, loader, options.loadOptions);\n\n const tileset3d = new Tileset3D(tilesetJson, {\n onTileLoad: this._onTileLoad.bind(this),\n onTileUnload: this._onTileUnload.bind(this),\n onTileError: this.props.onTileError,\n ...options\n });\n\n this.setState({\n tileset3d,\n layerMap: {}\n });\n\n this._updateTileset(this.state.activeViewports);\n this.props.onTilesetLoad(tileset3d);\n }\n\n private _onTileLoad(tileHeader: Tile3D): void {\n const {lastUpdatedViewports} = this.state;\n this.props.onTileLoad(tileHeader);\n this._updateTileset(lastUpdatedViewports);\n this.setNeedsUpdate();\n }\n\n private _onTileUnload(tileHeader: Tile3D): void {\n // Was cleaned up from tileset cache. We no longer need to track it.\n delete this.state.layerMap[tileHeader.id];\n this.props.onTileUnload(tileHeader);\n }\n\n private _updateTileset(viewports: {[viewportId: string]: Viewport} | null): void {\n if (!viewports) {\n return;\n }\n const {tileset3d} = this.state;\n const {timeline} = this.context;\n const viewportsNumber = Object.keys(viewports).length;\n if (!timeline || !viewportsNumber || !tileset3d) {\n return;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n tileset3d.selectTiles(Object.values(viewports)).then(frameNumber => {\n const tilesetChanged = this.state.frameNumber !== frameNumber;\n if (tilesetChanged) {\n this.setState({frameNumber});\n }\n });\n }\n\n private _getSubLayer(\n tileHeader: Tile3D,\n oldLayer?: Layer\n ): MeshLayer<DataT> | PointCloudLayer<DataT> | ScenegraphLayer<DataT> | null {\n if (!tileHeader.content) {\n return null;\n }\n\n switch (tileHeader.type) {\n case TILE_TYPE.POINTCLOUD:\n return this._makePointCloudLayer(tileHeader, oldLayer as PointCloudLayer<DataT>);\n case TILE_TYPE.SCENEGRAPH:\n return this._make3DModelLayer(tileHeader);\n case TILE_TYPE.MESH:\n return this._makeSimpleMeshLayer(tileHeader, oldLayer as MeshLayer<DataT>);\n default:\n throw new Error(`Tile3DLayer: Failed to render layer of type ${tileHeader.content.type}`);\n }\n }\n\n private _makePointCloudLayer(\n tileHeader: Tile3D,\n oldLayer?: PointCloudLayer<DataT>\n ): PointCloudLayer<DataT> | null {\n const {attributes, pointCount, constantRGBA, cartographicOrigin, modelMatrix} =\n tileHeader.content;\n const {positions, normals, colors} = attributes;\n\n if (!positions) {\n return null;\n }\n const data = (oldLayer && oldLayer.props.data) || {\n header: {\n vertexCount: pointCount\n },\n attributes: {\n POSITION: positions,\n NORMAL: normals,\n COLOR_0: colors\n }\n };\n\n const {pointSize, getPointColor} = this.props;\n const SubLayerClass = this.getSubLayerClass('pointcloud', PointCloudLayer);\n return new SubLayerClass(\n {\n pointSize\n },\n this.getSubLayerProps({\n id: 'pointcloud'\n }),\n {\n id: `${this.id}-pointcloud-${tileHeader.id}`,\n tile: tileHeader,\n data,\n coordinateSystem: COORDINATE_SYSTEM.METER_OFFSETS,\n coordinateOrigin: cartographicOrigin,\n modelMatrix,\n getColor: constantRGBA || getPointColor,\n _offset: 0\n }\n );\n }\n\n private _make3DModelLayer(tileHeader: Tile3D): ScenegraphLayer<DataT> {\n const {gltf, instances, cartographicOrigin, modelMatrix} = tileHeader.content;\n\n const SubLayerClass = this.getSubLayerClass('scenegraph', ScenegraphLayer);\n\n return new SubLayerClass(\n {\n _lighting: 'pbr'\n },\n this.getSubLayerProps({\n id: 'scenegraph'\n }),\n {\n id: `${this.id}-scenegraph-${tileHeader.id}`,\n tile: tileHeader,\n data: instances || SINGLE_DATA,\n scenegraph: gltf,\n\n coordinateSystem: COORDINATE_SYSTEM.METER_OFFSETS,\n coordinateOrigin: cartographicOrigin,\n modelMatrix,\n getTransformMatrix: instance => instance.modelMatrix,\n getPosition: [0, 0, 0],\n _offset: 0\n }\n );\n }\n\n private _makeSimpleMeshLayer(tileHeader: Tile3D, oldLayer?: MeshLayer<DataT>): MeshLayer<DataT> {\n const content = tileHeader.content;\n const {\n attributes,\n indices,\n modelMatrix,\n cartographicOrigin,\n coordinateSystem = COORDINATE_SYSTEM.METER_OFFSETS,\n material,\n featureIds\n } = content;\n const {_getMeshColor} = this.props;\n\n const geometry =\n (oldLayer && oldLayer.props.mesh) ||\n new Geometry({\n drawMode: GL.TRIANGLES,\n attributes: getMeshGeometry(attributes),\n indices\n });\n\n const SubLayerClass = this.getSubLayerClass('mesh', MeshLayer);\n\n return new SubLayerClass(\n this.getSubLayerProps({\n id: 'mesh'\n }),\n {\n id: `${this.id}-mesh-${tileHeader.id}`,\n tile: tileHeader,\n mesh: geometry,\n data: SINGLE_DATA,\n getColor: _getMeshColor(tileHeader),\n pbrMaterial: material,\n modelMatrix,\n coordinateOrigin: cartographicOrigin,\n coordinateSystem,\n featureIds,\n _offset: 0\n }\n );\n }\n\n renderLayers(): Layer | null | LayersList {\n const {tileset3d, layerMap} = this.state;\n if (!tileset3d) {\n return null;\n }\n\n // loaders.gl doesn't provide a type for tileset3d.tiles\n return (tileset3d.tiles as Tile3D[])\n .map(tile => {\n const layerCache = (layerMap[tile.id] = layerMap[tile.id] || {tile});\n let {layer} = layerCache;\n if (tile.selected) {\n // render selected tiles\n if (!layer) {\n // create layer\n layer = this._getSubLayer(tile);\n } else if (layerCache.needsUpdate) {\n // props have changed, rerender layer\n layer = this._getSubLayer(tile, layer);\n layerCache.needsUpdate = false;\n }\n }\n layerCache.layer = layer;\n return layer;\n })\n .filter(Boolean);\n }\n}\n\nfunction getMeshGeometry(contentAttributes: MeshAttributes): MeshAttributes {\n const attributes: MeshAttributes = {};\n attributes.positions = {\n ...contentAttributes.positions,\n value: new Float32Array(contentAttributes.positions.value)\n };\n if (contentAttributes.normals) {\n attributes.normals = contentAttributes.normals;\n }\n if (contentAttributes.texCoords) {\n attributes.texCoords = contentAttributes.texCoords;\n }\n if (contentAttributes.colors) {\n attributes.colors = contentAttributes.colors;\n }\n if (contentAttributes.uvRegions) {\n attributes.uvRegions = contentAttributes.uvRegions;\n }\n return attributes;\n}\n"],"file":"tile-3d-layer.js"}
@@ -1,38 +0,0 @@
1
- import type { NumericArray } from '@math.gl/core';
2
- import { GLTFMaterialParser } from '@luma.gl/experimental';
3
- import { Model } from '@luma.gl/core';
4
- import type { MeshAttribute, MeshAttributes } from '@loaders.gl/schema';
5
- import type { UpdateParameters, DefaultProps, LayerContext } from '@deck.gl/core/typed';
6
- import { SimpleMeshLayer, SimpleMeshLayerProps } from '@deck.gl/mesh-layers/typed';
7
- export declare type Mesh = {
8
- attributes: MeshAttributes;
9
- indices?: MeshAttribute;
10
- };
11
- /** All properties supported by MeshLayer. */
12
- export declare type MeshLayerProps<DataT = any> = _MeshLayerProps & SimpleMeshLayerProps<DataT>;
13
- /** Properties added by MeshLayer. */
14
- declare type _MeshLayerProps = {
15
- /**
16
- * PBR material object. _lighting must be pbr for this to work
17
- */
18
- pbrMaterial?: any;
19
- /**
20
- * List of feature ids.
21
- */
22
- featureIds?: NumericArray | null;
23
- };
24
- export default class MeshLayer<DataT = any, ExtraProps extends {} = {}> extends SimpleMeshLayer<DataT, Required<_MeshLayerProps> & ExtraProps> {
25
- static layerName: string;
26
- static defaultProps: DefaultProps<MeshLayerProps<any>>;
27
- getShaders(): any;
28
- initializeState(): void;
29
- updateState(params: UpdateParameters<this>): void;
30
- draw(opts: any): void;
31
- protected getModel(mesh: Mesh): Model;
32
- updatePbrMaterialUniforms(pbrMaterial: any): void;
33
- parseMaterial(pbrMaterial: any, mesh: any): GLTFMaterialParser;
34
- calculateFeatureIdsPickingColors(attribute: any): void;
35
- finalizeState(context: LayerContext): void;
36
- }
37
- export {};
38
- //# sourceMappingURL=mesh-layer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mesh-layer.d.ts","sourceRoot":"","sources":["../../src/mesh-layer/mesh-layer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAChD,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAC,KAAK,EAAM,MAAM,eAAe,CAAC;AAEzC,OAAO,KAAK,EAAC,aAAa,EAAE,cAAc,EAAC,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EAAC,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAC,MAAM,eAAe,CAAC;AAChF,OAAO,EAAC,eAAe,EAAE,oBAAoB,EAAC,MAAM,sBAAsB,CAAC;AAK3E,oBAAY,IAAI,GAAG;IACjB,UAAU,EAAE,cAAc,CAAC;IAC3B,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,CAAC;AAcF,6CAA6C;AAC7C,oBAAY,cAAc,CAAC,KAAK,GAAG,GAAG,IAAI,eAAe,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;AAExF,qCAAqC;AACrC,aAAK,eAAe,GAAG;IACrB;;OAEG;IACH,WAAW,CAAC,EAAE,GAAG,CAAC;IAElB;;OAEG;IACH,UAAU,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,SAAS,CAAC,KAAK,GAAG,GAAG,EAAE,UAAU,SAAS,EAAE,GAAG,EAAE,CAAE,SAAQ,eAAe,CAC7F,KAAK,EACL,QAAQ,CAAC,eAAe,CAAC,GAAG,UAAU,CACvC;IACC,MAAM,CAAC,SAAS,SAAe;IAC/B,MAAM,CAAC,YAAY,oCAAgB;IAEnC,UAAU;IAOV,eAAe;IAmBf,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC;IAS1C,IAAI,CAAC,IAAI,KAAA;IAeT,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,KAAK;IAuBrC,yBAAyB,CAAC,WAAW,KAAA;IAWrC,aAAa,CAAC,WAAW,KAAA,EAAE,IAAI,KAAA;IAiB/B,gCAAgC,CAAC,SAAS,KAAA;IAiB1C,aAAa,CAAC,OAAO,EAAE,YAAY;CAKpC"}
@@ -1,62 +0,0 @@
1
- import { Accessor, Color, CompositeLayer, CompositeLayerProps, FilterContext, GetPickingInfoParams, Layer, LayersList, PickingInfo, UpdateParameters, Viewport, DefaultProps } from '@deck.gl/core/typed';
2
- import { Tileset3D, Tile3D } from '@loaders.gl/tiles';
3
- import { Tiles3DLoader } from '@loaders.gl/3d-tiles';
4
- /** All properties supported by Tile3DLayer */
5
- export declare type Tile3DLayerProps<DataT = any> = _Tile3DLayerProps<DataT> & CompositeLayerProps;
6
- /** Props added by the Tile3DLayer */
7
- declare type _Tile3DLayerProps<DataT> = {
8
- data: string;
9
- /** Color Accessor for point clouds. **/
10
- getPointColor?: Accessor<DataT, Color>;
11
- /** Global radius of all points in pixels. **/
12
- pointSize?: number;
13
- /** A loader which is used to decode the fetched tiles.
14
- * @deprecated Use `loaders` instead
15
- */
16
- loader?: typeof Tiles3DLoader;
17
- /** Called when Tileset JSON file is loaded. **/
18
- onTilesetLoad?: (tile: Tileset3D) => void;
19
- /** Called when a tile in the tileset hierarchy is loaded. **/
20
- onTileLoad?: (tile: Tile3D) => void;
21
- /** Called when a tile is unloaded. **/
22
- onTileUnload?: (tile: Tile3D) => void;
23
- /** Called when a tile fails to load. **/
24
- onTileError?: (tile: Tile3D, url: string, message: string) => void;
25
- /** (Experimental) Accessor to change color of mesh based on properties. **/
26
- _getMeshColor?: (tile: Tile3D) => Color;
27
- };
28
- /** Render 3d tiles data formatted according to the [3D Tiles Specification](https://www.opengeospatial.org/standards/3DTiles) and [`ESRI I3S`](https://github.com/Esri/i3s-spec) */
29
- export default class Tile3DLayer<DataT = any, ExtraPropsT extends {} = {}> extends CompositeLayer<ExtraPropsT & Required<_Tile3DLayerProps<DataT>>> {
30
- static defaultProps: DefaultProps<Tile3DLayerProps<any>>;
31
- static layerName: string;
32
- state: {
33
- activeViewports: {};
34
- frameNumber?: number;
35
- lastUpdatedViewports: {
36
- [viewportId: string]: Viewport;
37
- } | null;
38
- layerMap: {
39
- [layerId: string]: any;
40
- };
41
- tileset3d: Tileset3D | null;
42
- };
43
- initializeState(): void;
44
- get isLoaded(): boolean;
45
- shouldUpdateState({ changeFlags }: UpdateParameters<this>): boolean;
46
- updateState({ props, oldProps, changeFlags }: UpdateParameters<this>): void;
47
- activateViewport(viewport: Viewport): void;
48
- getPickingInfo({ info, sourceLayer }: GetPickingInfoParams): PickingInfo;
49
- filterSubLayer({ layer, viewport }: FilterContext): boolean;
50
- protected _updateAutoHighlight(info: PickingInfo): void;
51
- private _loadTileset;
52
- private _onTileLoad;
53
- private _onTileUnload;
54
- private _updateTileset;
55
- private _getSubLayer;
56
- private _makePointCloudLayer;
57
- private _make3DModelLayer;
58
- private _makeSimpleMeshLayer;
59
- renderLayers(): Layer | null | LayersList;
60
- }
61
- export {};
62
- //# sourceMappingURL=tile-3d-layer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tile-3d-layer.d.ts","sourceRoot":"","sources":["../../src/tile-3d-layer/tile-3d-layer.ts"],"names":[],"mappings":"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"}