Тема: Касательная в AutoCAD'e

Нужен КАЧЕСТВЕННЫЙ совет:)
Не могу провести касательную к дуге под заданным углом:(
Если есть "спецы" прошу откликнуться и помочь, так как
СИЛ МОИХ БОЛЬШЕ НЕТУ!!!
Help!!!

Re: Касательная в AutoCAD'e

Я так думаю: Надо из центра дуги провести линию под углом в 90 градусов к тому углу, который нужен. Эта линия будет пересекать дугу либо в двух точках, либо в одной, либо не пересекать. Потом из той точки пересечения, которая нужна, рисуешь линию - перпендикуляр к нарисованной. Вот и касательная.
PS
... думаю, что проблем с кодированием не будет. Ну мобыть аналитическую геометрию вспомнить придётся...

Re: Касательная в AutoCAD'e

Такую задачу я когда-то решал. Посылаю проги. У меня они работали (Асад 14.5).

(defun angleout ()
   (setvar "OSMODE" 0)
   (setvar "OSMODE" 1)
   (setq b1 nil
             name9 nil)
   (setq a1 (getpoint "Указать точку привязки")
             xa (nth 0 a1)
             ya (nth 1 a1)
             a2 (ssget a1)
   )
   (if (/= a2 nil)
     (progn
         (setq a21 (ssname a2 0)
                   a3 (entget a21)
                   dx1 (assoc 0 a3) 
                   name9 (cdr dx1)
                   b1 name9
         )
      )
   )
   (cond ((= name9 "INSERT") (loadstr))
              ((= name9 "LINE") (loadline))
              ((= name9 "ARC") (loadkurve))
              ((= name9 nil) (setq ALFA1 0))
   )           
)


(defun loadkurve ()
; запиcь с координатами центра дуги (код 10)
   (setq dx1 (assoc 10 a3))
   (setq d94 dx1
             d944 (cdr d94)
             d944x (nth 0 d944)
             d944y (nth 1 d944)
   )
; запиcь со значением радиуса (код 40)
   (setq dx1 (assoc 40 a3))
   (setq d84 dx1
             d844r (cdr d84)
   )
; запиcь со значением начального угла поворота (код 51)
   (setq dx1 (assoc 51 a3))
   (setq dbetax dx1
             dbeta1 (cdr dbetax)
   )
; запиcь со значением конечного угла поворота (код 50)
   (setq dx1 (assoc 50 a3))
   (setq dbetay dx1
             dbeta2 (cdr dbetay)
   )
   (setq XNK (+ d944x (* d844r (cos dbeta1)))
             YNK  (+ d944y (* d844r (sin dbeta1)))
             XKK (+ d944x (* d844r (cos dbeta2)))
             YKK  (+ d944y (* d844r (sin dbeta2)))
             XWU (+ d944x (* d844r (cos (/ (+ dbeta1 dbeta2) 2))))
             YWU (+ d944y (* d844r (sin (/ (+ dbeta1 dbeta2) 2)))) 
   )
   (ugol9 xa ya XWU YWU)
   (print (grad ALFA1))
)

Re: Касательная в AutoCAD'e

Сапасибо - ето не то слово каким я смогу выразить бдагодарность!!!
Если чем-то смогу отвветить сделаю ето с удовольствием!!!
Пиши!
С наилучшими пожеланиями Алексей