手把手教你创建AutoCAD动态块
2017-01-21 by:CAE仿真在线 来源:互联网
动态块是AutoCAD中的一个重要功能,可以通过自定义夹点和动作方便的修改动态块参照中的几何图形,而无需重复定义多个块参照。
比如建筑设计制图中需要用到各种尺寸的门,传统的做法是创建一个门,并定义成块参照。然后经过如下繁琐的流程插入到图中的不同位置。
1. 画好墙线,用Offset,Trim,Fillet命令修剪好门洞
2. 插入门块
3. 运行Scale命令调整大小
4. 运行Mirror命令1~2次来调整门的方向。
创建一个门的动态块可以极大方便上述工作。
我们先插入一个AutoCAD自带的门的动态块来看看动态块是怎么工作的。
运行TOOLPALETTES命令打开工具选项板,在建筑选项板中点选门,将这个动态块插入到图中。
选中刚插入的动态块,点击门块上的蓝色夹点,可以很方便的调整门的左右内外方向,门的大小。
但是这个示例动态块是基于英制绘图习惯创建的,下面我们来创建一个适合中国绘图习惯的以毫米为单位的动态块。
新建一个图,运行BEDIT命令,指定新块的名字Door,点击确定进入块编辑器。复制-粘贴以下脚本到命令行,再运行Bclose命令,选择保存更改并退出块编辑器。
(command "_OSMODE" 0)
(command "_BACTIONBARMODE" 1)
(command "_rectang" "0,0" "50,1000")
(setq Door (entlast))
(command "_arc" "_c" "0,0" "1000,0" "_a" 90)
(setq DoorArc (entlast))
(command "_zoom" "_e" "_zoom" "0.6x")
(command "_BPARAMETER" "_B" "0,0")
(command "_BPARAMETER" "_L" "_L" "DoorWidth" "_V" "_L" "600,750,800,900,950,1000" "0,0" "1000,0" "500,-300" 1)
(command "_BActionTool" "_Scale" "500,-300" DoorArc "")
(command "_BActionTool" "_Stretch" "500,-300" "_s" "-100,800" "200,1200" Door "")
(command "_BParameter" "_f" "_L" "In-Out" "In" "Out" "400,0" "1000,0" "400,-100" 1)
(command "_BActionTool" "_f" "400,0" "_all" "")
(command "_BParameter" "_f" "_l" "Left-Right" "Left" "Right" "500,100" "500,500" "500,200" 1)
(command "_BActionTool" "_f" "500,100" "_all" "")
运行Insert命令,插入刚刚创建的动态块。选中这个块,通过夹点操作已经可以左右内外翻转和移动,拖动调整门宽的三角形夹点还有些问题,后面会继续修改。
通过运行上面的lisp脚本,并结合命令行历史记录,我们可以清楚的看到创建动态块的步骤。
1. 先创建门的雏形。门板:宽1000,厚50,开关弧线:半径1000
(command"_OSMODE" 0)
(command"_BACTIONBARMODE" 1)
(command"_rectang" "0,0" "50,1000")
(setq Door(entlast))
(command"_arc" "_c" "0,0" "1000,0""_a" 90)
(setqDoorArc (entlast))
(command"_zoom" "_e" "_zoom" "0.6x")
2. 添加一个基点参数,它不需要添加配对的动作。在完成的动态块中表现为方形夹点,实现动态块的拖拽移动。
(command"_BPARAMETER" "_B" "0,0")
3. 添加一个线性参数DoorWidth,并为它添加两个动作(可以如下图在块编写选项板中找到的),缩放动作用于调节开关弧线半径,拉伸动作用于拉伸门板的宽度。这两套参数-动作组合在最终完成的动态块中表现为线性参数的右侧三角形夹点
(command "_BPARAMETER""_L" "_L" "DoorWidth" "_V""_L" "600,750,800,900,950,1000" "0,0""1000,0" "500,-300" 1)
(command"_BActionTool" "_Scale" "500,-300" DoorArc"")
(command"_BActionTool" "_Stretch" "500,-300""_s" "-100,800" "200,1200" Door "")
注意:线性参数的左侧夹点在本例中用不上,如下图所示隐藏不必要的左侧夹点可以减少干扰。
4. 分别添加两组“翻转参数+翻转动作”实现门的内外翻转和左右翻转。
(command"_BParameter" "_f" "_L" "In-Out""In" "Out" "400,0" "1000,0""400,-100" 1)
(command"_BActionTool" "_f" "400,0" "_all""")
(command"_BParameter" "_f" "_l" "Left-Right""Left" "Right" "500,100" "500,500" "500,200"1)
(command"_BActionTool" "_f" "500,100" "_all""")
注意:翻转动作要最后加,并且添加翻转动作时要选择所有实体和参数,否则在插入动态块并操作翻转夹点后,其他参数夹点显示可能会错位。
上面创建动态块所需的所有参数和动作都可以直接从块编写选项板中调用。
现在再来说说调整门宽时门板为什么歪了(见下图),如何修改?
双击插入的门块并进入块编辑器,点选拉伸动作,在特性选项板中将角度偏移0改为90度.这样,即使拉伸门板对应的线性参数是水平伸展的,门板也会是沿着垂直方向进行拉伸。
最后我们来总结一下创建动态块的一般步骤
进入块编辑器
添加基本图形
添加参数
为参数添加动作
在特性选项板中修改动作的属性
退出块编辑器
插入新建的动态块并测试
相关标签搜索:手把手教你创建AutoCAD动态块 AutoCAD培训 AutoCAD培训课程 AutoCAD图纸设计 AutoCAD在线视频 AutoCAD技术学习教程 AutoCAD软件教程 AutoCAD资料下载 Fluent、CFX流体分析 HFSS电磁分析 Ansys培训 Abaqus培训 Autoform培训