Хорошо, что AutoCAD предоставляет широкие возможности для разработчиков в области автоматизации процесса проектирования и помогает экономить сотни и тысячи часов работы.
Был разработан специальный плагин на базе .NET, который экспортировал данные из Excel и создавал электрические схемы в AutoCAD.
Принцип работы плагина довольно прост. Рабочий файл DWG содержит блоки-элементы схем с атрибутами, которые содержат информацию об установленной мощности, расчетном токе и т.п. Плагин считывает данные из расчетной таблицы Excel и строит схему из блоков, заполняя при этом атрибуты числами из расчетной таблицы.
В последнее время мне стали задавать вопросы с просьбами что-то дописать, добавить, поменять. Но к сожалению времени на доработку не хватает, да и у каждого инженера свои пожелания. В связи с этим выкладываю исходники:
> https://github.com/NabiyevTR/SingleDiagram
Надеюсь, что плагин поможет сэкономить время инженерам-проектировщикам и улучшить качество документации.
Инструкция по работе с плагином
> Загрузить плагин
Системные требования
- Autodesk AutoCAD 2015
- Microsoft Office Excel 2010 и старше
Состав архива
- В папке Program Files находится файлы плагина. Здесь Вам понадобится файл-библиотека OneLine3.dll. Остальные файлы вспомогательные, нужны для работы плагина.
- Файл ЩИТ.xslm содержит расчетную таблицу, на основании которой строится однолинейная схема
- Файл СХЕМА.dwg — это файл, в котором содержатся необходимые элементы для создания однолинейной схемы. Именно в него мы будем загружать плагин.
- Файл SLD_Buttons.cuix — это файл адаптации. Чтобы не прописывать команды в командной строке, его можно загрузить в AutoCAD и пользоваться кнопками.
Работа с плагином
- Распакуйте архив на локальном диске. Если плагин будет размещен на сервере, AutoCAD не позволит его запустить.
- Запустите AutoCAD и откройте файл СХЕМА.dwg.
- Теперь необходимо загрузить плагин в AutoCAD. В командной строке введите _NETLOAD.
- В открывшемся окне укажите путь к файлу OneLine3.dll.
- AutoCAD покажет предупреждение о том, что загружаемый файл находится вне папки надежного расположения. Нажимаем кнопку Загрузить.
- Теперь, когда плагин загружен, необходимо его запусить. Введите в коммандной строке _DSLD.
- Отобразилось окно. Теперь нужно нажать кнопку Открыть.
- В открывшемся окне укажите путь к файлу с расчетами ЩИТ.xslm.
- Загрузились данные из таблицы. В левом столбце указаны листы из файла ЩИТ.xslm. Выбираем щит (щиты) и переносим их во второй столбец нажатием кнопки 1. Затем нажимаем кнопку Начертить.
- А вот результат нашей работы.
Вопросы, которые могут возникнуть при работе с программой
Конечно, данный плагин не сможет решить все возникающие проблемы. К сожалению универсальных решений не бывает. В этом разделе я попытаюсь ответить на вопросы, которые могут у Вас возникнуть при работе с этой программой.
<loadFromRemoteSources enabled="true"/>
Должно получиться так:
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0"/>
</startup>
<!--All assemblies in AutoCAD are fully trusted so there's no point generating publisher evidence-->
<runtime>
<generatePublisherEvidence enabled="false"/>
<loadFromRemoteSources enabled="true"/>
</runtime>
</configuration>
Второй способ заключается во внесении изменений в самом чертеже. Это можно сделать через Свойства, выделив необходимый элемент.
Поменять данные можно через Редактор атрибутов, дважды щелкнув левой клавишей мыши по редактируемому блоку.
Удалите ненужный атрибут.
Закройте редактор блоков, сохранив изменения.
Ведите команду _ATTSYNC и выберите, редактируемый блок. После синхронизации удаленный атрибут должен исчезнуть.
Аналогичным образом можно удалять и перемещать остальные атрибуты.
Комментарии (8)
mezastel
18.02.2017 13:04Как-то это очень нишево. Ну ок, у вас какой-то Excel формат, но это вообще много кто использует? Именно в том формате что у вас? Насколько это распространенный юз кейс, насколько программа тюнингуется если формат Excel таблиц например другой?
Nabiyev
18.02.2017 13:11Вы про формат .xlsm? Это стандартный формат Excel с поддержкой макросов. Работа программы не зависит от формата, может быть стандартный .xls.
mezastel
20.02.2017 00:01Я не про Excel, я про то, как те или иные данные представлены в Excel. Если то, как вы представляете данные в Excel являются конкретной разработкой вашей компании, они вряд ли будут полезны кому то еще. Если формат данных использует много разных компаний, именно в той же форме что и у вас, тогда это может быть полезно.
Nabiyev
20.02.2017 08:10Ну для этого я и выкладывал исходники. Кого не устраивает наша таблица, может подкорректировать плагин под себя, изменив ссылки на ячейки.
2san
Крутая идея и большая работа. Спасибо что поделились!
Вопрос по таблице: такой формат данных — это ваша разработка или уже использовалась в таком виде на предприятии?