Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Битовые массивы

Читайте также:
  1. Двумерные массивы
  2. Двумерные массивы
  3. Двумерные массивы
  4. Динамические массивы
  5. Линейные массивы
  6. Массивы и их организация. Типы данных в массиве. Диапазон индекса. Одномерные массивы примеры.

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

 

Литералы

Битовый массив в тексте программы можно задать, как последовательность чисел или диапазонов чисел, заключенных в фигурные скобки и разделенных запятой. Перед открывающей скобкой должен стоять знак #. Например

#{3,7,12..15,48}

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

#{ }

 

Свойства

Свойство

Битовый_массив. count

возвращает количество битов в массиве. Это количество устанавливается при создании и равно номеру последнего бита со значением true. Однако если затем установить это значение в false, длина битового массива и, следовательно, содержимое свойства .count, не изменится.

 

Операторы

Для битового массива определена операция индексации

Битовый_массив [ Целое_число ]

с ее помощью можно прочитать или установить любой элемент массива. Например

b[12] = true

b[43] = false

Операция сложения

Битовый_массив + Битовый_массив

определена как логическое ИЛИ между элементами двух массивов.. Результат имеет ту же длину, что и самый длинный из массивов-слагаемых и элементы true там, где они true хотя бы у одного из массивов-слагаемых.

Операция вычитания

Битовый_массив - Битовый_массив

напоминает ИСКЛЮЧАЕЩЕЕ ИЛИ. Результат имеет ту же размерность, что и уменьшаемое, и содержит элементы true там, где уменьшаемое и вычитаемое имеют разные значения.

Унарный минус

- Битовый_массив

обращает все элементы битового массива.

 

Методы

Установить элемент массива в true можно с помощью метода

append Битовый_массив Число

Число указывает номер элемента массива. Если массив содержит меньше элементов, чем указанное число, то он автоматически расширяется.

Вместо операции сложения двух массивов можно применять функцию

join Битовый_массив_1 Битовый_массив_2

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

Функция

findItem Битовый_массив Целое_число

возвращает ноль, если элемент, номер которого задан вторым параметром, имеет значение false. В противном случае, результатом будет значение второго параметра.

Установить значение элемента в false можно с помощью метода

deleteItem Битовый_массив Целое число

Элемент, номер которого задан вторым параметром, обнуляется.

Для битовых массивов определен метод копирования.

copy Битовый_массив

При этом создается независимая копия битового массива.

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

 

Массивы ключей анимации

Массивы ключей анимации (MAXKeyArray) являются картированными наборами значений, типа MAXKey

 

Конструкторы

Массив ключей можно получить как свойство анимируемого свойства объекта

Объект_сцены.Свойство. keys

Например

$box01.position.keys

Либо как свойство контроллера

Контроллер. keys

Например

$box01.rotation.controller.keys

 

Свойства

Из свойств для массива ключей определено только количество ключей в массиве

Массив_ключей. count

 

Операторы

Операция индексирования

Массив_ключей [ Целое_число ]

возвращает ключ, указанный индексом. Нумерация ключей начинается с единицы.

 

Методы

Функция

append Массив_ключей Ключ

добавляет указанный ключ к массиву. Чтобы удалить ключ анимации, используйте функцию

deleteItem Массив_ключей Целое_число

Номер удаляемого ключа задается вторым параметром.

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

addNewKey Массив_ключей Число #select

Ключ создается для момента времени, указанного вторым параметром. Если для данного момента времени ключ уже задан, то новый ключ не создается, а в качестве результата возвращается ранее существовавший ключ. Третий параметр не обязателен, но если он указан, то созданный ключ автоматически выделяется. Значение параметра для нового ключа интерполируется по времени.

Для удаления ключей может применяться функция

deleteKeys Массив_ключей #allKeys

или

deleteKeys Массив_ключей #selection

Первый способ вызова удалит все ключи, второй – выделенные.

Удалить один ключ по его номеру можно с помощью функции

deleteKey Массив_ключей Число

второй параметр задает индекс удаляемого ключа

 


Дата добавления: 2015-10-31; просмотров: 289 | Нарушение авторских прав


Читайте в этой же книге: Прямоугольник | Интервал времени | Методы для работы с g-буфером | Rotate T 180 z_axis -- и повернем чайник. | Строковый поток | Массив параметров | Функции, работающие с наборами | Прочие функции | Выделенные вершины | Выделенные грани |
<== предыдущая страница | следующая страница ==>
Выделенные ребра| Массивы модификаторов

mybiblioteka.su - 2015-2024 год. (0.009 сек.)