Функции преобразований

Тема 2.3 Специальные функции AutoLISP

ЛЕКЦИЯ №21

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

(type <символ>)

Тип аргумента: <символ> (имя функции или переменной).

Если аргумент <символ> не является именем функции или переменной с присвоенным значением, то возвращается nil. Другие варианты возвращаемого значения:

· ENAME — имя примитива AutoCAD;

· EXRXSUBR — имя приложения ObjectARX;

· FILE — указатель (дескриптор) файла;

· INT — целое число;

· LIST — список;

· PAGETB — таблица диспетчера страничной организации памяти;

· PICKSET — набор выбора;

· REAL — вещественное число;

· SAFEARRAY — безопасный массив;

· STR — строка;

· SUBR — встроенная функция AutoLISP;

· SYM символ;

· VARIANT — вариант;

· USUBR — пользовательская функция AutoLISP;

· VLA-объект — объект Visual LISP, использующий технологию ActiveX.

К функциям преобразовании относятся следующие:

· (float <число>) — преобразование целого числа в вещественное;

· (itoa <целое>) — преобразование целого числа в строку;

· (rtos <число> [<режим> [<точность>]]) — преобразование вещественного числа в строку;

· (atoi <строка>) — преобразование строки в целое число;

· (atof <строка>) — преобразование строки в вещественное число;

· (angtof <строка> [<представление>]) —преобразование строки, представляющей значение угла в различных форматах, в вещественное число, являющееся величиной угла в радианах;

· (angtos <угол> [<представление> [<точность>]]) —преобразование значения угла в радианах в строку, в соответствии с форматом;

· (distof <строка> [<режим>]) — преобразование строки, представляющей вещественное значение в одном из форматов линейных единиц, в вещественное число;

· (trans <точка> <СК-из> <СК-в> [<признак>]) — преобразование координат точки из одной системы координат (СК) в другую.

Пример: (float 15) — возвращает 15.0;

К функциям, работающим со строками, относятся следующие:

· (chr <целое>) — получает буквенно-цифровой символ (строку из одного буквенно-цифрового символа) по коду действующей таблицы символов;

· (ascii <строка>) — получает код первого символа строки текста по действующей таблице символов;

· (read <строка>) — читает строку-аргумент до первого пробела (или до конца, если пробелов нет) и возвращает прочитанное значение как символ AutoLISP (т. е. имя функции или переменной);

· (strcase <строка> [<признак>]) — преобразует строку в верхний или нижний регистр (если аргумент <признак> опущен или равен nil, то функция strcase выполняет преобразование всех буквенно-цифровых символов строки в верхний регистр; если аргумент <признак> задан, и его значение отлично от nil, то выполняется преобразование строки в нижний регистр);

· (strcat [<строка1> [<строка2>... [<строкаN>]... ]]) —конкатенация (сцепление)строк;

· (strlen [<строка1> [<строка2>... [<строкаN>]... ]]) — вычисляет суммарную длину всех строк-аргументов;

· (substr <строка> <начало> [<количество>]) —выделяет подстроку, начиная с заданной позиции; если количество аргументом <количество> не задано или задано больше, чем осталось в строке, определяемой аргументом <строка>, начиная с позиции, определяемой аргументом <начало>, то возвращается полный остаток строки от заданного места.

Примеры:

(chr 192) — возвращает "А" (русская буква);

(ascii "A") — возвращает 65 (латинская буква);


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: