fixo 发表于 2022-7-6 12:49:26

 
哎呀,我的错
你说得对,谢谢
尝试编辑的版本
编辑:我在代码末尾添加了错过的双引号
 
~'J'~
管LSP

stevesfr 发表于 2022-7-6 12:54:21

 
现在我在加载时得到这个。。。
 
命令:appload
管道。lsp已成功加载。
命令:;错误:输入的字符串格式不正确
命令:

Lee Mac 发表于 2022-7-6 12:55:57

试试这个Steve,
 



(defun C:pipe (/ *error* ang1 ang2 cec elist endang osm p1 p1r p1u p2 p2r p2u p3 p4
         pline pmid points pt1 pt2 pwid startang tick)

(defun *error*    (msg)

(if
   (vl-position
   msg
   '("console break"
   "Function cancelled"
   "quit / exit abort"
   )
   )
    (princ "   >> Error occurs!")
    (princ msg)
    )
(command "._undo" "_E")

(if osm (setvar "osmode" osm))
(if cec (setvar "cecolor" cec))
(if pwid (setvar "plinewid" pwid))
(setvar "cmdecho" 1)
)
(command "._undo" "_BE")
(setq osm (getvar "osmode"))
(setvar "osmode" 0)
(setq cec (getvar "cecolor"))
(setvar "cecolor" "cyan")
(setq pwid (getvar "plinewid"))
(setvar "plinewid" 0)
(setvar "cmdecho" 0)
(command "._pline")

(while (= 1 (logand 1 (getvar "cmdactive")))
(command pause))

(setq pline(entlast)
   points (vl-remove-if
          (function not)
          (mapcar
      (function (lambda (x)
                (if (= 10 (car x))
                  (cdr x))))
      (setq elist (entget pline))
      )
          )
   tick   2.5 ;<-- ticks length
   )
(command "._zoom" "_O" pline "")
(setq startang (angle (car points) (cadr points))
   endang   (angle (nth (- (length points) 2) points) (last points))
   )

(setq p1   (polar (car points) (+ startang (/ pi 2)) (/ tick 2))
   pmid (mapcar (function (lambda (a b) (/ (+ a b) 2)))
          (car points)
          p1)
   p2   (polar pmid (+ startang pi) (/ tick )
   p4   (polar (car points) (- startang (/ pi 2)) (/ tick 2))
   pmid (mapcar (function (lambda (a b) (/ (+ a b) 2)))
          (car points)
          p4)
   p3   (polar pmid startang (/ tick )
   )

(setvar "cecolor" "blue")

(command "_spline" "_non" p1 "_non" p2 "_non" p3 "_non" p4 "" "" "")

(setq p1   (polar (last points) (+ endang (/ pi 2)) (/ tick 2))
   pmid (mapcar (function (lambda (a b) (/ (+ a b) 2)))
          (last points)
          p1)
   p2   (polar pmid (+ endang pi) (/ tick )
   p4   (polar (last points) (- endang (/ pi 2)) (/ tick 2))
   pmid (mapcar (function (lambda (a b) (/ (+ a b) 2)))
          (last points)
          p4)
   p3   (polar pmid endang (/ tick )
   )
(command "_spline" "_non" p1 "_non" p2 "_non" p3 "_non" p4 "" "" "")

(setvar "cecolor" "yellow")

(while (> (length points) 2)

(setq    ang1 (+ (angle (car points) (cadr points)) pi)
   ang2 (angle (cadr points) (caddr points))
   pt1(polar (cadr points) ang1 tick)
   p1u(polar pt1 (+ ang1 (/ pi 2)) (/ tick 2))
   p1r(polar pt1 (- ang1 (/ pi 2)) (/ tick 2))
   pt2(polar (cadr points) ang2 tick)
   p2u(polar pt2 (+ ang2 (/ pi 2)) (/ tick 2))
   p2r(polar pt2 (- ang2 (/ pi 2)) (/ tick 2))
   )
(setvar "plinewid" (/ tick )

(command "._pline" "_non" p1u "_non" p1r "")

(command "._pline" "_non" p2u "_non" p2r "")

(setq points (cdr points))
)
(*error* "")
(princ)
)
(princ "\n\t\t***\tType PIPE to execute\t***")
(princ)




fixo 发表于 2022-7-6 13:01:25

很抱歉
命令提示符中的
代码结束(我就在这里写的)
 
(原理“\n\t\t***\t键入要执行的管道”
 
请再试一次
 
~'J'~

stevesfr 发表于 2022-7-6 13:05:46

sameo sameo问题依然存在
我一直在查看\u sysvdlg以查看是否有任何问题,我找不到设置在哪里打乱了我的Acad8中的某些内容,甚至重新启动并从头开始acad。。
这仍然是信息。。。
命令:管道
._撤消当前设置:自动=打开,控制=全部,合并=是
输入要撤消的操作数或[自动/控制/开始/结束/标记/返回]
:_BE
准备放弃。。。谢谢你的努力,我被难住了。。其他人对Acad8有任何问题??
s

Lee Mac 发表于 2022-7-6 13:08:05

 
是的,这是正确的-你有没有试着点击屏幕上的那一点?

stevesfr 发表于 2022-7-6 13:12:32

 
是的,启动pline命令,然后当绘制两条或多条线时,按enter键生成最大化显示,就是这样。
页: 1 [2]
查看完整版本: 正在查找PLINE的LISP