;;; 有趣的trim和extend的结合 * ;;; 初始创意Stig Madsen * ;;; 用途,选择一根直线,再选择其他直线段Line, * ;;; 后选Line会自动延伸extend或者修剪trim * ;;; qjchen之修改,重写大部分代码,将边界线改为更多类型 * ;;; 之中使用了 xdcad 狂刀的求两物体交点的代码,谢谢狂刀兄 * (defun C:q ( / edge ep i int line linename liness sp) (vl-load-com) (while (not edge) (setq edge (car (entsel "\n 请选择边界线:"))) (redraw edge 3) ) (prompt "\n 请选择需要extend或者trim的直线段: ") (if (setq i 0 liness (ssget '((0 . "LINE"))) ) (repeat (sslength liness) (setq line (entget (ssname liness i)) sp (cdr (assoc 10 line)) ep (cdr (assoc 11 line)) ) (if (setq int (nth 0 (x_intlst edge (ssname liness i) acExtendOtherEntity))) (if (< (distance int sp) (distance int ep)) (entmod (subst (cons 10 int)(assoc 10 line) line)) (entmod (subst (cons 11 int) (assoc 11 line)line)) ) ) (setq i (1+ i)) ) (princ "\n 没有找到需要被extend或者trim的直线段") ) (redraw edge 4) ) ;;; by 狂刀 at xdcad (defun x_intlst (obj1 obj2 param / intlst1 intlst2 ptlst) (if (= 'ENAME (type obj1)) (setq obj1 (vlax-ename->vla-object obj1)) ) (if (= 'ENAME (type obj2)) (setq obj2 (vlax-ename->vla-object obj2)) ) (setq intlst1 (vlax-variant-value (vla-intersectwith obj1 obj2 param))) (if (< 0 (vlax-safearray-get-u-bound intlst1 1)) (progn (setq intlst2 (vlax-safearray->list intlst1)) (while (> (length intlst2) 0) (setq ptlst (cons (list (car intlst2) (cadr intlst2) (caddr intlst2)) ptlst ) intlst2 (cdddr intlst2) ) ) ) ) ptlst ) (princ "\n By qjchen@gmail.com, 有趣的trim和extend的结合,命令名:q") (princ)
您还没有登录,请您登录后再发表评论
《AutoLISP实用编程四例》是一篇关于利用AutoLISP语言进行Autodesk AutoCAD二次开发的文章。AutoLISP是AutoCAD内置的一种编程语言,它为用户提供了便捷的方式来扩展AutoCAD的功能。文章中列举了四个具体的编程实例,...
50. LSP: 加载LISP程序文件。 51. DSVIEWER: 三维视图窗口。 52. STYLE: 文本样式设置。 53. SCALE: 缩放命令。 54. SNAP: 捕捉模式。 55. DTEXT: 创建单行文字(*TEXT)。 56. Ctrl+Y: 重做。 57. Ctrl+Z: ...
8. acad.lsp和acadapp.lsp是AutoLISP脚本文件,通常用于自定义和扩展AutoCAD的命令和功能。 9. acad.dwt是AutoCAD的模板文件,用于基于预设的设置和内容快速启动新图形。 10. UCSICON:是“用户坐标系统的图标”...
3. **注册LISP程序和VLSX插件**:通过appload命令注册PCCAD特有的LISP程序和VLSX插件,如acad.lsp、pccadbas.lsp、supedit.lsp、dimtool.vlx和th_extend.vlx等,这些程序和插件提供了PCCAD的核心功能,是实现整合后...
14. TRIM和EXTEND:修剪(TRIM)和延伸(EXTEND)命令,调整相交线段。 15. 配合使用SELECT和FILTER:选择特定类型的对象,如圆或线。 16. 使用WBLOCK创建块:将常用图形保存为块,便于重复使用。 17. 插入外部参照...
用于加载外部编写的AutoLISP程序。 - **AV**:打开视图对话框(Dsviewer)。管理视图,包括保存和恢复视图。 - **SE**:打开对象自动捕捉对话框。自定义对象捕捉点的类型。 - **ST**:打开字体设置对话框(Style)。...
相关推荐
《AutoLISP实用编程四例》是一篇关于利用AutoLISP语言进行Autodesk AutoCAD二次开发的文章。AutoLISP是AutoCAD内置的一种编程语言,它为用户提供了便捷的方式来扩展AutoCAD的功能。文章中列举了四个具体的编程实例,...
50. LSP: 加载LISP程序文件。 51. DSVIEWER: 三维视图窗口。 52. STYLE: 文本样式设置。 53. SCALE: 缩放命令。 54. SNAP: 捕捉模式。 55. DTEXT: 创建单行文字(*TEXT)。 56. Ctrl+Y: 重做。 57. Ctrl+Z: ...
8. acad.lsp和acadapp.lsp是AutoLISP脚本文件,通常用于自定义和扩展AutoCAD的命令和功能。 9. acad.dwt是AutoCAD的模板文件,用于基于预设的设置和内容快速启动新图形。 10. UCSICON:是“用户坐标系统的图标”...
3. **注册LISP程序和VLSX插件**:通过appload命令注册PCCAD特有的LISP程序和VLSX插件,如acad.lsp、pccadbas.lsp、supedit.lsp、dimtool.vlx和th_extend.vlx等,这些程序和插件提供了PCCAD的核心功能,是实现整合后...
14. TRIM和EXTEND:修剪(TRIM)和延伸(EXTEND)命令,调整相交线段。 15. 配合使用SELECT和FILTER:选择特定类型的对象,如圆或线。 16. 使用WBLOCK创建块:将常用图形保存为块,便于重复使用。 17. 插入外部参照...
用于加载外部编写的AutoLISP程序。 - **AV**:打开视图对话框(Dsviewer)。管理视图,包括保存和恢复视图。 - **SE**:打开对象自动捕捉对话框。自定义对象捕捉点的类型。 - **ST**:打开字体设置对话框(Style)。...