Two tiles:
Weesperstraat, Amsterdam (3DBAG tile 10/434/716)
POLYGON ((122093.33100000000558794 485890.39699999999720603, 122593.33100000000558794 485890.39699999999720603, 122593.33100000000558794 486390.39699999999720603, 122093.33100000000558794 486390.39699999999720603, 122093.33100000000558794 485890.39699999999720603))
Beemsterstraat, Amsterdam (3DBAG tile 9/444/728)
POLYGON ((124593.33100000000558794 488890.39699999999720603, 125593.33100000000558794 488890.39699999999720603, 125593.33100000000558794 489890.39699999999720603, 124593.33100000000558794 489890.39699999999720603, 124593.33100000000558794 488890.39699999999720603))
The underpass detection pipeline in 2D runs in three stages:
Detects underpass geometries by comparing BAG and BGT building polygons.
cd underpass_detection_2d
cp .env.example .env # <----- edit with your DB credentials & the desired table names
uv pip install -e .
python scripts/detect_underpasses.pyOutputs: underpasses.geometries, underpasses.bag_bgt_join, underpasses.bag_minus_bgt, underpasses.snapped_differences
Offsets underpass polygon edges to produce extended geometries.
cd edge-offset
cp .env.example .env # <----- edit with your DB credentials & the desired table names
uv pip install -e .
python scripts/offset_all_polygons.pyOutputs: underpasses.extended_geometries, underpasses.skipped_underpasses
Classifies building polygon edges as interior, exterior, or shared.
cd edge-classification
cp .env.example .env # edit with your DB credentials
uv pip install -e .
python scripts/classify_all_edges.pyOutputs: underpasses.edges
This is a submodule (created by C.Moon) with the code for extracting underpasses (outer ceiling surfaces) from the 3D Rottedam and 3D Den Haag data.
If you just cloned this repository and want to initialize the submodule, run:
git submodule update --init --recursive
To update the submodule to the latest commit from its tracked branch, run:
git submodule update --remote --merge
After updating, commit the change in the main repository:
git add rotterdam3d_underpass_extraction
git commit -m "Update submodule to latest commit"