> 1 <

Автор Сообщение

Николай92

Members


Статус

1 сообщений

Где: Albania
Род занятий:
Возраст:

#2347   2010-06-09 12:14 GMT+3 часа(ов)      
В общем есть диалог написанный в AutoLisp но он не пашет или же я не правильно запускаю поэтому кто вкуривает в нем гляньте нету ли ошибки :
;Функция строит цапфу по входным параметрам
(defun C:Zapfa(/ L d L0 K D2 D1 startpoint X Y X1 Y1 X2 Y2 X3 Y3 X4 Y4 X5 Y5 X6 Y6 X7 Y7 X8 Y8 X9 Y9 X10 Y10 X11 Y11 X12 Y12)
(setq startpoint (getpoint "Укажите базовую точку"))

(setq X (car startpoint)) ;выделяем координату X базовой точки
(setq Y (car (cdr startpoint))) ;выделяем координату Y базовой точки


//Загрузка и создание диалога
(if (< (setq dcl_id (load_dialog "e:/tmp.dcl")) 0) (exit))
(if (not (new_dialog "k_dlg" dcl_id)) (exit))
//Назначение выполнения выражений при изменении значений
//элементов заданных ключевыми полями
(action_tile "L" "(setq l (atoi (get_tile \"L\")))")
(action_tile "d" "(setq d (atoi (get_tile \"d\")))")
(action_tile "L0" "(setq L0 (atoi (get_tile \"L0\")))")
(action_tile "K" "(setq K (atoi (get_tile \"K\")))")
(action_tile "D2" "(setq D2 (atoi (get_tile \"D2\")))")
(action_tile "D1" "(setq D1 (atoi (get_tile \"D1\")))")
//Активизация диалога
(start_dialog)
//Удаление диалога с экрана
(done_dialog)
//Вызов команды рисования цапфы


; координаты точки 1
(setq X1 X)
(setq Y1 (+ Y (/ d 2.0)))

; координаты точки 2
(setq X2 X)
(setq Y2 (- Y (/ d 2.0 )))

; координаты точки 3
(setq X3 X)
(setq Y3 (+ Y (/ D2 2.0 )))

; координаты точки 4
(setq X4 X)
(setq Y4 (- Y (/ D2 2.0 )))

; координаты точки 5
(setq X5 (- X K))
(setq Y5 Y3)

; координаты точки 6
(setq X6 (- X K))
(setq Y6 Y4)

; координаты точки 7
(setq X7 (+ X L))
(setq Y7 (+ Y (+ (/ D 2) (/ L 20))))

; координаты точки 8
(setq X8 (+ X L))
(setq Y8 (- Y (+ (/ D 2) (/ L 20))))

; координаты точки 9
(setq X9 (+ X L))
(setq Y9 (+ Y (/ D1 2.0)))

; координаты точки 10
(setq X10 (+ X L))
(setq Y10 (- Y (/ D1 2.0)))

; координаты точки 11
(setq X11 (+ X9 (- L0 (+ L K))))
(setq Y11 Y9)

; координаты точки 12
(setq X12 (+ X10 (- L0 (+ L K))))
(setq Y12 Y10)

(setvar "OSMODE" 0) ;отключение объектной привязки


(command "_LINE" (list X3 Y3) (list X5 Y5) (list X6 Y6) (list X4 Y4) "_C")
(command "_LINE" (list X1 Y1) (list X7 Y7) (list X8 Y (list X2 Y2) "_C")
(command "_LINE" (list X9 Y9) (list X11 Y11) (list X12 Y12) (list X10 Y10) "_C")
(command "_LINE" (list (+ X11 2.0) Y) (list (- X5 2.0) Y) "")


(setvar "OSMODE" 1) ;включение объектной привязки

; Выгрузка файла диалога
(unload_dialog dcl_id)
)

(print "Введите название функции Zapfa для ее вызова")
> 1 <


Онлайн :

0 пользователь(ей), 24 гость(ей) :




Реклама на сайте: