Skip to content

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

License

Notifications You must be signed in to change notification settings

ozekik/cityview

Repository files navigation

CityView

PyPI npm

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

VirtualView

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

VirtualView

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

About

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

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published