Параметрические изображения объектов проектирования на основе использования языка АВТОЛИСП в среде АВТОКАД. Притыкин Ф.Н. - 65 стр.

UptoLike

Составители: 

65
5. ФУНКЦИИ ДЛЯ ОРГАНИЗАЦИИ ГРАФИЧЕСКОГО ДИАЛОГА
ПОЛЬЗОВАТЕЛЯ С ПРОЕКТИРУЕМЫМ ИЗДЕЛИЕМ
5.1. Функции для ввода данных в интерактивном режиме
Для ввода данных в интерактивном режиме в Автолиспе предусмот-
рен ряд функций, у которых все аргументы являются факультативными.
Однако часто в этих функциях содержится строковая константа, содержа-
щая текст запроса или подсказку пользователю о вводе необходимых дан-
ных. Все эти функции прерывают выполнение программы до тех пор, пока
не будут введены данные с клавиатуры или с помощью устройства указа-
ния. В ответ на запрос функций ввода нельзя задавать выражения Авто-
лиспа, так как это приведет к ошибке.
Для задания ограничений на ввод соответствующих параметров ис-
пользуют функцию initget .
(initget [<биты>] [<строкa>]) В данной функции <биты> являют-
ся факультативным аргументом целым числом. В зависимости от его ве-
личины устанавливаются соответствующие ограничения на ввод парамет-
ров. Так, если <бит> равен 1, то запрещен пустой ввод, при равенстве
<бита> двум запрещен ввод нуля, а при равенстве четырем запрещен
ввод отрицательных чисел. Если пользователь при вводе данных не вы-
полняет хотя бы одно из таких условий, Автокад указывает на ошибку и
предлагает повторить ввод данных. Другой факультативный аргумент
рассматриваемой функции <строка> представляет собой список ключе-
вых слов, которые проверяются в процессе использования функций ввода.
(getangle [<точка>] [<подсказка>] ) создает паузу при выполнении
программы для ввода угла. Она возвращает угол в радианах между зада-
ваемым пользователем вектором и положительным направлением коорди-
натной оси x в пользовательской системе координат. Начальная точка век-
тора может быть определена первым аргументом функции, а вторая зада-
ваться устройством указания. В случае, если факультативный параметр
<точка> опущен, то пользователь должен ввести две точки. Примеры:
(setq ugol (getangle)) создается пауза для задания двух точек,
 5. ФУНКЦИИ ДЛЯ ОРГАНИЗАЦИИ ГРАФИЧЕСКОГО ДИАЛОГА
      ПОЛЬЗОВАТЕЛЯ С ПРОЕКТИРУЕМЫМ ИЗДЕЛИЕМ

   5.1. Функции для ввода данных в интерактивном режиме

    Для ввода данных в интерактивном режиме в Автолиспе предусмот-
рен ряд функций, у которых все аргументы являются факультативными.
Однако часто в этих функциях содержится строковая константа, содержа-
щая текст запроса или подсказку пользователю о вводе необходимых дан-
ных. Все эти функции прерывают выполнение программы до тех пор, пока
не будут введены данные с клавиатуры или с помощью устройства указа-
ния. В ответ на запрос функций ввода нельзя задавать выражения Авто-
лиспа, так как это приведет к ошибке.
    Для задания ограничений на ввод соответствующих параметров ис-
пользуют функцию initget .
    • (initget [<биты>] [<строкa>]) В данной функции <биты> являют-
ся факультативным аргументом − целым числом. В зависимости от его ве-
личины устанавливаются соответствующие ограничения на ввод парамет-
ров. Так, если <бит> равен 1, то запрещен пустой ввод, при равенстве
<бита> двум − запрещен ввод нуля, а при равенстве четырем − запрещен
ввод отрицательных чисел. Если пользователь при вводе данных не вы-
полняет хотя бы одно из таких условий, Автокад указывает на ошибку и
предлагает повторить ввод данных. Другой факультативный аргумент
рассматриваемой функции − <строка> представляет собой список ключе-
вых слов, которые проверяются в процессе использования функций ввода.
    • (getangle [<точка>] [<подсказка>] ) создает паузу при выполнении
программы для ввода угла. Она возвращает угол в радианах между зада-
ваемым пользователем вектором и положительным направлением коорди-
натной оси x в пользовательской системе координат. Начальная точка век-
тора может быть определена первым аргументом функции, а вторая − зада-
ваться устройством указания. В случае, если факультативный параметр
<точка> опущен, то пользователь должен ввести две точки. Примеры:
(setq ugol (getangle)) − создается пауза для задания двух точек,



                                  65