Baber62 发表于 2022-7-5 18:22:51

平分线并绘制垂线

正在寻找快速修复方法。我需要平分一条线,从测量线的中点画一条垂直线。如果可以动态完成这项工作,即可以在直线的任一侧绘制垂直线,并且可以绘制到任意长度,那将是非常棒的。
 
任何协助都将不胜感激。

Tyke 发表于 2022-7-5 18:27:32

在OSNAP中设置中点和垂直。打开动态输入。按F11切换“object snap trace”(对象捕捉跟踪)(我认为这在英文版本中就是它的名称,如果不查看屏幕左侧的底部项目并观察,你会看到一个图标打开和关闭,请确保它处于打开状态)。启动line命令并捕捉到线的中点,当您将光标移开时,您将得到一条虚线,您只需输入线的长度,就可以得到您想要的。

Dadgad 发表于 2022-7-5 18:32:42

只要遵循泰克的指示,你就会成为一个非常快乐的露营者。
图中圈出的3个图标是Tyke所指的图标
它们是对象捕捉、对象捕捉跟踪和从左到右的动态输入。
 
可以单击鼠标左键打开或关闭它们,
也可以分别用F3、F11和F12来打开和关闭它们。

Baber62 发表于 2022-7-5 18:35:56

谢谢Tyke,它工作得很好,但我正在寻找一个lisp例程,因为我有大量的线来绘制垂直线。

Lee Mac 发表于 2022-7-5 18:41:28

使用此旧程序并单击中点:
 
(defun c:per ( / *error* e o p )
   (defun *error* ( m )
       (if o (progn (setvar 'orthomode o) (command "_.ucs" "_p")))
       (princ)
   )
   (if (and
         (setq p (getpoint "\nSpecify first point: "))
         (setq e (car (nentselp p)))
       )
       (progn
         (setq p (trans p 1 0))
         (command "_.ucs" "_ob" e)
         (setq o (getvar 'orthomode))
         (setvar 'orthomode 1)
         (command "_.line" "_non" (trans p 0 1))
         (while (< 0 (getvar 'cmdactive)) (command "\\"))
         (setvar 'orthomode o)
         (command "_.ucs" "_p")
       )
   )
   (princ)
)

Tyke 发表于 2022-7-5 18:41:56

 
这就是李。打开动态输入后,你能输入行长吗?

Lee Mac 发表于 2022-7-5 18:46:21

或者,
 
(defun c:per ( / e p q )
   (if (setq e (ssget "_+.:E:S" '((0 . "LINE"))))
       (progn
         (setq e (entget (ssname e 0))
               p (trans (cdr (assoc 10 e)) 0 1)
               q (trans (cdr (assoc 11 e)) 0 1)
         )
         (vl-cmdf "_.line" "_non"
               (mapcar '(lambda ( a b ) (/ (+ a b) 2.0)) p q)
               (strcat "<" (angtos (+ (angle p q) (/ pi 2.0))))
               "\\" ""
         )
       )
   )
   (princ)
)

Lee Mac 发表于 2022-7-5 18:51:20

 
Tharwat尝试得很好,但不完全是:
 
 
请考虑以下情况:
(defunc:test(/a b d e g m p q)(if(setqe(ssget'((0.“LINE”))(setqe(entget)(ssr]名称e 0)p(trans(cdr(assoc10 e))0 1)q(trans(cdr(assoc11 e))0 1)m('((a b)(+a b)2.0))p q)a(LAMBER](+a(/pi2.0))(而[=5(car(setqg(grreadt13.0))(redraw)(setq(distance[m g)q(polar[m b(if[(

Baber62 发表于 2022-7-5 18:54:32

谢谢李的更正,它非常准确。

Lee Mac 发表于 2022-7-5 19:00:13

很好,谢谢。
页: [1] 2
查看完整版本: 平分线并绘制垂线