Читайте также:
|
|
Строковый поток полностью аналогичен файловому, с той лишь разницей, что он размещается не на диске, а в памяти. Кроме того, строковый поток легко может быть преобразован в обычную символьную строку с помощью оператора преобразования типа.
Литералы
Литералы для строкового потока не предусмотрены
Конструкторы
Строковый поток может быть получен следующим образом
StringStream Символьная_строка
Указанная символьная строка сразу помещается в созданный символьный поток, указатель чтения/записи получает значение 0. Можно получить тот же результат, преобразовав существующую символьную строку в строковый поток.
Символьная_строка as StringStream
Операторы
Стандартные операции сравнения, равенство и неравенство, для строковых потоков определены, но практического смысла не имеют. С помощью операции преобразования типа легко получить символьную строку, содержащуюся в потоке.
Строковый_поток as string
Более ни к каким типам строковый поток не преобразуется.
Методы
Функция копирования позволяет получить новый экземпляр имеющегося потока
copy Строковый_поток
Вывод в строковый поток осуществляется с помощью стандартных функций print и format с указанием потока в именованном параметре to. Например
ss = StringStream “”
print “Testing stringstream out” to:ss
Остальные функции для работы со строковыми потоками полностью идентичны функциям для работы с файловыми.
readValue Строковый_поток
readExpr Строковый_поток
readLine Строковый_поток
readChar Строковый_поток
readChars Строковый_поток Число
readDelimitedString Строковый_поток Символьная_строка
skipToString Строковый_поток Символьная_строка
skipToNextLine Строковый_поток
execute Строковый_поток
filePos Строковый_поток
seek Строковый_поток Число
eof Строковый_поток
close Строковый_поток
flush Строковый_поток
Функции close и flush не производят никаких действий со строковыми потоками и оставлены только для совместимости строковых и файловых потоков.
Оконный поток
Оконный поток предоставляет возможность для вывода данных в окно редактирования скриптов. Эти данные затем можно отредактировать и сохранить вручную. Оконный поток поддерживает только вывод, ввод из него невозможен.
Литералы
Литералов для оконных потоков не предусмотрено.
Конструкторы
Оконный поток может быть создан только одним способом. Функция
NewScript
создает и открывает пустое окно редактирование скрипта и возвращает оконный поток, который может быть использован для вывода данных. Например
debugw = newScript ()
print “Testing WindowStream out” to:debugw
Свойства
Свойств оконный поток не имеет
Методы
Для работы с оконным потоком используются только стандартные функции вывода print и format. При этом поток указывается в именованном параметре to. При использовании функции format не забывайте о необходимости самостоятельно добавлять символ “\n” там, где нужен переход на новую строку.
Ключи анимации
Свойства и методы ключей анимации
Конструкторы
Создать новый ключ анимации можно с помощью функции
addNewKey Контроллер Время #select
Первый параметр – контроллер, для которого создается ключ, второй – время в котором ключ будет создан. Параметр #select необязателен, но если он задан, то созданный ключ автоматически будет выделен. В руководстве данная функция описана в двух местах по разному. В одном из описаний упоминается параметр #interpolate, который надо задать, чтобы значение для ключа, созданного между двух других, интерполировалось по времени. Во втором описании интерполяция присутствует обязательно. Результаты эксперимента свидетельствуют в пользу верности второго описания.
Получить ссылку на существующий для некого контроллера ключ можно двумя способами
getKey Контроллер Число
Первый параметр – контроллер, для которого запрашивается ключ, второй – порядковый номер ключа. Второй способ предусматривает обращение к свойству .keys анимированного свойства объекта или соответствующего контроллера. Предположим, что у нас есть анимация линейного движения объекта $Sphere01. Тогда второй ключ этой анимации можно получить так
$Sphere01.position.keys[2]
или так
$Sphere01.position.controller.keys[2]
Свойства
Свойств у ключей анимации всего три. Первое
Ключ_анимации. time
возвращает время, в котором установлен ключ, то есть фактически, номер кадра. Для некоторых контроллеров это свойство доступно только для чтения, для других – и для чтения, и для записи. Определить с каким ключом Вы имеете дело, достаточно просто. Если для него определено свойство
Ключ_анимации. value
то свойство .time доступно для чтения и записи. Само свойство .value содержит изменение анимируемого параметра от предыдущего ключа. Свойство
Ключ_анимации.selected
содержит значение логического типа и означает, выделен данный ключ или нет. Это свойство всегда доступно как для чтения, так и для записи.
Методы
В общем, для ключей анимации определен только метод копирования
copy Ключ_анимации
но данный метод применяется в первую очередь для копирования массивов. Ключи некоторых контроллеров имеют дополнительные свойства и методы, которые будут описаны при рассмотрении этих контроллеров.
Дата добавления: 2015-10-31; просмотров: 118 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Rotate T 180 z_axis -- и повернем чайник. | | | Массив параметров |