边坡变形监测曲线

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(1) 设定工作表(Worksheet)的每一行第一列(cells(i,1))为时间,每一行第二列(cells(i,2)) 为水平位移累积量,每一行第三列(cells(i,3))为对应的垂直位移累积量。由于时间的值远小于位移 值,因此将时间值乘以10。 (2) 以(0,0,0)为原点,以时间累积量乘以10为x坐标,对应的水平或垂直累积量为y坐标,0为z 坐标,分别绘制出水平移动累计图,与垂直移动累计图。进而完成边坡位移图形的绘制。 (3) 下述代码可读入Excel数据信息画位移曲线 Dim i As Integer
设计原理与基础:
Visual Basic for Application(VBA)是Microsoft面向最终用 户的应用软件编程语言。它最早出现于Microsoft的Excel和 Project中,如今VBA已成为VB和所有Office产品的组件。常 用的绘图软件AutoCAD也已支持VBA作为二次开发工具。 VBA最大特点和最大优点是利用面向对象(OOP)的ActiveX Automation技术,使语言的引擎在技术上与开发环境分离。 它的功能在很大程度上依赖于它的客户显露的Automation接 口。同时,由于VBA是基于ActiveX Automation技术,它可以 使用任何Automation技术的应用程序共同工作。 基于AutoCAD的VBA应用程序就是高级程序语言的计算功能 与AutoCAD的绘图功能结合,使用VBA程序语句来控制对 AutoCAD图形的操作。 VBA作为一个集成的开发环境,它提供了高质量的用户化编 程能力,能够使AutoCAD数据与其它的VBA应用程序,如 Microsoft Excel软件,直接共享,实现无缝连接,交换数据 非常方便。
边坡变形监测曲线自 动成图系统的开发
项目的提出:
• 近 10 多年来,我国因崩塌、滑坡、泥石流
而死亡的人数达近万人,每年因滑坡造成 的损失高达250~400 亿元。另外,高层建 筑、大坝、桥梁等的变形也给人民的生命 财产带来严重的威胁。对滑坡的变化趋势 进行预测是减灾防灾的基础,地质勘察和 分析是滑坡评价预测的基本方法和手段, 变形位移监测作为辅助性手段,在分析滑 坡体结构、成因,评价预测滑坡稳定性及 发展趋势等方面具有重要意义。
工作过程:
1. 在AutoCAD中创建Excel应用程序
• 要编写存取Excel的应用程序,必须通过VBA将Excel中的对象能够
让用户使用,这就需要参考 Excel对象的数据库。其步骤如下:
• (1)
打开AutoCAD的VBA编辑器(命令:VBAIDE);
• (2)
选择“工具”\“引用”项,在弹出的“引用”对话框
Dim lineobj As AcadLine Dim sPt(0 To 2) As Double Dim ePt(0 To 2) As Double ‘读入坐标画位移曲线 Worksheets(“sheet1”).Activate i = 2 ‘由第二行起 Do Until cells(i, 1).Value = "" If cells(i + 1, 1) = 0 Then Exit Do End If sPnt(0) = cells(i, 1).Value sPnt(1) = 10 * cells(i, 2).Value sPnt(2) = 0 ePnt(0) = cells(i + 1, 1).Value ePnt(1) = 10 * cells(i + 1, 2).Value ePnt(2) = 0 Set lineobj = ThisDrawing.ModelSpace.AddLine(sPnt, ePnt) i=i+1 Loop
• 在AutoCAD中,没有与表对应的对象,但可以根据表中时
间间隔定义水平距离,根据水平与垂直累积量定义垂直距 离,将表中数据理解为线条与文字对象的集合。这样,通 过读取Microsoft Excel文件中的最小对象—单元格区域 (cells(i,j))的主要信息,利用VBA建立AutoCAD与 Excel的通信,然后在AutoCAD文件里指定的图层、位置画 线条,书写文字。通过循环,遍历所有单元格区域(cells (i,j)),边读边写,最终完成边坡位移曲线的绘制。
• 在Microsoft Excel中,与表对应的对象是工作表(Sheet或
Worksheet),与每一个表格方格对应的对象是单元格区 域(range),它可以仅包括一个单元格(cell),也可以 由多个单元格合并而成。工作表对象中的cells属性,在单 元格的选择方面可以达到与range相同的效果,它是以行 (row)和列(gol)作为参数的,对于行和列的选择可以 采用变量的形式。在本例中,可设定工作表(Worksheet) 的每一行第一列(cells(i,1))为时间累积量,每一行第 二列(cells(i,2))为对应的水平位移累积量,每一行第 三列(cells(i,3))为对应的垂直位移累积量。
边坡位移监测曲线能够更直观的反映 边坡的发展和变形规律,而传统的绘图 方式精度差、效率低。为了提高绘图的 精度及效率,我们基于内嵌于AutoCAD 的VBA 语言二次开发出了位移监测曲线 自动生成系统。只要把变监测数据按一 定的格式输入到外部数据文件中,利用 该系统就可自动生成曲线,大大提高了 监测数据的处理速度,提高了绘图精度 及质量。
的“可使用的引用”列表框内,选择“Microsoft Excel 11.0 Object Library”项;
• (3 ) 单击“确定”按钮;
• (4)
接下来使用下列代码可创建完整的应用程序对象Baidu Nhomakorabea例:
• Dim Excel As Excel.Application
• '激活要与之通信的Excel应用程序
• On Error Resume Next

Set Excel = GetObject(, "Excel.Application")

If Err <> 0 Then

Set Excel = CreateObject("Excel.Application")

End If
2. 读入坐标点画位移曲线
相关文档
最新文档