本帖最后由 作者 于 2006-3-18 17:13:47 编辑
1、曲线任意等分开口 - (load "xyp_lib.vlx") ;版本 V.20060314
- ;|下载和加载通用函数(可在签名栏直接下载后放到搜索路径下)
- 利用以下任何一种方式(首选第一种)即可加载和运行通用函数内的所有子程序:
- ★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]dispbbs.asp?boardID=3&ID=37554&page=1[/url]
- |;
- ;;;等分线并开口 : 等分曲线并打断,使线长相等、缺口长相等 <ewenhui>
- ;;;qxkk(曲线开口)
- (defun c:qxkk ()
- (CMDLA0)
- (setvar "osmode" 0)
- (setq INT (UINT 7 "" "\n等分份数" INT)
- NO2 (UDIST 1 "" "\n缺口长度" NO2 nil)
- SSS (ssget '((0 . "CIRCLE,ELLIPSE,*LINE,ARC")))
- nnn -1
- )
- (while (setq e (ssname sss (setq nnn (1+ nnn))))
- (setq leng (xyp-get-CurveLength E)
- leng1 (/ (- leng (* (- INT 1) no2)) INT)
- )
- (if (> leng1 0)
- (repeat (- INT 1)
- (setq pt1 (xyp-get-CurvePointAtDist e leng1)
- pt2 (xyp-get-CurvePointAtDist e (+ leng1 no2))
- )
- (command "break" e pt1 pt2)
- (command "select" "l" "")
- (setq s1 (ssget "p")
- e (ssname s1 0)
- )
- )
- (princ "\n缺口太大")
- )
- )
- (CMDLA1)
- )
2、看看undo命令的选项
3、偶认为是误导
|