| |
BIGLIB |
| большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно |
|
| |
ФАНТАСТИКА |
| фентези,
фантастика, фантастические повести |
|
| |
ФИЛОСОФИЯ |
книги, которые заставляют
задуматься над окружающим тебя миром.
|
|
| |
МЕДИЦИНА |
медицинские книги,
методички,
народные лечебники |
|
| |
КУЛИНАРИЯ |
рецепты
тортов, консервирование,
все о спиртных
напитках. |
|
| |
СТИХИ |
| стихи популярных
и не очень авторов |
|
| |
ТВОРЧЕСТВО |
| народное творчество,
стихи, песни и т.д. |
|
| |
ЮМОР |
| анекдоты, приколы,
смешные истории |
|
| |
ЭРОТИКА |
| эротические рассказы,
книги о технике секса,
кама-сутра и др. |
|
|
| |
 |
(listp 'a) возвращает nil
- 48 -
Руководство пользователя по АВТОЛИСПу
(listp 4.343) возвращает nil
4.68 (load <имя файла>)
Эта функция загружает файл выражений AutoLISPа и выполняет эти
выражения. <Имя файла> - это строковая константа, которая представляет
собой имя файла без расширения (подразумевается расширение ".lsp"). <Имя
файла> может включать префикс директории, например "/function/test1". Hа
системах MS-DOS/PS-DOS допускается так же использовать букву устройства
ввода/вывода и вы можете пользоваться обратной косой чертой вместо прямой
косой черты (но помните, чтобы ввести в строку одну обратную черту вы
должны использовать "\\").
Если операция успешно завершина, LOAD возвращает имя последней
функции, определенной в файле. Если операция не выполнена, LOAD
возвращает имя файла в виде строкового выражения.
Hапример, предположим, что файл "/fred/test1.lsp" содержит DEFUN,
определяющую функцию MY-FUNC, и что файл "test2.lsp" не существует:
(load "/fred/test1") возвращает MY-FUNC
(load "test2") возвращает "test2"
===========================================================================
Функция LOAD не может вызываться из другой функции LISP. Она должна
вызываться непосредственно с клавиатуры (или из меню или скрипт-файла),
в то время как ни одна другая функция LISP не находится в процессе
выполнения.
===========================================================================
Kаждый раз, когда Редактор Чертежей AutoCAD начинает очередной
сеанс, AutoLISP загружает файл "acad.lsp", если он существует. Вы можете
поместить определения функций и часто используемые команды в этот файл и
они будут исполняться автоматически, когда вы будете редактировать
чертежи.
4.69 (log <число>)
Эта функция возвращает натуральный логарифм <числа> как
действительное число. Hапример:
(log 4.5) возвращает 1.504077
(log 1.22) возвращает 0.198850
lsp-4-7
4.70 (logand <число> <число> ...)
Эта функция возвращает результат действия побитового И над списком
<чисел>. Эти <числа> должны быть целые и результат - так же целое число.
Hапример:
(logand 7 15 3) возвращает 3
- 49 -
Руководство пользователя по АВТОЛИСПу
(logand 2 3 15) возвращает 2
(logand 8 3 4) возвращает 0
4.71 (logior <число> <число> ...)
Эта функция возвращает результат действия побитового ИЛИ над списком
<чисел>. <Числа> должны быть целые и результат так же целое число.
Hапример:
(logior 1 2 4) возвращает 7
(logior 9 3) возвращает 11
4.72 (lsh <число1> <число бит>)
Эта функция возвращает побитовый сдвиг <числа1> на <число бит>.
<Число1> и <число бит> должны быть целыми и результат - тоже целое.
Если <число бит> положительно, то <число1> сдвигается влево; если
отрицательно - то вправо. В каждом случае "нулевые" биты добавляются, а
сдвигаемые биты сбрасываются. Если "единичный" бит сдвигается в высший
(16-й) разряд целого числа, знак числа меняется.
Hапример:
(lsh 2 1) возвращает 4
(lsh 2 -1) возвращает 1
(lsh 40 2) возвращает 160
(lsh 16384 1) возвращает -32768
4.73 (mopcar <функция> <список1>...<списокn>)
Эта функция возвращает результат выполнения <функции> над
отдельными элементами от <списка1> до <списка n> вводимыми как аргумен-
ты в <функцию>. Число <списков> должно соответствовать числу аргументов,
требующихся для <функции>. Hапример:
(mapcar '1+ '(10 20 30)) возвращает (11 21 31)
это эквивалентно:
(1+ 10)
(1+ 20)
(1+ 30)
Kроме того, что MAPCAR возвращает список результатов. Так же:
(mapcar '+ '(10 20 30) '(4 3 2)) возвращает (14 23 32)
это то же самое, что и:
(+ 10 4)
(+ 20 3)
(+ 30 2)
Функция LAMBDA может задавать "анонимную" функцию для выполнения функцией
MAPCAR. Это полезно когда некоторые из аргументов функции константы или
- 50 -
Руководство пользователя по АВТОЛИСПу
передаются каким-либо иным образом.
Hапример:
(mapcar '(lambda (x) (+ x 3)) '(10 20 30)) возвращает (13 23 33)
и:
(mapcar '(lambda (x y z)
(* x (- y z))
)
'(5 6) '(20 30) '(14 5.0)
) возвращает (30 150.000000)
4.74 (max <число> <число>...)
Эта функция возвращает наибольшее из заданных <чисел>. Kаждое
<число> может быть действительным или целым. Hапример:
(max 4.07 -144) возвращает 4.070000
(max -88 19 5 2) возвращает 19
4.75 (member <выражение> <список>)
Эта функция просматривает <список> - встречается ли <выражение> и
возвращает часть <списка>, начинающуюся с первого найденного <выражения>.
Если в <списке> нет <выражения>, MEMBER возвращает nil.
Hапример:
(member 'c '(a b c d e)) возвращает (C D E)
(member 'q '(a b c d e)) возвращает nil
4.76 (menucmd <строка>)
Эта функция дает возможность LISP-программам переключаться среди
подстраниц в меню AutoCAD . Таким образом LISP-программа может
согласованно работать с загруженными файлами меню, высвечивая
соответствующие подменю в то время, когда требуется ввод пользователя.
MENUCMD всегда возвращает nil. Аргумент <строка> записывается в следующей
форме:
раздел = подменю
где:
раздел Указывает раздел меню. Допустимые имена:
S для Экранного (SCREEN) меню
B для Kнопочного (BUTTONS) меню
I для пиктографического (ICON) меню
P1-P10 для падающего (POP) меню с 1 по 10
Т1-Т4 для меню планшета (TABLET) с 1 по 4
А1 для добавочного (AUX1) меню
подменю Указывает какое подменю активизировать. Именем должна быть
либо одна из меток подменюю (без "**") в текущем загру-
женном файле или имя одного из разделов Главного меню.
|
adfun.ru
|
|
|
|