Как стать автором
Обновить

Low-code MVP для получения плана застройки участка по кадастровому номеру на базе Notion, Airtable и Telegram

Время на прочтение2 мин
Количество просмотров5K

Формулировка задачи

По кадастровому номеру участка получить несколько вариантов проектов застройки участка в формате .DWG (Autocad) со следующими рассчитанными показателями:

  1. Площадь земельного участка, м2

  2. Площадь застройки, м2

  3. Общая площадь здания, м2

  4. Этажность (итоговая)

  5. Площадь твердых покрытий (дороги тротуары), м2

  6. Площадь озеленения, м2

  7. Площадь озеленения, %

Почему мы выбрали Low-code подход?

В данном проекте нам было важно реализовать Backend API, поэтому для реализации Frontend и базы данных мы выбрали Airtable, а в качестве интерфейса пользователя Notion и Telegram.

Это очень сильно ускорило процесс создания всей модели и дало возможность оперативно подключить к тестированию конечных пользователей.

Backend

Было решено выбрать Python основным языком для Backend, плюс дополнительные библиотеки:

  1. Библиотека получения изображения участка по кадастровому номеру от Росреестра (https://github.com/rendrom/rosreestr2coord).

  2. Библиотека OpenCV для анализа изображения участка, получаемое от Росреестра (https://github.com/opencv/opencv/tree/4.7.0).

  3. Библиотека pyautocad для генерации проектов в формате .DWG (Autocad) (https://pypi.org/project/pyautocad/).

  4. Библиотека Flask для организации REST API (https://github.com/pallets/flask).

База данных и система управления очередями заданий - Airtable (https://airtable.com/).

Frontend

  1. Чат-бот Телеграм для постановки задачи через форму Airtable.

  2. Публичная страница в Notion с формой Airtable и просмотром очереди заданий.

Этапы разработки MVP

  1. Получение по API изображения участка от Росреестра по кадастровому номеру и перевод его в гео-координаты.

    В таком виде приходит изображение земельного участка от Росреестра
    В таком виде приходит изображение земельного участка от Росреестра
    [(323.2, 107.8),
     (155.2, 110.8),
     (134.2, 131.2),
     (127.0, 191.2),
     (128.2, 192.4),
     (133.0, 192.4),
     (133.6, 194.8),
     (132.4, 199.0),
     (126.4, 197.8),
     (107.2, 356.2),
     (301.6, 392.2),
     (313.6, 298.6),
     (320.2, 224.8),
     (323.2, 149.2),
     (323.2, 107.8)]

  2. Создать алгоритм “посева” секций на участке в заданных границах угла отклонения от осей Север-Юг и Запад-Восток.

    Варианты "посева" секций домов при различных углах отклонения участка
    Варианты "посева" секций домов при различных углах отклонения участка
  3. Рассчитать все показатели застройки для полученного варианта размещения домов на участке.

    Основные показатели при планировании застройки земельного участка
    Основные показатели при планировании застройки земельного участка
  4. Полученное расположение секций на участке отправляем на сервер с Autocad и генерируем проект в формате .DWG, где секции будут заменены на разработанные заранее типовые секции.

    Автоматически генерируемый проект в Autocad с размещенными типовыми секциями жилых домов
    Автоматически генерируемый проект в Autocad с размещенными типовыми секциями жилых домов
  5. Разработать интерфейс для ручной корректировки положения секций на участке.

    Интерфейс ручной калибровки секций на участке и пересчета показателей застройки
    Интерфейс ручной калибровки секций на участке и пересчета показателей застройки

Демонстрация работы MVP (видео)

На данном видео показан процесс работы из чат-бота Telegram.

Показан процесс от постановки задачи и получения автоматических вариантов планировки, а так же последующая ручная доработка расстановки секций на участке.

Результатом работы является готовый проект в формате .DWG (Autocad).

Итоговая архитектура MVP

Итоговая схема взаимодействия всех систем MVP
Итоговая схема взаимодействия всех систем MVP

Заключение

Все вопросы пишите мне в телеграм: @TAU15

Всем желающим протестировать работу MVP вот ссылка на страницу в Notion:

https://www.notion.so/2-MVP-d5875ea718654c02a1a0d61f68cc7962

Интерфейс работы с MVP через публичную страницу в Notion
Интерфейс работы с MVP через публичную страницу в Notion

Теги:
Хабы:
Если эта публикация вас вдохновила и вы хотите поддержать автора — не стесняйтесь нажать на кнопку
Всего голосов 3: ↑2 и ↓1+3
Комментарии11

Публикации

Истории

Работа

Python разработчик
128 вакансий
Data Scientist
80 вакансий

Ближайшие события

12 – 13 июля
Геймтон DatsDefense
Онлайн
19 сентября
CDI Conf 2024
Москва