Нумерация листов в Tekla Structures

Переодически в Текле возникает необходимость в сквозной нумерации группы чертежей в модели. Задача эта может быть решена разными способами. Лично я предпочитаю делать это с помощью простенького скрипта. Всего то и надо  — пройтись по списку чертежей и каждому присвоить номер.

Чтобы это сделать надо вопервых получить список выбранных чертежей. Во вторых пройтись по нему, и в третьих назначить пользовательское свойство, в моем случае Page — которое потом можно использовать на ряду с другими своствами в шаблоне. Например в штампе.

Кстати, по списку можно пробежать и еще разок, присвоив общее число страниц в качестве свойства например Pages.

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

Читать далее «Нумерация листов в Tekla Structures»

Tekla Structures: двух компонентная модель.

Постоянно использую в работе компонент 2dArray. Не только потому, что я его написал, но потому что он получился реально удобным. Да еще и сюрпризы преподносит переодически. Очередной такой случай всё, что представлено на скринах из модели — результат применения двух компонентов. Абстрактный конь в вакууме конечно, но наглядно показывает возможности, особенно если архитектор психанул.

Читать далее «Tekla Structures: двух компонентная модель.»

Tekla Structures there are Locked Object

Tekla Structures: There are locked objects, operation could not be performed

Блокировка объектов в текле — штука крайне полезная. Можно заморозить дизайн в текущем состоянии и быть уверенным в том, что коллеги в этой части конструкции ничего не поменяют. Это позволяет предотвратить ситуации связанные со случайными изменениями когда, например, в выборку перемещаемых объектов попадают детали из уже закоченных конструкций. От этого едет нумерация объектов, летят чертежи, происходят прочие неприятные вещи.

Однако иногда блокировка сама становится проблемой. Обычно в тех случаях когда приходится переделывать чью-то работу. Тогда назойливое сообщение не дает внести необходимые изменения. К тому же свойства среды нигде явным образом не сообщают о блокировке. Вот об этих случаях и поговорим

Читать далее «Tekla Structures there are Locked Object»

Tekla Macro Custom Inquire подписка на события.

Tekla Custom Inquire Macro TeklaAPITekla Structures содержит исчерпывающий объем информации о каждом элементе модели — графическом, или текстовом. Чтобы получить данные используют следующие инструменты:

  • Inquire — не слишком интерактивен, выдаёт исчерпывающую информацию — но только об одном объекте.
  • Custom Inquire выводит информацию мгновенно, но тоже только один элемент. И нельзя добраться до пользовательских свойств (UDA) элементов.
  • Reports —  отличный, только сначала надо в Template Editore написать подходящий репорт. Написать его довольно просто, но опять же никакой тебе интерактивности.

Ниже представлен макрос который представляет частный случай подписки на событие SelectionChange из TeklaAPI. Будем извлекать информацию о выделенных элементах, согласно заданному списку свойств.

Список задается в виде отдельных переменных. Впрочем, если приходилось разрабатывать репорты в Текле, то понять принцип будет легко. Макрос качаем тут:

CADSUPPORT_CustomInquireTool.cs

подробнее о том как это работает Читать далее «Tekla Macro Custom Inquire подписка на события.»

Комментарии это здорово.

Полез в код пяти летней давности. Нашел в комментариях объяснение работы алгоритма. Примерно, после пятого вдумчивого прочтения, с каранадашом в зубах и листом бумаги, в голове наконец сложилась картина пятилетней давности.

Из данных точек построим две касательных к окружности. Сложим вектора получившиеся из центра окружности к касательным. Получим вектор биссектрисы угла образованного этими векторами. Найдем точку окружности лежащую на этом векторе, отложим из неё нормаль к биссектриссе. и найдем пересечение нормали с векторами касательной из первой и из второй точки.

Вообщем если кому охота будет поломать голову — добро пожаловать.

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

prompts.ail автоматическая локализация в среде Tekla Structures

Этот файл можно найти в папке теклы

TeklaStructures\19.0\messages\prompts.ail

Тут хранятся стандартные сообщения Теклы, которые можно использовать в ваших программах на текла апи. Каждый запрос к пользователю может быть сопровожден текстовым аргументом который начинается с «prompt_» список собтсвенно этих стандартных текстовых заготовок можно найти в этом файле. Например аргумент   «prompt_Pick_first_position», в русскоязычной среде выведет запрос «Выберите первую позицию». В немецкой среде это соответственно будет немецкое значение,  и так далее.

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

Такой же трюк можно проделать и с шаблонами

Open Tekla API — events. Обработка событий с помощью Tekla API

Tekla Structures Open API Model EventsВ языке C# существуют так называемые события, инструмент весьма удобный, позволяющий приложениям интерактивно реагировать на те или иные изменения в приложении. Естественно объекты Tekla Structures тоже ими обладают. Добавление обработчика тех или иных событий к вашему скрипту или приложению — позволит съэкономить пару кликов и, возможно, пару кнопок на форме, а главное нервы пользователя. Читать далее «Open Tekla API — events. Обработка событий с помощью Tekla API»

Tekla API, вызываем скрипт из программы.

Создаем и вызываем макро скрипт из приложения в Текле Tekla Structures Open APIЕсли внимательно изучать Tekla API, то довольно скоро можно заметить, что описанный там функционал не исчерпывает реальных возможностей Tekla Structures. Если у вас есть доступ к Tekla Extranet то, на соответствующих форумах, можно узнать, что дело именно так и обстоит.

Однако возможность использовать все функции есть. Заключается она в работе со скриптами.

Документации по скрипто-писанию как таковой обнаружить не удалось. Впрочем тут, тут и здесь я касался этого вопроса. Собственно создание, запись и анализ скриптов в текле — задача на первый взгляд непростая, но на самом деле тривиальная. Остается не раскрытым вопрос, а как встроить скриптовый функционал в ваше приложение? Читать далее «Tekla API, вызываем скрипт из программы.»