{"id":14981232,"url":"https://github.com/heremaps/quantized-mesh-viewer","last_synced_at":"2025-07-31T00:38:22.213Z","repository":{"id":43612666,"uuid":"145857301","full_name":"heremaps/quantized-mesh-viewer","owner":"heremaps","description":"Render custom quantized mesh tiles in Cesium.js and debug individual tiles using THREE.js renderer.","archived":false,"fork":false,"pushed_at":"2019-02-05T09:42:13.000Z","size":10851,"stargazers_count":191,"open_issues_count":7,"forks_count":49,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-06-14T07:44:45.780Z","etag":null,"topics":["3d","3d-terrain","cesium-terrain","cesiumjs","quantized-mesh","terrain","three-js"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/heremaps.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-08-23T13:27:01.000Z","updated_at":"2025-03-31T06:21:14.000Z","dependencies_parsed_at":"2022-09-24T19:04:22.226Z","dependency_job_id":null,"html_url":"https://github.com/heremaps/quantized-mesh-viewer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/heremaps/quantized-mesh-viewer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heremaps%2Fquantized-mesh-viewer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heremaps%2Fquantized-mesh-viewer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heremaps%2Fquantized-mesh-viewer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heremaps%2Fquantized-mesh-viewer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/heremaps","download_url":"https://codeload.github.com/heremaps/quantized-mesh-viewer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heremaps%2Fquantized-mesh-viewer/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267967717,"owners_count":24173566,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-30T02:00:09.044Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d","3d-terrain","cesium-terrain","cesiumjs","quantized-mesh","terrain","three-js"],"created_at":"2024-09-24T14:03:10.954Z","updated_at":"2025-07-31T00:38:22.185Z","avatar_url":"https://github.com/heremaps.png","language":"JavaScript","readme":"Quantized Mesh Viewer\n===========================\n\nRender custom [quantized mesh](https://github.com/AnalyticalGraphicsInc/quantized-mesh) tiles in Cesium and debug individual tiles using THREE.js renderer.\n\nFor generation quantized-mesh tiles from raster you can use the [heremaps/tin-terrain](https://github.com/heremaps/tin-terrain) tool.\n\nNote: This is experimental code, expect changes. \n\n### Run\n\n```\nnpm i\nnpm start\n```\nAt *http://localhost:8080* you'll see a Cesium map with example terrain tiles.\n\n![Cesium map with rendered terrain tiles](./map-preview.png)\n\n\n\nTo debug individual tile go to *http://localhost:8080/tile.html*.\n\n![Individual terrain tile rendered using THREE.js](./tile-preview.png)\n\nOn the right panel change the path to the tile and adjust debug parameters.\n\nYou can also start the app in a Docker container.\n\n```bash\ndocker build -t qm-viewer .\ndocker run -t -i --name qm-viewer -p 8080:8080 -v $(pwd):/usr/src/app qm-viewer\n```\n\n\n\n### Custom Tiles\n\nBy default application renders example tiles from `./example-tiles` folder. To serve files from different location customize `SurfaceProvider` parameters in the `./src/map/index.js`.\n\nApplication serves statics from its whole root directory so you can put folder with custom tiles next to the `./example-tiles` folder.\n\n\n\n### Configuring `SurfaceProvider`\n\n```\nnew SurfaceProvider(options)\n```\n\nOptions:\n* getUrl: (x: Number, y: Number, level: Number) → String  \n  Required  \n  Constructs URL to fetch a tile using provided grid coordinates.\n* tilingScheme: Cesium.TilingScheme  \n  Optional  \n  Default — Cesium.WebMercatorTilingScheme\n* credit: [Cesium.Credit]  \n  Optional  \n  Credits for a tiles data\n\n\n\n### Notes\n\n- Cesium cannot render tiles for a specific zoom level unless you provide tiles for all parent level. The `SurfaceProvider` mocks missing tiles with a plane geometry.\n\n\n\n### Links\n\n* [Quantized Mesh Decoder](https://github.com/heremaps/quantized-mesh-decoder)\n* [Quantized Mesh Format Specification](https://github.com/AnalyticalGraphicsInc/quantized-mesh)\n\n\n\n### Contribute\n\nSee [CONTRIBUTING](./CONTRIBUTING.md).\n\n\n\n### License\n\nCopyright © 2018 HERE Europe B.V.\n\nSee the [LICENSE](LICENSE) file in the root of this project for license details.\n\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fheremaps%2Fquantized-mesh-viewer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fheremaps%2Fquantized-mesh-viewer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fheremaps%2Fquantized-mesh-viewer/lists"}