Перейти к публикации

Макросы T-Flex


QuestioMen

Рекомендованные сообщения

Кто-нибудь связывался с написанием макросов при работе с T-Flex?  :gun_guns:

Хотелось бы сформировать тему, в которой можно было бы обсудить, как выполняется то или иное действие

 

Лично для меня программирование - тёмный лес, а работа с макросами необходима для текущей задачи

Заранее прошу прощения, если вопросы покажутся глупыми :no_1:

 

Столкнулся с проблемой:

Создаю много объектов на 2D чертеже

При создании каждый объект автоматически помещается на слой "Основной"

Мне необходимо все элементы чертежа (текст, прямые, узлы и т.д.) перенести на другой слой одним действием (например, через цикл), как это сделать?

 

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

(Работаю на C#, но буду рад примерам любого языка, т.к. они тоже могут помочь с решением проблемы :blink:)

 

 

cats-cute-face-closeup-cat-50mm-kitten-d

Ссылка на сообщение
Поделиться на других сайтах


UnPinned posts

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

Была ещё идея где нужен макрос, автоматическое создание развёрток с исполнений, но и на официальном форуме мне не чего толкового не ответили. 

По вашему тексту: что бы перенести всё элементы чертежа на другой слой, можно их выделить всё сразу и перенести, ну в новой 17-ой 2d бяке наверно придётся отдельно по видам прогуляться. Вообще не какой необходимости в макросе не вижу. Можно кстати и сразу всё делать в нужном слое просто переключив на него рабочий лист. 

Изменено пользователем Claus
Ссылка на сообщение
Поделиться на других сайтах
11 минут назад, Claus сказал:

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

Была ещё идея где нужен макрос, автоматическое создание развёрток с исполнений, но и на официальном форуме мне не чего толкового не ответили. 

По вашему тексту: что бы перенести всё элементы чертежа на другой слой, можно их выделить и перенести, ну в новой 17-ой 2d бяке наверно придётся отдельно по видам прогуляться. Вообще не какой необходимости в макросе не вижу. Можно кстати и сразу всё делать в нужном слое просто переключив на него рабочий лист. 

 

Макрос необходим для комплексного решения задачи, слои - один небольшой шаг)

Сначала решал задачу глубокой параметризацией, но T-Flex начинает вести себя неадекватно, когда связей добавляется слишком много: программа перестаёт качественно перестраивать чертёж из-за параллельного проведения операций :(

Ссылка на сообщение
Поделиться на других сайтах

Так в итоге нужно что?

Примеры есть в справке.

Макросы рекомендую писать в MS Visual Studio.

Ссылка на сообщение
Поделиться на других сайтах
9 часов назад, zobza сказал:

Так в итоге нужно что?

Примеры есть в справке.

Макросы рекомендую писать в MS Visual Studio.

Нужно перенести все объекты 2D-чертежа со слоя "Основной" на новый слой макросом

Ссылка на сообщение
Поделиться на других сайтах
14 часов назад, QuestioMen сказал:

Нужно перенести все объекты 2D-чертежа со слоя "Основной" на новый слой макросом

Какой бюджет?

 

Ну или смотрим в справку API :)

public static void SetLayer(Object ob)
{
    Document document = TFlex.Application.ActiveDocument;//Получение активного документа
    document.BeginChanges("");//Открытие блока изменений документа

    Layer l = new Layer(document);
    l.Monochrome = true;//Параметр слоя "одноцветный"
    l.Color = 12;//цвет

    ob.Layer = l;//установка слоя 

    document.EndChanges();//Закрытие блока изменений документа
}

 

Ссылка на сообщение
Поделиться на других сайтах

Как вариант: обратиться в профильную ветку https://tflex.ru/forum/index.php?PAGE_NAME=list&FID=14

Ссылка на сообщение
Поделиться на других сайтах
25.09.2023 в 02:04, QuestioMen сказал:

когда связей добавляется слишком много: программа перестаёт качественно перестраивать чертёж из-за параллельного проведения операций :(

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

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...