Контрольная работа: Построение линии пересечения объёмных геометрических объектов
(setq dphi (/ (* 10 pi) 180))
(setq phi 0)
(while (<= phi (* 2.0 pi))
(command "line" (list 0 0 0) (list (* r (cos phi)) (* r (sin phi)) z))
(command)
(setq phi (+ phi dphi))
)
)
; Ellipse in YZ
(defun ell_Y(fy fz)
(setq xmax 90.0)
(setq dx 10.0)
(setq dy 10.0)
(setq x -90.0)
(while (<= x xmax)
(setq ya 0.0)
(setq yk (sqrt (- (* 90.0 90.0) (* x x))))
(setq z (* fz (sqrt (- 8100.0 (* x x)))))
(setq p1 (list x ya z))
(while (> (- yk ya) dy)
(setq ya (+ ya dy))
(setq y (* fy ya))
(setq z (* fz (sqrt (- 8100.0 (* x x) (* y y)))))
(setq p2 (list x y z))
(command "line" p1 p2 "")
(setq p1 p2)
)
(setq y (* fy yk))
(setq p2 (list x y 0.0))