Официальный форум российского программного комплекса T-FLEX PLM


Поиск  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Параметризация в Сборке.
 
Проблемма такая: Я использую t-flex учебная версия 8.0
У меня есть стол. Все его детали берут свои размеры из *.dbf базы данных. Все работает на ура. но когда я создаю сбоку, в ней размеры деталей не изменяются. Если выбрать "редактировать деталь" в сборке, ее размеры изменяются как в базе задано.
Почему так?

http://dump.ru/files/3/37136947915/
Страницы: Пред. 1 2
Ответы
 
Способов довольно много, но все они основаны на использовании переменных. Если звенья цепочки одинаковые, то самое простое - создать цепочку в виде массива, количество копий в котором в свою очередь задать при помощи внешней переменной. Из сборки этим значением можно управлять.
Если требуется понятие "исполнение", то тогда связать не с внешней, а с внутренней переменной, значение которой рассчитывать в зависимости от значения, управляющего "исполнением".

Можно также использовать переменную для управления видимостью любого элемента или его подавления.
 
Я извиняюсь за глупые вопросы TFUser, но не могли бы Вы мне по понятнее объяснить в чём отличие внешней переменной от внутренней и как создать переменную для управления видимостью элемента! :cry:

Заранее благодарен
 
Внешняя переменная видна в сборке, а внутренняя только в файле. Изменяя внешюю переменную в сборке можно изменять геометрию детали. При этом если необходимо синхронизировать размеры в файле и сборке, необходимо выполнить операцию деталировки из контекстного меню. Чтобы переменную сделать внешней достаточно поставить флажок напротив ее имени, но только в том случае, если переменная задана одним параметром, а не целым выражением. Данная проблема уже подробно обсуждалась на форуме - поищите по-внимательнее.
thhb_rxcpl.PNG (153.59 КБ)
 
Я для стыковки деталей давно пользуюсь внешней Базой Данных. Стал даже фанатом этого направления. Один щелчок - и все детали поменялись.
Только есть 2 минуса:
1. При большом количестве переменных из БД при одновременно открытом Экселле и Т-Флексе, последний начинает тупить. Медленно работает когда открыт редактор переменных.
2. ВСЕ фрагменты надо обновлять вручную. Т.е. открыть файл, обновить ссылки, сделать полный пересчёт и сохранить. Иначе при печати повылезает ТАКОЕ!!!
*Но искусство требует жертв. Меня это устраивает.
если бы не t-tlex...
 
Вот пример.
Поменял кое-что в БД по ссылке из Экселя.
На главной сборке выполнил «Обновить ссылки» и «полный пересчёт модели»
Это видим на экране и хотим распечатать.
01.jpg (161.41 КБ)
если бы не t-tlex...
 
Это видим на напечатанном листе.
02.jpg (135.47 КБ)
если бы не t-tlex...
 
Хотя при выводе на печать никаких «левых» болтов и гаек нет.
03.jpg (137.33 КБ)
если бы не t-tlex...
 
Но если ставим в свойствах всех фрагментов «Всегда пересчитывать 3д модель», тогда этот финт спасает. Даже если нет ни одной 3д модели. Даже если на эти пересчёты тратится дополнительное время
если бы не t-tlex...
 
Предлагю всем желающим поиграть в увлекательную игру "Угадай положение грани". Игрушку делаем так: создаем кубик (для удобства грани нумеруем). В свойствах кубика на вкладке "преобразование" создаем повроты вокруг осей X, Y и Z. Ставим в соответствие этим значениям переменные X, Y и Z. Для удобства игры в редакторе переменных создаем списки значений углов 0, 90,180,270,360. Начало игры такое: через редактор устанавливаем Z=90 и нажимаем ОК. Смотрим, как повернулся кубик относительно системы координат. Далее через редактор устанавливаем X=90 и, не нажимая ОК, предполагаем, как повернется кубик. После этого нажимаем ОК и смотрим, удалось ли угадать. Потом устанавливаем какое-нибудь другое значение одного из углов и опять пытаемся угадать положение кубика. Верхний уровень - понять, по какому алгоритму это происходит.

Если кто поймет, напишите. Может у меня глюк какой. ~~:-
K.jpg (31.66 КБ)
 
