首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
 Dreamweaver | Flash
 Fireworks  | Frontpage
 HTML/CSS  | Javascript
 Photoshop  | CorelDraw
 AuotoCAD   | Illustrator
 Freehand
 3DMax    | Authorware
 Director   | Maya
 PP点点通 | 迅雷 | BT
 eMule | FlashGet | Nero
 Ghost | Outlook | IE
 Maxthon | Office
 QQ | MSN | 网易泡泡
 Skype | 雅虎通 | 新浪UC

最新文章

您现在的位置: 中国IT实验室 >> 平面设计 >> AutoCAD学习教程 >> 正文

CAD中自动画管线图的LISP程序




ChinaItLab  2006-5-7  保存本文   推荐给好友  QQ上看本站  收藏本站


◆ 网页平面多媒体培训、认证考试免费咨询热线:400-700-5807   进入网络咨询平台

    画一些管路原理图时,当代表不同管路的直线在图中相交时,需将在交点处的某一直线断开,再用一半圆连接两断点,使用下面这个LISP编写的程序,只用键入"brel"的命令,其它的就由电脑去完成了。

    程序中使用"break"命令截断需要被断开的管线,再用"arc"命令画一半圆连接两断点。变量p读取管线交点;p1、p2为点p的左右或上下两点;p3为连接p1、p2半圆的中点。由于使用"break"命令时若AUTOCAD环境处于对象捕捉方式(OSMODE≠0),则"break"命令截断的p1、p2两点可能为变为p1、p2附近的捕捉点。所以程序开始时用变量myosmode记录系统变量OSMODE,而后设置OSMODE为0,程序结束后再设置还原OSMODE.变量horn判断用户需要断开的是水平线还是垂直线。

    (defun c:brel(/myosmode horv p p1 p2 p3)

    (setq myosmode (getvar "OSMODE"))

    (setvar "OSMODE" 0)

    (setq p (getpoint "\nSelect point to break:"))

    (initget 1 "H V")

    (setq horv (getkword " Direction[H/V]?"))

    (if (= horv "H")

    (progn(setq p1 (list (- (car p) 1.5) (cadr p)))

    (setq p2 (list (+ (car p) 1.5) (cadr p)))

    (setq p3 (list (car p) (+ (cadr p) 1.5))))

    (progn(setq p1 (list (car p) (- (cadr p) 1.5)))

    (setq p2 (list (car p) (+ (cadr p) 1.5)))

    (setq p3 (list (+ (car p) 1.5) (cadr p))))

    (command "break" p1 p2)

    (command "arc" p1 p3 p2)

    (setvar "OSMODE" myosmode)

    (princ))

    (princ "\nStart command with brel which will break a line and join it with an arc.")

【责编:Peng】


 相关文章  推荐文章
体验AutoCAD 2009 新特性
教你用CAD绘制弹簧
用AUTOCAD制作锣丝钉
巧用CAD极轴追踪和对象捕捉追踪绘图?
CAD草图设置
CAD中直接画箭头的命令的一个方法
用中望CAD自定义标题栏
巧用中望CAD拾取
CAD外挂程序简繁切换
点画线比例如何确定?
 文章评论