AutoLISP在工程制图中对命令的简化应用
- 格式:pdf
- 大小:1.65 MB
- 文档页数:2
第2讲利⽤AutoLisp语⾔绘图第2讲利⽤AutoLisp语⾔绘图在AuotCAD绘制简单图形时,有三种主要⽅式:(1)图标菜单(2)下拉式菜单(3)命令⾏。
事实上还有另外⼀种绘图⽅式,即通过lisp语⾔实现绘制图形。
利⽤Lisp语⾔绘图的最⼤优点是可以实现批处理,降低劳动强度。
⼩知识:Lisp语⾔最⼤优势是和AutoCAD绘图结合的很好,这也是该语⾔⾄今仍未被淘汰的最主要原因。
1、简单的绘图语句⼏乎AuotCAD中所有的绘图及环境设置命令都可以通过程序调⽤!,利⽤Lisp语⾔编写绘图命令的窍门是⾸先在命令⾏下把绘图命令和对应的参数记住,然后⽤Lisp语⾔的格式书写出即可。
1.1 绘制直线(command "line" "0,0" "1,1" "")1.2 绘制圆(command "circle" "0,0" 5)1.3 绘制正多边形(command "polygon" 5 "0,0" "i" 5)(command "polygon" "5" "0,0" "i" "5")都正确1.4 新建图层(command "la yer" "m" "道路" "c" 2 "" "")请同学⾃⼰编写⾼度为2,起点位置在“0,0”,⽂字内容是“理⼯⼤”的程序2、⽤多条绘图语句表⽰复杂图形正常情况下图形都⽐较复杂,需要⽤多条语句编写,例如测绘中的下⽔井、路灯等符号。
例1、下⽔井的绘制(defun c:xsj()(command "circle" "0,0" 0.5)(command "line" "-0.5,0" "0.5,0" "")(command "line" "0,-0.5" "0,0.5" ""))3、循环控制语句例2、绘制同⼼圆例3、绘制可多次插⼊的下⽔井符号例4、绘制y=sinx 曲线4、课后练习题4.1 编写lisp 程序,绘制路灯图案,参照下⽔井程序,改写成可以多次插⼊的程序。
AUTOLISP程序设计技巧AUTOLISP(即AutoCAD Lisp)是一种用于AutoCAD软件的编程语言。
它基于Lisp语言,可以用于创建自定义命令和功能,以自动执行一系列任务。
在编写AUTOLISP程序时,可以采用一些技巧来提高代码的可读性和性能。
下面将介绍一些常用的AUTOLISP程序设计技巧。
1.变量命名:为了增加代码的可读性,应该选择具有描述性的变量名。
避免使用单个字母或简写的名称,而应使用有意义的名称来描述变量的用途或含义。
2.注释:在代码中使用适当的注释是非常有帮助的,可以解释代码的目的、逻辑和特定部分的功能。
注释应该清晰明了,不冗余,并使用大写字母或其他方法来突出显示。
3.函数:使用函数来分割代码段,以便在需要时可以多次调用相同的代码块。
函数的使用可以提高代码的可读性,并使其更容易维护。
4.错误处理:在代码中加入适当的错误处理机制非常重要,可以避免程序崩溃或产生不期望的结果。
使用条件语句和错误处理函数来检测和处理可能发生的错误。
5.循环:使用循环语句来处理重复性任务,并减少代码的冗余。
根据任务的特点选择合适的循环类型(例如FOR循环、REPEAT循环等)。
6.嵌套:在必要时使用嵌套结构,将代码组织成逻辑结构清晰的块。
使用适当的缩进和代码布局来增加代码的可读性。
7.字符串处理:AUTOLISP中的字符串处理功能非常强大,可以使用字符串函数来处理、操作和格式化字符串。
了解并熟练使用字符串函数可以提高代码的灵活性和功能。
8.数组和列表:使用数组和列表可以存储和处理多个值。
熟练使用与数组和列表相关的函数(如CAR、CDR、CONS、LIST等)可以简化代码并提高性能。
9. 命令行交互:通过与用户进行命令行交互,可以提高程序的交互性。
使用getstring、princ等函数来获取用户输入,并使用条件语句来根据输入执行相应的操作。
10.优化:编写高效的代码可以提高程序的性能。
使用较少的迭代步骤、减少不必要的计算、选择合适的数据结构等都可以提高程序的效率。
使用CAD进行程序化绘图的方法与示例CAD(计算机辅助设计)软件是现代工程设计中不可或缺的工具之一。
它可以大幅提高工作效率,提供精确的设计模型和绘图输出。
在CAD中,程序化绘图技术可以进一步提高设计工作的效率和准确性。
本文将介绍使用CAD进行程序化绘图的方法与示例。
在CAD中,我们可以通过编写脚本或使用宏来实现程序化绘图。
常见的CAD软件如AutoCAD、SolidWorks和CATIA等都提供了编程接口和相关的编程语言,如AutoLISP、VBA和C#等。
下面我们将以AutoCAD为例,介绍使用AutoLISP进行程序化绘图的方法与示例。
AutoLISP是AutoCAD的内置编程语言,它与AutoCAD的各种功能紧密结合,可以实现从基本绘图操作到自定义功能的自动化。
以下是使用AutoLISP进行程序化绘图的几个示例:1. 绘制矩形:我们可以使用AutoLISP编写一个简单的程序来绘制矩形。
下面是一个示例程序:```(defun c:draw-rectangle (/ p1 p2)(setq p1 (getpoint "\nEnter the first corner point: "))(setq p2 (getcorner p1 "\nEnter the opposite corner point: "))(command "RECTANG" p1 p2)```在AutoCAD中,我们可以运行该程序的命令`draw-rectangle`,然后按照提示,输入第一个和第二个角点,即可绘制一个矩形。
2. 绘制圆形:类似地,我们可以使用AutoLISP编写一个程序来绘制圆形。
下面是一个示例程序:```(defun c:draw-circle (/ center radius)(setq center (getpoint "\nEnter the center point: "))(setq radius (getdist "\nEnter the radius: "))(command "CIRCLE" center radius))```在AutoCAD中,我们可以运行该程序的命令`draw-circle`,然后按照提示,输入圆心和半径,即可绘制一个圆形。
命令修饰符命令.....COLOR 定义新对象的颜色COMPILE 编译形文件和PostScript字体文件CONE 创建三维实体圆锥CONVERT 优化AutoCAD R13或更早版本创建的二维多段线和关联填充CONVERTCTB 将颜色相关打印样式表(CTB)转换为命名打印样式表(STB) 2002版新增CONVERTPSTYLES 将当前图形的颜色模式由命名打印样式转换为颜色相关打印样式 2002版新增COPY 复制对象COPYBASE 带指定基点复制对象COPYCLIP 将对象复制到剪贴板 Ctrl+C键COPYHIST 将命令行历史记录文字复制到剪贴板COPYLINK 将当前视图复制到剪贴板中CUSTOMIZE 自定义工具栏、按钮和快捷键 2000i版新增CUTCLIP 将对象复制到剪贴板并从图形中删除对象 Ctrl+X键CYLINDER 创建三维实体圆柱DBCCLOSE 关闭“数据库连接”管理器DBLCLKEDIT 控制双击对象时是否显示对话框 2000i版新增DBCONNECT 为外部数据库表提供AutoCAD接口 Ctrl+6键DBLIST 列出图形中每个对象的数据库信息DDEDIT 编辑文字和属性定义DDPTYPE 指定点对象的显示模式及大小可透明使用DDVPOINT 设置三维观察方向DELAY 在脚本文件中提供指定时间的暂停可透明使用DIM(或DIM1)进入标注模式DIMALIGNED 创建对齐线性标注DIMANGULAR 创建角度标注DIMBASELINE 创建基线标注DIMCENTER 创建圆和圆弧的圆心标记或中心线DIMCONTINUE 创建连续标注DIMDIAMETER 创建圆和圆弧的直径标注DIMDISASSOCIATE 删除指定标注的关联性 2002版新增DIMEDIT 编辑标注DIMLINEAR 创建线性尺寸标注DIMORDINATE 创建坐标点标注DIMOVERRIDE 替换标注系统变量DIMRADIUS 创建圆和圆弧的半径标注DIMREASSOCIATE 使指定的标注与几何对象关联 2002版新增DIMREGEN 更新关联标注 2002版新增DIMSTYLE 创建或修改标注样式DIMTEDIT 移动和旋转标注文字DIST 测量两点之间的距离和角度可透明使用DIVIDE 定距等分DONUT 绘制填充的圆和环DRAGMODE 控制AutoCAD显示拖动对象的方式可透明使用DRAWORDER 修改图像和其他对象的显示顺序DSETTINGS 草图设置DSVIEWER 打开“鸟瞰视图”窗口DVIEW 定义平行投影或透视视图DWGPROPS 设置和显示当前图形的特性DXBIN 输入特殊编码的二进制文件EATTEDIT 增强的属性编辑 2002版新增EATTEXT 增强的属性提取 2002版新增EDGE 修改三维面的边缘可见性EDGESURF 创建三维多边形网格ELEV 设置新对象的拉伸厚度和标高特性可透明使用ELLIPSE 创建椭圆或椭圆弧ENDTODAY 关闭“Today(今日)”窗口 2000i版新增ERASE 从图形中删除对象 Del键ETRANSMIT 创建一个图形及其相关文件的传递集 2000i版新增EXPLODE 将组合对象分解为对象组件RMAT 管理渲染材质RMLIN 从RML文件将插入图形 2000i版新增ROTATE 绕基点移动对象ROTATE3D 绕三维轴移动对象RPREF 设置渲染系统配置RSCRIPT 创建不断重复的脚本RULESURF 在两条曲线间创建直纹曲面SAVE 用当前或指定文件名保存图形 Ctrl+S键SAVEAS 指定名称保存未命名的图形或重命名当前图形SAVEIMG 用文件保存渲染图像SCALE 在X、Y和Z方向等比例放大或缩小对象SCALETEXT 改变指定文字的大小并保持其位置不变 2002版新增SCENE 管理模型空间的场景SCRIPT 用脚本文件执行一系列命令可透明使用SECTION 用剖切平面和实体截交创建面域SELECT 将选定对象置于“上一个”选择集中SETUV 将材质贴图到对象表面SETVAR 列出系统变量或修改变量值SHADEMODE 在当前视口中着色对象SHAPE 插入形SHELL 访问操作系统命令SHOWMAT 列出选定对象的材质类型和附着方法SKETCH 创建一系列徒手画线段SLICE 用平面剖切一组实体SNAP 规定光标按指定的间距移动可透明使用SOLDRAW 在用SOLVIEW命令创建的视口中生成轮廓图和剖视图SOLID 创建二维填充多边形SOLIDEDIT 编辑三维实体对象的面和边SOLPROF 创建三维实体图像的剖视图SOLVIEW 在布局中使用正投影法创建浮动视口来生成三维实体及体对象的多面视图与剖视图SPACETRANS 在模型空间和图纸空间之间转换长度值 2002版新增SPELL 检查图形中文字的拼写可透明使用SPHERE 创建三维实体球体SPLINE 创建二次或三次(NURBS)样条曲线SPLINEDIT 编辑样条曲线对象STANDARDS 管理图形文件与标准文件之间的关联性 2002版新增STATS 显示渲染统计信息STATUS 显示图形统计信息、模式及范围可透明使用STLOUT 将实体保存到ASCII或二进制文件中STRETCH 移动或拉伸对象STYLE 设置文字样式可透明使用STYLESMANAGER 显示“打印样式管理器”SUBTRACT 用差集创建组合面域或实体SYSWINDOWS 排列窗口TABLET 校准、配置、打开和关闭数字化仪TABSURF 沿方向矢量和路径曲线创建平移曲面TEXT 创建单行文字TEXTSCR 打开AutoCAD文本窗口可透明使用TIME 显示图形的日期及时间统计信息可透明使用TODAY 打开“今日”窗口 2000i版新增TOLERANCE 创建形位公差标注TOOLBAR 显示、隐藏和自定义工具栏TORUS 创建圆环形实体TRACE 创建实线TRANSPARENCY 控制图像的背景像素是否透明TREESTAT 显示关于图形当前空间索引的信息可透明使用TRIM 用其他对象定义的剪切边修剪对象U 放弃上一次操作UCS 管理用户坐标系UCSICON 控制视口UCS图标的可见性和位置。
实现CAD绘图与LISP编程的自动化技巧CAD(计算机辅助设计)是一种广泛应用于工程和建筑行业的软件工具,而LISP(LISt Processing)则是一种编程语言,经常用于CAD 软件中进行自动化任务和定制。
在CAD绘图中,使用LISP编程可以极大提高工作效率,加快绘图速度并减少出错概率。
下面,我们将介绍一些实现CAD绘图与LISP编程的自动化技巧。
1. 使用LISP编写简单命令LISP语言在CAD软件中被广泛应用,因其简洁、灵活和强大的功能而备受赞誉。
可以利用LISP编写一些简单的命令,以自动完成一些常见的绘图任务。
例如,我们可以编写一段LISP代码,用于创建一个特定大小和形状的矩形或圆形,并将其放置在指定位置。
2. 利用LISP实现参数化绘图参数化绘图是CAD绘图中常见的需求,它可以根据一组参数值自动生成特定形状和尺寸的图形。
利用LISP编程可以方便地实现参数化绘图。
通过定义参数,并使用LISP代码控制参数值,可以在绘图过程中灵活地调整形状和尺寸,提高工作效率。
3. 利用LISP编写循环和逻辑语句LISP编程强大之处在于其循环和逻辑语句的灵活性。
通过编写循环和逻辑语句,可以实现复杂的绘图任务,如图形的重复、数组的生成等。
例如,我们可以使用循环语句自动生成一系列具有相同属性但位置不同的图形。
4. 利用LISP批处理CAD命令CAD软件中的批处理命令可以用于自动执行一系列CAD操作,如创建图层、更改对象属性等。
利用LISP编程可以轻松地实现批处理CAD命令。
通过编写LISP代码,将多个CAD命令组合在一起,可以以一次性的方式自动执行这些命令,从而减少人为干预。
5. 利用LISP创建自定义CAD函数和命令除了使用CAD软件中已有的命令,我们还可以通过LISP编程自定义CAD函数和命令,以满足特定的需求。
通过编写LISP代码,可以根据自己的需要定义函数和命令,从而实现更高级和复杂的CAD绘图操作。
cad中al命令的用法-回复CAD中AL命令的用法CAD(Computer-Aided Design,计算机辅助设计)是一种应用于工程设计领域的技术,它可以帮助设计师创建、修改和分析各种复杂的设计图纸。
在CAD软件中,AL命令是一个非常有用的工具,它可以实现自动化的对齐和布局操作。
本文将详细介绍AL命令的使用方法,希望能对CAD 软件的初学者提供帮助。
一、什么是AL命令?AL命令是AutoLISP(自动LISP)程序语言中的一个命令,LISP是一种广泛应用于CAD软件中的编程语言。
AL命令的全称是Alignment,它可以自动对齐和布局CAD图形中的各个元素。
二、如何使用AL命令?1. 准备工作在使用AL命令之前,首先需要确保已经加载了AutoLISP程序库。
在CAD 软件的命令行窗口输入(command "load" "acad.lsp"),即可加载该程序库。
2. 打开对齐工具栏在CAD软件中,可以通过点击“视图”菜单,然后选择“工具栏”,再勾选“对齐”工具栏,打开对齐工具栏。
对齐工具栏中包含了AL命令的各种对齐和布局选项。
3. 对齐元素在打开的对齐工具栏中,可以看到一系列的对齐选项,比如对齐到对象、对齐到点、对齐到网格等。
以“对齐到对象”为例,使用AL命令进行元素对齐的步骤如下:a. 点击“对齐到对象”按钮,激活对齐到对象功能。
b. 在CAD绘图区域中选择需要对齐的元素。
可以通过鼠标拖拽形成一个框选范围,或者逐个选择需要对齐的元素。
c. 根据需要选择对齐的基准点,可以选择元素的端点、中点等进行对齐。
在CAD绘图区域中点击选定基准点。
d. 移动鼠标,选择对齐的目标点。
可以选择其他元素的端点、中点等作为目标点。
e. 按下回车键完成对齐操作。
4. 布局元素除了对齐元素,AL命令还可以用于布局元素。
以“等距离布局”为例,使用AL命令进行元素布局的步骤如下:a. 点击“等距离布局”按钮,激活等距离布局功能。
AutoLISP调用AutoCAD绘图命令画直线段(command “line”p1 p2 p3 “”)(command “line”p1 p2 p3 “C”)画圆(command “circle”p0 R)(command “circle”p0 “D”D)(command “pline”p1 p2 “A”p3 “L”p4 “A”p5 “L”p6 “”)(弧沿逆时针方向绘制,且自动与直线相切。
)画边数为sides的正多边形(command “polygon”sides “E”p1 p2)(已知多边形某边所在两点)(command “polygon”sides p0 “I”p)(多边形内接于P点所在的圆)(command “polygon”sides p0 “C”p)(多边形外切于P点所在的圆)(command “donut”D1 D2 p0 “”)画椭圆(command “ellipse”p1 p2 p3)(command “ellipse”“c”p0 p1 p2)画弧(command “arc”p1 p2 p3)(三点画弧)(command “arc”ps “c”p0 pe)(默认沿逆时针方向画弧)(command “arc”ps “c”p0 “A”A)(角度A以逆时针方向为正)书写文字(command “text”p H A “技术要求” )(左对齐)(command “text”“c”p H 0 “技术要求” )(居中对齐,字高为H)(command “text”“A”p1 p2 “技术要求” )(两边对齐,字高为默认值)目标选择“L”: 选择最后一个实体对象(Last选择)“W”p1 p2 : 选择以p1和p2为角点的矩形内的实体对象(Window选择)p : 选择p点所在的实体对象(point选择)打剖面线(command “hatch”“u” A dist “N”“w”p1 p2 “”)(command "bhatch" p "p" "u" A dist "" "") (此行中p是区域内一点) 镜像实体对象(command “mirror”目标选择“”p1 p2 “”)阵列(command “array”目标选择“”“R” 3 4 x y)(复制3行4列)(command “array”目标选择“”“p”p0 N 360 “”)(阵列份数为N)。
用LISP语言自定义AutoCAD命令LISPAutoCADAutoLISP语言作为AutoCAD的二次开发工具,虽然在功能、运行速度和保密性等方面比起ARX等工具要逊色一些,但由于它易学易用,交互性好,灵活性强,对于那些经常使用AutoCAD进行绘图的普通用户来说,不失为一种理想的开发工具。
下面就介绍用AutoLISP语言自定义的几个AutoCAD绘图命令,可以起到简化操作、提高作图效率的作用。
一、键槽尺寸视图的绘制命令“jct”在绘制轴、齿轮或带轮等零件图时,经常需要画轴上键槽处的剖视图或轮毂键槽的端面视图,比较麻烦;由于键槽的尺寸随轴径的变化而变化,所以我们可以用LISP程序来实现自动绘图。
加载下面的程序,在命令行中键入”jct”并回车,通过人机交互的形式输入有关参数,可自动完成轴上键槽的剖视图和轮毂键槽的端面视图的绘制。
代码示例如下所示。
(defun C:jct ()(setq pt0 (getpoint "\n 请输入视图的中心位置点:"))(initget 7)(setq loop T)(while loop(setq d (getreal "\n 请输入键槽处的轴径(12<d<130)(mm):"))(if(or (< d 12) (> d 130))(alert "轴径数据输入错误!\n\n请重新输入!")(setq loop nil));if);while(cond;根据轴径检索键槽尺寸((and (> d 12) (<= d 17)) (setq b 5 t1 3.0 t2 2.3));b表示键槽的宽度((and (> d 17) (<= d 22)) (setq b 6 t1 3.5 t2 2.8));t1表示轴上键槽的深度((and (> d 22) (<= d 30)) (setq b 8 t1 4.0 t2 3.3));t2表示轮毂上键槽的高度((and (> d 30) (<= d 38)) (setq b 10 t1 5.0 t2 3.3))((and (> d 38) (<= d 44)) (setq b 12 t1 5.0 t2 3.3))((and (> d 44) (<= d 50)) (setq b 14 t1 5.5 t2 3.8))((and (> d 50) (<= d 58)) (setq b 16 t1 6.0 t2 4.3))((and (> d 58) (<= d 65)) (setq b 18 t1 7.0 t2 4.4))((and (> d 65) (<= d 75)) (setq b 20 t1 7.5 t2 4.9))((and (> d 75) (<= d 85)) (setq b 22 t1 9.0 t2 5.4))((and (> d 85) (<= d 95)) (setq b 25 t1 9.0 t2 5.4))((and (> d 95) (<= d 110)) (setq b 28 t1 10.0 t2 6.4))((and (> d 110) (<= d 130)) (setq b 32 t1 11.0 t2 7.4)))(command "circle" pt0 "d" d)(command "zoom" "a")(setq s1 (ssget "l" ))(setq di (-(* (/ d 2.0) (/ d 2.0)) (* (/ b 2.0) (/ b 2.0)))dx (sqrt di)dy (/ b 2.0)pt1 (list (+ (car pt0) dx) (+ (cadr pt0) dy)))(initget "Zc Lc");Zc表示画轴键槽的剖视图,Lc表示画轮毂键槽的端面视图(setq zrl (getkword "\n 画轴键槽的剖视图还是轮毂键槽的端面视图(Z/L)?"))(if (= zrl "Zc")(progn;计算轴键槽上点的坐标(setq pt2 (list (+ (car pt0) (-(/ d 2.0) t1)) (+ (cadr pt0) dy)) pt3 (polar pt2 (- (/ pi 2.0)) b)pt4 (polar pt3 0 (- dx (- (/ d 2.0) t1)))));progn);if(if (= zrl "Lc")(progn;计算轮毂键槽上点的坐标(setq pt2 (list (+ (car pt0) (+(/ d 2.0) t2)) (+ (cadr pt0) dy)) pt3 (polar pt2 (- (/ pi 2.0)) b)pt4 (polar pt3 (- pi) (- (+ (/ d 2.0) t2) dx))));progn);if(command "pline" pt1 pt2 pt3 pt4 "");画键槽(setq s2 (ssget "l"))(command "layer" "m" 5 "l" "center" 5 "c" 1 5 "")(command "ltscale" 8)(command "line" (polar pt0 (- pi) (+ (/ d 2.0) 10));画中心线(polar pt0 0 (+ (/ d 2.0) 10)) "")(command "line" (polar pt0 (-(/ pi 2.0)) (+ (/ d 2.0) 10))(polar pt0 (/ pi 2.0) (+ (/ d 2.0) 10)) "")(command "layer" "s" 0 "")(if (= zrl "Zc")(progn(setq s3 (entsel "\n 请选择修剪的目标:"))(command "trim" s2 "" s3 "");修剪形成键槽(command "hatch" "U" "45" "2" "n" s1 s2 ""));画轴上键槽处剖视图的剖面线);if(if (= zrl "Lc")(progn(setq s4 (entsel "\n 请选择修剪的目标:"))(command "trim" s2 "" s4 "");修剪形成键槽(command "rotate" s1 s2 "" pt0 90));将轮毂键槽的端面视图旋转90度);if);end defun二、螺纹孔剖视图的绘制命令“lwk”在绘制机械零件图时,经常要画螺纹孔的剖视图,同样由于螺纹孔的有关尺寸都随螺纹的公称直径而变化,我们可以用下面的程序自动完成其剖视图的绘制。
命令修饰符坐标过滤器结合不同点的 X、Y 和 Z 值指定单个点?命令条目:输入 .x、.y、.xy、.xz或 .yz在任意定位点的提示下,可以输入点过滤器以通过提取几个点的 X、Y 和 Z 值来指定单个坐标。
在下例中,直线的起点具有从第一个选定对象的中点的 X 值以及第二个选定对象的中点的 Y 和 Z 值构造的坐标。
命令: line指定第一个点: .x中点选择对象(需要 YZ)中点选择另一个对象下一点: 指定点直接距离输入将下一个点沿光标所指方向定位到指定的距离?命令条目:在定位点的提示下,输入一个数字值使用直接距离输入,可以相对于输入的最后一点快速指定一点。
在任意点位置提示下,首先移动光标以指定方向,然后输入数值距离。
下例中直线的第二点将沿光标方向定位 5 个单位。
输入的直接距离将沿从最后一点到光标当前位置的路径进行测量。
此功能通常在正交或捕捉模式打开的状态下使用。
命令: line指定第一个点: 指定点指定下一个点: 沿所需的方向移动光标并输入 5注意当使用正交、对象捕捉追踪或极轴追踪的临时替代值键时,直接距离输入方法不可用。
FROM在命令中定位某个点相对于参照点的偏移。
?工具栏:对象捕捉?命令条目:在定位点的提示下,输入 from基点: 指定一个点用作基点<偏移>: 输入相对偏移在定位点提示下,输入 from,然后输入临时参照或基点(可以指定自该基点的偏移以定位下一点)。
输入自该基点的偏移位置作为相对坐标,或使用直接距离输入。
注意在命令(如 MOVE 和 COPY)中进行拖动时不能使用此方法。
通过键盘输入或使用定点设备指定绝对坐标值,可取消FROM 命令。
MTP定位两点间的中点。
?命令条目:在定位点的提示下,输入 mtp两点的中点 (MTP) 命令修饰符可以在执行对象捕捉或对象捕捉替代时使用。
(OSNAP 命令)在定位点的任何命令提示下,输入 mtp 或 m2p。
第一个中点: 指定点第二个中点: 指定第二点TRACKING通过一系列临时点定位点。
AutoLISP程序在建筑设计中的应用实例孙煜广东机电职业技术学院广州510515摘要:笔者在AutoCAD平台上,用LISP语言编写了一系列程序,提高了出图效率和设计的准确性。
关键词:计算机,计算机绘图,程序,lisp,建筑制图,结构设计1.程序设计目的目前,各建筑设计院一般都配备了建筑设计方面的专业软件,如“天正”,“探索者”等,在一定程度上提高了设计人员的效率,但各软件在使用上都有不便之处。
如各设计院的标准不同、设计人员的习惯不同,同时还存在地区差异等,因此设计人员在设计图时只能采用CAD“硬”画,效率低,质量也很难保证。
针对上述问题,笔者用AutoLISP编制了一系列辅助的小程序,这些程序的编制思路是按照传统的绘制方式,灵活运用于各个设计程序段,作为专业软件的有益补充。
2.主要程序介绍本程序组中主要包括的程序有:dc.lsp;200,250,300宽梁平面绘制a.lsp:从pkpm转化为初步设计文字s.lsp:将梁高度标注降低30mmvv.lsp:测量板净宽度w.lsp:排列梁编号工具fd.lsp:改变梁编号中数字aa.lsp:通过输入截面面积自动配钢筋3.使用方法本程序组是根据建筑结构设计中的各步骤来进行编制的,笔者将结构设计分为初步设计图,梁模板图,板钢筋图,梁钢筋图四个阶段。
设计人员在进行初步设计时,利用dc.lsp可以直接绘制双线作为梁截面线,利用a.lsp 将pkpm文字转化为初步设计标注,完成初步设计。
在梁模板图阶段,利用s.lsp将走廊地面或平台地面的梁高度统一降低30mm。
利用w.lsp进行梁编号绘制,用fd.lsp进行梁编号修改,完成梁模板图设计。
在板钢筋阶段,利用vv.lsp测量板宽,绘制板钢筋。
在梁钢筋阶段,用aa.lsp根据pkpm计算出的截面面积,输入截面面积直接配筋。
完成梁钢筋图设计。
4.程序举例下面以vv.lsp为例,介绍其程序内容。
vv.lsp程序通过输入AutoCAD已绘制的板内任意一点,自动对围成板的线条进行分析,排除不需要图层,自动测量出板两条线的净宽度值,然后标记在图上。