帷幕灌浆频率曲线图自动成图技术分析与研究

2022-07-27 09:47张仕海李新华周泽军
水利技术监督 2022年8期
关键词:线型曲线图单元格

张仕海,李新华,周泽军

(云南省水利水电工程有限公司,云南 昆明 650000)

1 问题的提出

透水率频率曲线图及单位注入量频率曲线图是灌浆成果资料的重要组成内容,常规的灌浆频率曲线图的绘制,一般采用CAD人工绘制,或者使用Excel的插入图表功能来辅助完成。这两种方法简单易行,但也有其明显的不足之处。CAD人工绘制容易出错,时效性差且修改麻烦。Excel插入散点图可以按规范要求制作单对数坐标图,但绘制频率区间曲线时,图表中却无规范要求的线型可供选择,因此使用Excel图表绘制的频率曲线图仍无法达到规范标准。

如何方便、快捷、规范地完成灌浆频率曲线图的绘制,成了灌浆施工中资料整理的一种需求。

2 解决思路

AutoCAD VBA是AutoCAD的一种开发工具,具有强大的功能。AutoCAD VBA里创建的工程是代码模块、类模块和窗体的集合,可以执行设定的功能。工程可保存在AutoCAD图形中,或作为独立的文件保存[1]。

利用CAD VBA的上述功能,加上Excel储存数据的简便性,灌浆频率曲线图的快速绘制可按以下思路完成:

(1)制作规范、通用的灌浆频率曲线的单对数坐标图,作为绘图模板使用[2]。

(2)CAD读取绘图数据、调用CAD线型并绘制各次序孔区间频率曲线及累计频率曲线的功能,则制作成VBA工程文件,并单独保存。

(3)制作统一合规的符合灌浆频率图要求的CAD线型文件。

(4)用Excel文件储存绘图数据。

绘图流程如图1所示。

图1 频率曲线图绘制流程

2.1 模板文件设计

制作模板文件时,首先按灌浆规范要求进行编辑,并考虑按透水率及单位注入量两个类型分开,透水率频率图CAD模板与透水率数据文件相对应,单位注入量频率曲线CAD模板与单位注入量数据文件相对应。

按灌浆规范标准[2],频率曲线图为单对数坐标图,透水率轴及单位注入量轴设置为对数轴线[3]。一般情况,透水率值取1~100Lu,单位注入量取20~1000kg/m。

Excel数据记录模板文件中,数据按列存放,透水率区间划分确定后,再按孔序分组。数据表中一列存放区间频率值,另一列利用函数公式自动计算各区间的累计频率值。数据结构如图2所示。

2.2 CAD线型文件设置

灌浆频率曲线图中区间累计曲线使用连续直线,区间频率线则使用内插“×”符号的间断线,该线型必须自定义来设置,如图3所示。

图3为Ⅰ序、Ⅱ序、Ⅲ序孔区间频率线型的自定义设置。在自定义的PLQX1.0.LIN线型文件中,线型名称为“Ⅰ,PLQX”的样例为“—×—×—”。其规格为两端对齐(A),开始5个单位长的短划线(5),接2个单位的空格(-2),再插入“×”符号([“×”,…]),之后接2.5个单位的空格(-2.5)。插入的“×”符号为STANDARD样式,比例为1.0(S=1.0),倾角为0(R=0),划线方向偏移2.0单位(X=2.0),划线垂直方向向下偏移1.55单位(Y=-1.55)。其余“Ⅱ,PLQX”“Ⅲ,PLQX”线型意义相同。

图3 CAD线型文件设置

绘制频率曲线图时,根据频率区间划分的不同,每个区间的频率线及累计频率线均有一个起始点坐标与一个结束点坐标需要确定。其数值可根据CAD模板文件中坐标轴的长度设置及坐标轴的零点位置坐标,在Excel数据记录文件中使用相应函数计算求得(图2)。

2.3 数据读取及VBA绘图功能文件编制

创建VBA工程时,使用ThisDrawing.ActiveLinetype语句来加载线型文件,使用ThisDrawing.ModelSpace.AddLine pt1,pt2语句来绘制pt1点至pt2点的直线[1]。自Ⅰ序第一区间开始,至Ⅲ序最后一个区间,连续画线,即可完成频率图绘制。

绘制Ⅰ序孔透水率频率曲线代码见表1。

表1 Ⅰ序孔透水率频率曲线代码表

绘制Ⅰ序孔透水率累计频率曲线代码见表2。

表2 Ⅰ序孔透水率累计频率曲线代码表

