К22. Контекстная связь - как с ней работать?

Автор СВ, 10.06.24, 16:11:47

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

СВ

#20
Цитата: max_tlt от 27.08.24, 11:40:31...Просто теперь, появилась индикация в дереве сборки об этой связи и некоторые возможности при работе с ней, соответственно новые правила и проблемы

Вот о их использовании, по максимуму, и поговорим. Как, зачем, насколько улучшается жизнь и пр.? Разумеется, ни в коем случае не пропускаем что нельзя делать и прочие недостатки .

Сергей К

Могу описать с точки зрения конструкторского отдела. Нельзя использовать контекстные связи, каждый объект, на который будет выпущена КД должен быть самодостаточен и не зависеть от внешних связей, т.к. с ним потом могут работать разные конструктора и применять эту ДСЕ в другом месте, без той ДСЕ, к элементам которой была сделана связь, ведь только разработчик может знать зачем он их применял. Разве что использовать их на этапе эскизного проекта для общей компоновки с последующим удалением всех этих связей.
А вот если вы делаете что-то сами одни, то для гибкости редактирования всего и вся, конечно, эти связи очень сильно облегчат вам жизнь

Валерий Изранов

Цитата: Сергей К от 16.11.24, 09:12:48каждый объект, на который будет выпущена КД должен быть самодостаточен и не зависеть от внешних связей,
Сергей К, если перевести ваши слова на русский язык, то вы предлагаете
чтобы Сборка и все ее компоненты находились в одной папке.
Лозунг очень хороший и правильный.
Но он останется лозунгом, потому что Компас не умеет копировать Сборки из одной папки в другую.

Сергей К

Цитата: Валерий Изранов от 16.11.24, 09:32:55Сергей К, если перевести ваши слова на русский язык, то вы предлагаете
чтобы Сборка и все ее компоненты находились в одной папке.
Лозунг очень хороший и правильный.
Но он останется лозунгом, потому что Компас не умеет копировать Сборки из одной папки в другую.


Нет, я этого не предлагал, но работа в Лоцмане предполагает использование специально созданного им диска без создания папок и вложений и при взятии объектов в работу все они выгружаются на этот диск, при чём, те, которые в состоянии проектирования с возможность их изменять, а утверждённые выгружаются с атрибутом "только для чтения"

Валерий Изранов

Цитата: СВ от 10.06.24, 16:11:47После К20 получили К22
Автор создал тему про Компас. Давайте разберемся с Компасом, а потом дойдем и до Лоцмана.

Сергей К

Цитата: Валерий Изранов от 16.11.24, 09:54:23Автор создал тему про Компас. Давайте разберемся с Компасом, а потом дойдем и до Лоцмана.

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

lavgirb

Цитата: Сергей К от 16.11.24, 09:12:48Могу описать с точки зрения конструкторского отдела. Нельзя использовать контекстные связи, каждый объект, на который будет выпущена КД должен быть самодостаточен и не зависеть от внешних связей
Здесь нет общих правил. Часто принимаемые решения зависят от разных причин.
Если есть корпус сложной формы и крышка сложной формы, то контекстные связи сильно экономят время, которого всегда не хватает.
При внесении изменений в КД на корпус при отсутствии контекстных связей (на удаление которых тоже тратится время) придется их восстанавливать в крышке или править крышку по размерам, что может приводить к ошибкам.

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

Сергей К

Цитата: lavgirb от 16.11.24, 12:57:50Здесь нет общих правил. Часто принимаемые решения зависят от разных причин.
Если есть корпус сложной формы и крышка сложной формы, то контекстные связи сильно экономят время, которого всегда не хватает.
При внесении изменений в КД на корпус при отсутствии контекстных связей (на удаление которых тоже тратится время) придется их восстанавливать в крышке или править крышку по размерам, что может приводить к ошибкам.

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

