Однако если Вы добавляете к конструкции Pro/PROGRAM условные переменные, которые изменены создаваемыми позже конструктивными элементами, система выдаёт сообщение об ошибке, что конструкция теперь несостоятельна.
Другие типы переменных для IF
Все типы переменных могут быть включены в
IF. Обратите внимание, что значения строк должны заключаться в кавычки.Для строк:
IF MATERIAL == "STEEL"
d2=10
ENDIF
Для YES_NO:
IF DRAFT==YES
d25=5
ENDIF
Замещение компонентов в сборке
Вы можете настроить программу для замещения одного компонента сборки на другой взаимозаменяемый компонент. Взаимозаменяемость установлена, используя группы чередования, членов той же самой таблиц семейства или декларации сборочной компоновки. Компоненты должны быть взаимозаменяемыми, иначе замены не произойдет, и будут приняты предыдущие установки.
Вы можете настроить программу, которая чередует компоненты с помощью INPUT или RELATION. Когда конструктивный элемент параметра принадлежит сборке или другому компоненту, оператор ADD COMPONENT или зависимость должны включать ID компонента.
Формат для сборки зависимостей следующий:
XYZ = <parameter_name>:fid_<feature_name>:<comp_id>
Или
XYZ = <parameter_name>:fid_<N>:<comp_id>
Где <comp_id> - ID компонента в сборке. Чтобы определить ID компонента (<comp_id>) в режиме Assembly, выберите Component Id из меню RELATIONS, затем воспользуйтесь опцией Query Select чтобы выбрать соответствующий компонент.
Программатический взаимообмен компонентов
1. Включите переменную строку оператора INPUT в сборочную конструкцию.
Например:
INPUT
fastener_name STRING
"Enter name of fastener to be used in cam:"
END INPUT
2. В связанном утверждении ADD установите имя переменной строки в круглые скобки.
Например, чтобы добавить деталь к сборке:
ADD PART (fastener_name)
...
END ADD
Или для взаимообмена детали с названием WASHER в сборке, используйте ADD COMPONENT, придерживаясь следующего формата:
ADD COMPONENT (название файла с расширением или переменная)
COMPONENT ID <Id компонента>
Например:
ADD COMPONENT washer.prt
COMPONENT ID 4
...
END ADD
Чередование компонентов с помощью зависимостей
1. В операторе INPUT включается переменная YES_NO.
Например:
INCL_CRANK YES_NO
2. Добавить оператор IF_ELSE в RELATIONS.
Например:
RELATIONS
IF (INCL_CRANK == YES)
PART_NAME = "CRANK"
ELSE
PART_NAME = "SHAFT"
ENDIF
END RELATIONS
Оператор ADD включает переменную, определённую оператором ADD (он заключён в скобки).
Например:
ADD PART (PART_NAME)
...
END ADD
Замещение управляемых таблицей членов семейства
Вы можете автоматически замещать управляемые таблицей компоненты, согласно расчетным критериям используя функцию lookup_inst. С помощью этой функции, Вы можете найти компонент таблицы семейства, чтобы найти пример, который удовлетворяет параметрам поиска. Если функция lookup не даёт результатов поиска, она возвращает название основной (исходной) детали. Формат для lookup_inst следующий:
lookup_inst ("generic_name", match_mode, Тparam_name_1У, match_value_1, Тparam_name_2У, match_value_2,...)
Где
generic name — Название файла исходной модели с расширением .prt или .asm
match_mode — Одно из следующих значений:
–1 (найти ближайший пример с величинами параметра меньшими или равными заданным величинам)
0 (найдите пример с величинами параметра, которые точно совпадают с заданными величинами)
1 (найдите ближайший пример с величинами параметра большими или равными заданным величинам)
param_name_1 – Название параметра таблицы семейства
match_value_1 – Совпадение значений
Пример: Замещение управляемых таблицей компонентов семейства
Данная сборка состоит из блока и стержня, поместите в сборку компонент, который сочетается диаметром отверстия в блоке.
inst_name = объявленный параметр строки, инициализированный в названии исходной детали
generic_name = peg.prt. Эта деталь содержит много членов семейства базирующихся на размерах диаметра (d) и длины (d1). Таблица семейства с названием peg.prt включает:
2 x 4 - d0 = 2, d1 = 4
2 x 5 - d0 = 2, d1 = 5
2 x 6 - d0 = 2, d1 = 6
3 x 4 - d0 = 3, d1 = 4
3 x 5 ............
3 x 6 ............
Добавьте зависимость к управлению, в котором peg.prt добавляется к сборке, управляемой размерами конструктивного элемента в block.prt. Зависимость следующая:
inst_name = lookup_inst ("peg.prt", 0 , "d2", d6:0, "d1", d5:0 +1)
Таким образом, член семейства peg.prt будет собран в blockpeg.asm основываясь на размере отверстия в block.prt. Листинг Pro/PROGRAM может в данном случае выглядеть так:
INPUT
END INPUT
RELATIONS
INST_NAME = LOOKUP_INST ("PEG.PRT", 0, "D2", D6:0, "D1", D5:0 + 1)
END RELATIONS
ADD PART BLOCK
INTERNAL COMPONENT ID 1
END ADD
ADD PART (INST_NAME)
INTERNAL COMPONENT ID 2
PARENTS = 1 (#1)
END ADD
MASSPROP
END MASSPROP
Замещения определённых пользователем конструктивных элементов
Вы можете также программатически осуществлять взаимообмен пользовательских конструктивных элементов используя оператор CHOOSE:
CHOOSE (<название переменной>)
где <название переменной> - имя переменной строки которая содержит ID группы, которая должна быть установлена. Все доступные ID могут быть обнаружены в операторе ADD, лидирующем в настоящее время в активной группе листинга Pro/PROGRAM.
Пример: Замещение пользовательских конструктивных элементов
INPUT
GROUP STRING
"ENTER GROUP TO PLACE 300/352/409"
END INPUT
CHOOSE (GROUP)
Notes:
Используя оператор CHOOSE, Вы можете вручную замешать члены таблицы семейства группы или замещать одну группу на другую группу.
Оператор CHOOSE не может быть включен в условные операторы.
Лидер группы оператор ADD мог бы выглядеть так:
ADD FEATURE (initial number 4)
INTERNAL FEATURE ID 300
PARENTS = 33(#1)
TYPE = PROTRUSION
FORM = EXTRUDED
SECTION NAME = S2D0002
DEPTH = FROM SKETCH TO BLIND
FEATURE’S DIMENSIONS:
d44 (d23) = 2.00
d45 (d24) = 1.00
d46 (d25) = 1.00
d47 (d26) = 2.00
d48 (d27) = 1.00
MEMBER OF A GROUP, NAME = RECT
LEADING FEATURE OF THE GROUP: ID = 303
LAST FEATURE OF THE GROUP: ID = 303
GROUP IS REPLACEABLE BY FEATURES ID (NAME):
409(round) and 352 (circular)
END ADD
Операторы EXECUTE
Использование операторов EXECUTE в листинге сборки
Операторы EXECUTE применяется только в листинге сборки. Они обеспечивают связь между входными переменными в сборке и вводят переменные для программ в деталях и в узлах, чтобы создать сборку. Операторы EXECUTE следуют следующей последовательности:
EXECUTE {PART} название переменной
{ASSY}
входная переменная проекта в следующем низшем уровне
= выражениевходная переменная.....
END EXECUTE
Подобно оператору ADD, оператор EXECUTE может использоваться в формате EXECUTE COMPONENT во взаимозаменяемых деталях и сборках. Определяя компонент, убедитесь, что используется правильное расширение (.prt или .asm).
Note:
Когда запускается программа, каждая деталь может быть выполнена (каждая деталь может получить переменные величины через оператор EXECUTE) только единожды. Избегайте включения противоречивых инструкций.Передача Входных Величин от Сборки Верхнего уровня
Входные переменные используются, чтобы передать входные данные от сборки верхнего уровня в соответствующие детали и узлы, чтобы управлять созданием модели. Например, для детали block_base, листинг мог бы выглядеть так:
INPUT
key_size
ansi_thread
...
END INPUT
RELATIONS
d5 = key_size
d3 = depth * 1.25
END RELATIONS
....
Затем листинг для сборки выглядит похожим на этот:
INPUT
hole_diameter NUMBER
thread_type STRING
глубина
...
END INPUT
RELATIONS
END RELATIONS
EXECUTE PART block_base
key_size = hole_diameter/2 + 0.025
ansi_thread = thread_type
depth = DEPTH
...
END EXECUTE
И конструкция для части block_base выглядит похожей на эту:
INPUT
ADD FEATURE.....
Notes:
Параметр key_size появляется в операторе EXECUTE для сборки и в операторе INPUT для детали. Это необходимо для величины параметра, которая должна переходить вниз от сборки к детали. Если параметр не появляется в обоих местах, или отсутствует оператор EXECUTE в конструкции сборки для детали, то те величины, которые в данный момент находятся в памяти будут используются для детали.
Параметр thread_type является равным ansi_thread в операторе EXECUTE, который затем передаётся детали через оператор INPUT.
Параметр depth является равным DEPTH в операторе EXECUTE, и передаётся детали с таким же названием оператором INPUT. Эта техника зачастую предпочтительнее предложенной в предыдущем пункте, поскольку так легче отслеживать параметры.
Зависимость d5 = key_size не является необходимой. Символ параметра d5 может быть переименован в key_size с помощью команды Symbol из меню DIM COSMETIC.
Определение Детали Выполняемой в Программе Сборки
Когда Вы используете сборочную программу, чтобы заменить деталь в сборке с помощью записи взаимозаменяемости, Вы можете убедиться, что соответствующая программа выполняется вводом названия детали как переменной оператора EXECUTE. Эта операция подобна использованию переменной в операторе ADD PART. Например, программа для сборки могла бы выглядеть так:
INPUT
COMPONENT STRING
"Enter part name"
DIAMETER NUMBER
END INPUT
....
EXECUTE PART (COMPONENT)
d1=DIAMETER
END EXECUTE
Если оператору EXECUTE присваиваются значения переменных A и B, а оператору INPUT задаётся только переменная A, происходит следующее:
Предупреждение сообщает Вам, что переменная B не была определена. Вы можете отредактировать Вашу конструкцию, чтобы скорректировать ошибку.
Если Вы включаете изменения в модель игнорируя предупреждение, величина А переходит в параметр с тем же названием в выполняемой детали.
Использование оператора EXECUTE внутри оператора IF-ENDIF
Оператор EXECUTE может применятся в операторе IF-ENDIF как способ избежать выполнение модели нижнего уровня, если это необходимо. Если модель не выполняется, используются текущие величины модели. Например:
INPUT
key YES_NO
"Does the assembly have a key (Y/N):"
IF key == YES
key_name STRING
"Enter key name:"
ENDIF
END INPUT
RELATIONS
END RELATIONS
IF key == YES
EXECUTE PART (key_name)
END EXECUTE
ENDIF
Деталь keyname выполняется, только если она включена в сборку.
Иерархия Сборочного Выполнения
Сборки могут выполнять узлы, которые в свою очередь могут выполнять другие узлы (подсборки). Детали, которые формируют узел, не выполняются основной сборкой, но взамен выполняются узлом. Только следующий уровень вниз по сборке выполняется сборочной конструкцией.
Массовые Свойства
и параметр INTERACTОбновление Свойств Массы при Изменении Геометрии
Используйте параметр MASSPROP, чтобы скорректировать свойства массы всякий раз, когда изменяется геометрия. После того, как Вы определили детали или сборки для которых свойства массы должны быть скорректированы, Вы можете ввести величину необходимого параметра через механизм отношений. Чтобы корректировать свойства массы, используйте следующий формат:
MASSPROP
PART NAME
ASSEMBLY NAME
END MASSPROP
Note:
Определяя модель, для которой необходимо вычислить свойства массы, введите название файла модели без расширения.Оператор MASSPROP может содержать пункт IF... ELSE. Если Вы добавляете условие к оператору MASSPROP, массовые свойства объекта будут вычислены, только если это условие выполнено. Например:
MASSPROP
IF THICKNESS > 1
PART PLATE
ELSE
ASSEMBLY BLOCK
ENDIF
END MASSPROP
В предыдущем примере, если параметр THICKNESS имеет значение больше 1, массовые свойства пересчитываются для детали PLATE; в других случаях, массовые свойства вычисляются для сборки BLOCK.
Note:
Если Вы переименовываете модель с помощью команды Rename из опускающегося меню File, Вы должны её переименовать в листинге MASSPROP вручную.Использование оператора INTERACT
Оператор INTERACT обеспечивает взаимодействие конструктивных элементов детали и сборки. Они могут быть включены везде в пределах операторов FEATURE ADD - END ADD или PART ADD – END ADD. Например, оператор ELSE в предшествующем примере мог бы быть включён в следующую конструкцию:
ADD PROTRUSION.....
IF d1 > d2
ADD HOLE.....
ELSE
INTERACT
END IF
ADD CUT.....
В данном примере, альтернативный комплект конструктивных элементов должен создаваться, если d1 не больше d2. Режим INTERACT работает аналогично режиму Insert доступному в Pro/ENGINEER.
Выполнение оператора INTERACT
Когда система сталкивается в программе с оператором INTERACT, выполнение программы прерывается. В данном пункте, Вы можете добавлять конструктивные элементы. Так же в этом пункте, система отображает неполную модель, построенную согласно последней инструкции перед вводом оператора INTERACT. В режиме INTERACT, модель заморожена и не может быть модифицирована. После входа в режим INTERACT, выберите конструктивные элементы из меню FEAT CLASS, которые Вы желаете добавить и перейти к определению необходимых параметров. После создания нового конструктивного элемента, система запросит, желаете ли Вы еще добавлять конструктивные элементы. Если Вы ответите N, программа возобновит своё выполнение. Когда выполнение завершится, новые конструктивные элементы появятся в пределах оператора INTERACT и заместят оператор INTERACT в конструкции модели.
Note:
Вы можете покинуть взаимодействие немедленно после перемещения программы в фазу INTERACT (до того как Вы начнёте создавать конструктивные элементы). Выберите Done/Return из меню FEAT CLASS и ответьте N на запрос системы, желаете ли Вы продолжать. Программа продолжит своё выполнение до конца.Операции над конструктивными элементами
Подавление (Suppress) конструктивных элементов детали или сборки
Конструктивные элементы детали или сборки, а также компоненты сборки могут быть подавлены добавлением слова SUPPRESSED сразу же за словом ADD:
ADD SUPPRESSED PROTRUSION
Подавленный конструктивный элемент может быть восстановлен удалением слова SUPPRESSED из пункта ADD FEATURE. Подавление с помощью программы работает аналогично с подобной операцией в Pro/ENGINEER. Поэтому, подавленная модель не записывается, когда Вы сохраняете сборку с помощью команды Save As (в Pro/E 2001 команда Save a Copy…).
Переопределение и удаление конструктивных элементов
Вы переопределяете или удаляете конструктивные элементы детали или конструктивные элементы и компоненты сборки в редакторе, удаляя или перестраивая соответствующие пункты ADD FEATURE конструкции детали или сборки. Первый конструктивный элемент не может быть переопределён.
Если Вы попытаетесь удалить члена массива или группы, система не выполнит изменения и спросит, желаете ли Вы редактировать файл для переопределения и удаления конструктивных элементов.
Изменение размеров конструктивного элемента
Вы можете изменять размеры конструктивного элемента в программе, вводя следующее выражение:
MODIFY d# = value
Вы можете также присваивать значениям новые значения с помощью оператора RELATIONS.
Использование комментариев для описания зависимостей и конструктивных элементов
Для ввода комментариев, используйте следующий формат:
/* <Ваш комментарий>
Обратите внимание, что перед комментарием должна стоять косая черта и звёздочка. Также, комментарий о конструктивном элементе должен следовать сразу же за строкой ADD FEATURE. Комментарий связывается с создаваемым конструктивным элементом и появляется в INFORMATION WINDOW.
Редактирование конструкции и корректировка ошибок
Pro/PROGRAM обнаруживает ошибки в конструкции сразу же после выхода из редактора. Некоторые из причин возникновения ошибок:
Использование оператора IF без оператора END IF.
Ввод неверного имени переменной в зависимость или условие.
Переопределение “детей” раньше “родителей”.
Удаление родительского конструктивного элемента.
Если в файле содержатся ошибки, появляется меню PROG ERROR со следующими активными опциями:
Abort — Отказ от внесённых изменений и возврат к предыдущей версии.
Edit — Редактирование конструкции для корректировки ошибок. В сообщении об ошибках указано расположение и тип ошибки. Эти сообщения игнорируются в течение последующей обработки конструкции; они удаляются если обнаруживаются новые ошибки в конструкции или если Вы выходите из модели.
Внесение изменений в модель
После того, как Вы закончили редактировать листинг Pro/PROGRAM, система спросит Вас, желаете ли Вы внести изменения. Для одобрения введите Y. Если Вы ответите N, программа не выполняется.
Если Вы желаете запустить программу с какой-то конкретной точки, откройте листинг с помощью команды Edit Design.
Выходом из редактирования (никакие изменения не должны быть внесены) запускается программа. Вы будете запрошены, желаете ли Вы внести изменения в модель.
Для внесения изменений в модель, система может попросить Вас ввести переменную.
Note:
После того как изменения внесены в модель, файл конструкции удаляется; для просмотра теперь доступен только From Model или выполнение.Ввод входных переменных
Когда конструкция модели имеет входные переменные, система запросит Вас ввести их значения всякий раз, когда Вы регенерируете модель или добавляете новые инструкции. Вы можете ввести данные с помощью следующих команд из меню GET INPUT:
Current Vals — Когда Вы запускаете программу, она использует текущие значения и не требует их ввода.
Note:
Если Вы желаете проверить текущие значения параметров, выберите Show Design > From Model. В INFORMATION WINDOW отобразится листинг с входными переменными и присвоенными им значениями в текущей конструкции модели.
Enter — Ввод новых значений входных переменных при запросе.
Read File — Когда запускается программа, система использует значения из файла. Введите название файла вместе с расширением.
Выбор и модификация входных параметров
1. Выберите PART > Program, затем PROGRAM > Edit Design.
2. Отредактируйте при необходимости Input листинг.
3. Включите изменения в модель.
4. Выберите GET INPUT > Enter.
5. В меню INPUT SEL поставьте галочки напротив параметров, значения которых Вы желаете отредактировать, затем Done Sel.
6. При запросе в строке сообщений введите значения и затем выберите PROGRAM > Done/Return.
Ввод значения из файла
Вместо ввода значений переменных вручную, Вы можете ввести их из файла, расположенном в рабочем каталоге для данной сессии, с помощью опции Read File. Входной файл должен иметь одно значения для каждой строки, следующего формата:
param_name = <значение или выражение>
Например:
THICKNESS = 2.5
INCLUDE_VALVE = YES
MATERIAL = "STEEL"
Если Вы вводите параметры из файла, который содержит меньшие параметры, чем назначены для оператора INPUT, система принимает текущие величины для отсутствующего параметра.
Если, наоборот, выходной файл содержит большие значения переменных, чем необходимо для выполнения, параметры, не относящиеся к программе, будут проигнорированы.
Поскольку программа игнорирует те параметры, которые не соответствуют этой конкретной программе, Вы можете создать входной файл, который выступает в качестве глобального источника для многих моделей.
Note:
Система учитывает регистр, когда параметры и их величины считываются из файла. Будьте внимательны при определении переменных.Ошибки Выполнения
При столкновении с ошибками выполнения, система действует следующим образом:
В режимах Part и Assembly:
Если неудача является следствием ошибки конструктивного элемента (например, если размер нарушает ограничения зависимостей), открывается INFORMATION WINDOW с описанием ошибки, те же данные записываются в файл errors.lst.n. Вы можете затем редактировать конструкцию From File (для корректировки ошибок) или From Model (чтобы начать заново).
Если неудача является следствием ошибки геометрии, Pro/ENGINEER переходит в режим разрешения проблем, который имеет различные функции, чтобы помочь Вам диагностировать и решать ошибку.
В режиме Assembly:
Если отказ происходит в сборке (например, если заменённый элемент не соответствует), система сообщает Вам, что она отказалась заменять конкретный член и спрашивает Вас, хотите ли Вы вновь отредактировать программу.
Ошибки в конструктивном элементе
Многие ошибки не обнаруживаются в течение редактирования, но они все еще делают конструкцию не работоспособной. Они могут быть определены, обычно, как список ошибок конструктивного элемента. Такие ошибки обычно являются результатом переопределения или удаления конструктивных элементов, которое зависят друг от друга, или от присвоенных условных величин в конструктивном элементе.
Список ошибок конструктивного элемента составляется в течение выполнения, после того, как были затребованы входные величины, но до того, как начнётся реконструкция геометрии модели.
Погрешности геометрии
Некоторые ошибки могут не обнаруживаться, пока не начнётся процесс реконструкции геометрии. Например, Вы могли бы иметь следующую конструкцию:
ADD FEATURE PROTRUSION
ADD FEATURE SHELL
OF THICKNESS d10
(создание крышки)ADD FEATURE PROTRUSION
(ручка для крышки)Переопределите два последних конструктивных элемента, которые не зависят от остальных. Если геометрия ручки слишком тонка для создания оболочки толщиной d10, это создаст ошибку в геометрии. Pro/ENGINEER будет не в состоянии регенерировать оболочку. Не удавшийся конструктивный элемент (оболочка) высветится на модели красным цветом. Появится меню RESOLVE FEAT и откроется окно FAILURE DIAGNOSTICS с относительно неудавшегося пункта.
Если Вы выберите Undo Changes, система отменяет изменения на этой регенерации и возвращается в предшествующее состояние.
Создание Примеров (Instances)
Создание примеров модели с помощью Pro/PROGRAM
Детали и сборки, созданные Pro/PROGRAM с входными параметрами, могут быть возвращены в примеры исходной модели.
Всякий раз, когда конструкция выполнена, после регенерации модели или после редактирования конструкции Вы можете создать семейный пример этой специфической конфигурации, используя команду Instantiate из меню PROGRAM.
1. После выполнения программы, выберите PROGRAM > Instantiate.
2. Появляется редактор Pro/TABLE с названием исходной модели (деталь в режиме Part, сборка или деталь в режиме Assembly) в колонке 1 и заданном по умолчанию названии примера в колонке 2. При желании отредактируйте название примера; затем выйдите из Pro/TABLE.
После создания примера сборки, Вы можете просмотреть таблицу семейства. Она теперь включает имя сборки примера, название детали, которая была выполнена и переменные, которые были введены.
Note:
Параметры, которые появляются в таблице семейства, управляют конструкцией модели.Пример: Создание примера сборки
Начальная программа для сборки выглядит примерно так:
INPUT
MATERIAL STRING
END INPUT
RELATIONS
END RELATIONS
EXECUTE PART BASE
MATERIAL=MATERIAL
END EXECUTE
ADD PART BASE
После выбора Instantiate, Вы можете ввести названия для примера сборки и примера детали, которые выполнялись программой. Редактирование выполнено с помощью Pro/TABLE.

Просмотрите таблицу семейства, которая теперь включает:
— Входную переменную — MATERIAL
— Выполняемая деталь — BASE
— Параметр, определяющий какая деталь BASE выполняется — EXEC_BASE_PART

После обработки, программа для сборки могла бы выглядеть так:
MATERIAL STRING
INPUT
RELATIONS
END INPUT
END RELATIONS
IF EXEC_BASE_PART
EXECUTE PART BASE
MATERIAL =MATERIAL
END EXECUTE
ENDIF
ADD PART BASE
....
Пример: Параметрическая конструкция для Blender Cover
Этот пример иллюстрирует логику разработки и использование операторов INPUT, EXECUTE и IF - ELSE. Формат операторов ADD FEATURE в конструкции детали был упрощен. Объяснения в квадратных скобках - только для информации и не появляются в нормальном листинге.
Создание параметрической конструкции.

Конструкция сборки BLENDER
Параметрическая конструкция для сборки BLENDER следующая:
INPUT
COVER_TYPE YES_NO
"Does the cover have a cap?:"
MATERIAL STRING
"Enter material (ABS or Poly):"
CAP_TYPE STRING
"Enter cap type (MODEL_A or MODEL_B):"
COVER_SIZE
"Enter the top plate dimension:"
END INPUT
RELATIONS
END RELATIONS
EXECUTE PART COVER
[a.]COVER_TYPE = COVER_TYPE
COVER_SIZE = COVER_SIZE
MATERIAL = MATERIAL
END EXECUTE
ADD PART COVER
[b.]INTERNAL MEMBER ID 2
...
END ADD
IF COVER_TYPE == YES [c.]
ADD PART (CAP_TYPE)
INTERNAL MEMBER ID 3
...
END ADD
END IF
Notes
a. Входная величина для COVER_TYPE вплоть до детали "Cover." Если используется значение YES, крышка имеет отверстие. Также, входная величина для материала и размер для крышки (размер верха пластины).
b. Добавление крышки.
c. Если COVER_TYPE=YES, добавить колпачок к сборке.
Конструкция для детали COVER
Параметрическая конструкция для сборки COVER следующая:
INPUT
COVER_TYPE YES_NO
COVER_SIZE
MATERIAL STRING
END INPUT
RELATIONS
DIAM = COVER_SIZE / 2
[a.]IF MATERIAL == "Poly"
d0=.10
ELSE
d0=.2
ENDIF
END RELATIONS
ADD FEATURE 1
INTERNAL FEATURE ID 33
[b.]TYPE=FIRST FEATURE
...
COVER_SIZE = 2.4
[c.]ADD
END
ADD FEATURE 2
[d.]INTERNAL FEATURE ID 169
TYPE=PROTRUSION
...
END ADD
IF COVER_TYPE == YES
[e.]ADD FEATURE 3
INTERNAL FEATURE ID 270
TYPE=SLOT
...
END ADD
END IF
Notes
a. Отношения включают отношение для диаметра отверстия и условного оператора для типа материала ("Poly" и "ABS" заключаются в кавычки).
b. Добавление конструктивного элемента основания.
c. Название параметра переименовывается в "COVER_SIZE".
d. Добавляются стенки.
e. Если COVER_TYPE=YES, добавляется отверстие.
Конструкция для детали CAP
Деталь CAP управляется таблицей с примерами MODEL_A и MODEL_B. Файл для параметрической конструкции детали CAP следующий:
INPUT
END INPUT
RELATIONS
END RELATIONS
ADD FEATURE 1
[Добавление конструктивного элемента основания колпачка.]INTERNAL FEATURE ID 33
TYPE=FIRST FEATURE
...
END ADD
ADD FEATURE 2
[Добавление базовой плоскости.]INTERNAL FEATURE ID 106
TYPE=DATUM PLANE
...
END ADD
ADD FEATURE 3
[Добавление материала выдавливанием.]INTERNAL FEATURE ID 108
TYPE=PROTRUSION
...
END ADD
ADD FEATURE 4
[Добавление отверстия.]INTERNAL FEATURE ID 179
TYPE=HOLE
...
END ADD
ADD FEATURE 5
[Добавление верхней пластины.]INTERNAL FEATURE ID 198
TYPE=PROTRUSION
END ADD