воскресенье, 2 октября 2022 г.

Tekla Structures и Lookup

Я думаю, что все, кто занимается разработкой программного обеспечения для Revit или Autocad, знают такие приложения как RevitLookup, ARXDBG и MGDDBG. Данные утилиты серьёзно помогают понять объектную модель API программы, а также увидеть, что скрыто под капотом программы. 

К сожалению для TeklaStructures нечто подобное отсутствует. Что в принципе не мешает разрабатывать плагины и утилиты, однако, если бы такое приложение было, то оно бы здорово помогало бы в работе.

Если никто ещё ничего подобного не придумал, значит самое время мне самому изобрести велосипед. Встречайте утилиту Lookup.

Tekla Lookup


Данное приложение позволяет следующее:

  1. Видеть всевозможные имена полей, методов, свойств (как приватных так и публичных)
  2. Просматривать значения приватных и публичных полей, свойств
  3. Получать и просматривать значения публичных и приватных методов, которые не требует передачи параметров

Код работает через механизм рефлексии и обрабатывает всё, что отдаёт TeklaStructres API.

Как работать с приложением:

1. При запущенной TeklaStructures запускаем Lookup

2. Если выбран какой либо элемент в модели или чертеже, то программа автоматически выведет список доступных свойств API в правом поле программы (см. рис. 1, 2)

3. Если элементы не выбраны, то выбираем и нажимаем на кнопку "GetSelected"

4. Свойства, поля, методы в правой части программы, которые помечены жирным - доступны для получения, т.е. можно двойным кликом мышки вызвать дополнительный экземпляр программы, который "распакует" данный тип и отобразит его содержимое

5. На элементы модели или чертежа в левой панели можно 2 раза кликать мышкой и правая часть со свойствами будет обновляться.

Lookup in TeklaStructures (using in model)

Lookup in TeklaStructures (using in drawings)

Используя данное приложение, можно "гулять" по структуре элемента, получать подтипы и понимать, к примеру, из чего на самом деле состоит сборка.

Стоит отметить, что приложение пока находится в бета тестировании, в связи с чем не исключены мелкие баги. 

Буду рад, если, кто-нибудь кроме меня, поучавствует в разработке. Репозиторий располагается по ссылке - https://github.com/karpovichpv/Lookup

Скачать утилиту вы можете по адресу - https://github.com/karpovichpv/Lookup/releases/

Порядок установки:

1. Распаковать архив.
2. Скопировать файлы Lookup.exe и Microsoft.Xaml.Behaviors.dll в папку "C:\...\Environments\common\extensions\".
3. Скопировать файлы Lookup.cs и Lookup.bmp из папки "run_macro" в папки "C:\...\Environments\common\macros\drawings\" и "C:\...\Environments\common\macros\modelling\".
4. Запустить приложение из стандартной панели инструментов TeklaStructures.


Комментариев нет:

Отправить комментарий