Back to the BIM & IFC blog
Digital twins · 2026-10-10 · 9 min
Tokyo Transit Digital Twins From ODPT Open Data: the Ōedo Line and the Arakawa Tram
An exit of Tochōmae station and the Waseda tram stop, as IFC models that react to Tokyo's public transit data: the Ōedo line's status, the train at the platform, the buses passing, the tram at the stop. It runs in the browser from ODPT's open APIs, and the GTFS-Realtime protobuf is decoded on the page.
Exit A4 of Tochōmae station as an IFC model on the 3D map of Shinjuku, with the live train number at the platform floating above
Tokyo runs one of the densest transit networks in the world, and much of its live data is open. ODPT, the Public Transportation Open Data Center, publishes Toei's trains, the status of its lines and the positions of its buses on an endpoint that needs no key.
These two scenes connect that data to IFC models of two stations: exit A4 of Tochōmae on the Ōedo line, next to the Tokyo Metropolitan Government Building, and the Waseda terminus of the Toden Arakawa tram. They run entirely in the browser.
Key takeaways
- ODPT's public endpoint serves Toei's trains, line status and bus GTFS-Realtime without a key, with CORS, so a web page can read it directly.
- GTFS-Realtime is protobuf, not JSON. A small decoder on the page reads it, with no library and no server.
- Transit data says where a train is to the station, not to the metre. Bind it to what that precision supports: a platform, a sign, a stop pole.
- Japan's plane rectangular coordinate systems and the GSI terrain place both models within centimetres to about a metre of OpenStreetMap.
Tochōmae exit A4: three feeds on one entrance
Try it: Tochōmae exit A4
Opens the exit pavilion on GSI terrain beside the Metropolitan Government Building. The Toei marks show the Ōedo line's status, the station sign lights up with the number of the train at the platform, and the bus stop pole with the buses passing.

Open the interactive IFC viewer
| Element | Live source | Lights up when |
|---|
| Toei marks | Line status (odpt:TrainInformation), every 60 s | Green while the Ōedo line reports no delay of 15 minutes or more |
| Station sign 都庁前駅 | Trains (odpt:Train), every 30 s | A train is at Tochōmae or has just left it. Its number floats above |
| Bus stop pole | Toei bus GTFS-Realtime, every 30 s | A bus passed stop 都庁第一本庁舎 in the last 10 minutes |
Click the stop pole and its card shows its live state from the Toei bus GTFS-Realtime feed — here still waiting for a bus — next to the IFC data of the element.
The bus feed is GTFS-Realtime[gtfs-rt], a protocol-buffers format rather than JSON. The scene decodes it on the page with a small decoder written for the purpose. Between 470 and 540 Toei buses were in the feed whenever we looked. The train and status feeds are JSON-LD from the same public endpoint[odpt].
Waseda: the tram at the stop
Try it: the Waseda tram stop
Opens the Waseda terminus of the Toden Arakawa line. Both platform edges light up while a tram stands at the stop, with its number above, and the departure screens show the line's status.

Open the interactive IFC viewer
Waseda from above: the platform edges and the departure screens are what the live data drives. One OpenStreetMap outline, the stop's own concourse, is hidden by the scene so it does not cover the model.
The Arakawa line, today the Tokyo Sakura Tram, is the last of Toei's streetcar lines. The model of its Waseda terminus is an IFC 4.3 railway model with rails, platforms, canopies and departure screens. The tram binding reads the same train feed as Tochōmae and lights the platform edges when a tram's position is Waseda. The status binding colours the screens' LED matrices.
Getting Tokyo's coordinates right
Both models are georeferenced in JGD2011 / Japan Plane Rectangular CS IX (EPSG:6677) and stand on the GSI's 10 m elevation tiles[gsi]. The plane coordinate system's grid north differs from true north by about 0.08° here. That is small, and the viewer takes it out anyway, so the models face the same way as the map.
Measured against OpenStreetMap, with both projected exactly as the basemap draws them:
| What | OpenStreetMap feature | Distance |
|---|
| Origin of the Tochōmae exit model | Exit A4 node | 0.01 m |
| A zelkova tree placed from OSM | The tree node it was placed from | 0.26 m |
| Waseda track 2, centre | Arakawa line track way | 0.14 m |
| Waseda track 1, centre | Arakawa line track way | 1.16 m |
Measured in the running viewer on 2026-10-10.
The general method, and what goes wrong without it, is in IFC coordinates and georeferencing.
What ODPT can and cannot tell you
- A train is either at a station or between two. The sign therefore lights up for a train at Tochōmae or one that has just left it.
- Toei buses are not tracked by GPS. Each one is placed at the stop it last passed, so the pole lights up for 10 minutes after a bus has passed.
- Line status only reports delays of 15 minutes or more, and its text is in Japanese.
- The 10 m terrain reads about 3 m above the surveyed height at Tochōmae, and about 2 m above it at Waseda. The models stand on the terrain's surface rather than at their surveyed heights.
- The models are illustrative reconstructions, not the operators' records.
The same scene format drives a city square from bike-share and charging data in the Barcelona open-data twin, and live buses over MQTT in the Helsinki bus terminal.
Tokyo Transit Digital Twins From ODPT Open Data: the Ōedo Line and the Arakawa Tram