This repository contains code and utilities developed for working with the ITMO IDU database. The codebase includes a variety of scripts and functionalities designed to interact with and manipulate data within the ITMO IDU database.
The Duplicated Services utility is a lightweight script designed to identify and remove duplicated services within buildings, typically arising from unsuccessful file uploads
The config.example.json file describes the configuration file:
sqlConnection
- PostgreSQL DSN connection stringdry_run
- If true, found services will not be deleted.service_ids
- List of services ids to search duplicated data in
This is a mini-utility for locating and removing building points from database, as well as transferring city-services from them to neighboring buildings.
The config.example.json file describes the configuration file:
city
- City namefrom file
- If true, the files buildings_{city}.geojson and services_{city}.geojson should be present in the /data directory, the next two parameters is not mandatory to fill insqlConnection
- PostgreSQL DSN connection stringsave_data
- If true, buildings and services will be saved in the form they stored in the database to /datadistance_limit
- distance in meters, if a building point is located within distance <= distance_limit to another building, they will be mergeddry_run
- If true, building points will not be deleted, and services will not be transferred
The building_fixes_city.log file describes an example log
One-time ipynb script created upon IDU's request to swap administrative and municipal units due to the established urban hierarchy in the database.
ipynb script based on the work by @kanootoko. It is used for updating the maintenance schema in the IDU database. The script operates on a table of a specific format.
ipynb script based on the code by @RitaMargari, the data_collecting module of the CityGeoTools package. My task was to add the ability to load transport routes into the script from a file without making requests to OSMTurbo. Special thanks to @GeorgeKontsevik for his valuable contributions.