Я поиграл. Всё работает верно.
Вы заметили, что углы добавляются не одновременно, а по очереди? Это важно. И применяются они по очереди. Сначала тот поворот, который добавлен первым, потом второй, потом третий.
Вы добавили 3 поворота. Соответственно, сначала делается поворот относительно X. Потом, от результирующего положения - относительно Y. Результат поворачивается относительно Z. Если поворачивать одновременно на 3 угла, как Вы делаете, то действительно, трудно сразу представить результат. Но можно. Именно потому, что поворот идёт не одновременно, а последовательно. Причём разная последовательность добавления углов даёт, естественно, разный результат.

Остался вопрос. А зачем Вам это?
Если просто поиграть, то игрушка занятная.
 
В общем виде задача такая: поворачивать фрагмент на заданный угол вокруг одной из осей. На одном из форумов был вопрос "а слабо сделать в 3D CAD игрушку кубик Рубика"? Решил для интереса сделать (исключительно на редакторе переменных и элементе управления, без макросов) и наткнулся на эту проблему. Но думаю, что эта задача может иметь и практическое применение. А может зародится новое направление - CAD-игрушки.

Теперь по существу вопроса. Я тоже предположил, что при изменении одной из переменных положение фрагмента пересчитывается по всем переменным и тогда достаточно будет ввести обратный доворот по тем осям, вокруг которых поворот не требутся. Но выяснилось, что это не так. Рассмотрим пример, который я привел. На верхней картинке состояние X=0, Y=0, Z=90.
При повороте из этого состояния только вокруг X на 90 должно быть: грань 6 на месте, грань 3 вверху, грань 2 слева. Реально получилось то, что на средней картинке. Если предположить, что после поворота вокруг X еще раз происходит поворот вокруг Z на 90 (что идеологически не есть верно т.к. я меняю только переменную X), то для достижения нужного мне результата достаточно выполнить обратный поворот вокруг Z на величину -Z (т.е. на -90 или 270). Но выясняется. что надо еще выполнить такой же доворот вокруг оcи Y (Что вообще непонятно т.к. Y=0). Это видно на третьей картинке.

Если же из исходного состояния X=0,Y=90,Z=180 задать X=90, то получить положение, соответствующее повороту только вокруг оси X обратными доворотами по Y и по Z у меня не получилось (надо Y=270 и z=90 и именно в такой последовательности).

Если же из исходного состояния X=0,Y=0,Z=0 изменять значения X, затем значения Y, а затем значения Z, то повороты выполняются строго вокруг соответствующих осей. Это наводит на мысль о том, что отрабатываются
не все переменные списка, а только те, которые стоят после изменяемой переменной.

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

Хочу обратить внимание на то, что преобразования выполнялись путем изменения значения только одной переменной за раз. Т.е. изменили значение X в редакторе переменных - нажали ОК. Снова вошли в редактор переменных, изменили значение Y - нажали ОК и т.д.
Ku.jpg (133.32 КБ)
 
Люди, может кто-нибудь грамотно ответить: почему при выводе на печать печатается совсем другое?
если бы не t-tlex...
 
Цитата
Buzzard_s пишет:

Люди, может кто-нибудь грамотно ответить: почему при выводе на печать печатается совсем другое?
А подробнее...? Вы перед отправкой на печать просмотр включаете?
Еще проверьте настройку принтера, лет 5 назад у менря была подобная проблема, но после того как админ покопался с сетевыми настройками принтера - все заработало. У некоторых принтеров есть свой сетевой установщик, он назначает IP-адрес принтеру.
 
Подробно:
На компьютере, чей плоттер я использую для печати, не установлен t-flex. Поэтому я перевожу чертежи в формат pdf (Adobe) или tif (Microsoft Office Document Image Writer), записываю на съёмный диск и несу на печать.
Просмотр перед печатью я включаю всегда.
Вобщем-то, делаю всё правильно.
Тут нет разницы - виртуальный это принтер или реальный. На реальном XEROX, который подключен напрямую к моему компьютеру, всё так же.
*************
Есть некоторые хитрости, которые я использую для правильной печати. Но это лишь хитрости, то бишь, извращения плюс убитое время. T-flex сам должен правильно работать.
если бы не t-tlex...
 
Цитата
Buzzard_s пишет:

почему при выводе на печать печатается совсем другое?
А скриншоты можно?
Страницы: Пред. 1 2