利用Excel在AutoCAD中批量绘制断面图的方法
AUTOLISP程序生成CAD断面图
利用AutoLisp、Microsoft VBA程序语言实现批量生成断面图及断面电子表格数据蒋济飞赵新萍(广西第二测绘院广西柳州 545006)【摘要】本文主要讨论如何利用AutoCAD的二次开发语言AutoLisp 和Excel中的Microsoft VBA语言技术,利用地形图上的高程点数据批量生成断面图和断面数据表格。
【关键字】断面图 AutoLisp Microsoft VBA1 引言Visual Basic作为一个集成的开发环境,能够使AutoCAD数据与其它的Visual Basic应用程序,如Microsoft Excel软件,直接共享,实现无缝连接,交换数据。
在没有专业软件辅助的情况下,绘制纵横断面图是很繁琐的事,需要进行大量的、重复的操作,既劳神,又容易出错。
我们在完成老挝南塔河1#水电站进站道路测绘项目中,利用地形图上的高程点数据,通过Auto Lisp、Visual Basic编程建立AutoCAD与Excel的通信,实现数据交换,快速绘制公路纵横断面及相关成果表,大大的提高了工作效率。
2 应用程序的开发在实现对地形图上的高程点数据批量生成断面图和断面数据表格处理的程序代码编写过程中,主要分以下步骤:(1)注记纵、横断面交点的里程和高程并生成纵断面曲线,输出断面数据。
首先我们取得纵断面线折点的坐标集合(XY-List)。
如果纵断面线图元为LWPOLYLINE,则只要依次取出纵断面线图元数据中群码为10的数据即可;如果纵断面线图元为POLYLINE,则只要依次取出纵断面图元之后SEQEND之前的所有VERTEX图元数据中群码为10的数据即可。
取得纵断面线上所有高程点和横断面图元。
代码如下:(SETQ ALL-DATA(SSGET "F" XY-List ' ((-4 . "<or")(-4 . "<and")(0 . "INSERT")(8 . "GCD")(-4 . "and>")(-4 . "<and")(0 . "*POLYLINE")(8 . "DM")(-4 . "and>")(-4 . "or>"))))取得高程点和横断面图元数据之后,对数据进行区分。
CAD快速绘制道路横断面图的一种新方法
在EXCEL中处理测量数据是利用函数“&”对数据进行连接处理,对所有的测量点都处理成:距中桩距离&“,”&高程,例如在图2中,桩号为K2+160左12m位置高程为691.420,可以在EXCEL工作表中一个相对应的单元格的公式栏中输入=“-12”&“,”&M307,结果单元格显示“-12,691.420”;在EXCEL中一般按照下列原则处理横断面测量数据:1每一个数据都要处理成距离,高程的形式且占用一个单元格;2每一个横断面数据包括原地面测量数据和路床数据只占用一行;3每一行中的横断面数据自左向右顺序依次是:原地面数据一路床数据,其中原地面数据的顺序是距离中桩最左边的数据依次到距离中桩最右边的数据,路床数据是距离中桩最右边数据依次到距离中桩最左边的数据;4每一行结尾几个单元格分别输入Auto CAD命令C、ucs、0,4、L;最后在EXCEL中拖动填充柄或左键双击K2+160每一个单元格填充柄,EXCEL就会进行自动填充K2+180-K2+240 中的所有数据;3 使用功能3.1道路横断图自动绘制因为Auto CAD默认EXCEL从左面单元格移至右面单元格是一个键入回车键Enter,这是Auto CAD能自动绘制横断面图形的一个关键;对于道路横断图自动绘制,我们首先启动Auto CAD并打开一张新图,在命令行中输入“line”划线命令,Auto CAD 在命令行中会提示“ _line指定第一点:”,然后打开EXCEL表格并复制整理完毕的所有测量数据,转到Auto CAD软件中,在命令行中“_line指定第一点:”后右键单击进行粘贴或者Ctrl+V,AutoCAD会自动绘制横断面图;一般绘制200-500个横断面图仅仅需要1-3s时间就可以自动完成,非常方便快捷;下面我们来通过绘制K2+160断面图实例来具体说明Auto CAD如何自动绘图的全过程:①在Auto CAD键入“line”执行画直线命令;②在AutoCAD命令行中使用“Ctrl+V”粘贴所有复制的EXCEL数据;③Auto CAD在画直线命令下会从EXCEL粘贴内容中得到“-12,691.42”的具体位置,Auto CAD就会在“-12,691.42”位置上展上第一点,同时Auto CAD又会自动得到一个回车命令因为在EXCEL中从“-12,691.42”单元格向右移至“0,691.65”单元格,Auto CAD又要执行“指定下一点”命令,那么会从粘贴内容中得到“0,691.65”数据,Auto CAD就会在“0,691.65”位置上绘制直线的第二点,Auto CAD又会自动要求输入下一点;在这个过程中将自动实现Auto CAD要求画线的点位数据和EXCEL所提供测量数据相对应;④自动绘制完毕后Auto CAD会得到下一个“C”命令即闭合,就完成一个横断面图的自动绘制;⑤同时Auto CAD在命令行又会自动得到“UCS”命令即要求建立—个新的坐标系,粘贴的内容是“0,4”,即新坐标原点移动至0,4位置,之所以在EXCEL中键入“UCS”命令是为了在图上错开每一个横断面图的位置,如果没有这个命令,所有断面的横断图就会重叠在一起,我们可以根据最大填挖高度确定断面图之间的间隔,如果最大填挖高度是6m,那么在EXCEL中的“0,4”就要用“0,9”比较适合;⑥Auto CAD会在命令行中又得到一个“L”命令,AutoCAD将重复执行2-5步骤,画线点位数据是EXCEL提供的相应K2+180断面数据;⑦Auto CAD又会自动绘制K2+180断面图,并依次循环完成所有横断面的绘制;⑧按照所选择打印图纸绘制图框,把绘制好的每一个横断面图复制到图框中,并标注桩号;3.2计算填挖方面积在Auto CAD中选择所有绘制好的横断面图单击建立的面域,对于全填或者是全挖的断面其断面横断面图是一个闭合非相交的图形,可以在命令行中执行“area”或者左键单击,根据提示选择“area”中的“对象O”选项,然后选择一个横断面在命令行中会显示该横断面的面积和周长;不能建立面域的断面是一种半填半挖的断面,对于这种情况,首先要分析每一个闭合图形是填方还是挖方,通过手工“捕捉”每一个闭合区域的角点即测量点,分别求出面积,最后相加求出该段面的填方面积和挖方面积;3.3打印出图常规绘制横断图比例尺是1:200或者1:100,开始绘图之前,需要决定一个单位代表多大距离,然后使用该惯例创建图形;对于横断面图形我们一般采用以m作为图形单位,根据图纸大小和比例尺,调整打印机选项中的“调整打印比例”项中图形单位的大小;4 结束语以上实例是笔者利用测量人员最常用的数据处理软件EXCEL和绘图软件Auto CAD发现的一种绘制道路横断面图的新方法;这个方法不需要测量人员对软件进行二次开发,仅利用EXCEL和Auto CAD各自的优势对数据进行处理;这个方法也有很大的借鉴性和扩展性,即可以利用道路数据、管沟数据、房屋数据等自动绘制道路纵断面图、绘制管沟横断面图和成批绘制地籍图等等;当然在重复性越高的绘图工作中此方法的快捷性和准确性会体现得更加明显;。
用EXCEL输入数据在CAD中计算工程量及生成断面图
用EXCEL输入数据在CAD中计算工程量及生成断面图摘要:本文介绍一种比较简洁的断面输入方法和土方工程量相结合的方法。
关键词:EXCEL 数据AUTOCAD 工程量断面图水利工程的土方工程计量是项重要工作,其方法有很多,最原始的方法是用水准仪配合测绳测得原始断面数据,再把数据用米格纸标出来,形成断面图,然后数需要开挖(或回填)的部分的格数,并按照一定的比例折算成面积,该方法通俗易懂但教繁琐、计算结果误差大、工作效率低。
随着科技的的发展,现在越来越多的企业用GPS全球定位系统或全站仪测得原始地形图然后用自带的软件形成断面图并计算面积,方便快捷,效率高。
因测量数据由测量仪器存储,不同测量仪器软件不同,不同的使用者熟悉程度不同,从工程计量角度看不易复核、校对。
还有一种测量方式是用全站仪或水准仪配合测绳测得原始断面数据,测得断面数据后,进行断面输入,得出断面图与设计线进行比较,计算出工程量。
第三种方法是在日常施工质量控制和工程量计算的常用方法,该种方法需要在测量后在CAD上进行点坐标输入断面输入,点坐标输入需要一个一个点的坐标输入,工作量大而且需要一定的细致耐心,一旦输入出错不易发现,也不利于校核。
笔者在工作中摸索出一种简单的运用EXCEL工作表结合CAD就可以完成日常断面输入的工作,现结合一工程实例将此方法与大家探讨。
方法原理:基于EXCEL电子表格的合并、连接功能结合CAD多线段输入坐标原理。
具体使用方法:EXCEL电子表格的功能十分强大,其中有一种二维坐标和连接功能,用连接符号“&”将该数据默认为一个二维的坐标,使用此符号后就能将所需数据格数据连接在一起。
在EXCEL中数据输入完成后,在AUTOCAD中将所输入的数据用多线段方法粘贴到CAD中的断面网格中,自动生成了工程的断面图。
为了能确切的说明该方法,现用具体的数据输入来介绍一下。
背景简述:某工程为一河道拓宽工程,设计河底高程▽30.0m,宽20米,边坡1:3,干法施工。
利用Excel绘制横断面线的一种方法
利用Excel绘制横断面线的一种方法利用Excel绘制原始地表横断面线的一种方法摘要:本文主要讲解通过利用Excel配合外业测量所取得的数据(平面坐标和高程)的特点进行绘制横断面地表线的一种方法,这种方法灵活简便,强度小,效率高,特别适合现场横断面测量及复测设计院的原始地表线。
关键词:数据采集内业处理横断面绘制在复测设计院原始横断面线形测量中,尤其是在高差陡变频繁的地区,传统的测量方法(标杆皮尺法、水准仪法)使外业与内业工作繁琐且效率低下。
本文通过全站仪置镜于任意控制点测量平面和高程的特点,结合Excel办公软件,介绍一种进行内外业一体化的断面测量方法,这种方法具有灵活简便、劳动量小效率高的特点,特别适合高差变化大的地区。
何为横断面测量?:横断面测量是对线路横向方向剖面的地面起伏进行的测量工作。
是在线路上设计院所有提供的断面桩号横向桩位垂直于线路中线的水平方向上,分别测量中线两侧各变坡特征点至中线桩的水平距离和高差(坐标、高程),并据纵断面里程和横断面面积以计算出挖填的方量。
横断面测量介绍:1、标杆皮尺法:利用花杆直接测得平距和高差。
此法简便、易行,所以被经常采用,它适用于横向变化较多较大的地段,但由于测站较多,测量和积累误差较大。
2、水准仪法:此法适用于施测横断面较宽的平坦地区。
安置水准仪后,以中线桩地面高程点为后视,以中线桩两侧横断面方向的地形特征点为前视,标尺读数读至厘米。
用皮尺分别量出各特征点到中线桩的水平距离(也可用视距测量)。
高差由后视读数与前视读数求差得到。
3、全站仪法:3.1 安置全站仪于中桩上,全站仪定向与切线方向垂直。
量出至中桩地面的仪器高,直接测出各特征象限点与中桩间的平距和高差。
此法适用于一般地形,必须通视条件好。
测量记录:表中按路线前进方向分左侧和右侧,桩号从下往上记录,表中左侧和右侧记录平距和高差,以分数形式记录分子表示高差,分母表示平距,高差为正号表示上坡,负号表示下坡。
利用Excel在AutoCAD中批量绘制断面图的方法
利用Excel在AutoCAD中批量绘制断面图的方法本文针对许多文章在这方面出断面图的问题,结合实际给出在这方面最为简化的绘图步骤与出图技巧。
在高速公路项目中,施工单位前期进场都会对原地面进行复测,测量人员要快速地用复测数据绘图并算出土方的填挖量,对项目组织相应的工作策划及部署至关重要。
这也就对测量人员提出了出图效率问题,本文以横断面为例进行说明。
1 数据获取现在施工单位都普及了全站仪,我们只需要将根据地貌特征点选取好断面来测量,在土方的数据量上来说是不会有很大的出入,目前我们大多使用的是CASIO和SHARP-E500计算器,我们最好编写的程序能用坐标计算出此点所对应的桩号、边距(顺路线前进方向左侧边距为负,右侧为正),只需要记录断面桩号、边距、高程就可以顺利出断面图了。
2 Excel上处理数据将现场测量数据录入Excel中,数据格式如下表一,其中D列的100,300,500的等差数组,是为了在CAD上能按断面里程从左至右依次画多个断面图。
使它们不会出现上一断面的右部与下一断面的左部相交。
在E3、F3中先分别输入E2、F2数据并回车后再点击E3、F3,表格亮显后按住右下角的“十”字拖动成了点位数据列。
表一3 绘制图形3.1 绘制路线标准图形绘制标准图形时按照1:1的比例进行绘制,这样在后面填写断面面积、填挖高度时直接将查询数据输入就完事。
根据纵曲线数据计算出K126+270、K126+290、K126+305断面的中桩高程为分别为690.000、690.800、691.400。
K126+270断面的标准图形根据点位坐标(100,690.000)在CAD 中按照路面横坡往两侧绘制路基线,然后在两侧将边坡线连接在路基的两边。
如果后面的断面与本断面也是相同的话,使用CAD中的Copy命令进行复制。
方法是在文本窗口中:选择所有线形,回车确认后在“指定基点或位移”时我们将基点选择在(100,690.000),对于后面的“指定位移的第二点或 <用第一点作位移>:”时输入(300,690.800)回车后继续输入(500,691.400)。
巧借Excel在AutoCAD中作图
渠道纵 断面 图时 , x坐标 相 当于里 程 桩 号 )Y坐标 ,
值放人 B列 ( Y坐标就是 地面高程 ) 。 上是 绘图需
配合 A t A u C D的 奎 开 放 式 接 口 , o 以期 快 速 的绘 制 纵 断 面 图。
关捷词
EclA t A ; 制 曲线 ; 注数值 ; xe; u C D 绘 o 标 作图 T 3 14 文献标识 码 P9 - A
要的原始数据。
中图分类 号
1 引言
E cl Mi oo 公 司推 出 的优 秀 电子表 格 处 xe 是 c sf r t 理软件 , 数字 运 算 功 能 相 当强 大 , A t A 其 而 u C D是 o At e u ds 司推 出的深得 广大 工程技 术人 员喜 爱 的 o k公 计算机辅助绘 图和设计 软 件系统 , 适用 于各行各业 , 应用相 当广泛 , 其在机械 、 筑业 为甚 尤 建 我们 利用 A t A u C D绘 制各 种 曲线 , 其是 绘 制 o 尤 渠道 纵横断面 图时 , 时要 输 人 多个 坐标 点并 连接 有 成曲线 , 操作 比较麻烦 , 为使 A t A u C D自动或半 自动 o 地执行重复性 的计算 或绘 图工 作 , 用某 种 计算 机 采 高级 语 言 , F R R N、 u lp等 , 制 相应 的程 如 O T A A ti os 编 序 , 由此 程序 执行产生 A t A 并 u C D接 口程序 , o 从而完 成绘 图任 务 。暂且 不 论工 程技 术 人员 是 否 掌 握 如 F R R N、 u lp等语 言 及其 编程 技 巧 , O T A A ti os 单就 其 首 先要在 D S系统 下进行 编程 、 0 编译 、 行 , 后再 回 运 然 到 Wi OB n W 系统下进 入 A t A d u C D调用 程 序运 行 已产 o
用excel数据导出cad道路断面图示
1 引言传统横断面测量方法有水准仪皮尺法、横断面仪法和经纬仪视距法等,简而言之就是根据地形的变化对与道路轴线方向相垂直的断面进行测量,其中直线段所测断面方向与道路中线方向垂直,而曲线路段与测点的切线方向垂直。
在对横断面测量以后,为计算道路工程土方量,我们紧接着就要绘制道路横断面图。
在实际工作中,横断面图的绘制通常是采用手工在米格纸上按照一定比例用卡规和复式比例尺按照横向是距离、纵向是高程刺点,用小钢笔连接刺点绘制闭合图形。
然后把每一个断面的横断面图分成若干个梯形用复式比例尺和卡规量出每一个梯形的上底、下底和高,计算出每一个梯形的面积,然后把所有的梯形面积相加才得到一个断面面积。
通常道路横断面施测要求每20m测一个断面。
在地形变化较大的位置要加测横断面,这样每1km道路至少要绘制50多个横断面图。
可见如果用传统的方法绘制一条50km的道路断面图工作量是非常巨大的,而且由于是手工绘制,修改起来很麻烦,在实际工作中返工的情况是经常发生的。
由此可见快速高效地绘制出道路横断面图是非常重要的。
笔者根据实际情况发现如果能对Auto CAD系统进行二次开发,运用AutoLISP语言和Visual LISP开发环境进行编程,创建Auto CAD的新命令或重新定义原有的标准命令,提供系统自动执行重复性的计算与绘图任务,此类问题就迎刃而解了,但这要求道路施工人员具备专业性很强的编程知识。
在绘制了大量的横断面图后,笔者总结出一个非常便捷的方法,这种方法不需要道路工程人员具备很强的编程知识,只要具备常规的Excel和Auto CAD知识,就可以自动、精确和快速绘制道路横断面图,并且此方法可以推广至重复性较强的绘图工作。
下面以一个实例进行详细说明。
2 对横断面数据的处理2.1确定边桩位置和高程倾斜地面高等级道路施工测量中的边桩定位一般用逐渐趋近法。
该方法无论采用经纬仪或全站仪都不能直接给出边桩位置,只能通过重复多次测量和计算,才能确定边桩的位置,这种方法的野外工作量较大。
利用Excel在AutoCAD中绘制断面图的实践应用
文章编号 :049420911 (2006) 0820031202
中图分类号 : P258 文献标识码 :B
利用 Excel 在 AutoCAD 中绘制断面图的实践应用
四 、在 AutoCAD 中绘制横断面图
打开 AutoCAD ,选择菜单命令 Draw →Point → Multiple Point (多点) 命令 ,在命令行指定点位置单 击鼠标右键 ,选择 Paste (粘贴) ,将剪贴板上的水平 距离与高程的坐标数据组粘贴过来 ,或在指定点位 置单击鼠标左键后键入 Ctrl + P 粘贴数据 ,通过窗 口缩放你会发现与水平距离和高程对应的所有点已 经全部展绘在 AutoCAD 图中了 ;在缺省情况下 ,点 对象仅被显示为一个小圆点 ,为了使得展点符号更 加清 晰 , 我 们 可 以 采 用 AutoCAD 中 的 系 统 变 量 pdmode 和 pdsize 来改变点的显示类型和尺寸 ,此外 我们也可以用 ddptype 命令在点样式对话框中选定 点的样式和尺寸大小 ,通过 regen 生成新类型和尺 寸的清晰的点 。
ZHAN G Wen2lin , HOU Wu2long
摘要 :介绍从数字地图中量取线路中心线横断面和纵断面上点的距离与高程的坐标数据 ,以及野外实际测量的坐标数据获取方 法 ,并在 Excel 中建立坐标数据组 ,在 AutoCAD 中批量展点 ,从而快速地绘制出横断面图和纵断面图 ,为计算土石方工作量提供准 确的矢量图依据 。 关键词 :断面图 ;测量 ; Excel ;AutoCAD
收稿日期 : 2006206219 作者简介 : 张文林 (19672) ,男 ,河北邯郸人 ,讲师 ,主要研究方向为地理信息系统 、工程测量 。
用excel数据导出cad道路断面图示.
1 引言传统横断面测量方法有水准仪皮尺法、横断面仪法和经纬仪视距法等,简而言之就是根据地形的变化对与道路轴线方向相垂直的断面进行测量,其中直线段所测断面方向与道路中线方向垂直,而曲线路段与测点的切线方向垂直。
在对横断面测量以后,为计算道路工程土方量,我们紧接着就要绘制道路横断面图。
在实际工作中,横断面图的绘制通常是采用手工在米格纸上按照一定比例用卡规和复式比例尺按照横向是距离、纵向是高程刺点,用小钢笔连接刺点绘制闭合图形。
然后把每一个断面的横断面图分成若干个梯形用复式比例尺和卡规量出每一个梯形的上底、下底和高,计算出每一个梯形的面积,然后把所有的梯形面积相加才得到一个断面面积。
通常道路横断面施测要求每20m测一个断面。
在地形变化较大的位置要加测横断面,这样每1km道路至少要绘制50多个横断面图。
可见如果用传统的方法绘制一条50km的道路断面图工作量是非常巨大的,而且由于是手工绘制,修改起来很麻烦,在实际工作中返工的情况是经常发生的。
由此可见快速高效地绘制出道路横断面图是非常重要的。
笔者根据实际情况发现如果能对Auto CAD系统进行二次开发,运用AutoLISP 语言和Visual LISP开发环境进行编程,创建Auto CAD的新命令或重新定义原有的标准命令,提供系统自动执行重复性的计算与绘图任务,此类问题就迎刃而解了,但这要求道路施工人员具备专业性很强的编程知识。
在绘制了大量的横断面图后,笔者总结出一个非常便捷的方法,这种方法不需要道路工程人员具备很强的编程知识,只要具备常规的Excel和Auto CAD知识,就可以自动、精确和快速绘制道路横断面图,并且此方法可以推广至重复性较强的绘图工作。
下面以一个实例进行详细说明。
2 对横断面数据的处理2.1确定边桩位置和高程倾斜地面高等级道路施工测量中的边桩定位一般用逐渐趋近法。
该方法无论采用经纬仪或全站仪都不能直接给出边桩位置,只能通过重复多次测量和计算,才能确定边桩的位置,这种方法的野外工作量较大。
CAD中批量绘制断面图的方法改良
利用EXCEL坐标在CAD中批量绘制断面图的方法我在学习CAD的过程中,在网上找了很多资料,终于找到了很有效的批量绘制断面图的方法,现在用一个实例来介绍给跟我一样的初学者。
(之前上传了一个一模一样的,但是文档格式没做好,在百度文库中又无法修改,只好重新上传一个修改后的。
)先举例介绍一个EXCEL函数:=IF(OR(C5=FALSE,B5=FALSE,A5=FALSE),"","_donut 0 0.5"&ROUND(C2,3)&","&ROUND(B2,3)& " "&" -text j ML"&ROUND((C2+2),3)&","&ROUND(B2,3)&" 2.0 0 "& A2)(要注意这个函数中的空格)OR(C2=FALSE,B2=FALSE,A2=FALSE)函数:C2,B2,A2三个值中只要任意一个是FALSE,则OR输出结果为TRUE。
IF(logical_test,value_true,value_false)函数:第一个参数是判断式,如果判断为真值(TRUE),则输出结果为value_true,如果判断为假值(FALSE),则输出结果为value_false.例如:if(3>2,4,5),因为判断式3>2成立,所以if(3>2,4,5)的输出结果为4,同理if(3>20,4,5),因为判断式3>20不成立,所以if(3>2,4,5)的输出结果为5.ROUND(number,number_digits)函数:取小数点后面的位数。
例如:ROUND(123.45678,3):取小数点后面三位,所以输出结果是:123.457(四舍五入)ROUND(123.45678,2):取小数点后面两位,所以输出结果是:123.46(四舍五入)&这个符号是合并字符串,例如:"aa" & "bb"则输出结果是:aabb字符串必须用引号括起来。
如何使用EXCEL数据绘制CAD图形
如何使用EXCEL数据绘制CAD图形推荐文章excel表格如何插入进cad中使用热度:如何使用cad绘制一个方向箭头热度:怎么使用cad绘制工程平面图热度:怎样使用cad 绘制出楼梯热度: cad绘制三维图怎样使用差集命令热度:EXCEL中的数据是可以绘制CAD图形的,那么大家知道如何使用EXCEL数据绘制CAD图形吗?下面是店铺整理的如何使用EXCEL数据绘制CAD图形的方法,希望能给大家解答。
使用EXCEL数据绘制CAD图形的方法打开Excel,输入数据。
复制B列的数据。
打开CAD,输入“pl”,回车。
然后在命令行直接“Ctrl+V”可以以这些点直接生成一条多段线。
上面的例子相当简单,但是引我们思考。
为什么可以直接复制呢?其实CAD是可以读取从Excel在复制过去的内容的。
那么我们就可以把所有可以在命令行输入的内容在Excel中编辑出来然后“Ctrl+C”“Ctrl+V”就OK了。
如下面,我们就用上面的那些数据为圆心绘制半径为1的圆。
在Excel中另起一列输入(="C"&" "&C2&" "&1)括号内的内容。
其中C是CAD中画圆的快捷键,上式C后跟一空格,在CAD中相当于确定命令,接下来C2为圆心坐标,空格,半径1。
&符号在Excel 中是连接符号。
下拉上式得到全部数据的命令。
复制该列数据,在CAD命令行”Ctrl+V“。
从上面可以看出来使用Excel输入在某些时候比用徒手绘制要来得简洁。
我们也可以绘制更复杂的图形。
比如上面的数据我就是从咬合桩数据得来的。
我要绘制的是咬合桩桩的三维图。
我们可以以“圆柱体”命令cyl开头写出咬合桩的通用表达式。
然后直接画图。
也可以写出标注的表达式然后统一标注。
这些就不在详细讲述了,更多的应用还要靠自己去发现。
利用Excel 在AutoCAD 中绘制横断面图的实践应用
利用Excel 在AutoCAD 中绘制横断面图的实践应用
范长玉;徐菲
【期刊名称】《吉林水利》
【年(卷),期】2010(000)005
【摘要】在Excel 中建立坐标数据组,在AutoCAD 中批量展点,从而快速地绘制出大断面图,为计算断面面积提供准确的矢量图依据.
【总页数】2页(P57-57,72)
【作者】范长玉;徐菲
【作者单位】吉林省水文实验研究所,吉林长春130022;吉林省长春水文水资源分局,吉林长春130022
【正文语种】中文
【中图分类】TP317.3
【相关文献】
1.利用EXCEL在南方CASS7.0中绘制横断面图 [J], 刘学海;郑洪达
2.利用Excel、AutoCAD整理测量数据并自动绘制水利工程断面图 [J], 王洪宝
3.在AutoCAD中利用VBA编程绘制抛物线断面图 [J], 吕明;张松华
4.利用Excel数据合并在AutoCAD中绘制堤防横断面图的探讨 [J], 任少峰
5.利用Excel在AutoCAD中绘制断面图的实践应用 [J], 张文林;侯五龙
因版权原因,仅展示原文概要,查看原文内容请购买。
使用EXCEL公式构造命令在AUTCAD中批量画图及标注文字
使用EXCEL公式构造命令在AUTCAD中批量画图及标注文
字
问题出处来自于Excelhome一个网友的提问“我有个excel,里面含矩形名称,还有矩形的长和宽,想把这个直接批量在cad中绘制出来,如图所示,急!!!望高手指导!!!”乍一看感觉这个问题需要用vba写代码,从excel 读取数据,然后用autocad对象提供的vba接口去绘图。
多年前我确实也写过这样的程序,但是这个案例中,其实不用那么复杂,利用autocad命令行依次执行的特性,我们可以用excel公式构造出cad命令行一个矩形一个标注,很规则的命令行,话虽如此在实现标注的时候,遇到一点阻碍,因为普通的text命令,最后一步出来的是输入文字框,不能直接输入文字还好cad命令行还能直接执行,文本型lisp命令,百度到list输入文字的命令行,然后计算出输入的坐标,在excel里构造好命令行后, 整列命令复制,粘贴到cad 即大功告成!鉴于本文涉及的公式比较多,需要学习的同学移步到我博客在原文后下载链接当然我就是博客主所以必须是有120%授权的哈哈原文地址:
/blog/archives/250成果如下。
利用Excel数据在AutoCAD绘图软件中绘制土坝横断面
利用Excel数据在AutoCAD绘图软件中绘制土坝横断面陈鸿遵Excel数据处理软件具有超强的数据处理功能,而AutoCAD绘图软件绘图时需要调入大量的数据,如何在AutoCAD绘图时调入Excel 的数据,笔者根据自己的工作经验,浅谈二者“联姻”的小方法,希望能够为设计绘图工作提供一些便利,并与大家共同探讨交流:1.基本思路AutoCAD绘图时,各种轮廓线(即线段)皆由平面点的坐标(X,Y)连接而成,Excel表格可以提供坐标点(X,Y)格式的数据,把Excel坐标格式的数据提供给AutoCAD软件,二者即可完成“联姻”工作。
2.具体方法:2.1Excel表格数据的录入和生成根据处理后的地形测量和设计数据,在Excel表格中分别依次录入某一横断面各点的横坐标(X)和纵坐标(Y)于两列中,然后在第三列中生成(X,Y)格式的数据。
例如:假设某点坐标为 (X i,Y i)(i =1,2,3,4…),录入时使Ai=X i,Bi=Y i(i=1,2,3,4…),在C列中编辑公式:Ci=Ai&","&Bi(i=1,2,3,4…), 于是该列中的所有数据显示为坐标格式数据,即为我们需要的坐标格式数据(X i,Y i)。
2.2 AutoCAD绘图时数据的调入首先在EXCEL表格中选取该横断面所有坐标格式数据,然后点击复制命令。
如:选取Ci(i=1,2,3,4…20,假设该横断面有20个点),点击鼠标右键,然后点击“复制”命令(或者直接使用快捷键方式:Ctrl+C)。
然后打开AutoCAD绘图软件,点击绘直线命令,在屏幕下方出现命令提示行:“-line指定第一点:”,移动鼠标至该提示行尾,点击鼠标右键,点击“粘贴”命令。
此时AutoCAD绘图区出现该横断面及地面轮廓图。
3.特点3.1为数据检查与修改提供了方便。
利用EXCEL数据处理软件,可以直接录入原始测量数据,通过编辑公式计算,得到我们绘图时需要的坐标数据。
AutoCAD VBA自动获取Excel数据生成塔基断面图
AutoCAD VBA编程:自动获取Excel数据生成塔脚断面图原以为这辈子再不会写程序了,无奈,还得继续……1、测量原始数据、处理结果。
如图:2、原始数据录入Excel ,并整理如下格式:3、因断面图用于设计高低柱、长短腿,在AutoCAD里面只生成A、B、C、D四个腿、以及横线路方向(E)即可。
在CADVBA程序管理器中录入以下程序段:Sub yema()Dim xcelApp As Excel.ApplicationDim xcelSheet As Excel.WorksheetDim strFile As StringstrFile = ThisDrawing.Application.VBE.ActiveVBProject.FileNameSet xcelApp = CreateObject("Excel.Application")xcelApp.Workbooks.Open Left$(strFile, Len(strFile) - 11) & "test.xlsx", , ReadOnly Set xcelSheet = xcelApp.ActiveWorkbook.Sheets(1)Dim mytxt As AcadTextStyleSet mytxt = ThisDrawing.TextStyles.Add("standard")mytxt.fontFile = "c:\windows\fonts\SIMFANG.TTF"ThisDrawing.ActiveTextStyle = mytxt'Dim newl, newl1, xxyLine, xxxLine As AcadSpline'取消顺线路方向Dim newl, newl1, xxyLine As AcadSplineDim startTan(0 To 2) As DoubleDim endTan(0 To 2) As DoublestartTan(0) = 0: startTan(1) = 0: startTan(2) = 0endTan(0) = 0: endTan(1) = 0: endTan(2) = 0Dim ptArr(0 To 92) As DoubleDim ptArr1(0 To 92) As DoubleDim ptArr2(0 To 92) As Double'Dim ptArr3(0 To 92) As DoubleDim i, j As Integeri = 1j = 0Do While i < 32ptArr(j) = xcelSheet.Range("C" & i): ptArr(j + 1) = xcelSheet.Range("D" & i): ptArr(j + 2) = 0ptArr1(j) = xcelSheet.Range("G" & i): ptArr1(j + 1) = xcelSheet.Range("H" & i): ptArr1(j + 2) = 0ptArr2(j) = xcelSheet.Range("K" & i): ptArr2(j + 1) = xcelSheet.Range("L" & i): ptArr2(j + 2) = 0'ptArr3(j) = xcelSheet.Range("O" & i): ptArr3(j + 1) = xcelSheet.Range("P" & i): ptArr3(j + 2) = 0i = i + 1j = j + 3LoopSet newl = ThisDrawing.ModelSpace.AddSpline(ptArr, startTan, endTan)Set newl1 = ThisDrawing.ModelSpace.AddSpline(ptArr1, startTan, endTan)Set xxyLine = ThisDrawing.ModelSpace.AddSpline(ptArr2, startTan, endTan)'Set xxxLine = ThisDrawing.ModelSpace.AddSpline(ptArr3, startTan, endTan) newl.color = acRednewl1.color = acYellowxxyLine.color = acBlue'xxxLine.color = acBlueDim aText, cText, bText, dText As AcadTextDim txtP(0 To 2) As DoubletxtP(0) = ptArr(0) + 20txtP(1) = ptArr(1)txtP(2) = 0Set aText = ThisDrawing.ModelSpace.AddText("A", txtP, 800)txtP(0) = ptArr(90) - 20txtP(1) = ptArr(91)txtP(2) = 0Set cText = ThisDrawing.ModelSpace.AddText("C", txtP, 800)txtP(0) = ptArr1(0) + 20txtP(1) = ptArr1(1)txtP(2) = 0Set bText = ThisDrawing.ModelSpace.AddText("B", txtP, 800)txtP(0) = ptArr1(90) - 20txtP(1) = ptArr1(91)txtP(2) = 0Set dText = ThisDrawing.ModelSpace.AddText("D", txtP, 800)'画坐标Dim xLine As AcadLineDim yLine As AcadLineDim stPoint(0 To 2) As DoubleDim enPoint(0 To 2) As DoublestPoint(0) = -20000: stPoint(1) = 0: stPoint(2) = 0enPoint(0) = 20000: enPoint(1) = 0: enPoint(2) = 0Set yLine = ThisDrawing.ModelSpace.AddLine(stPoint, enPoint)stPoint(0) = 0: stPoint(1) = -13000: stPoint(2) = 0enPoint(0) = 0: enPoint(1) = 13000: enPoint(2) = 0Set yLine = ThisDrawing.ModelSpace.AddLine(stPoint, enPoint)'加坐标度ThisDrawing.SetVariable "PDMODE", 2ThisDrawing.SetVariable "PDSIZE", 300Dim zbPoint As AcadPointDim zbTxt As AcadTexti = -15Do While i < 16stPoint(0) = i * 1000: stPoint(1) = 0: stPoint(2) = 0Set zbPoint = ThisDrawing.ModelSpace.AddPoint(stPoint)stPoint(0) = i * 1000: stPoint(1) = -700: stPoint(2) = 0If i < 0 ThenSet zbTxt = ThisDrawing.ModelSpace.AddText(-i, stPoint, 250) ElseSet zbTxt = ThisDrawing.ModelSpace.AddText(i, stPoint, 250) End Ifi = i + 1Loopi = -6Do While i < 7stPoint(0) = 0: stPoint(1) = i * 2000: stPoint(2) = 0Set zbPoint = ThisDrawing.ModelSpace.AddPoint(stPoint)stPoint(0) = -650: stPoint(1) = i * 2000 - 100: stPoint(2) = 0Set zbTxt = ThisDrawing.ModelSpace.AddText(i, stPoint, 250)i = i + 1Loop'加塔号、塔型Dim titTxt As AcadTextstPoint(0) = 1000: stPoint(1) = -10000: stPoint(2) = 0Set titTxt = ThisDrawing.ModelSpace.AddText(xcelSheet.Range("B32") & "(" & xcelSheet.Range("B33") & ")", stPoint, 800)ThisDrawing.Application.UpdateZoomAllxcelApp.ActiveWorkbook.ClosexcelApp.Workbooks.ClosexcelApp.QuitEnd Sub4、运行结果如下图(OK):。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网上泛滥的快捷键对你学CAD是毫无用处的,甚至是累赘,实际上CAD常用的快捷键命令不多。
要想用cad快速制图的话,快捷键还是自定义为上,把所有常用命令都改在左手键盘,如CO改成C;C画园被重复,改成CC,更改的快捷键需要易记,最好与原来的命令相关联,如CC是CIRCLE,单词里面有两个C,分别是重音所在的地方。
以下是CAD常用快捷键命令:
C copy 复制
Cr circle 圆
Ff offset 偏移
V move 移动
Rr mirror 镜像
Rt Rectangle 方形
X line 线
XX Pl line Pl线
VA match 刷图层
DB (ZDBZ)逐点标注
WA 绘制墙体
这些都是比较常用的,基本上够新手提高一定效率了,也比较好记。
------------------------------------------------------------------------------------------------------------------------------------
因为大部分使用CAD的朋友同时也是用SKETCHUP,这里再附上本人经常使用的SU单手快捷键,也是为了避免CAD混乱,故设置了差不多的快捷键:
V 移动
T 推拉
H 隐藏
Ctrl+H 取消隐藏
G 成组
Ctrl+G 创建组建
X 线
W 隐藏其它物体
D 标注
暂时想到就这些,基本也满足了画图的大部分功能了,效率绝对是成倍的提升,主要是提供了思路,同时也给出了一定的示范,希望能真的帮到各位解决这种基本的问题,把更多时间省下来学点其他有用的东西。