Скачиваний:
56
Добавлен:
06.03.2016
Размер:
244.74 Кб
Скачать

Урок 8 Кластеры

Урок 8

Кластеры

На этом уроке рассказывается об объединении элементов различных типов данных в кластеры.

В этом уроке изложены вопросы:

  1. Что такое кластеры.

  2. Использование функций работы с кластерами.

А. Что такое кластеры

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

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

В кластере, как и в массиве, все элементы упорядочены, но обратиться по индексу к ним нельзя, необходимо сначала разделить их. Для этого предназначена функция Unbundle By Name, которая обеспечивает доступ к определенным элементам кластера по их имени.

Создание кластеров из элементов управления или отображения данных

В одном кластере можно расположить элементы только управления или только отображения. Для создания кластеров из элементов управления или отображения данных следует выбрать шаблон кластера на палитре Controls>>Array & Cluster и поместить его на лицевую панель. После этого шаблон кластера следует заполнить элементами любого типа и в любом порядке, но только или элементы отображения или элементы управления. Изменить размер кластера можно с помощью курсора.

Н иже показан кластер, содержащий три элемента управления.

Порядок элементов в кластере

Каждый элемент кластера имеет свой логический порядковый номер, не связанный с положением элемента в шаблоне. Первому помещенному в кластер элементу автоматически присваивается номер 0, второму элементу – 1 и так далее. При удалении элемента порядковые номера автоматически изменяются.

Порядок элементов в кластере определяет то, как элементы кластера будут распределены по терминалам функций Bundle (объединения) и Unbundle (разделения) на блок-диаграмме.

Посмотреть и изменить порядковый номер объекта, помещенного в кластер, можно, щелкнув правой кнопкой мыши по краю кластера и выбрав из контекстного меню пункт Reorder Controls In Cluster. Панель инструментов и кластер примут вид, показанный ниже на рисунке.

  1. Кнопка подтверждения (Confirm button)

  1. Кнопка отмены (Cancel button)

  1. Курсор определения порядка (Cluster order cursor)

  1. Текущий порядковый номер (Current order)

  1. Новый порядковый номер (New order)

В белом поле (4) указан текущий порядковый номер элемента, в черном (5) – новый порядковый номер. Для установки порядкового номера элемента нужно в поле ввода текста Click to set to ввести число и нажать на элемент. Порядковый номер элемента изменится. При этом корректируются порядковые номера других элементов. Сохранить изменения можно, нажав кнопку Confirm на панели инструментов. Вернуть первоначальные установки можно, нажав кнопку Cancel.

Соответствующие элементы, определенные в кластерах одинаковыми порядковыми номерами, должны иметь совместимые типы данных. Например, в одном кластере элемент 0 является числовым элементом управления, а элемент 1 – строковым элементом управления. Во втором кластере элемент 0 – числовой элемент отображения данных и элемент 1 – строковый элемент отображения данных. Кластер элементов управления корректно соединится с кластером элементов отображения данных.

Однако если изменить порядковые номера элементов в одном из кластеров, проводник данных между кластерами будет разорван, так как типы данных элементов кластеров не будут соответствовать друг другу.

Создание кластера констант

На блок-диаграмме можно создать кластер констант, выбрав в палитре Functions>>Cluster шаблон Cluster Constant и поместив в него числовую константу или другой объект данных, логический или строковый.

Если на лицевой панели кластер уже существует, то кластер констант на блок-диаграмме, содержащий те же элементы, можно создать, просто перетащив кластер с лицевой панели на блок-диаграмму или, щелкнув правой кнопкой мыши на кластере, выбрать из контекстного меню пункт Create>>Constant.

B. Использование функций работы с кластерами

Для создания и управления кластерами используются функции, расположенные на палитре Functions>>Cluster. Функции Bundle и Bundle by Name используются для сборки и управления кластерами. Функции Unbundle и Unbundle by Name используются для разборки кластеров.

Эти функции также можно вызвать, щелкнув правой кнопкой мыши по терминалу данных кластера и выбрав из контекстного меню подменю Cluster Tools. Функции Bundle и Unbundle автоматически содержат правильное количество полей ввода/вывода данных. Функции Bundle by Name и Unbundle by Name в полях ввода/вывода данных содержат имя первого элемента кластера.

Соседние файлы в папке Лабораторная работа №1