• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

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

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

Опять о внешних переменных

Автор Дим, 07.11.07, 13:55:34

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

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

Дим

"Внешние переменные" конечно удобная функция, но почему нельзя сделать чтобы "внешняя переменная" меняла размеры деталей на только в файле сборки но и в файле детали?
Сейчас я использую "внешние переменные" только в двух случаях, когда деталь без чертежная(в специф. пишу материал и изменяемый размер детали) и когда нужна обработка в сборке.
Хотя простые переменные использую часто.

Предлагаю! при создании "внешней переменной" ввести дополнительную команду, например такую - "Передавать изменения в исходную деталь?"

Ole

07.11.07, 20:45:06 #1 Последнее редактирование: 07.11.07, 21:29:17 от Ole
А разве с помощью ссылок нельзя решить вашу проблему?

Дим

Цитата: Ole от 07.11.07, 20:45:06
А разве с помощью ссылок нельзя решить вашу проблему?
Мало ли что в описании написано, пробовал я так!
Если делаю ссылку "внешней переменной" из сборки в деталь, то поставить в сборке значение "внешней переменной" невозможно!!! Можно редактировать только из детали! Зачем тогда она нужна???

А если делать ссылку из детали на сборку, на значке сборки появляется знак ошибки, и в описании ошибки пишет =попытка переопределить выходные параметры=
А если изменить в сборке внешнюю переменную появляется окошко с сообщением =система переопределена  - хотя все работает, но с ошибкой!.

Хотя,.. может быть кто то знает как все это должно работать?

POMAH

Цитата: Дим от 08.11.07, 06:43:44
Если делаю ссылку "внешней переменной" из сборки в деталь, то поставить в сборке значение "внешней переменной" невозможно!!! Можно редактировать только из детали! Зачем тогда она нужна???
Все неправильно! :o:
Вот рабочий вариант: задаете переменную (-ые) в сборке, а в детали делаете ссылку на нее (них) - случай, когда необходимо перестроение детали из сборки, ссылаясь на переменные.
А внешние переменные я применяю для деталей, которые в сборке присутствуют с разными параметрами, но хочется иметь один файл такой детали. Так вот статус "Внешняя" дает возможность задавать любое значение такой переменной в сборке, не изменяя саму деталь.
Еще случай: когда есть необходимость в таблице переменных, читается с внешних переменных. Я использовал для предопределенного задания значений некоторых переменных (внешних) в сборке. На них можно ссылаться в деталях.

Цитата: Дим от 08.11.07, 06:43:44
А если делать ссылку из детали на сборку, на значке сборки появляется знак ошибки, и в описании ошибки пишет =попытка переопределить выходные параметры=
А если изменить в сборке внешнюю переменную появляется окошко с сообщением =система переопределена  - хотя все работает, но с ошибкой!.
А здесь правильно, скорее с математикой туговато. Смотрите внимательно по ограничениям, которые задаете, их можно наложить более, чем надо. В переопределенной системе КОМПАС будет ругаться - это логично!

Дим

Хорошо! если все так просто хотелось бы увидеть примерчик!

А вот это мы говорим об одних и тех же вещах.
Цитата: POMAH от 08.11.07, 07:40:05
А внешние переменные я применяю для деталей, которые в сборке присутствуют с разными параметрами, но хочется иметь один файл такой детали. Так вот статус "Внешняя" дает возможность задавать любое значение такой переменной в сборке, не изменяя саму деталь.

Цитата: Дим от 07.11.07, 13:55:34

Сейчас я использую "внешние переменные" только в двух случаях, когда деталь без чертежная(в специф. пишу материал и изменяемый размер детали) и когда нужна обработка в сборке.



А насчет логики и математики
Цитата: POMAH от 08.11.07, 07:40:05
А здесь правильно, скорее с математикой туговато. Смотрите внимательно по ограничениям, которые задаете, их можно наложить более, чем надо. В переопределенной системе КОМПАС будет ругаться - это логично!

У меня получается такая штука см. рис.
где тут ошибка? Ссылки сделаны из деталей в сборку!

POMAH

