Tekla API С#: класс Picker в модели - выбираем объекты и точки в 3D
Когда плагину нужно дать пользователю выбрать точку, грань, линию или объект прямо в модели Tekla Structures - в игру вступает Tekla.Structures.Model.UI.Picker.
💡 Пример простого выбора точки
🧩 Что ещё может Picker
PickFace() - выбрать грань модели.
PickLine() - выбрать линию (например, ось).
PickObject() - выбрать один объект (балку, пластину, компонент и т.п.).
PickObjects() - выбрать сразу несколько объектов.
PickPoints() - выбрать последовательность точек (например, контур).
Все методы имеют перегрузки с подсказками (String prompt) для вывода сообщений пользователю.
💬 Подсказки (Prompts)
Tekla автоматически ищет переводы в prompts.ail.
Если перевода нет - покажет ваш текст как есть.
Так можно создавать уже локализованные плагины без дополнительного кода.
⚙️ Типичный сценарий
Например, ваш макрос строит линию между двумя точками.
Вы просто вызываете:
И пользователь буквально рисует мышью в модели.
Без сложных диалогов и ручного ввода координат.
🧠 Зачем это нужно
Упрощает взаимодействие с пользователем.
Делает плагины "живыми" и наглядными.
Позволяет строить, измерять и модифицировать объекты.
#nipgroup #Tekla #TeklaSupport #TeklaHelp #TeklaAPI
Когда плагину нужно дать пользователю выбрать точку, грань, линию или объект прямо в модели Tekla Structures - в игру вступает Tekla.Structures.Model.UI.Picker.
💡 Пример простого выбора точки
using Tekla.Structures.Model.UI;using Tekla.Structures.Geometry3d;public class Example{ public void Example1(){var picker = new Picker();try{ Point point = picker.PickPoint("Выберите точку в модели"); MessageBox.Show($"Выбрана точка: {point}");}catch (Exception e) {MessageBox.Show($"Пользователь отменил выбор: {e.Message}"); } }}🧩 Что ещё может Picker
PickFace() - выбрать грань модели.
PickLine() - выбрать линию (например, ось).
PickObject() - выбрать один объект (балку, пластину, компонент и т.п.).
PickObjects() - выбрать сразу несколько объектов.
PickPoints() - выбрать последовательность точек (например, контур).
Все методы имеют перегрузки с подсказками (String prompt) для вывода сообщений пользователю.
💬 Подсказки (Prompts)
Tekla автоматически ищет переводы в prompts.ail.
Если перевода нет - покажет ваш текст как есть.
Так можно создавать уже локализованные плагины без дополнительного кода.
⚙️ Типичный сценарий
Например, ваш макрос строит линию между двумя точками.
Вы просто вызываете:
var picker = new Picker();var p1 = picker.PickPoint("Выберите первую точку");var p2 = picker.PickPoint("Выберите вторую точку");И пользователь буквально рисует мышью в модели.
Без сложных диалогов и ручного ввода координат.
🧠 Зачем это нужно
Упрощает взаимодействие с пользователем.
Делает плагины "живыми" и наглядными.
Позволяет строить, измерять и модифицировать объекты.
#nipgroup #Tekla #TeklaSupport #TeklaHelp #TeklaAPI
👍8❤1
Монолитизация пустотных плит перекрытия
🏗 Новый ролик на канале!
В видео:
🔹 Заполнение пустот и швов
🔹 Создание бетонных поясов
🔹 Формирование единого монолитного элемента
🔹 Подсчёт объёмов
📹 Смотреть ролик
👉 YouTube👉 https://youtu.be/Bw56qXY57Y4
👉 RuTube👉 https://rutube.ru/video/39e4260dbb99999ed7cb6152e28ea323/
👉 Дзен👉 https://dzen.ru/video/watch/68ef9c2ffd4a1a0bf98fe3dd
#nipgroup #Tekla #TeklaTutorial
🏗 Новый ролик на канале!
В видео:
🔹 Заполнение пустот и швов
🔹 Создание бетонных поясов
🔹 Формирование единого монолитного элемента
🔹 Подсчёт объёмов
📹 Смотреть ролик
👉 YouTube👉 https://youtu.be/Bw56qXY57Y4
👉 RuTube👉 https://rutube.ru/video/39e4260dbb99999ed7cb6152e28ea323/
👉 Дзен👉 https://dzen.ru/video/watch/68ef9c2ffd4a1a0bf98fe3dd
#nipgroup #Tekla #TeklaTutorial
🔥4
2025-10-16_11-40-34 (2).png
51.9 KB
Настройка экспорта атрибутивной информации в IFC
🔹 Этап 1. Задаем структуру IFC на уровне проекта
Файл → Свойства проекта → Пользовательские атрибуты →Вкладка: Экспорт IFC→Параметры: Название площадки IFC / Название здания IFC / Название яруса IFC
🔹 Этап 2. Задаем структуру IFC на уровне деталей (если отличаются от данных проекта)
Свойства детали → Пользовательские атрибуты →Вкладка: Экспорт в IFC→Параметры: Название здания IFC / Название яруса IFC
💡 Здесь же можно указать тип объекта IFC (например, IfcBeam, IfcColumn и т.д.), чтобы впоследствии добавить нужные атрибуты.
🔹 Этап 3. Добавляем таблицы атрибутов для экспорта
Файл → Экспорт → IFC → Дополнительный набор свойств → Изменить
Указываем:
- имя конфигурации
- наименование набора свойств
- типы выгружаемых объектов IFC, которым соответствует указанный набор
- формируем перечень необходимых атрибутов
После этого — сохраняем конфигурацию, выбираем соответственно ее и выгружаем модель.
!!! Интерфейс задания конфигурации в версиях до 2023 и после - отличается !!!
✅ Этап 4. Контролируем результат экспорта
#nipgroup #Tekla #TeklaSupport #TeklaHelp #TeklaSetting #TeklaBIM
🔹 Этап 1. Задаем структуру IFC на уровне проекта
Файл → Свойства проекта → Пользовательские атрибуты →Вкладка: Экспорт IFC→Параметры: Название площадки IFC / Название здания IFC / Название яруса IFC
🔹 Этап 2. Задаем структуру IFC на уровне деталей (если отличаются от данных проекта)
Свойства детали → Пользовательские атрибуты →Вкладка: Экспорт в IFC→Параметры: Название здания IFC / Название яруса IFC
💡 Здесь же можно указать тип объекта IFC (например, IfcBeam, IfcColumn и т.д.), чтобы впоследствии добавить нужные атрибуты.
🔹 Этап 3. Добавляем таблицы атрибутов для экспорта
Файл → Экспорт → IFC → Дополнительный набор свойств → Изменить
Указываем:
- имя конфигурации
- наименование набора свойств
- типы выгружаемых объектов IFC, которым соответствует указанный набор
- формируем перечень необходимых атрибутов
После этого — сохраняем конфигурацию, выбираем соответственно ее и выгружаем модель.
!!! Интерфейс задания конфигурации в версиях до 2023 и после - отличается !!!
✅ Этап 4. Контролируем результат экспорта
#nipgroup #Tekla #TeklaSupport #TeklaHelp #TeklaSetting #TeklaBIM
🔥8👍1
Коллективная работа в TEKLA на бытовом уровне (на фрилансе)
👷♂️ Организовать коллективную работу в Tekla Structures — не так сложно, как кажется.
🔧 Что нужно:
💻 Постоянно работающий компьютер - назовем его «Сервер» (достаточно ОС
🌐 Стабильный интернет и белый (статический) IP-адрес от провайдера
🛜 Роутер с поддержкой VPN-доступа
📦 Дистрибутив Tekla Structures Multiuser Server
⚙️ Пошаговая настройка:
1️⃣ Настраиваем IP адрес вашей подсети на роутере
В большинстве роутеров есть меню: Сеть (LAN) → IP-адрес.
!!! Рекомендуется использовать отличную от стандартной `192.168.1.1` подсеть, например `192.168.20.1`.
2️⃣ Назначаем статический IP “Серверу”
На Windows 10:
Пуск → Параметры → Сеть и Интернет → Настройки адаптера →Находим подключенный (целевой) адаптер → ПКМ → Свойства → IP версии 4
!!! Пример настройки:
IP адрес:
Маска подсети:
Основной шлюз:
Предпочтительный DNS:
3️⃣ Настраиваем VPN
Создаём VPN-доступ через роутер. Создаем пользователей (со-фрилансеров). На выходе получаем файл конфигурации для подключений.
!!! У каждого оборудования своя настройка, но, как правило, она вполне не сложная, можно посоветоваться с ИИ или просто помучить поисковик
4️⃣ Устанавливаем актуальную версию TEKLA Multiuser Server (
Путь установки:
Multiuser Server использует порт TCP/IP
Лог установки:
5️⃣ Проверяем наличие службы TEKLA Multiuser Server
Пуск → Службы (можно через поиск) → Tekla Structures Multiuser Server (если она в списке есть, то все ОК)
!!! В этом же разделе можно перезапускать Tekla Structures Multiuser Server при необходимости (это важно при зависаниях и ошибках сохранения, лучше настроить ежедночной автоматический перезапуск).
6️⃣ Создаём пользователей "Сервера"
Пуск → Параметры → Учётные записи → Семья и другие пользователи → Добавить пользователя БЕЗ аккаунта Microsoft.
!!! Для удобства используем те же логины и пароли, что и для VPN.
7️⃣ Открываем доступ к папке с моделями
ПКМ по папке → Предоставить доступ → Отдельные люди → Выбираем пользователей → Права: Чтение и запись → Поделиться
8️⃣ Разворачиваем модель Tekla
Указываем в качестве многопользовательского сервера наш IP сервера -
!!! Эта информация храниться в скрытом текстовом файле .This_is_multiuser_model в корне папки модели (тут ее всегда можно изменить)
9️⃣ Подключаем клиента (со-фрилансера)
Передаём коллеге VPN-конфигурацию, логин и пароль.
Его задачи:
- Установить приложение для VPN подключения к вашей сети (например: OpenVPN) → Открыть в нем конфигурацию → Выполнить подключение
- Открыть проводник → Ввести в качестве путь к папке
!!! Указанную папку с моделями можно подключить как сетевой диск
✅ Готово!
Можно работать коллективно в одной модели.
💡 Не забывайте про латиницу в путях и сетевую безопасность...
#nipgroup #Tekla #TeklaSupport #TeklaHelp #TeklaSetting
👷♂️ Организовать коллективную работу в Tekla Structures — не так сложно, как кажется.
🔧 Что нужно:
💻 Постоянно работающий компьютер - назовем его «Сервер» (достаточно ОС
Windows 10/11)🌐 Стабильный интернет и белый (статический) IP-адрес от провайдера
🛜 Роутер с поддержкой VPN-доступа
📦 Дистрибутив Tekla Structures Multiuser Server
⚙️ Пошаговая настройка:
1️⃣ Настраиваем IP адрес вашей подсети на роутере
В большинстве роутеров есть меню: Сеть (LAN) → IP-адрес.
!!! Рекомендуется использовать отличную от стандартной `
2️⃣ Назначаем статический IP “Серверу”
На Windows 10:
Пуск → Параметры → Сеть и Интернет → Настройки адаптера →Находим подключенный (целевой) адаптер → ПКМ → Свойства → IP версии 4
!!! Пример настройки:
IP адрес:
192.168.20.10Маска подсети:
255.255.255.0Основной шлюз:
192.168.20.1Предпочтительный DNS:
8.8.8.83️⃣ Настраиваем VPN
Создаём VPN-доступ через роутер. Создаем пользователей (со-фрилансеров). На выходе получаем файл конфигурации для подключений.
!!! У каждого оборудования своя настройка, но, как правило, она вполне не сложная, можно посоветоваться с ИИ или просто помучить поисковик
4️⃣ Устанавливаем актуальную версию TEKLA Multiuser Server (
https://download.trimble.com)Путь установки:
C:\Program Files (x86)\Tekla Structures Multiuser ServerMultiuser Server использует порт TCP/IP
1238.Лог установки:
C:\ProgramData\TeklaStructuresServer\xs_server.log5️⃣ Проверяем наличие службы TEKLA Multiuser Server
Пуск → Службы (можно через поиск) → Tekla Structures Multiuser Server (если она в списке есть, то все ОК)
!!! В этом же разделе можно перезапускать Tekla Structures Multiuser Server при необходимости (это важно при зависаниях и ошибках сохранения, лучше настроить ежедночной автоматический перезапуск).
6️⃣ Создаём пользователей "Сервера"
Пуск → Параметры → Учётные записи → Семья и другие пользователи → Добавить пользователя БЕЗ аккаунта Microsoft.
!!! Для удобства используем те же логины и пароли, что и для VPN.
7️⃣ Открываем доступ к папке с моделями
ПКМ по папке → Предоставить доступ → Отдельные люди → Выбираем пользователей → Права: Чтение и запись → Поделиться
8️⃣ Разворачиваем модель Tekla
Указываем в качестве многопользовательского сервера наш IP сервера -
192.168.20.10.!!! Эта информация храниться в скрытом текстовом файле .This_is_multiuser_model в корне папки модели (тут ее всегда можно изменить)
9️⃣ Подключаем клиента (со-фрилансера)
Передаём коллеге VPN-конфигурацию, логин и пароль.
Его задачи:
- Установить приложение для VPN подключения к вашей сети (например: OpenVPN) → Открыть в нем конфигурацию → Выполнить подключение
- Открыть проводник → Ввести в качестве путь к папке
\\192.168.20.10 → Указать логин и пароль → Найти папку с моделью!!! Указанную папку с моделями можно подключить как сетевой диск
✅ Готово!
Можно работать коллективно в одной модели.
💡 Не забывайте про латиницу в путях и сетевую безопасность...
#nipgroup #Tekla #TeklaSupport #TeklaHelp #TeklaSetting
❤7🔥6
Media is too big
VIEW IN TELEGRAM
👷Вот так посвящают маленьких детей в будущих Инженеров… Все обо всем… Как вам такая находка?!
👍16🔥7😍3👌1
Армирование швов между пустотными плитами
🏗 Новый ролик на канале!
В видео:
🔹 Армирование продольных стыков
🔹 Формирование пояса монолитизации
🔹 Проверка результата и расчет арматуры
📹 Смотреть ролик
👉 YouTube👉 https://youtu.be/pyWAYEq7ZLc
👉 RuTube👉 https://rutube.ru/video/1f391f7bebaa0e957afa8415c13baa73/
👉 Дзен👉 https://dzen.ru/video/watch/68f8a053e83dbf7b3880cbe3
#nipgroup #Tekla #TeklaTutorial
🏗 Новый ролик на канале!
В видео:
🔹 Армирование продольных стыков
🔹 Формирование пояса монолитизации
🔹 Проверка результата и расчет арматуры
📹 Смотреть ролик
👉 YouTube👉 https://youtu.be/pyWAYEq7ZLc
👉 RuTube👉 https://rutube.ru/video/1f391f7bebaa0e957afa8415c13baa73/
👉 Дзен👉 https://dzen.ru/video/watch/68f8a053e83dbf7b3880cbe3
#nipgroup #Tekla #TeklaTutorial
👍2
🧩 Tekla API С# — класс Operation: магия, спрятанная в одном месте
Если бы у Tekla Structures был волшебник, который умеет гнуть, копировать, комбинировать и экспортировать - это был бы класс Operation.
Это статический класс (
🔧 Что он умеет:
🪄 Геометрия и модель
CreateBentPlateByParts - создаёт гнутую пластину между двумя деталями.
ExplodeBentPlate - превращает обратно в обычные пластины.
📦 Работа с данными и экспорт
🔩 Арматура и бетон
🧱 Манипуляции с объектами
🌐 Экспорт в Web
⚙️ Пример использования:
- и вот у вас уже две одинаковые балки, аккуратно смещённые на два метра вверх.
💡 Зачем знать про Operation:
Он - как универсальный инструмент API Tekla:
📌 автоматизация рутинных действий
📌 быстрые проверки (фильтры, выделение, нумерация)
📌 геометрические операции без ручной возни
💬 Совет:
Если вы пишете плагины под Tekla — перед тем как “изобретать велосипед”, посмотрите, не делает ли это уже Operation.
Скорее всего, делает. И даже чище, чем хотелось бы 😎
#nipgroup #Tekla #TeklaSupport #TeklaHelp #TeklaAPI
Если бы у Tekla Structures был волшебник, который умеет гнуть, копировать, комбинировать и экспортировать - это был бы класс Operation.
Это статический класс (
public static class Operation) - значит, вы не создаёте его экземпляр, а просто вызываете нужные методы напрямую.🔧 Что он умеет:
🪄 Геометрия и модель
Combine(Beam, Beam) - объединяет балки.Split(Beam, Point) - наоборот, делит.CreateBentPlateByParts - создаёт гнутую пластину между двумя деталями.
ExplodeBentPlate - превращает обратно в обычные пластины.
📦 Работа с данными и экспорт
CreateIFC4ExportFromAll() / CreateIFC4ExportFromSelected() - экспорт модели или выбранных объектов в IFC4.CreateReportFromAll() / CreateReportFromSelected() генерация отчётов по шаблону.CreateNCFilesFromSelected() - выпуск NC-файлов для металлоконструкций.CreateMISFileFromAll() - MIS-файлы, если вы в старой школе.🔩 Арматура и бетон
Group() / Ungrouping() - группировка и разгруппировка арматуры.AddToPourUnit() и RemoveFromPourUnit() - управление бетонными заливками.🧱 Манипуляции с объектами
CopyObject() и MoveObject() - перемещение и копирование объектов (в том числе по системам координат).ObjectMatchesToFilter() - проверка, подходит ли объект под фильтр.Highlight() и ShowOnlySelected() - управление в UI (пользовательском интерфейсе).🌐 Экспорт в Web
SaveAsWebModel() / SaveSelectedAsWebModel() - выгрузка модели или её части в формат, доступный для просмотра через браузер.⚙️ Пример использования:
var part = new Beam(new Point(0,0,0), new Point(6000,0,0));part.Insert();var copy = Operation.CopyObject(part, new Vector(0, 0, 2000));- и вот у вас уже две одинаковые балки, аккуратно смещённые на два метра вверх.
💡 Зачем знать про Operation:
Он - как универсальный инструмент API Tekla:
📌 автоматизация рутинных действий
📌 быстрые проверки (фильтры, выделение, нумерация)
📌 геометрические операции без ручной возни
💬 Совет:
Если вы пишете плагины под Tekla — перед тем как “изобретать велосипед”, посмотрите, не делает ли это уже Operation.
Скорее всего, делает. И даже чище, чем хотелось бы 😎
#nipgroup #Tekla #TeklaSupport #TeklaHelp #TeklaAPI
👍7