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:
| Host | Contents |
|---|---|
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)
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)
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— expectHTTP/2 206,accept-ranges: bytesand acontent-rangewhose total is the size above. - CORS. A browser client additionally needs
Content-Range(andAccept-Ranges) listed in the bucket'sExposeHeaders; 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.fcband the conformance corpus underconformance/. - These hosts replaced the project's former Google Cloud Storage bucket; the blobs are unchanged, only the URLs moved.