Читаем Введение в Автолисп полностью

Вещественные числа. К вещественным относятся числа, содержащие символ десятичной точки. Числа, лежащие в интервале -1...+1 должны обязательно сопровождаться предваряющим нулем. Вещественные числа, не имеющие десятичных долей, должны содержать ноль после десятичной точки. Вследствие этого правильным является представление 0.245 и 34.0, а записи .245 и 34. не всегда будут приняты Автолиспом. Точность вычислений Автолиспа - 14 значащих цифр, хотя в поле командной строки выводится не более 6 знаков.

Строки. Любая последовательность символов, заключенная в кавычки, рассматривается Автолиспом как строковая переменная. Длина одной строки не должна превышать 132 символов, однако использование функции strcat позволяет объединить несколько строк в одну.

Списки. Для идентификации переменных Автолисп широко использует параметры, представленные в виде списков. Координаты точки в предыдущем примере являются списком, определяющим положение точки на плоскости. Соответственно список, определяющий точку в пространстве, выглядит подобно следующему:

(3.62 4.12 2.85).

В одном списке могут содержаться самые различные типы данных - целые и вещественные числа, строки, списки, имена и наборы примитивов, дескрипторы файлов.

Дескрипторы файлов являются строковыми метками, присваиваемыми файлам, открываемым Автолиспом. В следующем примере открывается файл mycalc.res, он становится доступным для чтения функциями Автолиспа, и значение дескриптора файла присваивается переменной file1:

(setq file1 (open “mycalc.res” “r”)).

Термин “дескриптор” в общем случае понимается как некоторый признак, выделяющий объект из множества себе подобных (вспомните, например, дескрипторы атрибутов). Поэтому в дальнейшем параллельно с этим термином может употребляться термин “имя файла”. И хотя эти термины определяют несколько отличающиеся понятия, при оценке их содержания следует руководствоваться контекстом.

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

В следующем примере имени примитива, введенного в чертеж последним, присваивается идентификатор e1:

(setq e1 (entlast)).

Ввод этого выражения в командную строку возвращает имя примитива в следующей форме:

.

Наборы (группы) примитивов. Средства Автолиспа позволяют аналогично идентифицировать группу примитивов для дальнейшей обработки их программными средствами Выбранной группе присваивается метка. В приводимом ниже примере идентификатор ss2 присваивается группе примитивов, определенных предпоследним выбором:

(setq ss2 (ssget “р”)).

Встроенные и внешние функции - это функции, посредством которых осуществляется обработка данных. Встроенные функции являются средствами самого Автолиспа, внешние представляют собой программы, определенные приложениями.

<p>1.2. Лексические соглашения</p>

Ввод данных в Автолиспе может осуществляться различными способами: с клавиатуры в строку запроса, непосредственным указанием точек на экране, чтением файла ASCII или строковой переменной. В любых случаях должны, выдерживаться следующие соглашения.

• Имена переменных могут содержать любые символы, за исключением (, ) - левой и правой скобок, . - точки, ' - апострофа, “ - кавычек, ; - точки с запятой.

• Следующие символы заканчивают имя переменной или цифровую константу: (, ), ‘, ; , space (cимвoл пpoбeлa), end of file (символ конца файла).

• Выражение может занимать несколько строк.

• Множество пробелов между символами эквивалентно одному пробелу. Пустые строки не обрабатываются Автолиспом, но иногда их целесообразно вставлять для облегчения чтения программ. Табуляция рассматривается Автолиспом как пробел.

• В Автолиспе не имеет значения регистр символов. Для англоязычной версии Автокада имена функций, переменных и параметров можно записывать как в верхнем, так и в нижнем регистре.

• Целочисленные константы могут начинаться со знаков плюс или минус. Автолисп оперирует 32-битовыми числами, т.е. ему доступны целые числа от -2 147 483 648 до +2 147 483 647. Однако, как упоминалось выше, обмен с Автокадом возможен лишь на 16-битовом уровне.

• Вещественные константы также могут начинаться со знаков плюс или минус и должны обязательно содержать цифры, предшествующие десятичной точке и следующие за ней. Вещественные константы могут записываться в экспоненциальной форме. Например, записи 0.00032 и З.2е-4 являются идентичными.

• Текст программ может содержать строки комментариев, предваряемых точкой с запятой (;), например:

     ; переход в слой CENTER.

• Если комментарий включается в строку программы, он должен выделяться символами ;|....|; .

     (setq omode ;| здесь начинается комментарий,

     здесь он продолжается,

     здесь заканчивается |; (getvar “osmode”))

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных