Ввести возможность применения сопряжений к элементам построений
31.08.2009 13:05:44
Навеяло сегоднешним походом к технологам.
Надо сделать механизм перемещения элементов (или узлов) на сборку вверх или в входящую сборку. Что бы было понятно попробую описать на примере. конструктора, при проектировании грузового вагона на его стенах сделали много ручек для подьёма, спуска человека внутрь вагона. Так как конструктора делают большие сборки, они, что бы им было легче эти ручки прицепили к стене боковой вагона, а потом уже из этих стен собрали вагон. в производстве не так, и технологам надо что был сначало вагон в сборе а потом к нему приваривают эти ручки. Т.е. местонахождение этих ручек не изменяется, но в одном случае они сидят в сборке на стенку, в другом случае в сборке на весь вагон. и часто конструктора, для своего облегчения собирают детальи к деталькам, узлы к узлам, а потом уже большие УЗЛЫ соединют и получается изделие. В цеху и технологам для технологических эскизов надо эту сборку, но в другой последовательности. Вагон1 - стена торцевая - ручки - стена боовая Вагон 2 - стена торцевая - ручки - стена боковая. |
|
|
|
01.09.2009 00:56:44
Это очень непросто из-за привязок. Например, Вы привязались к кромке или узлу, а в сборке более низкого уровня их нет. И перепривязать нельзя, потому что элементов, к которым вы привязывались, тоже нет. Словом, это тянет за собой такую цепочку, что потом не расхлебаешь. Поэтому я просто внимательно отслеживаю одновременно и конструкцию и технологию. Или пользуюсь советом Перфильева работать с узлами в контексте. Правда, тоже проблем много - надо внимательно следить за обновлениями, можешь в сборке изменение сделать, а в подсборку оно не попало, пока не нажал "Обновить деталь" Пару раз такое было - очень непритная штука, потому что вылезла уже в цеху. |
|||
|
|
02.09.2009 07:50:14
когда нет элементов к которым была привязка или идёт замена этих элементов, это конечно трудно, хотя и можно.
Я пока просто мечтаю о простом варианте, когда элементы есть. есть плоскость боковой стены. так она и в общей сборке так же останется плоскостью бокой стены, но фрагмента "Боковая стена в сборе", а к ней уж приложены ручки. т.е. перемещать фрагменты без изменения привязок, но из фрагмента на уровень выше или ниже. только сейчас обратил внимание, что пробелы мои в последнем сообщении пропали. отредактировать не могу. в общем: в Вагон1 ручки были в составе сборки Стена Торцевая. |
|
|
|
02.09.2009 22:04:56
Можно сделать внешнюю переменную в документе с боковой стенкой вагона и назначить эту переменную в поле "подавить" для всех ручек. Установить такое значение для этой переменной, чтоб все ручки стали "подавленные". В сборке, в которую эта стенка вставляется, назначить другое значение для этой переменной, чтоб ручки стали видны.
Кто ищет - тот всегда найдет!
|
|||
|
|
03.09.2009 07:58:17
с ручками я привёл просто простой пример.
с перемеными все замучаются. К примеру конструктора собрали раму вместе со всем тормозным механизмом, гидравлиой, автосцепным механизмом и уже всё это вместе вставили в сборку вагона. А технологам из всей это сборки на первом этапе нужна только одна рама, к ней крепяться стенки и т.п. а только потом устанавливается и тормозная система и на самом конце механизм автосцепки. При этом у технологов по теории не должно быть прав на изменение моделей конструкторов (все работают в DOCs). вот и получается, что сейчас они поа заново собирают свой вагон из готовых деталей но по своей последовательности. Теоретически можно указать конструкторам, что бы они видимость каждого фрагмента привязывали к внешней переменной. |
|
|
|
03.09.2009 13:43:01
А если в сборке 3D-детали расположить на разных слоях и у слоев установить переменные для видимости\невидимости?
Мне кажется, это будет удобнее, чем выставлять подобные переменные непосредственно для деталей. Кроме этого, у слоев есть такие параметры как "невидимый при вставке в сборку" или "видимый только при вставке в сборку". В некоторых случаях ихспользование таких слоев бывает очень удобно. |
|
|
|
03.09.2009 14:38:56
Да, решения реальные, хоть и несклько муторные.
Проблема в том, что в 3D сборка уже полностью спроектирована, и в ней пара тысяч деталей. заново открывать её и класть всё на свои слои и управлять видимостью никто не будет. Для новых разработок будем думать над вариантами решения, что бы предусмотреть такие ньюансы в будущем. |
|
|
|
03.09.2009 22:56:46
Osiris2000 прав. Через слои намного удобнее и проще. Выделили в дереве модели хоть тысячу деталей, кликнули пкм, выбрали "Свойства" и установили для всех выбранных объектов нужный слой. А уж переменную нужно назначить на конкретный слой.
P.S. Думаю, все другие варианты муторнее...
Кто ищет - тот всегда найдет!
|
|
|
|
03.09.2009 23:08:59
Изменено: |
|||
|
|
03.09.2009 23:13:35
Изменено: |
|||
|
|
04.09.2009 12:17:14
1-2 тыс. переменных меня не устраивает однозначно, хотя это вариант рабочий.
Для такой цели наверное лучше написать программку, которая пройдётся по всем деталям и сборкам и все привяжет к переменным, а переменным даст коментарии по названию и обозначению детали и номеру копии (если их несколько). Тогда будет одна сборка по вагон, и из неё я смогу получить хоть винтик крепления упора, хоть кузов. Только что бы работать с таким огромным кол. переменных надо перед собой список распечатанный иметь. что бы по нему ведя пальчиком ставить видимость в 1 или 0 по каждой позиции. |
|
|
|
04.09.2009 15:30:45
В принципе решаемо. Это наподобие нашей работы с авианосцем, только поменьше., т.е. ТПО Вагона (технологическое программное обеспечение). Смысл в том, чтобы не с распечатанными переменными работать, а с таблицами переменных, при этом все переменные раскидываются по системам (например, ходовая часть, питательная и тормозная магистрали, кузов, поглощающий аппарат с автосцепкой, детали). Выбирая нужную систему - открываете соответствующую таблицу - там узлы и детали по принципу спецификации. Вообщем, сводная спецификация в виде списка переменных или, если по-другому, интерактивный каталог на вагон. При этом данные можно также считывать не со списка переменных, а по щелчку мыши прямо на 3D модели. И на этот каталог можно навесить уйму вспомогательной информации для цехов и для потребителей. Сам проработал в депо 6 лет, знаю как тяжело найти в архиве чертеж или на складе какую-нибудь зап. часть. т.к. все как правило свалено в кучу и локомотивные, и вагонные, а в складской журнал кто-то внес, кто-то нет.
Более того, сборку можно в автомате раскидать на детали - прогнать через парасолид (уйти от лишней геометрии) и заново собрать также на автомате уже со всеми переменными и слоями. О подобных каталогах для тракторов и снегоочистителей на Севдормаше лет восемь назад мечтал его тогдашний главный конструктор.
Изменено: |
|
|
|
11.09.2009 12:36:27
Перенос значений в таблицу из внутренней базы данных. Предусмотреть возможность сохранения ввреденой вручную информации в столбцы, которые определены как пустые при обновлении информации из БД. Или предусмотреть возможность вставки информации из БД, начиная со столбца, в котором стоит курсор (что более корректно).
|
|
|
|
11.09.2009 15:40:58
Ладно, тут лучше продолжить про другие советы и пожелания к 12 версии.
А сообщения уточняющие по моему предложению лучше вынести в отдельную тему, дабы не превращать в кашу список пунктов которые мы хотим видеть в новой версии |
|
|
|
21.09.2009 11:54:01
Добавить операцию условия, позволяющую присваивать различные значения переменной в зависимости от выполнения одного из условий. Синтаксис может быть таким
(Усл1 ? значен1)(Усл2 ? значен2)...(УслN ? значенN) : Значен (при невыполнении ни одного из условий 1...N) |
|
|
|
21.09.2009 15:11:16
это уже есть и работает очень давно, с версии 6-ой вроде даже. просто синтаксис типа
a= b<10?0;(b<20?1;(b>30?3;2)) только CAD под рукой нет, поэтомму вместо точки с запятой может быть двоеточие или запятая, не помню |
|
|
|
21.09.2009 18:07:41
|
|||
|
|
21.09.2009 18:36:12
Mode != 3 ? 0 : (Mode == 3 && vAAR_ == 1 ? 0 : 1)
Это означает: <если переменная Mode не равна 3, то присваивается значение 0 иначе (если Mode равно 3 и vAAR_ равно 1, то 0 иначе 1)> Правильно так: a = b < 10 ? 0 : (b < 20 ? 1 : (b > 30 ? 3 : 2)) |
|
|
|
21.09.2009 18:57:04
Shinelev и Сергей Максимов. Спасибо за информацию. Тогда предложение то этому вопросу такое: привести подобный пример в справке.
|
||||
|
|
|||