При проведении извещения об изменении никто не будет заходить во все 3D-модели и искать там некие связи. В Лоцмане есть возможность просмотра входимости объекта ДСЕ или объекта "3D-модель", но не эскизов, входящих в эти 3D-модели. И может возникнуть ситуация, что необходимо будет изменить 3D-модель ДСЕ, которая использовалась для построения эскиза, например, вместо отверстий сделать пазы, и тогда не изменяемая в рамках этого извещения 3D-модель может в данном примере потерять точки центров отверстий, т.к. теперь там не отверстия, а пазы. И таких ситуаций можно придумать огромное количество

lavgirb

Цитата: Сергей К от 16.11.24, 20:14:11При проведении извещения об изменении никто не будет заходить во все 3D-модели и искать там некие связи. В Лоцмане есть возможность просмотра входимости объекта ДСЕ или объекта "3D-модель", но не эскизов, входящих в эти 3D-модели. И может возникнуть ситуация, что необходимо будет изменить 3D-модель ДСЕ, которая использовалась для построения эскиза, например, вместо отверстий сделать пазы, и тогда не изменяемая в рамках этого извещения 3D-модель может в данном примере потерять точки центров отверстий, т.к. теперь там не отверстия, а пазы. И таких ситуаций можно придумать огромное количество
Вообще-то заимствованная модель это не разные модели, а одна и та же.
Если вы вносите в нее изменения, то должны посмотреть, где она применяется и принимать решение об изменении в соответствии с этим.
Может быть контекстные связи, убитые или не убитые, не играют здесь решающей роли.

Сергей К

Цитата: lavgirb от 16.11.24, 20:39:17Вообще-то заимствованная модель это не разные модели, а одна и та же.
Если вы вносите в нее изменения, то должны посмотреть, где она применяется и принимать решение об изменении в соответствии с этим.
Может быть контекстные связи, убитые или не убитые, не играют здесь решающей роли.


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

beginner

Приветствую.

Помогите пожалуйста разобраться с проблемой (аналогичной как и у ТС)

Есть сборка, в которой существует трёхмерный каркас.
По этому каркасу построены тела (элемент по траектории).
Эти тела преобразованы в детали (с сохранением истории построения). На этой стадии в сборке появились контекстные связи.
В завершение все вновь появившиеся детали (имеющие контекстные связи с каркасом) компоную (совместно с другими компонентами) в подсборки.
Вроде бы всё прекрасно получается. Ошибок нет.

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

Существует ли какой-то ПРАВИЛЬНЫЙ алгоритм, при котором не будут ломаться контекстные связи?

Soultaker

Цитата: beginner от 07.10.25, 13:59:37Существует ли какой-то ПРАВИЛЬНЫЙ алгоритм, при котором не будут ломаться контекстные связи?
Я думал об этом должны разработчики думать, а не пользователи. Но алгоритма нет.

beginner

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

СВ

Цитата: beginner от 07.10.25, 13:59:37Есть сборка, в которой существует трёхмерный каркас.
По этому каркасу построены тела (элемент по траектории). ...
Но стоит мне закрыть сборку и открыть её заново, как появляются ошибки с этими контекстными связями. Причём ошибки не у всех деталей, а только у части. ...
Существует ли какой-то ПРАВИЛЬНЫЙ алгоритм, при котором не будут ломаться контекстные связи?
Думается, лучше не рассуждать умозрительно, а рассматривать конкретно. Может быть пришлёте Сборку с глюками, с минимумом деталей?
Ситуация, полагаю, происходит на локальном компьютере?
-----
И пару слов об алгоритме вашем: - Почему именно такой?
Так понимаю, вы создаёте что-то вроде 3Д-"прорисовки", в которой берёте полученные ТЕЛА и превращаете их в Детали. А если сразу в Сборке делать ДЕТАЛИ - глючит?

beginner

Сергей Васильевич, приветствую. Ждал появления "зачинщика" этого обсуждения  ::)

У меня есть агрегат, в котором присутствует гидравлическая система.
Чтобы было удобно прокинуть все гидравлические трубки, я создал внутри сборки "Гидравлическая система" трёхмерный каркас. Ну а всё остальное я уже описал выше.

