Excel在测绘工作中的应用.docx
- 文档编号:12637361
- 上传时间:2023-06-06
- 格式:DOCX
- 页数:17
- 大小:132.58KB
Excel在测绘工作中的应用.docx
《Excel在测绘工作中的应用.docx》由会员分享,可在线阅读,更多相关《Excel在测绘工作中的应用.docx(17页珍藏版)》请在冰点文库上搜索。
Excel在测绘工作中的应用
Excel在测绘工作中的应用
目录„„„„„„„„„„„„„„„„„„„„„„„„„„1摘要„„„„„„„„„„„„„„„„„„„„„„„„„„2关键词„„„„„„„„„„„„„„„„„„„„„„„„„21引言„„„„„„„„„„„„„„„„„„„„„„„„„22Excel应用于附合导线的近似平差计算„„„„„„„„„„32.1创建表格和输入数据„„„„„„„„„„„„„„„„„32.2角度闭合差的计算及分配„„„„„„„„„„„„„„„42.3推算坐标方位角„„„„„„„„„„„„„„„„„„„52.4坐标增量闭合差的计算及分配„„„„„„„„„„„„„52.5解算各点坐标的最或然值„„„„„„„„„„„„„„„53绘制控制网图„„„„„„„„„„„„„„„„„„„„„63.1VBA是什么,„„„„„„„„„„„„„„„„„„„„63.2VBA宏代码编辑„„„„„„„„„„„„„„„„„„„63.3宏代码控制CAD完成展点„„„„„„„„„„„„„„„114EXCEL在移动终端设备上应用„„„„„„„„„„„„„„124.1Quickoffice办公软件的功能„„„„„„„„„„„„„124.2如何用Quickoffice在智能手机上处理测量问题„„„„„135结束语„„„„„„„„„„„„„„„„„„„„„„„„15
1
摘要:
工程测量的核心是数据处理,但其内业工作的确十分繁琐,涉及几何、三角函数等的算术运算和逻辑运算。
Excel作为专业的电子表格,具有制表、计算、统计、逻辑分析等高智能化的强大功能。
在工程测量数据处理过程中运用它,能够很方便地处理如方位角反算、边长改化、简易平差、仪器检验表计算、沉降观测数据分析图表等,配合其它相关制图软件如AUTOCAD,能够实现自动展点、标注以及数据格式的转换,而在移动终端设备上使用EXCEL,将能够实时地处理各种测量问题,具有广泛的运用前景。
关键词:
MicrosoftExcel附合导线平差CAD展点QuickofficePDA智能手机1引言
MicrosoftExcel是微软公司基于Windows操作平台开发的一款微机数据处理软件,它具有丰富的表格特性和强大的数据处理能力,界面清晰友好,能够方便地进行数据处理和函数运算。
对于在测量工作中,EXCEL软件能够很方便地处理如方位角反算、边长改化、简易平差、仪器检验表计算、沉降观测数据分析图表等。
EXCEL能够以各种表格的形式直观地体现出计算过程与计算结果,数据处理灵活多变,很适应我们的测量计算,能够非常轻松地取代计算器的所有功能,使我们的工作能够达到事半功倍的效果。
此外,借助EXCEL还可以实现在Autocad绘图软件中的自动展点、标注以及数据格式的转换等功能。
2
2Excel应用于附合导线的近似平差计算
所谓附合导线,是指起始于一个已知控制点,而终止于另一个已知控制点的导线。
利用它进行附合导线的近似平差计算非常方便。
鉴于附合导线左角观测和右角观测两种情况下近似平差的高度相似性,本例应用只编制左角观测情况的近似平差程序。
若是右角观测,需要将右角观测数据转化为左角观测数据。
工作思路:
?
Excel表格初始化,输入已知数据;?
角度闭合差的计算及分配;?
根据起始边的坐标方位角和改正后的转折角(观测值加改正值)推算其余各边的坐标方位角;?
坐标增量闭合差的计算及分配;?
解算各点坐标的最或然值。
2.1创建表格和输入数据
1.运行MicrosoftExcel,新建一个文件,赋名存盘。
本例文件名是“AACT.XLS”。
本例附合导线示意图如图2.1所示。
2.输入文字项目:
行标题、列项目(点号)和其他文本信息,这些文字信息为工作表中的各项值提供框架。
根据表头提示输入观测数据和已知数据:
角度观测值、边长观测值、已知点坐标和观测角中误差。
如图2.3所示,虚线框内数据为观测数据和已知数据。
设置单元格格式。
图2.1附合导线示意图
3.数据预处理。
若附合导线是右角观测,则先将角度观测值输入到“角度转换”模块的右角栏中。
以右角=131?
23′44″为例,左角为360-(B20+C20/60+D20/3600),单位为度。
转化为度分秒形式,度值F20=INT[360-(B20+C20/60+D20/3600)],分值G20=INT(([360-(B20+C20/60
+D20/3600)]-F20)*60),秒值H20=([(360-(B20+C20/60+D20/3600)-F20)
3
*60]-G20)*60。
在这里,中括号[]表示对上个步骤中部分公式的引用,便于衔接理解,在Excel中编制公式时,应将[]替换成()或略去。
观测角度转换界面如图2.2所示。
图2.2观测角度转换界面
2.2角度闭合差的计算及分配
1.解算AB边(起始边)和CD边(附合边)的坐标方位角。
?
由公式ATAN2((N6-N5),(O6-O5))求得AB边的坐标方位角(弧度制)。
ATAN2()为X轴向北、Y轴向东的笛卡尔坐标系下的反正切函数,根据正切值返回弧度值;?
将上式转
ATAN2((N6-N5),(O6-O5))/PI()*180],360);?
解算AB边坐标化为角度制MOD([
方位角的度值F6=INT[MOD(ATAN2((N6-N5),(O6-O5))/PI()*180,360)],INT()为取整函数;?
解算AB边坐标方位角的分值G6=
MOD(ATAN2((N6-N5),(O6-O5))/PI()*180,360)]-F6)*60);?
解算AB边坐INT(([
标方位角的秒值H6
=([(MOD(ATAN2((N6-N5),(O6-O5))/PI()*180,360)-F6)*60]-G6)*60。
同理解算CD边坐标方位角的度、分、秒值。
2.求观测角之和,,,B13=SUM(B6:
B11)+SUM(C6:
C11)/60+SUM(D6:
D11)/3600,SUM()为求和函数。
图2.3附合导线近似平差界面2.3推算坐标方位角
1.解算B-P1边的坐标方位角。
为了简明叙述,记AB边的坐标方位角和B测站
4
的观测角分别为α0、β1(弧度制),则α0=(F6+G6/60+H6/3600)/180*PI(),
β1=(B6+C6/60+D6/3600)/180*PI()。
?
B-P1边坐标方位角的度值F7=INT(MOD(α0+β1-PI(),PI()*2)*180/PI()),MOD()为求余函数;?
B-P1边坐标方位角的分值G7=INT([MOD(α0+β1-PI(),PI()*2)*180/PI()]-E7)*60);?
B-P1边坐标方位角的秒值H7=
([(MOD(α0+β1-PI(),PI()*2)*180/PI()-E7)*60]-F7)*60。
在编制上述三个公式时将α0和β1代入运算。
2.选中F7:
H7区域,拖动右下角十字拖柄至H12,依次自动解算出P1-P2、P2-P3、P3-P4、P4-C、CD等五条边坐标方位角的度、分、秒值。
2.4坐标增量闭合差的计算及分配
1.计算、和,I13=SUM(I7:
I11),J13=SUM(J7:
J11),,,X,,Y,S
L13=SUM(L7:
L11)。
ff2.坐标增量闭合差的计算。
J14=N6+J13-N12,L14=O6+L13-O12。
yx
3.坐标增量闭合差的分配。
在改正列第一个单元格里写入公式K7,X
=-I7*$J$14/$I$13,拖动K7右下角十字拖柄至K11,自动解算出其它边的改正,X值。
同理解算改正列。
Y
f,S/f4.评定精度。
J15=SQRT(J14^2+L14^2),导线全长相对闭合差分母L15ss=I13/J15。
2.5解算各点坐标的最或然值
P1点坐标(X,Y):
N7=N6+J7+K7,O7=O6+L7+M7。
选中N7:
O7区域,拖动右下角十字拖柄至O11,依次自动解算出P2、P3、P4、C点坐标的最或然值。
至此,工作表中的近似平差计算公式编制完毕。
根据需要更换观测数据和已知数据,调整未知点个数(插入和删除行),即可自动完成附合导线的近似平差计算。
5
3绘制控制网图。
我们通过VBA平差计算完成后,下面我们就来解决EXCEL与CAD的连接问题,编程来实现。
3.1VBA是什么,
VBA是VisualBasicforApplication的简写,它以VB语言为基础,经过修改并运行在MicrosoftOffice的应用程序,如Excel,Word中,VBA具有很强的开发能力。
3.2VBA宏代码编辑。
把平差的结果对应复制到Sheet5的A、B、C列,然后依次点击工具,宏,Visualbasic编辑器,进入VBA编辑界面。
在左边的VBAproject工程管理器下拉菜单下找到sheet5,双击打开代码窗口,输入下列代码。
DimX()AsDouble
Dimy()AsDouble
Dimpoints()AsDouble
DimTEXTOBJAsAcadText
DimTEXTSTRINGAsString
DimINSERTIONPOINT(0To2)AsDouble
DimtestlayerAsAcadLayerPrivateSubCommandButton1_Click()
n=1
DoWhileWorksheets(5).Range("B"&n+1)<>""
n=n+1
Loop
n=n-1
ReDimX(n)AsDouble
ReDimy(n)AsDouble
ForI=1Ton
X(I)=Worksheets(5).Range("B"&I+1)y(I)=Worksheets(5).Range("c"&I+1)Next
连接cad
'AddDimStyle
ReDimpoints(n*2-1)
6
DimplineObjAsAcadLWPolyline
Forj=0Ton*2-1Step2
points(j)=X(j/2+1)
points(j+1)=y(j/2+1)
'Worksheets(3).Range("p"&j)=points(j)'Worksheets(3).Range("q"&j)=points(j+1)
Nextj
SetplineObj=
acadapp.ActiveDocument.ModelSpace.AddLightWeightPolyline(points)
Example_Layers
acadapp.ActiveDocument.ActiveLayer=testlayer
ForI=1Ton
TEXTSTRING=Worksheets(5).Range("a"&I+1)
INSERTIONPOINT(0)=Worksheets(5).Range("b"&I+1):
INSERTIONPOINT
(1)
=Worksheets(5).Range("c"&I+1):
INSERTIONPOINT
(2)=0
text1
Next
AppActivateacadapp.Caption
acadapp.ZoomExtents
EndSub
'清除数据
PrivateSubCommandButton2_Click()
Range("A2:
C3358").Select
Selection.ClearContents
EndSub
SubExample_Layers()
'ThisexamplefindsthecurrentLayerscollectionand
'addsanewlayertothatcollection.
DimlayerCollAsAcadLayers
SetlayerColl=acadapp.ActiveDocument.Layers
'Createadimensionstylenamed"TEST"incurrentdrawing
7
Settestlayer=layerColl.Add("TEXT")
'MsgBox"Anewlayercalled"&testlayer.Name&"hasbeenaddedtotheLayerscollection.",vbInformation,"LayersExample"EndSub
Subtext1()
acadapp.ActiveDocument.ActiveTextStyle.fontFile=_
\WINDOWS\FONTS\SIMSUN.TTC""C:
DimheightAsDouble
height=10
SetTEXTOBJ=acadapp.ActiveDocument.ModelSpace.AddText(TEXTSTRING,INSERTIONPOINT,height)
'TEXTOBJ.RotateINSERTIONPOINT,0.7853981*2
'ACADAPP.ActiveDocument.ActiveTextStyle.GetFontTYPEFACE,Bold,Italic,Charset,PITCHANDFAMILY
'TYPEFACE="楷体"
'ACADAPP.ActiveDocument.ActiveTextStyle.SetFontTYPEFACE,Bold,Italic,Charset,PITCHANDFAMILY
'TEXTOBJ.Update
SetTEXTOBJ=Nothing
EndSub
PrivateSubCommandButton3_Click()
'ThisexamplecreatesaDim3PointAngularobjectinmodelspace
DimDimPointAngularObjAsAcadDim3PointAngular
DimAngleVertex(0To2)AsDouble
DimFirstPoint(0To2)AsDouble,SecondPoint(0To2)AsDouble
DimTextPoint(0To2)AsDouble
n=1
DoWhileWorksheets(5).Range("B"&n+1)<>""
n=n+1
Loop
n=n-1
ReDimX(n)AsDouble
ReDimy(n)AsDouble
ForI=1Ton
X(I)=Worksheets(5).Range("B"&I+1)
8
y(I)=Worksheets(5).Range("c"&I+1)
Next
DimdimObjAsAcadDimAligned
Dimpoint1(0To2)AsDouble
Dimpoint2(0To2)AsDouble
Dimlocation(0To2)AsDouble
连接cad
ForI=2Ton-1
'角度
'DefinethenewDim3PointAngularobject
AngleVertex(0)=X(I):
AngleVertex
(1)=y(I):
AngleVertex
(2)=0
FirstPoint(0)=X(I-1):
FirstPoint
(1)=y(I-1):
FirstPoint
(2)=0
SecondPoint(0)=X(I+1):
SecondPoint
(1)=y(I+1):
SecondPoint
(2)=0
TextPoint(0)=X(I)+2:
TextPoint
(1)=y(I):
TextPoint
(2)=0
'CreatethenewDim3PointAngularobjectinmodelspace
SetDimPointAngularObj=
acadapp.ActiveDocument.ModelSpace.AddDim3PointAngular(AngleVertex,FirstPoint,SecondPoint,TextPoint)
'ThisDrawing.Application.ZoomAll
'Thisexamplecreatesanaligneddimensioninmodelspace.'距离
'Definethedimension
'point1(0)=5#:
point1
(1)=5#:
point1
(2)=0#
'point2(0)=10#:
point2
(1)=5#:
point2
(2)=0#
location(0)=(AngleVertex(0)+FirstPoint(0))/2:
location
(1)=(AngleVertex
(1)+FirstPoint
(1))/2:
location
(2)=0#
'Createanaligneddimensionobjectinmodelspace
SetdimObj=
acadapp.ActiveDocument.ModelSpace.AddDimAligned(FirstPoint,AngleVertex,location)
'ZoomAll
9
Next
'MsgBox"ADim3PointAngularobjecthasbeencreated."
acadapp.ZoomExtents
EndSub
按ALT+F11切换回excel编辑界面,找到控件工具箱,在空白处分别建立三个命令按钮,并分别命名“展点”、“清空数据”、“角度距离”,将三个按钮分别指向CommandButton1_Click(),CommandButton2Click(),CommandButton3Click()。
图3.1EXCEL展点界面
10
图3.2平差结果按坐标在AUTOCAD中展点
3.3宏代码控制CAD完成展点。
如上所述,我们只需要点击展点按钮,VBA代码就直接打开CAD并按点位坐标绘制出平面位置(见图3.2),极大地简化了操作,提高了计算效率。
11
4EXCEL在移动终端设备上的应用。
随着经济建设的发展,许多行业在应用上对测绘学科愈来愈强烈地提出了数据采集、数据处理、成果应用的自动化、智能化、网络化、实时化和可视化的要求。
空间技术、计算机技术、信息技术以及通信技术的发展,为测绘技术实现这种要求提供了有力支撑和现代化的技术手段。
在测量的实际作业过程中,我们经常需要解决如坐标放样,后方交会,坐标正反算等实际问题,而如果用笔记本电脑的话,其价格相对昂贵,便携性方面也略显不足;而PDA等移动终端设备作为一种新兴产品,经过十几年的发展,已经日益成熟。
目前PDA、智能手机正被日益广泛的应用于测绘,成了测量作业的好帮手。
但是我们平常购买的PDA和智能手机并不含有如上面所说的后方交会等测量程序,那我们究竟该如果发挥它们的功能,为测量工作服务呢,
编程固然可行,但要用PDA等移动终端设备来编写测量程序的话,必须要掌握如C++、Java等编程语言,编写过程相对复杂,并不容易实现。
那我们是不是可以利用,,,和智能手机自带的软件来做到呢,随着通信技术的飞速发展,智能手机和,,,上已经自带了手机版的,,,,,,办公软件,其包含的,,,,,电子表格功能已经很强大。
uickoffice。
下面我们介绍一款手机软件,Q
4.1Quickoffice办公软件的功能。
Quickoffice是一款著名办公软件,软件可以创建、编辑、浏览word和Excel文档,还支持查看常见格式电子邮件附件。
QuickPoint是QuickOffice三合一套件之一,出品公司为MobilityElectronics,Inc.手机上的迷你版Office办公软件。
有了Quickoffice之后,你的手机就能完全胜任编辑MicrosoftOffice
文档的工作~你还可以读取存放在扩展卡中的MicrosoftWord、Excel文档,甚至是接受到的Email附件中的或者MMS消息中的相关文档
打开文档是会尽量保留原始信息:
字体颜色、字体大小、字形等等。
该软件中Excel的特性:
1.可以打开并保存为原生Excel文档
2.包含了常用函数(科学、财务、常数、日期和时间、查找、加减等)
3.支持多重表和表间链接
4.高级的单元格编辑功能是你编辑起来方便快捷
5.可以使用不同的方式格式化单元格
6.可以更改单元个大小
7.具有查找/查找并更改
8.可以利用Quicksheet察看Email的附件
9.可以编辑*.xls文件
该软件中Word的特性:
1.可以编辑并保存为原生的word文档
2.强大的用户界面使用起来更方便
3.可以对字体进行多种操作(字体大小、色彩、粗体、字体、高亮、下划线等)
4.可以对段落进行多种操作(居左、居中、居右)
5.可以剪切、复制、粘贴文本,支持撤消和重做操作
12
6.具有查找/查找并替换功能
7.支持统计字数功能
从以上可见,quickoffice具有了PC上MicroSoftOfficeExcel的大部分功能,这样,我们就可以利用quickoffice软件进行简单的测量数据处理。
4.2如何用quickoffice在智能手机上处理测量问题。
下面,我们以边角后方交会为例,说明一下quickoffice在智能手机上的应用。
后方交会的具体原理在这里就不在赘述,见图4.1所示。
图4.1边角后方交会示意图
在这个示例中,P点为未知点,A、B两点为已知点,绿色的单元格为必须输入的数据,红色单元格为待求点P的坐标值。
我们需要测量的是AP、BP两条边的距离S1、S2及两边的夹角APB。
按图面所示分别将已知数据及观测数据输入后,剩下的就是计算过程了。
G7单元格输入公式=B3+C3/60+D3/3600将夹角化为度
G8单元格输入公式=SIN(RADIANS(G7))求正弦值
G9单元格输入公式
=SQRT((G5-L5)*(G5-L5)+(G6-L6)*(G6-L6
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Excel 测绘 工作 中的 应用