lucas_3333 发表于 2014-3-10 20:00:29

ZZXXQQ 发表于 2014-3-10 19:55 static/image/common/back.gif
PLINE?直接炸开不就是直线了。

谢谢Z版,但是不能选择箭头在直线的哪一侧了

davide888 发表于 2014-3-11 09:35:38

顶了先         

恕放之生命 发表于 2014-8-5 21:45:40

谢谢分享。 

ZZXXQQ 发表于 2014-8-6 07:52:20

;线变箭头 明经 ZZXXQQ 2014.8.6
(defun c:tt ()
(setvar "CMDECHO" 0)
(if (setq ss (ssget '((0 . "LINE,LWPOLYLINE")))) (progn
    (repeat (setq i (sslength ss))
      (setq ent (entget (ssname ss (setq i (1- i)))))
      (if (= (cdr(assoc 0 ent)) "LINE") (progn
      (setq p1 (cdr(assoc 10 ent))
            p2 (cdr(assoc 11 ent)))
       (command "_.LEADER" p1 p2 "" "" "N")
      ) (progn
       (setq plst (list))
       (foreach x ent (if (= (car x) 10) (setq plst (cons (cdr x) plst))))
       (if (setq fx (getpoint "\n端点: "))
         (if (< (distance fx (last plst)) (distance fx (car plst)))
         (setq plst (reverse plst))
         )
       )
       (setq p1 (car plst))
       (command "_.LEADER" P1)
       (mapcar '(lambda (a) (command a)) (cdr plst))
       (command "" "" "N")
   ))
    )
    (command "_.ERASE" ss "")
))
(setvar "CMDECHO" 1)
(princ)
)

hooboxu 发表于 2014-8-29 14:37:45

不错。赞一个

dabingrain 发表于 2016-6-1 10:52:32

本帖最后由 dabingrain 于 2016-6-1 12:35 编辑

;线变箭头 明经 ZZXXQQ 2014.8.6
(defun c:tt ()
(setvar "CMDECHO" 0)
(if (setq ss (ssget ":S" '((0 . "LINE,LWPOLYLINE"))))
    (progn
      (repeat (setq i (sslength ss))
      (setq i (1- i))
      (setq en (ssname ss i))
      (redrawen 3)
      (setq ent (entget en))
      (if (= (cdr(assoc 0 ent)) "LINE")
          (progn
            (setq
            p1 (cdr(assoc 10 ent))
            p2 (cdr(assoc 11 ent))
            )
            (if (setq fx (getpoint "\n端点: "))
            (if (< (distance fx p1) (distance fx p2))
                (command "_.LEADER" p1 p2 "" "" "N")
                (command "_.LEADER" p2 p1 "" "" "N")
            )
            )
          )
          (progn
            (setq plst (list))
            (foreach x ent
            (if (= (car x) 10)
                (setq plst (cons (cdr x) plst))
            )
            )
            (if (setq fx (getpoint "\n端点: "))
            (if (< (distance fx (last plst)) (distance fx (car plst)))
                (setq plst (reverse plst))
            )
            )
            (setq p1 (car plst))
            (command "_.LEADER" P1)
            (mapcar '(lambda (a) (command a)) (cdr plst))
            (command "" "" "N")
          )
         
      )
      (redrawen 4)
      )
      (command "_.ERASE" ss "")
    )
   
)
(setvar "CMDECHO" 1)
(princ)
)

疯球 发表于 2018-6-4 14:43:28

谢谢分享!!!!

young-yi 发表于 2018-6-4 14:56:17

w245272914 发表于 2018-6-6 11:49:13

dabingrain 发表于 2016-6-1 10:52


能不用端點去判斷箭頭就好了,直線自由點在屏幕上,離那個端點近自由判斷箭頭在那邊,這樣操作比較爽
页: 1 [2]
查看完整版本: 刷直线为引线(Z版提供)