错误太多:引号″、(=just-ang、getvalue、(*pi 0.5)、(1+index)、……
重新修改:
 - [FONT=courier new]
- (load "xyp_lib")
- ;|加载通用函数(可在签名栏直接下载)
- 如果已经下载xyp_lib并放到搜索路径下可以不再下载!
- 利用以下任何一种方式(首选第一种)即可加载和运行通用函数内的所有子程序:
- ★1·在acad.lsp中增加(load"xyp_lib")
- ■2·在每个程序内增加(load"xyp_lib")
- ■3·在command下,输入(load"xyp_lib")
- ■4·在菜单.mnl中增加(load"xyp_lib")
- ■5·将xyp_lib.vlx文件直接拽到cad屏幕
- [COLOR=red] ★通用函数下载地址:[/COLOR]
- [url]http://www.xdcad.net/forum/attachment.php?s=&postid=1606661[/url]
- |;
- ;;;连续水平或垂直标注
- ;;;File Name : dimcont.lsp
- ;;;Function : Continue Dimension
- (defun c:dimcont ()
- (cmdla0)
- (setvar "osmode" 0)
- (setvar "ORTHOMODE" 1)
- (setq spt (getpoint "\n起点 : ")
- ept (getpoint spt "\n终点 : ")
- just-ang (angle spt ept)
- ss (ssget "F" (list spt ept))
- index -1
- ptlist nil
- )
- (if (or (= just-ang 0)
- (= just-ang pi)
- (= just-ang (* pi 0.5))
- (= just-ang (* pi 1.5))
- )
- (progn
- (while (setq et (ssname ss (setq index (1+ index))))
- (if (or (= (cdr (assoc 0 (entget et))) "POLYLINE")
- (= (cdr (assoc 0 (entget et))) "LWPOLYLINE")
- )
- (progn
- (command "EXPLODE" et)
- (setq et (entlast))
- )
- )
- (setq etlist (entget et)
- pt1 (cdr (assoc 10 etlist))
- pt2 (cdr (assoc 11 etlist))
- ptlist (cons (inters pt1 pt2 spt ept nil) ptlist)
- )
- )
- (setq lastpt (car ptlist)
- ptlist (cdr ptlist)
- )
- (mkla "尺寸标注" 3)
- (while (setq pt (car ptlist))
- (cond ((or (= just-ang 0) (= just-ang pi))
- (command "dim1" "hor" lastpt pt pt1 "")
- (setq ptlist (cdr ptlist)
- lastpt pt
- )
- )
- ((or (= just-ang (* pi 0.5)) (= just-ang (* pi 1.5)))
- (command "dim1" "ver" lastpt pt pt "")
- (setq ptlist (cdr ptlist)
- lastpt pt
- )
- )
- (t (princ))
- )
- )
- )
- )
- (cmdla1)
- )
- [/FONT]
|