xjindf / plateau-view

PLATEAU VIEW 3.0 Design & Technology Preview

Home Page:https://plateau.takram.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PLATEAU VIEW 3.0
Design & Technology Preview

This repository hosts a prototype of PLATEAU VIEW 3.0, a part of the 2023 PLATEAU project overseen by the Ministry of Land, Infrastructure, Transport and Tourism of Japan (MLIT).

The prototype under development is available at plateau.takram.com. However, please be aware that it is still in development and is not intended to be a complete service.

image

Background and Goal

Since 2020, MLIT has been developing and operating PLATEAU VIEW, where users can explore PLATEAU’s 3D city models and various datasets. In April 2023, they introduced PLATEAU VIEW 2.0, transitioning its platform from TerriaJS to a CMS-based system, ReEarth. This change allegedly allowed local governments to customize and host their versions of PLATEAU VIEW.

Nonetheless, it should be emphasized that the shift to a CMS-based system mainly benefits stakeholders such as government offices and data vendors rather than end-users. For those who visit and use the system, many areas need improvements around user experience, including usability, performance, and visual quality.

This project aims to apply Takram’s design and development expertise to improve and enhance the user experience of PLATEAU VIEW. Furthermore, this open-source project allows everyone to access the design and technical specifics involved.

The design and development process started on April 10, 2023, with our contribution to the 2023 PLATEAU project scheduled to conclude by September 10, 2023.

Structure

This repository consists of the following apps and libraries. The README for each will be added later.

Apps

Name Description
api NestJS API server
app Next.js frontend
data-converters Node.js script for converting data
tiles NestJS server for rendering vector map tiles

Libraries

Name Description
cesium-hbao Better HBAO implementation for Cesium
cesium-helpers Helper functions for Cesium
cesium-vector-imagery ImageryProvider for drawing MVT
cesium React components for Cesium
color-schemes Collection of color schemes
data-sources Several DataSources used in PLATEAU VIEW
datasets Classes and components that represent PLATEAU and other datasets
geocoder Simple geocoding functions
graphql Generated GraphQL types and hooks
layers Abstract structure of layers
nest-cesium Module for using Cesium in NestJS
nest-firestore Module for using Google Firestore in NestJS
nest-plateau NestJS module for PLATEAU datasets
nest-terrain-tile NestJS module for rendering DEM terrain tiles
nest-tile-cache NestJS module for caching tile images
nest-vector-tile NestJS module for rendering vector map tiles
pedestrian Integration with Google Street View and WASD navigation
react-helpers Helper functions and hooks for React
screen-space-selection Screen-space selection for Cesium
shared-states Collection of states shared across libraries
sketch Work in progress
type-helpers Helper functions for TypeScript
ui-components UI components used in PLATEAU VIEW
view-layers Implementation of layers for PLATEAU VIEW
view Provides the main component

About

PLATEAU VIEW 3.0 Design & Technology Preview

https://plateau.takram.com

License:Apache License 2.0


Languages

Language:TypeScript 97.7%Language:GLSL 1.8%Language:JavaScript 0.4%Language:Dockerfile 0.1%