Интерактивное графическое программное обеспечение PC-DMIS (Глава 22: Ветвление с использованием управления потоком)

Страницы работы

28 страниц (Word-файл)

Содержание работы

Глава двадцать два: Ветвление с использованием управления потоком

Branching by Using Flow Control: Введение

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

Эта глава содержит информацию о выполнении таких задач. Она объясняет синтакцис обычных операторов, циклов и подпрограмм. Она также содержит множество примеров кода.

Примечание: При возникновении циклов и ветвления в примерах кода, в целях удобочитаемости было использовано структурированное расположение текста (с отступами) – чтобы показать операторы, назначенные определенному условию. В настоящем коде в окне Edit, вы не увидите структирирования текста.

Основные темы, описанные в этой главе, включают в себя:

·  Использование контрольных пар

·  Создание обычных циклов

·  Завершение обычных циклов

·  Создание меток

·  Переход к метке

·  Переход к метке, основанный на условиях

·  Ветвление при ошибке КИМ

·  Ветвление с подпрограммами

Использование контрольных пар

Подменю ControlPairs (контрольные пары) предлагает различные парные команды, которые работают в окне Edit для управления или "контроля" ходом программы детали. Для вставки контрольной пары введите команду в окно Edit, просто наберите команду, или выберите команду из этого подменю.

If / End If (Если)

Пункт меню If / EndIf позволяет добавить условный блок в программу детали. Пункты между командами IF и END IF будут выполнены, только если выражение для команды IF определяется как истинное (ненулевое). В противном случае, ход выполнения перейдет первой команде посел команды END/IF.

Командная строка окна Edit для оператора IF / END IF: IF/выражение END_IF/

Для вставки команд If / End If:

1.  Расположите курсор в нужном месте окна Edit.

2.  Выберите If / EndIf из панели меню. Оператор IF / END IF появится в окне Edit.

Пример кода If / End If

Рассмотрите следующий пример, когда пользователю задается вопрос, хочет ли он измерить элемент "точка".

C1= COMMENT/YESNO,Would you like to measure the point feature, PNT1?

IF/C1.INPUT=="YES"

PNT1=FEAT/POINT,RECT

ENDMEAS/

END_IF/

Пояснение к примеру кода

C1=COMMENT/YESNO Эта строка воспринимает и сохраняет ответ YES или NO от пользователя.

IF/C1.INPUT=="YES" Эта строка является выражением. Она проверяет, является ли введенный ответ на комментарий 1 YES/ДА. Если это YES/ДА, то оператор IF является истинным (TRUE) и продолжается выполнение операторов после оператора IF, в этом случае – измерения элемента PNT1. При ответе NO/НЕТ выполняется переход к оператору END_IF.

END_IF Эта строка завершает выполнение команд внутри блока кода IF / END IF. Любая команда, следующая за этой строкой – это та команда, к которой PC-DMIS перейдет, если пользователь щелкнет на кнопке Noв комментарии.

Else If / End Else If (Иначе если)

Пункт меню ElseIf / EndElseIf позволяет вам добавить условный блок в программу детали. Пункты между командами ELSE IF и END ELSE IF будут выполнены, только если выражение для команды ELSE IF определяется как истинное (ненулевое). Блок ELSE IF / END ELSE IF должен располагаться непосредственно после блока IF / END IF или другого блока ELSE IF / END ELSE IF. Если все выражения IF / ELSE IF выше текущего блока определяются как ложные, то выражение будет выполняться. Если выражение определяется как ложное (ноль), то выполнение перейдет к команде, следующей за END ELSE IF. Если одно из веражений if / else IF выше текущего блока определяются как истинные, все последующие блоки else if / end else if в этой последовательности будут пропущены.

Командная строка окна Edit для оператора ELSE IF / END ELSE IF: ELSE_IF/expression END_ELSE_IF/

Для вставки команд Else If / End Else If:

1.  Расположите курсор в нужном месте окна Edit, после имеющегося оператора IF/END IF или оператора ELSE IF/END ELSE IF.

2.  Выберите Else If / End Else If из панели меню. Оператор ELSE IF / End ELSE IF появится в окне Edit.

Примечание: Этот тип блока действует только, если его расположить после блока IF / END IF или ELSE IF / END ELSE IF. Отдельно расположенные контрольные пары такого блока выделяются красным цветом в окне Edit.

Пример кода Else If / End Else If

Рассмотрите следующий пример, отображающий сообщение, извещающее пользователя в случае, если одно из значений X, Y, или Z для измеренной точки выходит за определенные границы допусков:

PNT2=FEAT/POINT,RECT

ENDMEAS/

IF/PNT2.X<6.9 OR PNT2.X>7.1

Похожие материалы

Информация о работе