Читайте также: |
|
Битовые массивы предоставляют средства для работы с последовательностями элементов, которые могут принимать только два значения. Поэтому очень часто битовые массивы трактуются именно как массивы логических значений.
Литералы
Битовый массив в тексте программы можно задать, как последовательность чисел или диапазонов чисел, заключенных в фигурные скобки и разделенных запятой. Перед открывающей скобкой должен стоять знак #. Например
#{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 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Выделенные ребра | | | Массивы модификаторов |