Datasets

August 11, 2026 · View on GitHub

Two public hosts, both backed by Cloudflare R2 and both serving HTTP range requests (206 Partial Content with Accept-Ranges: bytes), so a reader fetches only the bytes a query needs instead of the whole file:

HostContents
https://flatcitybuf.open3d.city/data/FlatCityBuf .fcb
https://cityjson.open3d.city/cityjsonseq/CityJSONSeq .jsonl

A .fcb URL can be handed straight to a reader — fcb inspect <url>, the Python HttpRangeReader, FcbReader.fromUrl in TypeScript, fcb_read_http in C++, or the URL box in the web viewer. For a file of national scale that is the whole point: opening 3dbag_all_index.fcb (68.5 GB) costs two requests, and a 1 km bounding-box query a few dozen more.

Sizes below are decimal (1 MB = 10⁶ bytes, 1 GB = 10⁹ bytes).

FlatCityBuf (.fcb)

NameSizeURL
3DBAG.city.fcb7.1 MBhttps://flatcitybuf.open3d.city/data/3DBAG.city.fcb
3DBV.city.fcb321.0 MBhttps://flatcitybuf.open3d.city/data/3DBV.city.fcb
3dbag_subset.city.fcb2.32 GBhttps://flatcitybuf.open3d.city/data/3dbag_subset.city.fcb
Helsinki.city.fcb388.1 MBhttps://flatcitybuf.open3d.city/data/Helsinki.city.fcb
Helsinki_tex.city.fcb598.6 MBhttps://flatcitybuf.open3d.city/data/Helsinki_tex.city.fcb
Ingolstadt.city.fcb3.3 MBhttps://flatcitybuf.open3d.city/data/Ingolstadt.city.fcb
Montreal.city.fcb5.0 MBhttps://flatcitybuf.open3d.city/data/Montreal.city.fcb
NYC.fcb85.0 MBhttps://flatcitybuf.open3d.city/data/NYC.fcb
Railway.city.fcb3.9 MBhttps://flatcitybuf.open3d.city/data/Railway.city.fcb
Rotterdam.fcb3.0 MBhttps://flatcitybuf.open3d.city/data/Rotterdam.fcb
Vienna.city.fcb4.4 MBhttps://flatcitybuf.open3d.city/data/Vienna.city.fcb
Zurich.city.fcb206.3 MBhttps://flatcitybuf.open3d.city/data/Zurich.city.fcb
plateau_takeshiba_bldg.city.fcb83.8 MBhttps://flatcitybuf.open3d.city/data/plateau_takeshiba_bldg.city.fcb
plateau_takeshiba_brid.city.fcb5.5 MBhttps://flatcitybuf.open3d.city/data/plateau_takeshiba_brid.city.fcb
plateau_takeshiba_rwy.city.fcb4.5 MBhttps://flatcitybuf.open3d.city/data/plateau_takeshiba_rwy.city.fcb
plateau_takeshiba_tran.city.fcb28.4 MBhttps://flatcitybuf.open3d.city/data/plateau_takeshiba_tran.city.fcb
plateau_takeshiba_tun.city.fcb4.9 MBhttps://flatcitybuf.open3d.city/data/plateau_takeshiba_tun.city.fcb
plateau_takeshiba_veg.city.fcb2.5 MBhttps://flatcitybuf.open3d.city/data/plateau_takeshiba_veg.city.fcb
tokyo_plateau.city.fcb232.1 MBhttps://flatcitybuf.open3d.city/data/tokyo_plateau.city.fcb
3dbag_all_index.fcb68.55 GBhttps://flatcitybuf.open3d.city/data/3dbag_all_index.fcb
3dbag_subset_all_index.fcb3.81 GBhttps://flatcitybuf.open3d.city/data/3dbag_subset_all_index.fcb
3dbag_subset2_all_index.fcb7.59 GBhttps://flatcitybuf.open3d.city/data/3dbag_subset2_all_index.fcb