Полагал, что так будет быстрее. К тому же мне ОБЯЗАТЕЛЬНО нужна была ассоциативность отдельных трубок гидравлических с общей их разводкой в виде пространственных кривых, построенных с помощью трёхмерного каркаса. Изменил каркас и трубки все перестроились.
Так мне удобно видеть всю ситуацию в целом.

Но получилась хрень. Часть трубок теряют эту ассоциативность, названную Контекстной связью.

СВ

#35
 Начинаю припоминать, Вадим Сергеевич (но не на 100%).
Именно преобразование в Деталь создавало "поломку". Приходилось в детали создавать ссылку на размеры в каркасе из Сборки. В общем, как-то неэкономично получалось, из хорошей затеи.

beginner

Цитата: СВ от 07.10.25, 16:38:27Именно преобразование в Деталь создавало "поломку".
Интересно то, что не все трубки полученные преобразованием из тел, при открытии сборки (сегодня утром) оказались "сломаны". Лишь одна.
А вчера ДВЕ. Это была первая версия... я её потом удалил, решив сделать всё заново.

В общем придётся искать какую-то скрытую закономерность (которую разрабы не просто не описали, а о которой они даже и не знают...)
Буду искать "костыли" ... но к этому я уже привык  :-)))

Греков О

Цитата: beginner от 07.10.25, 16:26:41нужна была ассоциативность отдельных трубок гидравлических с общей их разводкой в виде пространственных кривых, построенных с помощью трёхмерного каркаса
Да, в этом что то есть.

beginner

#38
С радостью сообщаю, что ПОЛУЧИЛОСЬ ПОБЕДИТЬ этот недуг с отваливающейся Контекстной связью. Возможно это лишь частный случай и мою методику не получится применить ко всем случаям с отвалившейся по непонятным причинам контекстной связью. Возможно в более свежих версиях вообще такой проблемы не обнаружится (как-нибудь поэкспериментирую).
ДелюсЪ

После преобразования тела в деталь (с сохранением истории построения) появляются контекстные связи и, к сожалению, поломатые эскизы и выдавливание по траектории. Приходится чинить это сразу.
Далее полученную деталь (и некоторые нужные для меня фитинги) объединяю в подсборку. Компас на данный момент не ругается ни на что. Но мы то знаем уже, что закрыв сборку и открыв её вновь, получу неработающие контекстные связи (в последний раз вообще все сломались). На этом этапе удаляю все контекстные связи в сборке. В деталях (трубках) все эти связи всё равно остаются на всех операциях - я их даже и удалить не могу при желании (логика для меня совсем не понятная, но да ладно... мне это не мешает)
В заключении, находясь в сборке (там где у меня трёхмерный каркас) захожу в редактирование операции выдавливания по траектории для каждой трубки и заново указываю траекторию. Контекстная связь вновь появляется. НО! теперь уже не ломается.
Теперь могу перестраивать каркас как мне угодно и все трубки прекрасно перестраиваются.

p.s. Возможно, этот "костыль" пришлось изобрести по причине моей неопытности (отсутствии знаний об особенностях построений и преобразований). Но по крайней мере работает.
+ Благодарностей: 2

СВ

#39
 Удивлён, Вадим Сергеевич, как вы догадались пойти по этому пути. Наверное, есть в вас подсознательное понимание логики работы АСКОНовских программистов.
- - -
Поясните вот это место:
Цитата: beginner от 08.10.25, 10:53:32После преобразования тела в деталь (с сохранением истории построения) появляются контекстные связи и, к сожалению, поломатые эскизы и выдавливание по траектории. Приходится чинить это сразу.
Далее полученную деталь (и некоторые нужные для меня фитинги) объединяю в подсборку.
Т.е. полученные в головной Сборке с помощью каркаса Детали вы вновь пересобираете в ОТДЕЛЬНОЙ Сборке? Как именно собираете - по сопряжениям, координатам, в контексте головной сборки,  ...?