08.11.07, 13:19:10 #5 Последнее редактирование: 08.11.07, 13:24:19 от POMAH
На сколько я понял скрин:
У вас одна и таже переменная в разных деталях...
Может быть одно значение является информационным, точно нельзя сказать без файла модели!!! :o:

Дим

Цитата: POMAH от 08.11.07, 13:19:10
На сколько я понял скрин:
У вас одна и таже переменная в разных деталях...
Может быть одно значение является информационным, точно нельзя сказать без файла модели!!! :o:

Нет никакой разницы одинаковые имена переменных или разные! И никаких информационных значений!!! Я как только на пробовал!
Всегда одно и тоже.

Все таки, я считаю так намного проще!
Цитата: Дим от 07.11.07, 13:55:34

Предлагаю! при создании "внешней переменной" ввести дополнительную команду, например такую - "Передавать изменения в исходную деталь?"



engenius

Скиньте свою сборку. Вот перестроил простой пример со внешними переменными. Вроде все адекватно работает....
Может конечно проблема в отсутствии SP1 ?

dana

Да действительно существуют проблемы

vi

Для Дим. В Вашем случае есть, как обычно, два выхода :).
1. Убираете у переменных d в деталях статус внешняя - они ведь все равно меняются через ссылки из сборки.
2. Если все же хотите видеть эти переменные в сборке, добавтье им статус Информационная.

Ole

09.11.07, 19:52:45 #10 Последнее редактирование: 09.11.07, 20:01:19 от Ole
Ссылку нужно делать Деталь1-Деталь2 (v6=v25). Внешние переменные удалить. Нельзя одновременно связывать параметры и через ссылки и через внешние переменные, в этом ошибка.

Все работает.
Проверка:
Кликнем в сборке любую грань Детали1, выбираем Редактировать эскиз, вводим новое значение Диаметра (не слишком большое, чтобы отверстие поместилось на бруске) , ОК-ОК-ОК новое значение  Диаметра будет передано в Деталь2 по ссылке.
Если выбрать по-ошибке Деталь2 программа подскажет, что нужно изменять размер через Деталь1.

:-)))

Дим

О! сколько откликов.
Или я что-то не так объяснил, или вы меня не правильно поняли, или возможно ссылки через *.zip файлы не передались!
еще раз повторюсь
Цитата: Дим от 07.11.07, 13:55:34
"Внешние переменные" конечно удобная функция, но почему нельзя сделать чтобы "внешняя переменная" меняла размеры деталей на только в файле сборки но и в файле детали?
Опишу весь процесс:
1. Создаю внешние переменные в деталях:
2. Связываю их в сборке; (В сборке переменные работают! "меняют размеры деталей" но в сами детали изменения не передаются!);
3. Делаю ссылки - от переменных дет. к переменной в сборке (правой кнопкой мышки клик на переменную - ссылка - файл сборки - переменная - ок)
4. Меняю значение переменной в сборке - изменение передается в детали, но! в сборке зависает знак ошибки! (Система переопределена!)

Что это? глюк программы? или ошибка создания связей?

POMAH

То есть вы назначили одновременно внешние переменные и тут же ссылки???  :o:

Дим


Дим

Вы говоряте что все работает как надо, но нужного алгоритма так никто и не показал! Я препробовал много вариантов но результат всегда один, с некоторыми вариациями.

AVas

Пробовали сделать, как вам предлагали в ответе #9?

Дим

Цитата: AVas от 12.11.07, 09:29:00
Пробовали сделать, как вам предлагали в ответе #9?
А вы сами пробовали?
1. Как из сборки можно изменить размер детали если у детали нет внешней переменной?
2. Как можно изменить значение переменной если она информационная?

Дим

Вот мой пример! Что не правильно?
Не знаю передаются ссылки или нет!

POMAH

Короче, если вам надо, чтобы деталь менялась со сборки, необходимо задать переменные в сборке (которые следует менять), а в деталях делать ссылки на них... И всё!!!  >:(
Не надо задавать переменные внешними (это другая ситуация!)  :um:

Дим

У-у-у-у! Наконец то, все гораздо проще оказалось. Разобрался.
Все получилось!
Спасибо!