Извлечение координат блоков из чертежа AutoCAD в Excel (CSV) с пересчётом в заданную систему координат.
Небольшая утилита на AutoLISP для массового снятия координат точек с чертежа и выгрузки их в таблицу. Расставляете нумерованные точки, задаёте точку отсчёта и поправки — плагин пересчитывает координаты и выгружает их в CSV, который без импорта открывается в русском Excel.
- Автоматическая расстановка нумерованных точек на чертеже (номер инкрементируется при каждой вставке).
- Пересчёт координат относительно заданной начальной точки с поправками
dX/dY. - Выгрузка координат блоков в CSV: выбором рамкой, всех блоков чертежа или по имени с маской
*. - В выгрузку попадают и пересчитанные, и исходные координаты — для контроля.
- Вместе с координатами выгружаются имя блока, номер и значения атрибутов.
- Все настройки хранятся в самом
.dwg— при повторном открытии чертежа ничего вводить заново не нужно. - CSV в кодировке UTF-8 с BOM, разделитель
;— корректно открывается в русском Excel. - Диалоговая панель управления + опциональная панель инструментов (
.cuixили авто-создание через COM).
-
Клонируйте репозиторий или скачайте архив:
git clone https://github.com/<user>/Block2Excel.git
-
Скопируйте
BLOCK2EXCEL.lspв папку поддержки AutoCAD (либо загружайте вручную через командуAPPLOAD). -
(Опционально) Подключите
Block2Excel.cuixдля панели инструментов, аBlock2Excel.mnlположите рядом с ним — он автоматически загрузит.lsp.
1. B2E_ORIGIN ; указать точку отсчёта
2. B2E_SETTINGS ; задать масштаб и поправки dX / dY (при необходимости)
3. B2E_INSERT ; расставить нумерованные точки
4. BLOCK2EXCEL ; выбрать блоки и выгрузить в CSV
Либо откройте единую панель управления командой B2E и работайте кнопками.
| Команда | Назначение |
|---|---|
B2E |
Диалоговая панель управления (главное меню) |
B2E_INSERT |
Вставка точки B2E_POINT с автонумерацией |
B2E_ORIGIN |
Указать начальную точку (точку отсчёта) |
B2E_RESET |
Сброс / установка значения счётчика нумерации |
B2E_SETTINGS |
Настройки: масштаб блоков, поправки dX / dY |
BLOCK2EXCEL |
Выбрать блоки рамкой/кликом и выгрузить в CSV |
BLOCK2EXCEL_ALL |
Выгрузить все вхождения блоков на чертеже |
BLOCK2EXCEL_NAME |
Выгрузить блоки по имени (поддержка маски *) |
B2E_INSTALL_PANEL |
Создать панель инструментов через COM (запасной путь без .cuix) |
B2E_UNINSTALL_PANEL |
Удалить созданную через COM панель |
При выгрузке каждая координата пересчитывается:
X_итог = X_нач − dX − X_точки
Y_итог = Y_нач − dY − Y_точки
| Параметр | Описание | Где задаётся |
|---|---|---|
X_нач, Y_нач |
Координаты начальной точки | B2E_ORIGIN |
dX, dY |
Поправки | B2E_SETTINGS |
X_точки, Y_точки |
Фактические координаты вхождения блока | автоматически |
Все параметры сохраняются в .dwg в системных переменных:
| Переменная | Значение |
|---|---|
USERI5 |
Счётчик нумерации |
USERR1 |
Масштаб блоков |
USERR2 |
X начальной точки |
USERR3 |
Y начальной точки |
USERR4 |
Поправка dX |
USERR5 |
Поправка dY |
Block2Excel/
├── BLOCK2EXCEL.lsp # Главный файл — весь код и все команды
├── Block2Excel.mnl # Автозагрузчик .lsp (рядом с .cuix)
├── Block2Excel.cuix # Панель инструментов AutoCAD
└── README.md
При первой загрузке в чертеже автоматически определяются два блока:
B2E_POINT— точка с автонумерацией (кружок + атрибутNUM).B2E_ORIGIN— маркер начальной точки (квадрат с диагоналями).
Протестировано на AutoCAD 2026 (Windows).
Требуется поддержка AutoLISP / Visual LISP (vl-load-com).
MIT — используйте свободно. Замечания и pull-request'ы приветствуются.