2. Состав и объем курсовой работы
Курсовая работа состоит из расчетно-пояснительной записки (РПЗ) с иллюстративным графическим материалом, размещенным по разделам работы, эскизов, схем.
Расчетно-пояснительная записка объемом от 25 до 30 страниц рукописного текста содержит:
- титульный лист;
- задание на курсовую работу;
- лист "Замечания руководителя";
- реферат, аннотация (при необходимости);
- содержание;
- введение;
- основную часть (проектирование программного приложения, проектирование интерпретатора с языка описания детали);
- заключение;
- список литературы;
- приложения (листинги программ).
3. Задание на курсовую работу
Спроектировать и реализовать элементы подсистемы автоматизированного построения чертежа детали (группа деталей выбирается из приложения Ж согласно варианту) в среде AutoCAD. Доступ к примитивам системы AutoCAD организовать с использованием входного языка Visual Lisp. В процессе разработки необходимо рассмотреть следующие этапы проектирования:
Выделение основных задач проектирования;
Определение функций разрабатываемой подсистемы и построение функциональной модели;
Определение входных и выходных данных для каждой из выделенных функций;
Определение алгоритма функционирования программного средства;
Создание управляющей программы в среде одного из языков программирования высокого уровня;
Программирование модуля построения чертежа детали в среде Visual Lisp;
Организация взаимосвязи управляющей программы и модуля построения чертежа детали на основе одного из выбранных алгоритмов:
а) с использование текстового файла для передачи информации из управляющей программы в среду AutoCAD;
б) с использованием базы данных для передачи информации из управляющей программы в среду AutoCAD;
в) с использованием технологии Active X для передачи информации в среду AutoCAD напрямую.
Список литературы
Основная литература
Финкельштейн Э. AutoCad2000. Библия пользователя.: пер. с англ / Э. Финкельштейн - М.: Издательский дом «Вильямс», 2000. 1040 с.
Скрипченко Ю. С. Автоматизированное проектирование конструктивных параметров лезвийного инструмента в системе AutoCad / Ю. С. Скрипченко, В. И. Гунин А. Н. Чекменев А. И. Болдырев. 2000 / Воронеж, 2002 – 231с.
Дополнительная литература
Фаронов В.В. Delphi 7. Учебный курс / В.В. Фаронов - М.: «Нолидж», 1998. 464 с.
Бобровский С. Delphi 7: Учебный курс / С. Бобровский – СПб: Издательство «Питер», 2000. – 640с.: ил.
Архангельский А.Я. Программирование в Delphi 7 / А.Я. Архангельский – М.: ЗАО «Издательство БИНОМ», 2000 г. – 1072 с.
Приложение А
Требования к структурным элементам РПЗ
1. Титульный лист является первой страницей РПЗ, оформляется в соответствии с обязательными приложениями 3.
Примечание: Перед подписью и датой подписания допускается приводить ученые степени, ученые звания с сокращением слов по ГОСТ 7.12.
2. Задание на курсовой проект (работу) составляют и оформляют в соответствии с рекомендуемыми приложениями 2.
3. Содержание включает введение, наименование всех разделов, подразделов, пунктов (если они имеют наименование), заключение, список литературы, наименование приложений с указанием номеров страниц, с которых начинаются эти элементы пояснительной записки (см. приложение 6).
4. Во введении должна быть дана оценка современного состояния решаемой научно-технической задачи, обоснована необходимость проведения этой работы, показана актуальность и новизна.
Введение должно содержать основание и входные данные для разработки темы. Во введении должны быть указаны цель и задачи работы.
Не допускается введение составлять как аннотацию и не рекомендуется во введение включать таблицы и рисунки.
5. Основная часть в общем случае может состоять из следующих разделов:
литературный обзор;
назначение и область применения проектируемого программного средства;
требования предъявляемые к программному средству;
анализ входной и выходной информации;
проектирование программного средства (ПС);
реализация (ПС);
тестирование (ПС);
виды обеспечений программного средства.
В разделе описания видов обеспечений должны быть описаны все виды обеспечений согласно ГОСТ 23501.101—87.
В зависимости от особенностей проекта (работы) отдельные разделы допускается объединять или искажать, а также вводить новые разделы в соответствии с требованиями задания на проект (работу).
7. Заключение должно содержать:
- краткие выводы по выполнению задания на курсовой проект (работу);
- оценку полноты решений поставленных задач;
- предложения по использованию, включая внедрение.
8. Список литературы должен содержать сведения об источниках, использованных при составлении расчетно-пояснительной записки. Сведения об источниках приводят в соответствии с требованиями ГОСТ 7.1.
9. В приложения включают при необходимости описания алгоритмов и программ задач, решаемых на ЭВМ, разработанных в ходе выполнения проекта (работы), акты внедрения результатов работы, отчет о патентных исследованиях, оформленный по ГОСТ Р 15.011 и другие материалы в соответствии с заданием на проект (работу).
10. РПЗ должна полностью отражать все проводимые при проектировании действия и этапы.
11. В РПЗ не следует приводить текстуальных положений из учебников и учебных пособий.
12. При разработке КР требуется максимально применять вычислительную технику.
13. В РПЗ обязательно приводят таблицы, блок-схемы алгоритмов, функциональные модели, структурно-логические модели и т.д.
14. Количество чертежей, структурных схем, моделей, заданных форматов и их содержание указывается в задании на курсовую работу.
15. Чертежи, блок-схемы, выполняются с учетом требований ЕСКД и ЕСПД.
Приложение Б
Задание на курсовое проектирование
1. Задание на курсовую работу должно оформляться на специальных бланках и включать:
- тему работы;
- технико-экономические данные на проектирование;
- указания по содержанию, объему и срокам выполнения;
- сроки выполнения отдельных этапов и проекта (работы) в целом.
2. Задание на курсовой работу выдается за подписью руководителя работы и датируется днем выдачи.
3. Форма бланка задания на курсовое проектирование должна быть утверждена на заседании кафедры,
4. При выполнении студентом сквозного курсового проектирования задание утверждается всеми ведущими кафедрами, участвующими в сквозном курсовом проектировании.
5. Курсовая работа, не имеющий утвержденного на кафедре задания или выполненный не в точном соответствий с заданием, к защите не допускается.
Приложение В
Форма титульного листа курсовой работы
Министерство образования Российской Федерации
Воронежский государственный технический университет
____________________________________________
факультет
Кафедра____________________________________
КУРСОВАЯ РАБОТА
по дисциплине _________________________________________
_______________________________________________________
Тема___________________________________________________
_______________________________________________________
Выполнил(а) студент(ка)_________________________________
Группа подпись инициалы, фамилия
дата
Руководитель___________________________________________
подпись инициалы, фамилия
дата
Члены комиссии ________________________________________
подпись инициалы, фамилия
дата
_______________________________________________________ подпись инициалы, фамилия
дата
Нормоконтролер ________________________________________
подпись инициалы, фамилия
дата
Защищен____________________Оценка____________________
дата
2009
Приложение Г
Форма бланка задания на курсовую работу
Воронежский государственный технический университет
Кафедра____________________________________
ЗАДАНИЕ
на курсовую работу
По дисциплине __________________________________________
______________________________________________________
Тема работы ____________________________________________
______________________________________________________
Студент группы _________________________________________
Фамилия, имя, отчество
Перечень вопросов, подлежащих разработке
______________________________________________________
______________________________________________________
______________________________________________________
Объем работы (графические работы, расчеты и прочее)
____________________________________________________________________________________________________________
______________________________________________________ Сроки выполнения этапов ________________________________ ______________________________________________________ Срок защиты курсовой работы ____________________________
Руководитель ___________________________________________
подпись инициалы, фамилия
дата
Задание принял студент __________________________________
подпись инициалы, фамилия
дата
Приложение Д
(справочное)
Пример оформления содержания
Содержание
Задание на курсовой проект (работу) 2
Замечания руководителя 3
Реферат (аннотация) ‑ приводится при необходимости 4
Введение 5
1 Хххххх ххххххххххх ххххххххх х хххххх х ххххххххх
ххххх ххххххххххх ххххххххх 6
1.1 Ххххххххх ххххххххххх ххххххххх ххххххххх ххххххх ххххх ххххххххххх ххххххххх 6
1.2 Хххххххххххх ххххххххххххх хххххххххххх 11
1.3 Ххххххххх хххххх хххххххххххххх ххххххххх 13
2 Ххххххххххххх хххххх хххххх ххххххххх 16
2.1 Ххxxxxxxx ххххххххх ххххххх ххххххххх:хххххх
х ххххххх ххххххххххх 16
2.2 Хх ххххххххх хххххх хххххх хххххххххххх 19
2.3 Хххххххххх ххххххх ххххххххххххх ххххххххх
хххххх 22
3 Ххххххххххх хххххххххх хххххххххх ххххххххх ххххххххх ххххххх ххххххххххх ххххххх хххххххххххх 25
3.1 Хххххххххххххх хххххх х хххххххххх хххххххх 25
3.2 Хххххххххх хххххххххххх ххххххххххххх 27
3.3 Хххххххххххх хххххххххххххххххх ххххххххх 30
4 Ххххххххх хххххххххххх хххххххххххххх 32
4.1 Ххххххххх ххххххххххххх ххххххххххххххххх 32
4.2 Хххххххх ххххххххххххх хххххххххххх ххххх 37
4.3 Хххххх ххххххххх ххххххххххххх 39
Заключение 45
Список литературы 46
Приложение А Ххххххх хххххххххх хххххххх 47
Приложение Б Ххххххххх хххххххх хххххххххххх 49
Приложение Е
Продолжение прил. Е
Продолжение прил. Е
Продолжение прил. Е
О кончание прил. Е
ПРИЛОЖЕНИЕ Ж
Список основных функций AutoLISP
Функция |
Параметры |
Возвращаемое значение |
Описание |
Пример |
МАТЕМАТИЧЕСКИЕ, ЛОГИЧЕСКИЕ И ГЕОМЕТРИЧЕСКИЕ ФУНКЦИИ |
||||
+ |
N1 N2 [… NM*] |
N1+N2+…+NM |
Сумма |
( + 5 8 ) |
- |
N1 N2 [… NM*] |
N1-N2-…-NM |
Разность |
( - a 5 ) |
* |
N1 N2 [… NM*] |
N1*N2*…*NM |
Произведение |
( * 2 4 r ) |
/ |
N1 N2 [… NM*] |
N1/N2/…/NM |
Частное |
( / ( + 2 2 ) d ) |
= |
N1 N2 или S1 S2 |
B |
Проверка равенства двух чисел или строк |
( = x 0.5 ) |
/= |
N1 N2 или S1 S2 |
B |
Проверка неравенства двух чисел или строк |
( /= a "ABC" ) |
> |
N1 N2 или S1 S2 |
B |
Проверка "N1 больше N2" или "S1 больше S2"? |
( > c ( + 3 d ) ) |
< |
N1 N2 или S1 S2 |
B |
Проверка "N1 меньше N2" или "S1 меньше S2"? |
( < e 1 ) |
>= |
N1 N2 или S1 S2 |
B |
Проверка "N1 больше или равно N2" или "S1 больше или равно S2"? |
( >= f 4.0 ) |
Продолжение приложения Ж
1 |
2 |
3 |
4 |
5 |
<= |
N1 N2 или S1 S2 |
B |
Проверка "N1 меньше или равно N2" или "S1 меньше или равно S2"? |
( <= 5 a1 ) |
AND |
B1 B2 |
B |
Возвращает T, если и B1=T, и B2=T, иначе NIL. |
( AND ( = 5 a ) flag ) |
OR |
B1 B2 |
B |
Возвращает NIL, если B1=NIL и B2=NIL, иначе T. |
( OR ( = ans "Н" ) ( = ans "н" ) ) |
NOT |
B1 |
B |
Инвертирует логическое значение (меняет NIL на T, T на NIL). |
( NOT flag ) |
ANGLE |
P1 P2 |
N |
Вычисляет угол в радианах между вектором P1P2 и полож. направлением оси OX. |
( ANGLE a ( LIST 0 0 ) ) |
COS |
N1 |
N |
Возвращает косинус угла N1, заданного в радианах |
( COS ( / PI 2 ) ) |
DISTANCE |
P1 P2 |
N |
Вычисляет расстояние между точками P1 и P2 |
( DISTANCE ( LIST 10 y) a ) |
POLAR |
P1 N1 N2 |
P |
Возвращает координаты точки, отстоящей от P1 на расстояние N1 под углом N2 |
( POLAR ( LIST x y ) 10 PI ) |
SETQ |
V1 AL1 [… VN ALN ] |
ALN |
Присваивает переменной V1 значение AL1, переменной V2 - значение AL2 и т.д. Возвращает последнее присвоенное значение |
( SETQ a ( + b 4 ) ) |
Продолжение приложения Ж
1 |
2 |
3 |
4 |
5 |
SQRT |
N1 |
N |
Вычисляет квадратный корень числа N1. |
( SQRT ( * a a ) ( * b b )) |
ABS |
N1 |
N |
Возвращает модуль числа N1. |
( ABS -5 ) |
FIX |
N1 |
N |
Возвращает целую часть числа N1. |
( FIX 5.25 ) |
SIN |
N1 |
N |
Возвращает синус угла N1, заданного в радианах |
( SIN 0 ) |
УПРАВЛЯЮЩИЕ КОНСТРУКЦИИ |
||||
DEFUN
|
S [AL1 … ALN] [/ V1 … VM] |
AL |
Создание пользовательской функции с именем S, аргументами AL1 … ALN и локальными переменными V1 … VM |
( FUN myfunc ( a / n ) ( SETQ a ( + a 10 ) ) ) |
IF |
E1 E2 [E3] |
NIL |
Вычисляется выражение E1. Если оно истинно (не NIL), то выполняется выражение E2, иначе - E3 |
( IF ( = a b ) ( PRINT "\nA=B" ) ( PRINT "\nA<>B" )) |
PROGN |
E1 .. EN |
EN |
Объединяет несколько выражений в одно для использования в функции IF, если в ветвях "то" или "иначе" нужно выполнить более одной функции.. |
(IF(= a 0 ) (PROGN (SETQ a 1) (PROMPT "\nA=0" ) ) ) |
REPEAT |
N E1 [... EN] |
EN |
Выражения E1 .. EN циклически выполняются N раз |
( REPEAT 10 ( PRINT "\n" )) |
Продолжение приложения Ж
1 |
2 |
3 |
4 |
5 |
WHILE |
E1 E2 [... EN] |
EN |
Выражения E2 .. EN (тело цикла) выполняются до тех пор, пока E1 не NIL. |
( WHILE ( <= i 10 ) ( SETQ i ( + i 1 ) ) ) |
ФУНКЦИИ СВЯЗИ С АВТОКАДОМ |
||||
COMMAND |
S1 […SN] |
NIL |
Выполняет команду Автокада с именем S1 и параметрами S2..SN. |
( COMMAND "ПЛИНИЯ" ( LIST 10 10 ) a "ЗАМКНИ" ) |
GETVAR |
S |
AL или S или B |
Возвращает значение системной переменной Автокада с именем S. |
( GETVAR "DIMTXT" ) |
SETVAR |
S AL или S или B |
AL или S или B |
Устанавливает новое значение системной переменной AutoCAD с именем S. |
( SETVAR "dimext" 3.5 ) |
ФУНКЦИИ ОБРАБОТКИ СПИСКОВ |
||||
CADR |
L1 |
AL |
Возвращает второй элемент списка L (например, координату Y точки) |
( CADR ( LIST 10 20 ) ) |
CAR |
L1 |
AL |
Возвращает первый элемент списка L (например, координату X точки) |
( CAR a ) |
LIST |
AL1 AL2 [… ALN*] |
L |
Объединяет все свои аргументы в один список |
( LIST x y ) |
Продолжение приложения Ж
ФУНКЦИИ ВВОДА-ВЫВОДА |
|||||
GETINT |
S |
N |
Ввод целого числа с клавиатуры. S - текст подсказки. |
( SETQ n ( GETINT "\nВведите число точек: " ) ) |
|
GETPOINT |
[P1] S |
P |
Ввод координат точки при помощи мышки. S - текст подсказки. Если задана точка P1, то от нее к текущей точке отображается "резиновая линия". |
( SETQ p ( GETPOINT ( LIST 0 0 ) "\nУкажите начальную точку: " ) ) |
|
GETREAL |
S |
N |
Ввод вещественного числа с клавиатуры. S - текст подсказки. |
( SETQ x ( GETREAL "\nВведите координату Х: " ) ) |
|
GETSTRING |
[N] S |
S |
Ввод текстовой строки с клавиатуры. S - текст подсказки. Если B указан и не равен нулю, то вводимая строка может содержать пробелы, иначе пробел рассматривается как признак конца ввода. |
( SETQ s( GETSTRING "\nEnter your name: " ) ) |
Продолжение приложения Ж
INITGET |
N |
NIL |
Устанавливает защиту от неправильного ввода на одну следующую GET-функцию. N - сумма следующих значений: 1 - запрет пустого ввода; 2 - запрет ввода нуля; 4 - запрет ввода отрицательных чисел. |
( INITGET 1 ) ( SETQ a ( GETREAL "?" ) ) |
|||||||
PRIN1 |
[A или E] |
- |
Если вызывается без параметров, не возвращает ничего. Особенно удобна для "тихого" завершения программы. |
.... ( PRIN1 ) ) ; КОНЕЦ ПРОГРАММЫ |
|||||||
A или E |
A или E |
Выводит на текстовый экран выражение A. |
( PRIN1 ( + 2 2 ) ) |
||||||||
PROMPT |
S |
NIL |
Выводит на текстовый экран строку S. |
( PROMPT "\nHello, world!") |
|||||||
TEXTSCR |
- |
NIL |
Включает текстовый экран Автокада. |
( TEXTSCR ) |
|||||||
СТРОКОВЫЕ ФУНКЦИИ |
|||||||||||
STRCASE |
S B |
S |
Переводит все английские буквы в строке S в верхний (при B=NIL) или в нижний (при B=T) регистр. |
( STRCASE s1 T ) |
|||||||
SUBSTR |
S N1 N2 |
S |
Возвращает часть строки S, начинающуюся с N1-го символа и имеющую длину N2 символа. |
( SUBSTR "M16x20" 4 2 ) |
Окончание приложения Ж
STRCAT |
S1 S2 [... SN ] |
S |
Объединяет несколько символьных срок в одну. |
( STRCAT "\nA=" a ) |
||||
СHR |
N |
S |
Возвращает символ с ASCII-кодом N. |
( CHR 7 ) |
||||
STRLEN |
S |
L |
Возвращает число символов в строке S. |
( STRLEN "abc" ) |
||||
ASCII |
S |
N |
Возвращает ASCII-код первого символа в строке S. |
( ASCII "Z" ) |
||||
ФУНКЦИИ ПРЕОБРАЗОВАНИЯ ТИПОВ |
||||||||
ITOA |
N |
S |
Преобразует целое число N в его текстовое представление S. |
( PROMPT ( ITOA 5 ) ) |
||||
ATOI |
S |
N |
Преобразует текстовую строку S в целое число N. |
( ATOI "4" ) |
||||
RTOS |
N1 N2 N3 |
S |
Преобразует вещественное число N1 в текстовую сроку S. N2 - код формата числа (1 - научный; 2 - десятичный), N3 - точность (число знаков после запятой). |
( RTOS 5.255467 1 3 ) |
||||
ATOF |
S |
N |
Преобразует текстовую строку S в действительное число N. |
(ATOF "3.14459") |
Условные обозначения: N - число ; S - текстовая строка; A - любой атом; L - любой список; AL - атом или список; P - список из двух чисел (координаты точки); […] - необязательный параметр; - функция может иметь произвольное число аргументов; V - имя переменной; E - выражение Автолиспа; B - логическое значение (T или NIL).
Приложение З
Список функций Visual Lisp.
(VL-AUTOCAD-DEFUN) - определяет имя функции Visual LISP в AutoLisp.
(VL-AUTOCAD-UNDEFUN) - отменяет имя функции Visual LISP в AutoLisp. T, если отменила, и Nil, если нет
(VL-CONSP) - определяет, действительно ли переменная - список.
(VL-DIRECTORY-FILES) - ищет нужные файлы в каталоге (DIRECTORY); если каталог Nil или отсутствует, используется текущий каталог, если шаблон Nil или отсутствует, используется *.*; если число равно -1; ищутся только каталоги; если 0 - файлы и каталоги; если 1 - файлы.
(VL-EVERY...) - проверяет, является ли условие истинным для каждой комбинации элементов списков (сначала первых элементов, затем вторых и т.д.).
(VL-EXE-FILENAME) - возвращает полное имя файла текущей выполняемой программе.
(VL-FILE-COPY <"файл1"> <"файл2"> [число]) - копирует файл 1 и добавляет к файлу 2, если третий параметр есть и не Nil. Если возвращается Nil, то ошибка при копировании: файл 1 не читается, файл 1 явялется каталогом, файл 2 существует.
(VL-FILE-DELETE <"имя файла">) - удаляет файл. Т, если успешно, и Nil, если нет.
(VL-FILE-DIRECTORY-P <"имя">) - определяет, является ли имя именем каталога. Т, если да и Nil, если нет.
(VL-FILE-RENAME <"новое имя"> <"старое имя">) - переименовывает файл. Т, если переименовал, и Nil, если нет.
(VL-FILE-SIZE <"имя файла">) - определяет размер файла в байтах. Nil, если имя нечитаемо, и 0, если имя файла - каталог или пустой файл.
(VL-FILE-SYSTIME <"имя файла">) - время последней модификации. Возвращает список, содержащий дату и время последнего изменения, или Nil, если файл не найден.
(VL-FILENAME-BASE <"имя файла">) - возвращает имя файла после снятия пути DIRECTORY и расширения.
(VL-FILENAME-DIRECTORY <"имя файла">) - возвращает путь каталога файла, без имени файла
(VL-FILENAME-EXTENSION <"имя файла">) - возвращает только расширение из имени файла, если его нет - Nil
(VL-FILENAME-MKTEMP [копирует расширение DIRECTORY]) - определяет уникальное имя файла, которое нужно использовать для временного файла. Основа имени - до 5 символов, принимаемых из имени файла, плюс 3 уникальных комбинаций из символов. Все именя файлов, сгенерированные функцией в течении сеанса Visual Lisp, удаляются, когда осуществляется выход из Visual Lisp.
(VL-INIT) - Подражает инициализации AutoLISP на открытой или новой команде рисунка. Т, если инициализация прошла успешно.
(VL-LIST* <"объект">) - создает и возвращает список. Когда последний элемент - атом, результат - точечный список. Если последний параметр - список, то функция присоединяет ко всем предыдущим параметрам.
(VL-LIST-> STRING <"список ASCII-кодов">) - преобразует список ASCII-кодов в элементы строки. Пример:
(VL-LIST-LENGTH <"список">) - вычисляет длину списка. Пример:
(VL-MEMBER-IF '<"предикат"> <"список">) - определяет, является ли предикат (условие) истинным для одного из элемента списка. Предикат (условие) - это функция с одним аргументом, которая принимает значение Т для любого условия, назначенного пользователем. Функция передает каждый элемент в списке функции, определенной в функции предиката. Если функциональные возвраты не Nil, возвращается остальная часть списка тем же способом, как и в функции (MEMBER...).
(VL-MEMBER-IF-NOT '<"предикат"> <"список">) - определяет, является ли предикат Nil для одного из элементов списка.
(VL-POSITION <"символ"> <"список">) - возвращает номер позиции определенного элемента списка, а первый элемент списка под номером 0, второй - 1 и так далее.
(VL-PRIN1-TO-STRING <"объект">) - возвращает строковое представление любого объекта LISP, как это выводилось функцией (PRIN1...).
(VL-PRINC-TO-STRING <"объект">) - возвращает строковое представление любого объекта LISP, как это выводилось функцией (PRINC...).
(VL-REGISTRY-WRITE <"раздел реестра"> [<"имя"> <"значение">]) - создает в реестре WINDOWS новый раздел, параметры, состоящий из имени и значения.
(VR-REGISTRY-READ <"раздел реестра"> [<"имя"> <"значение">]) - чтение данных, сохраненных в реестре WINDOWS.
(VL-REGISTRY-DELETE <"раздел реестра"> [<"имя"> <"значение">]) - удаляет из реестра WINDOWS имя или значение. Если регистр обеспечен и Nil, заданная величина будет очищена от записи. Если значение имени отсутствует или Nil, функция удаляет определенную клавишу и все ее значения.
(VL-REGISTRY-DESCENDENTS <"раздел реестра"> [<"список">]) - возвращает список имен подразделов выбранного раздела реестра.
(VL-REMOVE '<"элемент"> <"список">) - удаляет элементы из списка.
(VL-REMOVE-IF '<"предикат"> <"список">) - удаляет все элементы из списка, которые соответствуют условию.
(VL-REMOVE-IF-NOT '<"предикат"> <"список">) - удаляет все элементы из списка, которые не соответствуют условию.
(VL-SOME/ '<"предикат"> <"список">) - проверяет выполнение условия для первых элементов каждого списка, затем для вторых и т.д.
(VL-SORT <"список"> '<"функция сравнения">) - сортирует элементы в списке согласно функции сравнения. Функцией сравнения может быть любая функция, которая принимает два параметра и возвращает Т. Повторяющиеся элементы могут быть удалены из списка.
(VL-SORT-I <"список"> '<"функция сравнения">) - сортирует элементы в списке согласно функции сравнения и возвращает номера (индексы) элементов. Повторяющиеся элементы будут сохранятся.
(VL-STRING->LIST <строка>) - преобразует элементы строки в список кодов ASCII.
(VL-STRING-ELT <строка> <позиция>) - возвращает представление символа строки, стоящего в определенной позиции в строке в коде ASCII. Нулевой позиции соответствует первый символ в строке.
(VL-STRING-LEFT-TRIM <строка удаляемых символов> <строка исходных символов>) - удаляет определенные символы с начала строки.
(VL-STRING-MISMATCH <строка1> <строка2> [<позиция1> <позиция2>]) - возвращает длину совпадающего фрагмента символов для двух строк. Можно указать позицииначала фрагмента. Наличие буквы Т снимает различии в написании строчных и прописных букв.
(VL-STRING-POSITION <код символа> <строка> [<нач. позиция 1> <T>]) - определяет позицию символа с определенным ASCII-кодом в строке. Т - поиск с конца строки.
(VL-STRING-RIGHT-TRIM <удаляемые символы> <строка>) - удаляет определенные символы с конца строки.
(VL-STRING-SEARCH <фрагмент> <строка> [позиция начала поиска]) - определяет начальную позицию позицию первого вхождения заданного фрагмента в строке. Поиск чуствителен к регистру.
(VL-STRING-SUBST <новый фрагмент> <старый фрагмент> <исходная строка> [позиция начала поиска]) - заменяет старый фрагмент в исходной строке на новый.
(VL-STRING-TRANSLATE <исходный набор> <новый набор> <строка>) - заменяет исходный набор символов в строке на новый набор символов.
(VL-STRING-TRIM <удаляемый набор> <строка>) - удаляет набор символов в начале и в конце строки.
(VL-SYMBOL-NAME <символ>) - возвращает строку, содержащую имя символа.
(VL-SYMBOL-VALUE <символ>) - возвращает текущее значение, связанное с символом. Эта функция эквивалентна функции (EVAL...) AutoLISP, но не вызывает вычислитель lISP.
(VL-SYMBOLP <объект>) - идентифицирует, действительно ли определенный объект - символ.
(VLAX-3D-POINT <список>) - создает ACTIVEX-совместимую трехмерную структуру точки. Список - 2 или 3 числа, представляет точку.
(VLAX-ADD-CMD <глобальное имя> <имя функции> [<локальное имя> <CMD-флажок>]) - добавляет команды к группе. Имя функции - функции Auolisp с нулевыми параметрами. CMD-флажки - целое число
(VLAX-CURVE-GETAREA <кривая>) - возвращает область внутри кривой.
(VLAX-CURVE-GETDISTATPARM <кривая> <параметр>) - возвращает длину сегмента кривой от начала кривой до отметки, определяемой параметром.
(VLAX-CURVE-GETDISTATPOINT <кривая> <отметка>) - возвращает длину сегмента кривой между точкой начала кривой и определенной отметкой (в мировой системе координат).
(VLAX-CURVE-GETENDPARM <кривая>) - возвращает конечную точку кривой.
(VLAX-CURVE-GETENDPOINT <кривая>) - возвращает конечную точку кривой (в мировой системе координат).
(VLAX-CURVE-GETPOINTATPARM <кривая> <параметр>) - определяет точку на кривой, которая соответствует параметру, и возвращает эту точку.
(VLAX-CURVE-GETSTARTPARM <кривая>) - возвращает параметр начала кривой.
(VLAX-CURVE-GETSTARTPOINT <кривая>) - возвращает отметку начала кривой (в мировых координатах).
(VLAX-CURVE-ISCLOSED <кривая>) - определяет, закрыта ли определенная кривая.
(VLAX-CURVE-GETCLOSESTPOINTTO <кривая> <точка> [расширение]) - возвращает точку (в мировых координатах) на кривой, которая является самой близкой к определенной точке. Если значение расширения не ноль, расширяет кривую при аоиске самой близкой точки.
(VLAX-CURVE-GETCLOSESTPOINT TOP ROJEC TIONV <кривая> <точка> <нормаль> [расширение]) - возвращает точку (в мировых координатах) на кривой, которая является самой близкой к определенной точке. Если значение расширения не ноль, расширяет кривую при аоиске самой близкой точки.
(VLAX-CURVE-GETFIRSTDERIV <кривая> <параметр>) - возвращает первую производную (в мировых координатах) кривой в определенном расположении.
(VLAX-CURVE-GETSECONDDERIV <кривая> <параметр>) - возвращает вторую производную (в мировых координатах) кривой в определенном расположении.
(VLAX-DUMP-OBJECT <объект VLA>) - перечисляет методы и реквизиты объекта.
(VLAX-ENAME->VLA-OBJECT <входное имя объекта>) - трансформирует объект в объект VLA (VISUAL LISP APLICATON)
(VLAX-ERASED-P <объект VLA>) - определяет, был ли объект уничтожен. Т, если объект был уничтожен, иначе Nil.
(VLAX-FOR <символ> <набор объектов> [выражение1 [выражение2 ...]]) - выполняет итерации через набор объектов, оценивающих каждое выражение.
(VLAX-GET-AUTOCAD-OBJECT) - восстанавливает верхний уровень объекта приложения AutoCAD для текущего сеанса AutoCAD.
(VLAX-INVOKE <объект VLA> <метод> <список параметров>) - называет определенный метод объекита. Функция может использоваться для заказанного объекта ACTIVEX.
(VLAX-LDATA-DELETE <объект VLA или AutoCAD> <клавиши>) - стирает данные LISP из словаря чертежа. Т, если успешно, и Nil, если нет (например данные не существуют).
(VLAX-LDATA-GET <объект VLA или AutoCAD> <клавиши> [заданные по умолчанию данные]) - восстанавливает данные LISP из словаря рисунка.
(VLAX-LDATA-LIST <объект VLA или AutoCAD>) - перечисляет данные LISP в словаре - ассоциативном списке, состоящем из пар (клавиша - значение).
(VLAX-LDATA-PUT <объект VLA или AutoCAD> <клавиши> <сохраняемые данные>) - сохраняет данные LISP в словаре чертежа.
(VLAX-LDATA-TEST <данные LISP> ) - определяет, могут ли данные быть сохранены за границей сеанса. Т, если данные могут быть сохранены и восстановлены за границей сеанса, Nil, если нет.
(VLAX-MAP-COLLECTION <объект VLA> <функция>) - применяет функцию ко всем объектам в наборе.
(VLAX-METHOD-APPLICABLE-P <объект VLA> <метод>) - определяет, поддерживает ли объект специфический метод.
(VLAX-OBJECT-RELEASED-P <объект VLA>) - определяет, был ли объект реализован.
(VLAX-PRODUCT-KEY) - возвращает путь записи AutoCAD. Этот путь может быть использован с целью регистрации приложения для загрузки запроса.
(VLAX-PROPERTY-AVAILABLE-P <объект VLA> <свойство> [T]) - определяет, имеет ли объект определенное свойство.
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
для выполнения курсовой работы
по дисциплине «Компьютерная графика»
для студентов специальности 230104
«Системы автоматизированного проектирования»
очной формы обучения
Составители:
Федорков Евгений Дмитриевич
Кольцов Андрей Сергеевич
В авторской редакции
Компьютерный набор А.С. Кольцова
Подписано к изданию 10.09.2009
Уч.-изд. л. 2,6. «С» 43
ГОУВПО «Воронежский государственный технический
университет»