alanjt 发表于 2022-7-6 11:15:43

对的

alanjt 发表于 2022-7-6 11:18:15

顺便说一句,你应该发布你的完整/固定例程,这可能会帮助其他人眨眼:

Tharwat 发表于 2022-7-6 11:22:42

在这里,我毫不犹豫地向所有亲爱的成员致意。。。。。。。享受它。
(defun c:arrow (/ p1 p2 dist vrt pickangle p3 p4 old new)
(setq p1 (getpoint        "\nSpecify Start point of Arrow:")
   p2 (getpoint p1         "\nSpecify End point of Arrow:")
   dist (distance p1 p2)
   vrt (/ dist 3)
   pickAngle (angle p1 p2)
    p3 (polar p2 (+ pickAngle (/ pi 2)) vrt)
    p4 (polar p2 (- pickAngle (/ pi 2)) vrt))
(setq old (getvar 'osmode)
   new (setvar 'osmode 0))
(vl-cmdf "_.pline" p1 "_w" 0 0 p3 p4 "_c" )
(vl-cmdf "_.-hatch" "_s" (entlast) "" "_p" "_solid" "" "")
(setvar 'osmode old)
(princ))
 
塔瓦特

alanjt 发表于 2022-7-6 11:26:31

请参阅修订。。。
 
(defun c:arrow (/ p1 Len Alen p2 p3)
(if (and (setq p1 (getpoint "\nSpecify Start point of Arrow:"))
          (setq p2 (getpoint p1 "\nSpecify End point of Arrow:"))
   )
   (progn
   (setq dist      (distance p1 p2)
         vrt       (/ dist 3)
         pickAngle (angle p1 p2)
         p3      (polar p2 (+ pickAngle (/ pi 2)) vrt)
         p4      (polar p2 (- pickAngle (/ pi 2)) vrt)
   )
   (vl-cmdf "_.pline" "_non" p1 "_w" 0 0 "_non" p3 "_non" p4 "_c")
   (vl-cmdf "_.-hatch" "_s" (entlast) "" "_p" "_solid" "")
   )
)
(princ)
)

Tharwat 发表于 2022-7-6 11:28:52

非常强壮,速度更快。当然。
没有评论。
 
是什么让它在执行常规方面如此强大?
它是IF函数吗?
 
 
谢谢

alanjt 发表于 2022-7-6 11:33:12

 
请参阅注释。。。
 
(defun c:arrow (/ p1 Len Alen p2 p3)
(if (and (setq p1 (getpoint "\nSpecify Start point of Arrow:")) ; notice these are broken up to avoid error if the first is not defined, etc.
          (setq p2 (getpoint p1 "\nSpecify End point of Arrow:")) ; only if these two variables are filled, will the routine continue
   )
   (progn
   (setq dist      (distance p1 p2)
         vrt       (/ dist 3)
         pickAngle (angle p1 p2)
         p3      (polar p2 (+ pickAngle (/ pi 2)) vrt)
         p4      (polar p2 (- pickAngle (/ pi 2)) vrt)
   )
   (vl-cmdf "_.pline" "_non" p1 "_w" 0 0 "_non" p3 "_non" p4 "_c") ; if you add "_non" before defining a point in any command, it will ignore any running OSnaps. Thus, you don't have to worry with osmode
   (vl-cmdf "_.-hatch" "_s" (entlast) "" "_p" "_solid" "")
   )
)
(princ)
)

Tharwat 发表于 2022-7-6 11:34:06

我说不出话来。
你很好地说服了我。
 
谢谢Alan
 
我的问候
 
塔瓦特

jammie 发表于 2022-7-6 11:38:50

欢迎你,Michaels,很高兴你觉得这很有帮助

jammie 发表于 2022-7-6 11:43:13

 
没问题,欢迎你tharwat313

alanjt 发表于 2022-7-6 11:45:20

享受
页: 1 [2]
查看完整版本: 画箭