The three *_all_index.fcb files at the bottom are the benchmark set: whole 3DBAG and two subsets, serialised with all attributes indexed (fcb ser -A, branching factor 256). 3dbag_all_index.fcb is what the opt-in remote suite (just test-remote, and FCB_REMOTE_HTTP_URL in every language's justfile), the read_http benchmark, the fcb_api server default and the web viewer's default URL all point at. The rest of the table is the demonstration corpus, one file per source dataset.

CityJSONSeq (.jsonl)

NameSizeURL
3DBAG.city.jsonl6.2 MBhttps://cityjson.open3d.city/cityjsonseq/3DBAG.city.jsonl
3DBV.city.jsonl332.8 MBhttps://cityjson.open3d.city/cityjsonseq/3DBV.city.jsonl
3dbag_subset.city.jsonl3.03 GBhttps://cityjson.open3d.city/cityjsonseq/3dbag_subset.city.jsonl
Helsinki.city.jsonl432.5 MBhttps://cityjson.open3d.city/cityjsonseq/Helsinki.city.jsonl
Helsinki_tex.city.jsonl675.0 MBhttps://cityjson.open3d.city/cityjsonseq/Helsinki_tex.city.jsonl
Ingolstadt.city.jsonl4.0 MBhttps://cityjson.open3d.city/cityjsonseq/Ingolstadt.city.jsonl
Montreal.city.jsonl4.8 MBhttps://cityjson.open3d.city/cityjsonseq/Montreal.city.jsonl
NYC.jsonl100.1 MBhttps://cityjson.open3d.city/cityjsonseq/NYC.jsonl
Railway.city.jsonl4.2 MBhttps://cityjson.open3d.city/cityjsonseq/Railway.city.jsonl
Rotterdam.jsonl2.8 MBhttps://cityjson.open3d.city/cityjsonseq/Rotterdam.jsonl
Vienna.city.jsonl5.0 MBhttps://cityjson.open3d.city/cityjsonseq/Vienna.city.jsonl
Zurich.city.jsonl259.1 MBhttps://cityjson.open3d.city/cityjsonseq/Zurich.city.jsonl
plateau_takeshiba_bldg.city.jsonl80.7 MBhttps://cityjson.open3d.city/cityjsonseq/plateau_takeshiba_bldg.city.jsonl
plateau_takeshiba_brid.city.jsonl5.0 MBhttps://cityjson.open3d.city/cityjsonseq/plateau_takeshiba_brid.city.jsonl
plateau_takeshiba_rwy.city.jsonl4.4 MBhttps://cityjson.open3d.city/cityjsonseq/plateau_takeshiba_rwy.city.jsonl
plateau_takeshiba_tran.city.jsonl27.8 MBhttps://cityjson.open3d.city/cityjsonseq/plateau_takeshiba_tran.city.jsonl
plateau_takeshiba_tun.city.jsonl5.1 MBhttps://cityjson.open3d.city/cityjsonseq/plateau_takeshiba_tun.city.jsonl
plateau_takeshiba_veg.city.jsonl1.9 MBhttps://cityjson.open3d.city/cityjsonseq/plateau_takeshiba_veg.city.jsonl
tokyo_plateau.city.jsonl219.8 MBhttps://cityjson.open3d.city/cityjsonseq/tokyo_plateau.city.jsonl

Where the stems match, the two tables are the same source dataset in the two formats — Zurich.city.jsonl is the input Zurich.city.fcb was serialised from, and so on. Watch the naming: most files carry a .city infix, but NYC and Rotterdam do not (NYC.fcb/NYC.jsonl, Rotterdam.fcb/Rotterdam.jsonl).

Notes

  • Range requests. Verify a host with curl -sI -r 0-0 https://flatcitybuf.open3d.city/data/3DBAG.city.fcb — expect HTTP/2 206, accept-ranges: bytes and a content-range whose total is the size above.
  • CORS. A browser client additionally needs Content-Range (and Accept-Ranges) listed in the bucket's ExposeHeaders; without it the reader cannot learn the file size and refuses to guess. See Testing §7.3 and the web viewer troubleshooting.
  • Local fixtures. The small files the test suites use are in the repository, not here: examples/data/delft.fcb and the conformance corpus under conformance/.
  • These hosts replaced the project's former Google Cloud Storage bucket; the blobs are unchanged, only the URLs moved.