Форум пользователей ПО АСКОН

Профессиональные вопросы => Конструирование => Тема начата: SАМbо от 29.03.05, 17:13:24

Название: Логические операции в 6-7 версиях
Отправлено: SАМbо от 29.03.05, 17:13:24
Расскажите поп подробней про эти опреации (напоминаю ==; !=; !; && и т.д), а то из мануала мало что понятно.  Может пример кто приведёт.
Задача сделать следующее. Есть модель (3Д) размеры и форма которой состоят из переменных. Надо создать "механизм" если - то. (если размер а равен 1, то b и с равны 34 и f равен 42). При этом по возможности вложенный (то есть - если а не равно 1, то если а равно 2 то,  и так далее)
Это вообще осуществимо с помощью формул связующих переменные или это с языком программирования связываться надо?
Название: Re:Логические операции в 6-7 версиях
Отправлено: Пол Незарег от 30.03.05, 09:58:14
ЦитироватьЗадача сделать следующее. Есть модель (3Д) размеры и форма которой состоят из переменных. Надо создать "механизм" если - то. (если размер а равен 1, то b и с равны 34 и f равен 42). При этом по возможности вложенный (то есть - если а не равно 1, то если а равно 2 то,  и так далее)
а если а не равно 1, то чему равны b и f?
Название: Re:Логические операции в 6-7 версиях
Отправлено: Slаviаtiоn от 30.03.05, 16:18:28
Наверно так:
b=a==1?34:a==2?35:a==3?36:0
Перевод на русский :)
если a равно 1, то b равно 34, иначе, если a равно 2, то b равно 35, иначе, если a равно 3, то b равно 36, иначе b равно 0.

аналогично для с и f:
c=a==1?34:a==2?35:a==3?36:0
f=a==1?42:a==2?43:a==3?44:0

Пиши это на вкладке "Уравнения" панели "Переменные".
Название: Re:Логические операции в 6-7 версиях
Отправлено: Sаmbо от 30.03.05, 21:42:49
Спасибо! Я уж думал, решения нет. Пойду попробую.
Название: Re:Логические операции в 6-7 версиях
Отправлено: Sаmbо от 30.03.05, 21:59:16
Сделал проверку в 7+. Создал 2 отрезка а и b. В "параметрике" (формулах) написал вот это -> a=b==1?1:b==2?2:b==3?3:30 (по русски если b = 1, то а = 1, если 2 то 2, если 3 то 3 иначе а = 30) Сталю b = 1, а меняется на 3, ставлю b = 2 и 3, а всё равно 3, ставлю b = 4, а становиться 30.  Вот, где ошибка?
Название: Re:Логические операции в 6-7 версиях
Отправлено: Slаviаtiоn от 31.03.05, 08:32:56
Беру тайм-аут ...
Название: Re:Логические операции в 6-7 версиях
Отправлено: Slаviаtiоn от 31.03.05, 12:52:40
With a Little Help From My Friends :)
a=(b==1?1:(b==2?2:(b==3?3:30)))
Название: Re:Логические операции в 6-7 версиях
Отправлено: sаmbо от 31.03.05, 19:36:27
Заработало!!! Большое спасибо!

P.S. Хэлперы! (те кто хэлпы для компаса делает) Думаю, надо этот механизм как-нибудь там (в хэлпе) отразить.