{"id":21954391,"url":"https://github.com/firee1/cpp-transport-catalogue","last_synced_at":"2026-05-09T01:05:45.637Z","repository":{"id":212817246,"uuid":"640395899","full_name":"FireE1/cpp-transport-catalogue","owner":"FireE1","description":"Транспортный справочник","archived":false,"fork":false,"pushed_at":"2023-12-16T12:35:19.000Z","size":479,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-27T22:48:48.076Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FireE1.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-05-14T00:12:21.000Z","updated_at":"2023-12-16T12:38:38.000Z","dependencies_parsed_at":"2023-12-16T15:00:45.594Z","dependency_job_id":"e9c9d3a2-1f62-4abf-85ec-c8eb087a9072","html_url":"https://github.com/FireE1/cpp-transport-catalogue","commit_stats":null,"previous_names":["firee1/cpp-transport-catalogue"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FireE1%2Fcpp-transport-catalogue","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FireE1%2Fcpp-transport-catalogue/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FireE1%2Fcpp-transport-catalogue/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FireE1%2Fcpp-transport-catalogue/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FireE1","download_url":"https://codeload.github.com/FireE1/cpp-transport-catalogue/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245002042,"owners_count":20545367,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-29T07:18:20.518Z","updated_at":"2026-05-09T01:05:40.615Z","avatar_url":"https://github.com/FireE1.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Transport_Catalogue\nПроект представляет из себя систему городской маршрутизации. Программа принимает для считывания и выдает ответы на запросы файл в **формате JSON**. \u003cbr /\u003e\n1. На вход подается указание файла сериализации protobuf(_.db_), настройки поведения атобусов (ожидание на остановке, скорость автобусов), настройки рисуемой карты, информация остановок и автобусов. \n2. Запрос на вывод формируется из обязательного указания файла сериализации protobuf(_.db_) и опционально: название(я) остановок, автобусов, а так же путь между двумя остановками и конструирование карты маршрутов (каждому отдельному объекту запроса должен назначаться идентификатор(id)).\n3. Вывод запроса выдает информацию о запрошенных остановках и автобусах, а так же маршрута между остановкими (кратчайший) и карту, в формате _.svg_. \n\nВарианты работы программы лежат в **директории Test_Files**.\n\n## Использование: \n1. Запуск программы с аргументом **make_base**, с входным JSON файлом, для постороения базы:\n```json\n  {\n      \"serialization_settings\": {\n          \"file\": \"transport_catalogue.db\"\n      },\n      \"routing_settings\": {\n          \"bus_wait_time\": 2,\n          \"bus_velocity\": 30\n      },\n      \"render_settings\": {\n          \"width\": 1200,\n          \"height\": 500,\n          \"padding\": 50,\n          \"stop_radius\": 5,\n          \"line_width\": 14,\n          \"bus_label_font_size\": 20,\n          \"bus_label_offset\": [\n              7,\n              15\n          ],\n          \"stop_label_font_size\": 18,\n          \"stop_label_offset\": [\n              7,\n              -3\n          ],\n          \"underlayer_color\": [\n              255,\n              255,\n              255,\n              0.85\n          ],\n          \"underlayer_width\": 3,\n          \"color_palette\": [\n              \"green\",\n              [\n                  255,\n                  160,\n                  0\n              ],\n              \"red\"\n          ]\n      },\n      \"base_requests\": [\n          {\n              \"type\": \"Bus\",\n              \"name\": \"14\",\n              \"stops\": [\n                  \"Улица Лизы Чайкиной\",\n                  \"Электросети\"\n              ],\n              \"is_roundtrip\": true\n          },\n          {\n              \"type\": \"Stop\",\n              \"name\": \"Улица Лизы Чайкиной\",\n              \"latitude\": 43.590317,\n              \"longitude\": 39.746833,\n              \"road_distances\": {\n                  \"Электросети\": 4300\n              }\n          },\n          {\n              \"type\": \"Stop\",\n              \"name\": \"Электросети\",\n              \"latitude\": 43.598701,\n              \"longitude\": 39.730623,\n          }\n      ]\n  }\n```\n\n2. Запуск программы с аргументом **process_requests** с входным файлом JSON, для считывания запроса (опцианально можно указать выходной JSON файл (_перезапись_)):\n```json\n  {\n      \"serialization_settings\": {\n          \"file\": \"transport_catalogue.db\"\n      },\n      \"stat_requests\": [\n          {\n              \"id\": 218563507,\n              \"type\": \"Bus\",\n              \"name\": \"14\"\n          },\n          {\n              \"id\": 508658276,\n              \"type\": \"Stop\",\n              \"name\": \"Электросети\"\n          },\n          {\n              \"id\": 1964680131,\n              \"type\": \"Route\",\n              \"from\": \"Улица Лизы Чайкиной\",\n              \"to\": \"Электросети\"\n          },\n          {\n              \"id\": 1359372752,\n              \"type\": \"Map\"\n          }\n      ]\n  }\n```\n\n## Системные требования:\n- C++17 (STL)\n- GCC 11.2.0\n\n## Стек технологий:\n- CMake 3.12.0\n- Protobuf-cpp 3.18.1\n\n## В планах:\n- Реализовать простой UI\n- Добавить маршруты со спутниковых карт\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffiree1%2Fcpp-transport-catalogue","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffiree1%2Fcpp-transport-catalogue","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffiree1%2Fcpp-transport-catalogue/lists"}