Тема: Помогите разобораться
Есть простая трех мерная деталь. Строиться она из параллелепипедов.
Значения "l" - длины элементов по ОХ
Значения "s" - длины элементов по ОY
Значения "h" - длины элементов по ОZ
Проблема в построении второго примитива, он должне пересекаться с первым.
Проверял координаты они верные для построение, но при этом второй приметив строиться как примыкание, а не пересечение.
(defun DZ (/ x1 y1 z1 l1 s1 h1 l2 s2 h2 l3 s3 h3) ;первый примитив (setq x1 (getreal "Введите начальный x1:")) (setq y1 (getreal "Введите начальный y1:")) (setq z1 (getreal "Введите начальный z1:")) (setq l1 (getreal "Введите длину 1го элемента l1:")) (setq s1 (getreal "Введите ширину 1го элемента s1:")) (setq h1 (getreal "Введите высоту 1го элемента h1:")) (setq P1 (list x1 y1 z1)) (command "_box" P1 "_L" l1 s1 h1) (setq b1 (entlast)) ;второй примитив (setq l2 (getreal "Введите длину 2го элемента l2:")) ;(setq s2 (getreal "Введите ширину 2го элемента s2:")) (setq h2 (getreal "Введите высоту 2го элемента h2:")) (setq x2 (- (+ x1 l1) l2)) (setq y2 y1) (setq z2 z1) (setq P2 (list x2 y2 z2)) (command "_box" P2 "_L" l2 s1 h2) (setq b2 (entlast)) ;третий примитив ;(setq l3 (getreal "Введите длину 3го элемента l3:")) ;(setq s3 (getreal "Введите ширину 3го элемента s3:")) ;(setq h3 (getreal "Введите высоту 3го элемента h3:")) ;(setq x3 x1) ;(setq y3 (+ (- (/ s1 2.0) (/ s3 2.0)) (/ s3 2.0))) ;(setq z3 z1) ;(setq P3 (list x3 y3 z3)) ;(command "_box" P3 "_L" l3 s3 h3) (setq b3 (entlast)) )
Заранее спасибо.