绘制Ⅱ序孔、Ⅲ序孔频率曲线及累计频率曲线代码与绘制Ⅰ序孔类似。VBA代码编辑完成,经调试达到预定效果后,导出工程并单独保存文件。

绘图时,打开CAD频率图模板文件后,加载应用程序,选择已编辑好的透水率(或单位注入量)VBA工程文件(dvb文件),加载后运行宏,即可完成对Excel数据的读取及绘制相应的曲线(图4)。

图4 CAD中加载dvb文件流程

3 应用实例

3.1 某工程透水率频率曲线图汇总[3]

打开Excel绘图数据文件的sheet1表,该工程透水率区间划分为六个区间:①q<1Lu;②q=1~5Lu;③q=5~10Lu;④q=10~50Lu;⑤q=50~100Lu;⑥q>100Lu。输入Ⅰ序孔透水率区间频率值,记录在C3至C8单元格中,区间透水率累计频率累加记录在D3至D8单元格中;输入Ⅱ序孔透水率区间频率值,记录在C9至C14单元格中,区间透水率累计频率记录在D9至D14单元格;输入Ⅲ序孔透水率区间频率值,记录在C15至C20单元格中,区间透水率累计频率记录在D15至D20单元格中。每个区间对应的E、F单元格自动计算频率线起点坐标X、Y值,G、H单元格记录频率线终点坐标X、Y值。I、J、K、L单元格则记录各区间累计频率线起点及终点的坐标值(图2)。

图2 Excel数据储存及处理

按照图4中的方法加载应用程序,选择透水率频率曲线工程,并运行宏,绘制透水率频率图,结果如图5所示。

图5 透水率频率曲线图

3.2 某工程单位注入量频率曲线图绘制

单位注入量绘图数据保存在Excel模板文件的sheet2工作表中,与透水率数据处理相类似,单位注入量频率区间确定后,输入Ⅰ序孔单位注入量率区间频率值,记录在C3至C8单元格中,区间单位注入量率累计频率累加记录在D3至D8单元格中;Ⅱ、Ⅲ序孔单位注入量区间频率值、区间累计频率记录与透水率相似。E、F单元格自动计算频率线起点X、Y坐标,G、H单元格记录频率线终点X、Y坐标。I、J、K、L单元格则记录各区间累计频率线起点及终点的坐标值。

加载应用程序,选择单位注入量频率曲线工程,并运行宏,单位注入量频率图结果如图6所示。

图6 单位注入量频率曲线图

4 注意事项

4.1 应用程序加载

在CAD2010及以上版本中,VBA不再随CAD一起安装,要使用VBA,必须单独下载安装。

Excel数据模板文件、VBA代码模块文件以及CAD线型文件应保存在一个文件夹内。

CAD线型管理器列表内无自定义线型时,需进行一次手动加载自定义线型文件。

4.2 模板文件

频率图CAD模板不宜进行移动或缩放操作,成果频率图生成后,以另存方式保存成果文件。

Excel数据模板中,sheet1工作表保存透水率数据文件,sheet2工作表保存单位注入量数据文件,各区间频率线及累计频率线的起止点坐标值均根据CAD模板图中数据在Excel表中经过简单的计算求得。在CAD模板不修改的情况下,只需输入透水率区间频率数据,其余有公式单元格自动计算,数据输入完毕保存即可。

5 结论

Excel对数据处理有方便、快捷的特性;CAD可制作符合规范要求的自定义线型文件;使用CAD VBA中简单的直线绘制语句及加载线型文件的语句,即可实现绘制设定的绘图功能,该功能VBA代码模块可保存为独立文件。充分将上述几个简单的功能结合,即可解决灌浆频率曲线图绘制效率低下、容易出错及图纸不规范的问题。模板文件、代码模块文件能独立保存,使用方便。绘图时只需在CAD文件中加载应用程序即可,使用不受CAD版本及操作系统限制,操作简单。该方法在本公司的部分灌浆工程中已被使用,及时调整灌浆施工参数,保证了灌浆质量,收到了很好的应用效果,值得在全部灌浆工程施工中推广应用。

猜你喜欢
线型曲线图单元格
变化环境下考虑线型不确定性的水文设计值估算分析
湘潭高月塘大桥施工线型监控与合拢策略研究
加权融合方法在船型开发中的应用
秦皇岛煤价周曲线图
合并单元格 公式巧录入
流水账分类统计巧实现
秦皇岛煤价周曲线图
玩转方格
玩转方格
秦皇岛煤价周曲线图