Курсовой проект по курсу «Инженерная компьютерная графика»
Задание 2
«Разработка программы – генератора параметрических моделей и чертежей»
Порядок выполнения задания.
Требования к программе:
Рекомендации по выполнению задания:
Пример программы генерации 3D твердотельной модели и рабочего чертежа.
Листинг 1.1 Запрос координат 2D точки.
(setq p1 (if p1 p1 (list 0 0)))
(setq szP1 (strcat “Enter point 1 <” (rtos (car p1)) “, ” (rtos (cadr p1)) “>:”))
(setq Paux (getpoint szP1))
(setq p1 (if Paux Paux p1))
Листинг1.1 показывает как запрашивать в цикле координаты 2D точки с использованием динамически формируемой строки запроса.
Первая строчка фрагмента, представленного в Листиге 1.1, проверяет существует ли точечная переменная p1, т.к. она могла быть создана в момент предыдущей итерации цикла или предыдущего запуска программы в текущем сеансе работы с AutoCAD. Функция if, если переменная p1 уже существует, возвращает ее значения без изменения, если переменная p1 имеет значение nil (не существует), вызывает функцию list для формирования списка из координат точки (0, 0). Результат выполнения функции if (предыдущее значение переменной p1 или точка (0, 0)) присваивается в качестве нового значения переменной p1.
Вторая строка в рассматриваемом фрагменте динамически формирует строку подсказки и сохраняет ее в строковой переменной szP1. Например, если к этому моменту переменная p1 хранит значения координат точки (5 7), то в переменной szP1 будет сохранена строка “Enter point 1 <5, 7>:”. Этот текст будет появляться в зоне подсказки AutoCAD после выполнения рассматриваемой строки кода. Согласно используемым в командной строке AutoCAD соглашениям, значения приведенные в угловых скобках, являются значениями предлагаемыми по умолчанию, и пользователь может их выбрать, просто нажав клавишу Enter. Так как от итерации к итерации значение точки p1 может меняться, то текст подсказки должен формироваться динамически, что и достигается в коде рассматриваемой строки. Функции car и cadr возвращают соответственно координаты x, y точки p1 (в формате с плавающей точкой). Функция rtos преобразует число в строку текста. Для рассматриваемого листинга вызовы (rtos (car p1)) и (rtos (cadr p1)) возвратят строки “5” и “7”. Функция strcat выполняет слияние строк в одну строку текста. В нашем примере строки “Enter point 1 <”, “5”, “, ”, “7” и “>:” преобразуются в строку “Enter point 1 <5, 7>:”, которая записывается в качестве значения переменной szP1 и будет использована для вывода текста подсказки во время запроса.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.