(defun vt()
;Ввод исходных данных:
(setq bp (getpoint "\nВведите нач.точку: ")
d (getdist "\nВведите диаметр отверстия d: ")
A (getdist "\nВведите высоту ступицы A: ")
B (getdist "\nВведите высоту обода B: ")
z1 (getstring "\n Введите наименование детали: ")
z2 (getstring "\n Введите Ф.И.О.: ")
z3 (getstring "\n Введите группу: ")
)
;Вычерчиваемое изображение:
|
; Расположение точек
9 10 L1,L2,...
D1 bp d D2
12 11; D1=2*d+10
; D2=d+10
|
1 B 2 A
;Расчет диаметров D1 и D2:
(setq D1 (+ (* 2 d) 10)
D2 (+ d 10)
)
;Определение опорных точек;
(setq pi2 (/ pi 2); pi2 - угол p/2
L1 (polar bp (* 3 pi2) (/ D1 2))
L2 (polar L1 0 B)
L3 (polar L2 pi2 (/ (- D1 D2) 2))
L4 (polar L3 0 A)
L5 (polar L4 pi2 D2)
L6 (polar L5 pi A)
L7 (polar L6 pi2 (/ (- D1 D2) 2))
L8 (polar L7 pi B)
L9 (polar L8 (* 3 pi2) (/ (- D1 d) 2))
L10 (polar L9 0 (+ A B))
L11 (polar L10 (* 3 pi2) d)
L12 (polar L11 pi (+ A B))
)
;Вычерчивание основного контура:
(command "ПЛИНИЯ" L12 L1 L2 L3 L4 L11 L12 ""
"ПЛИНИЯ" L9 L10 L5 L6 L7 L8 L9 ""
)
(command "ОТРЕЗОК" L12 L9 ""
"ОТРЕЗОК" L10 L11 ""
|
|
)
; Вычерчивание осевой линии:
;Выбор типа линии:
(command "ТИПЛИН" "У" "center" "")
(command "ОТРЕЗОК" (list (-(car bp) 10) (cadr bp))
(list (+(car bp) 10 A B) (cadr bp))""
)
; Простановка размеров:
(command "ТИПЛИН" "У" "continuous" "")
(command "РАЗМЕР" "ВЕР" L1 L8 (list(-(car bp) 10) (cadr L1)) ""
"РАЗМЕР" "ВЕР" L4 L5 (list(+(car L5) 30) (cadr L5)) ""
"РАЗМЕР" "ВЕР" L11 L10 (list(+(car L10) 15) (cadr L11)) ""
"РАЗМЕР" "ГОР" L1 L2 (list(car L1) (-(cadr L1) 15)) ""
"РАЗМЕР" "ГОР" L2 L4 (list(car L2) (-(cadr L2) 15)) ""
"РАЗМЕР" "ВЫХ"
)
; Написание текста:
(setq w1 (list (+(car bp)(/(+ A B) 2)) (+(cadr L8) 20));начальные
w2 (list (+(car bp)(/(+ A B)2)) (-(cadr L1) 30));точки
w3 (list (+(car bp)(/(+ A B)2)) (-(cadr L1) 40));текста
)
(command "ТЕКСТ" "Ц" w1 "8" "" z1
"ТЕКСТ" "Ц" w2 "5" "" z2
"ТЕКСТ" "Ц" w3 "5" "" z3
)
; Рисование штриховки:
(command "ШТРИХ" "ansi31" 30 0 l6 "";штриховка замкнутых
"ШТРИХ" "ansi31" 30 0 l3 "";полилиниями областей
)
)