Site Finder v4: ВРИ + ПЗЗ + OSRM-изохроны + ВСЕГЕИ-shapefiles + real ЗОУИТ #27

Closed
opened 2026-05-11 18:39:03 +00:00 by lekss361 · 1 comment
lekss361 commented 2026-05-11 18:39:03 +00:00 (Migrated from github.com)

Расширение site-finder до полноценного "правового и инженерного" аудита участка. Источники без публичного REST API → требуют парсинга / shapefile-импорта / отдельных сервисов. Все отложены из-за multi-day работы каждое.

1. ВРИ + категория земель + ЗОУИТ из Росреестра ПКК

Главное: участок отвечает на "что можно строить". Сейчас в analyze есть только cad-номер и геометрия.

Источники (порядок предпочтения):

  • Прямой парсинг nspd.gov.ru (бывшая ПКК Росреестра) — REST /api/aeggis/v3/.../search-by-cad-num. Лимит ~100 req/min, может быть IP-блок.
  • ФГИС ТП (fgistp.economy.gov.ru) — для ЗОУИТ полигонов. Без API, нужен HTML-парсинг.
  • Через посредников типа egrn.reestr.net / prokadastr.com — платные API, выдают раскодированные ВРИ + ЗОУИТ.

Что добавить в analyze:

  • permitted_use: ВРИ (например "Под многоквартирную застройку")
  • land_category: категория земель (земли населённых пунктов / СХН / лес)
  • zouit_constraints: список ЗОУИТ типов в границах участка (5=ОЗ ЛЭП, 9=ОЗ газа, 33=затопление, 26=санзоны и т.д.) + ссылки на правовое обоснование

2. ПЗЗ-параметры для приоритетных городов

Высота max, плотность, FAR (коэффициент использования территории). Нет API — собирается руками per-city из публичных карт ПЗЗ.

Подход: PostGIS таблица pzz_zones с полигонами зон ПЗЗ + JSON-параметры. Для каждого города (Мск, СПб, ЕКБ, Казань, Новосибирск, Краснодар) — скачать ПЗЗ shape + импорт.

Приоритет 1: ЕКБ. Карта ПЗЗ — data.midural.ru. Shapefile или WMS.

3. OSRM-изохроны соц-инфры (10/15-мин пешком)

Сейчас в analyze —距 distance по прямой к POI. Нужны реальные routing-distances (с учётом улиц/переходов).

Реализация:

  • Docker контейнер OSRM (existing image: osrm/osrm-backend)
  • Региональный osm.pbf файл (только ЕКБ ≈400 MB, или вся Свердл ≈1.5 GB)
  • Бэкенд endpoint /parcels/{cad}/isochrones?modes=walk,car&times=10,15,30
  • Frontend: окрашенные полигоны на карте Leaflet

Депенды: новый сервис в docker-compose.prod.yml, ресурсы +1GB RAM, время сборки ~30 мин.

4. Реальная геология через ВСЕГЕИ shapefile

Сейчас geology = stub с deep-link на Karpinsky WebGIS Atlas. Реальная геология РФ:

  • ВСЕГЕИ Госгеолкарта-1000 — листы 50-150 MB каждый. Для Свердл нужен лист P-41
  • Coordinate system: Krasovsky 1942 / Pulkovo → перепроецировать в WGS84
  • Импорт: shp2pgsql -s SOURCE_SRID:4326 vsegei.shp osm_geology_ekb | psql
  • ST_Within в analyze — какие породы под участком

Acceptance: analyze.geology.data_available=true, есть rock_types: ['пески четвертичные', 'глины кварцевые'] + stratigraphic_age: 'Q4'

5. Сети — расширенный анализ (расширение текущего)

Сейчас в utilities (commit 6ce634a) есть OSM power=line + man_made=pipeline. Можно расширить:

  • Сети ВКХ (man_made=water_works, man_made=wastewater_plant)
  • Дополнительные категории магистральных трубопроводов из ФГИС ТП

6. Конкуренция-карта (полу-готово)

Сейчас есть текстовый список competitors в 3 км. Можно превратить в карту:

  • Frontend: Leaflet polygon overlay для каждого ЖК конкурента
  • Backend: добавить obj_class + sales_progress (sold% out of flat_count)

Ссылки

  • Текущая реализация: SiteFinder_v3_May11 (v3.1-v3.5)
  • Закрыт: #8 (Site Finder Stage 2b MVP)
  • Open: #26 (v3.1 follow-ups — cad_parcels_geom, POI markers, OSM coverage)
Расширение site-finder до полноценного "правового и инженерного" аудита участка. Источники без публичного REST API → требуют парсинга / shapefile-импорта / отдельных сервисов. Все отложены из-за multi-day работы каждое. ## 1. ВРИ + категория земель + ЗОУИТ из Росреестра ПКК Главное: участок отвечает на "что можно строить". Сейчас в analyze есть только cad-номер и геометрия. **Источники (порядок предпочтения):** - Прямой парсинг nspd.gov.ru (бывшая ПКК Росреестра) — REST `/api/aeggis/v3/.../search-by-cad-num`. Лимит ~100 req/min, может быть IP-блок. - ФГИС ТП (fgistp.economy.gov.ru) — для ЗОУИТ полигонов. Без API, нужен HTML-парсинг. - Через посредников типа egrn.reestr.net / prokadastr.com — платные API, выдают раскодированные ВРИ + ЗОУИТ. **Что добавить в analyze:** - `permitted_use`: ВРИ (например \"Под многоквартирную застройку\") - `land_category`: категория земель (земли населённых пунктов / СХН / лес) - `zouit_constraints`: список ЗОУИТ типов в границах участка (5=ОЗ ЛЭП, 9=ОЗ газа, 33=затопление, 26=санзоны и т.д.) + ссылки на правовое обоснование ## 2. ПЗЗ-параметры для приоритетных городов Высота max, плотность, FAR (коэффициент использования территории). Нет API — собирается руками per-city из публичных карт ПЗЗ. **Подход:** PostGIS таблица `pzz_zones` с полигонами зон ПЗЗ + JSON-параметры. Для каждого города (Мск, СПб, ЕКБ, Казань, Новосибирск, Краснодар) — скачать ПЗЗ shape + импорт. **Приоритет 1: ЕКБ.** Карта ПЗЗ — data.midural.ru. Shapefile или WMS. ## 3. OSRM-изохроны соц-инфры (10/15-мин пешком) Сейчас в analyze —距 distance по прямой к POI. Нужны реальные routing-distances (с учётом улиц/переходов). **Реализация:** - Docker контейнер OSRM (existing image: osrm/osrm-backend) - Региональный osm.pbf файл (только ЕКБ ≈400 MB, или вся Свердл ≈1.5 GB) - Бэкенд endpoint `/parcels/{cad}/isochrones?modes=walk,car&times=10,15,30` - Frontend: окрашенные полигоны на карте Leaflet **Депенды:** новый сервис в `docker-compose.prod.yml`, ресурсы +1GB RAM, время сборки ~30 мин. ## 4. Реальная геология через ВСЕГЕИ shapefile Сейчас geology = stub с deep-link на Karpinsky WebGIS Atlas. Реальная геология РФ: - ВСЕГЕИ Госгеолкарта-1000 — листы 50-150 MB каждый. Для Свердл нужен лист P-41 - Coordinate system: Krasovsky 1942 / Pulkovo → перепроецировать в WGS84 - Импорт: `shp2pgsql -s SOURCE_SRID:4326 vsegei.shp osm_geology_ekb | psql` - ST_Within в analyze — какие породы под участком **Acceptance:** analyze.geology.data_available=true, есть `rock_types: ['пески четвертичные', 'глины кварцевые']` + `stratigraphic_age: 'Q4'` ## 5. Сети — расширенный анализ (расширение текущего) Сейчас в utilities (commit 6ce634a) есть OSM power=line + man_made=pipeline. Можно расширить: - Сети ВКХ (`man_made=water_works`, `man_made=wastewater_plant`) - Дополнительные категории магистральных трубопроводов из ФГИС ТП ## 6. Конкуренция-карта (полу-готово) Сейчас есть текстовый список competitors в 3 км. Можно превратить в карту: - Frontend: Leaflet polygon overlay для каждого ЖК конкурента - Backend: добавить obj_class + sales_progress (sold% out of flat_count) ## Ссылки - Текущая реализация: [SiteFinder_v3_May11](https://obsidian.gendsgn.ru/) (v3.1-v3.5) - Закрыт: #8 (Site Finder Stage 2b MVP) - Open: #26 (v3.1 follow-ups — cad_parcels_geom, POI markers, OSM coverage)
lekss361 commented 2026-05-11 20:19:41 +00:00 (Migrated from github.com)

Закрываем как мета — задачи разбиты на конкретные подзадачи в новом milestone Site Finder v4 — scoring quality:

  • ВРИ + категория земель#29 (Gate G2)
  • ПЗЗ shape ЕКБ#28 (Gate G1) + #31 (Gate G4 — FAR/этажность params)
  • ЗОУИТ overlay#30 (Gate G3)
  • OSRM-изохроны#39 (A1 — OSRM infra) + #40 (A2 — endpoint+UI) + #41 (A3 — per-category radius)
  • ВСЕГЕИ shapefiles → объединено с G3 (ЗОУИТ) и в E2 (B2B-реестр)
  • real ЗОУИТ#30

Также cad_parcels_geom массовый импорт — #51.
B2B-каналы (РСО, ФГИС ТП, ОКН) — реестр в #52 для проработки Максом.

Полный backlog — milestone https://github.com/lekss361/-gendesign/milestone/4

Закрываем как мета — задачи разбиты на конкретные подзадачи в новом milestone **Site Finder v4 — scoring quality**: - **ВРИ + категория земель** → #29 (Gate G2) - **ПЗЗ shape ЕКБ** → #28 (Gate G1) + #31 (Gate G4 — FAR/этажность params) - **ЗОУИТ overlay** → #30 (Gate G3) - **OSRM-изохроны** → #39 (A1 — OSRM infra) + #40 (A2 — endpoint+UI) + #41 (A3 — per-category radius) - **ВСЕГЕИ shapefiles** → объединено с G3 (ЗОУИТ) и в E2 (B2B-реестр) - **real ЗОУИТ** → #30 Также cad_parcels_geom массовый импорт — #51. B2B-каналы (РСО, ФГИС ТП, ОКН) — реестр в #52 для проработки Максом. Полный backlog — milestone https://github.com/lekss361/-gendesign/milestone/4
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#27
No description provided.