cityview

CityJSON loader and renderer for three.js, react-three-fiber, and Jupyter Notebook / JupyterLab

MIT License

Downloads
455
Stars
3
Committers
1

CityView

CityJSON loader and renderer for Three.js, React-three-fiber, and Jupyter Notebook / JupyterLab.

Supports CityJSON format and CityJSONSeq format.

Contents

Packages

Package Name Description Registry
cityview (top-level package) Python package PyPI
three-cityjson JavaScript / TypeScript package npm

Installation

pip install cityview

Usage

Basic usage

VirtualView

import cityview as cv

view = cv.VirtualView(theme="light")

with open("./packages/three-cityjson/public/sample/daiba_sta.city.jsonl", "r") as f:
    data = f.read()

view.layers = [
    cv.CityJSONLayer(data=data, format="cityjsonseq")
]

view.update()

view

MapView

import cityview as cv

view = cv.MapView(theme="dark")

with open("./packages/three-cityjson/public/sample/daiba_sta.city.jsonl", "r") as f:
    data = f.read()

view.layers = [
    cv.CityJSONLayer(data=data, format="cityjsonseq")
]

view.update()

view

Handling click events

import cityview as cv

view = cv.VirtualView(theme="light")

with open("./packages/three-cityjson/public/sample/daiba_sta.city.jsonl", "r") as f:
    data = f.read()

def handler(change):
    print(change["new"])

view.observe(handler, names="click")

view.layers = [
    cv.CityJSONLayer(data=data, format="cityjsonseq")
]

view.update()

view

Roadmap

  • Online viewer

License

MIT