全线路计算(非常好的坐标、高程计算程序 EXCEL) N交点的
- 格式:xls
- 大小:1.87 MB
- 文档页数:2
请输入线路起点桩号:K00+000.0000
(输入交点及起终点点号时,交点编号只要输入数字即可,起点输为0,终点输为一个"-"数),请在蓝格子里(第1~6、23、24列)输入曲线数据
请输入线路起点桩号:K00+000.0000
(输入交点及起终点点号时,交点编号只要输入数字即可,起点输为0,终点输为一个"-"数),请在蓝格子里(第1~6、23、24列)输入曲线数据
线路曲线要素请输入线路起点桩号:K00+000.0000
(输入交点及起终点点号时,交点编号只要输入数字即可,起点输为0,终点输为一个"-"数),请在蓝格子里(第1~6、23、24列)输入曲线数据
路曲线要素。
线路计算使用说明本软件的输入输出均在Excel电子表中完成。
很好的利用了Excel的各种功能。
使用本程序前您首要安装Microsoft office 2000 中的Excel. 否则不能使用本程序。
1. 数据输入启动线路计算程序自动启动Excel , 在Excel中新建一个文档。
程序自动完成数据表格的初始化。
只要按着初始化的表格输入就行了,使用很简单。
注意:1,输入里程时如14+003,14+050这样的里程中间的0不能省略。
里程中间的+号可省略:如K14+003.00和14003.00是一样的。
2,这里的曲线交点的意思如图:a)平曲线表平曲线分为直线、圆曲线、缓和曲线。
各种曲线里程相连。
即第一条曲线的终点,和第二条曲线的起点是同一个点,里程坐标完全一样,所以从第二条曲线开始起点可以不输入。
(如下表1下划线部分可以不输入)类型数字分别为:(输入时类型必输入否则计算可能不正确)直线 1圆曲线 2直圆缓和曲线 3圆直缓和曲线 4直线输输入起点里程坐标,终点里程坐标,类型1,交点里程坐标不用输入。
圆曲线输入起点里程坐标,终点里程坐标,交点坐标,交点里程不用输入,圆曲线半径,曲线长,类型2。
缓和曲线交点坐标、起点里程坐标,终点里程坐标,半径,表1交点里程交点X交点Y起点里程起点X起点Y 终点里程终点X终点Y半径R线路长平曲线类型3586485040610+149.885 358582.14504079.698281.637 358711.297504087.31200131.7522358737.5504098281.637 358711.3504087.308366.137 358784.098504129.8820084.54358843.3504170366.137 358784.1504129.875473.695358873.164504190.174100107.5583b)竖曲线表输入交点里程,交点高程,坡度1,坡度2,曲线半径。
EXCEL交点法线路正反算VB源码2(平曲线正反算)Option Explicit'坐标正算'1、交点数组是全局变量,函数自由调用,因此函数无须输入曲线数据;'2、如果输入了 Offset 参数,则不考虑隧道的中心偏移量;'3、Offset 的输入与输出在本函数及本程序中均遵循左负右正原则。
Public Function ToCoord(PEG_J As Double, Offset As Double, ModelOfReturn As String)Dim Point_J As PointDim Arc As DoubleDim Length_X As DoubleDim Position As Integer'判断曲线参数的有效性If N_JD < 0 ThenToCoord = "Data Error!"Exit FunctionEnd If'将修正里程改为原始里程并判断加桩点桩号的有效性PEG_J = OriginalPEG(PEG_J)If PEG_J < 0 ThenToCoord = "PEG Error!" '输入里程有效性判断Exit FunctionElseIf PEG_J < JDs(0).pegHZ Or PEG_J > JDs(N_JD + 1).pegZHThen '加桩点里程超出范围ToCoord = "Out Of Range!"Exit FunctionEnd If'判断加桩点的位置Position = 0Do While PEG_J > JDs(Position + 1).pegZH '最后一个JDs为线路的终点,以其pegZH属性存储终点里程Position = Position + 1 '加桩点位于Position交点的ZH点(不包括)至Position+1交点的ZH点(包括)之间Loop'加桩点位于起始直线段If Position = 0 ThenLength_X = PEG_J - JDs(0).pegHZPoint_J = Vector(JDs(0).pointHZ, Length_X, JDs(0).pointHZ.Azimuth)Point_J.Azimuth = JDs(0).pointHZ.Azimuth'加桩点位于其它交点段位置ElseIf PEG_J < JDs(Position).pegHY Then '加桩点位于入口缓和曲线段Arc = PEG_J - JDs(Position).pegZHPoint_J = Curve(Position, Arc, "Front")If Abs(Offset) < MIN Then '如果用户未输入偏移量则按照隧道的中心偏移处理Offset = JDs(Position).Flag * (Arc / JDs(Position).Lh1) *JDs(Position).OffsetEnd IfElseIf PEG_J < JDs(Position).pegYH Then '加桩点位于圆曲线段Arc = PEG_J - JDs(Position).pegHYPoint_J = Curve(Position, Arc, "Circle")If Abs(Offset) < MIN Then '如果用户未输入偏移量则按照隧道的中心偏移处理Offset = JDs(Position).Flag * JDs(Position).OffsetEnd IfElseIf PEG_J < JDs(Position).pegHZ Then '加桩点位于出口缓和曲线段Arc = JDs(Position).pegHZ - PEG_JPoint_J = Curve(Position, Arc, "Back")If Abs(Offset) < MIN Then '如果用户未输入偏移量则按照隧道的中心偏移处理Offset = JDs(Position).Flag * (Arc / JDs(Position).Lh2) * JDs(Position).OffsetEnd IfElse '加桩点位于末端直线段Length_X = PEG_J - JDs(Position).pegHZPoint_J = Vector(JDs(Position).pointHZ, Length_X, JDs(Position).pointHZ.Azimuth)Point_J.Azimuth = JDs(Position).pointHZ.AzimuthEnd IfEnd If'计算偏移后加桩点坐标(不能使用Vector 函数,否则Point_J 点的切向角将为零)Point_J.X = Point_J.X + Abs(Offset) * Cos(Point_J.Azimuth + Sgn(Offset) * Application.Pi() / 2)Point_J.Y = Point_J.Y + Abs(Offset) * Sin(Point_J.Azimuth + Sgn(Offset) * Application.Pi() / 2)'判断返回何值Select Case LCase(Trim(ModelOfReturn))Case "getx"ToCoord = Point_J.XCase "gety"ToCoord = Point_J.YCase "azimuth"ToCoord = DMS(Point_J.Azimuth) '将切向角转换为方位角字符串Case ElseToCoord = "Model Error!"End SelectEnd Function'计算基点和点的切向夹角(相当于计算切向向量和基点至参数点向量的夹角)'1、函数用于GetArc函数和ToPEG函数和隧道断面中的Tunnel 函数中,即只用于坐标反算;'2、返回的夹角值的范围在-PI~+PI之间,主要是为了判断点在基点的左边还是右边(左负右正)。
竖曲线高程计算通常涉及到纵坡设计,可以用于计算道路或其他线性结构的竖向变化。
如果你想创建一个Excel表格来进行竖曲线高程计算,以下是一个简单的步骤指南:
1. 打开Excel
首先,打开Microsoft Excel软件。
2. 创建表格
在Excel中创建一个新的工作表。
在这个表中,你可以创建两列,一列是里程(或水平距离),另一列是高程。
3. 输入已知数据
在里程列中输入已知的里程点,在对应的高程列中输入相应里程点的高程。
4. 使用公式进行计算
对于每个里程点,你可以使用以下公式来计算其高程:
(H = H_{0} + i \times d)
其中:
•(H) 是当前里程点的高程。
•(H_{0}) 是前一个里程点的高程。
•(i) 是纵坡的坡度(单位为米/米或米/公里)。
•(d) 是当前里程与前一个里程之间的水平距离。
你可以在每个里程点的高程单元格中输入这个公式,并使用拖放功能将公式应用到其他里程点。
5. 保存和分享表格
完成计算后,保存你的Excel表格。
你可以将这个表格分享给其他人,或者将其导入到其他软件中进行进一步的分析和可视化。
示例:
假设你有以下里程和对应的高程数据:
你可以在里程为1和2的单元格中使用上述公式来计算对应的高程。
然后,使用拖放功能将这个公式应用到其他里程点。
小白自学ExcelVBA道路坐标高程计算程序流程1声明1.1 本人是个工作时间不长测量施工员。
1.2听说想轻松愉快的干好测量得学门编程,又听说ExcelVBA是个简单的可视化的常用的……1.3 本人很懒,面对厚厚的全是“昏天暗地”代码的ExcelVBA教科书籍,实在是没心没力。
其实俺还是懂点儿VB编程的(学校学过“=”是赋值,if、while、end的意思,嘿嘿,还有画窗体图框,其他的就都还给老师了)。
1.4 谷歌、度娘,是咱的好帮手。
1.5 仰望的存在,神一般的存在,无私的化身!道路中边桩坐标计算程序120424.xls(王中伟”教授”QQ:595077)曲线坐标计算程序VBA 4.6.xls(陈超”中铁”QQ:295188316)陈师傅的VBA代码乍一看感觉比王老师的让人头痛,怎么说咱们也是个有理想有目标的人,要啃就啃硬骨头!就选~~~嘿嘿~~~王老师的程序吧!1.6 道路中边桩坐标计算程序120424.xls代码获取。
王老师、陈师傅担心不懂编程的人,不小心修改代码导致程序错误,设置了vba密码(个人认为),其次我跟他们不熟,没有正大光明的要的密码,于是求助谷歌度娘,这个关于VBA 密码破解,于是很不厚道的得到了密码,为了方便本次学习,又很不厚道的把道路中边桩坐标计算程序120424.xls的密码贴出来(df750726),神人勿怪呀!2 代码理解ing…我们通过密码打开vba代码窗口,大家可以先把每个表格打开浏览一下代码,是不是感觉很短呀,感觉应该是超级链接的意思,嘿嘿,主要的代码在模块“lx”里,打开下,代码多吧,这就是咱们要肯的骨头。
现在咱们冲呀!2.1 第一段代码理解貌似第一段代码是定义的意思“定义π值”、'定义桩号点”、“'定义坡段”、“'定义基本曲线”①Public Const PI As Double = 3.14159265358979谷歌翻译:Public Const PI As Double公共常量PI 作为双精度浮点型百度百科:双精度浮点数双精度浮点数(Double)用来表示带有小数部分的实数,一般用于科学计算,用8个字节(64位)存储空间,其数值范围为1.7E-308~1.7E+308,双精度浮点数最多有15或16位十进制有效数字,双精度浮点数的指数用“D”或“d”表示。
一个excle模板的制作在当今社会,excle的使用已经是越来越来频繁了,几乎涉及所有的行业,路桥施工也不例外。
我在某路桥公司曾经负责过某项目部的测量工作。
大家都知道,测量最主要的就是计算了,如坐标、高程、横坡度等。
我现在给大家推荐一款我自己编制的关于测量计算的excel模板.首先我会跟大家介绍一下模板的作用,然后再一一讲解此模板的制作过程.首先给大家看一下此模板的界面如下:也许大家咋一看,切~ 这算啥,我也会做这张表格,实在是太简单了.不错,如果仅仅是靠手动输入这样子的数字,也许只要懂一点点excle的人都会制作出这张表格吧。
不过,这张表格并不是你表面所看到的仅仅是几个数字而已,其内在的公式才是它的亮点。
也许这样讲大家还不是很清楚,我继续给大家截个图,看看它里面的公式是什么。
大家注意到上面的公式了吗,并不是仅仅是输入数字就完事的,它是一个自定义函数zb x(),那么后面的都是一样吗?完全正确,后面的都是自定义函数,它们分别是zby()、sqx()、hpz()、hpy()。
也许大家会问,恩,是不错,但是有什么用呢?那让我先给大家简述一下这个自定义函数的用法。
竟然是一个函数,那么它就必须要有一个自变量,这几个函数的自变量又是什么呢?其实这个模板里面所有函数的自变量只有一个,就是桩号。
什么意思?就是只要你给出任意一个桩号,都能得到其对应的坐标、中桩高程和横坡度.假设我们要K38+000~K38+200段落内每隔20M一个断面所有点的坐标、中桩高程、以及左右横坡。
我就用这个模板给大家演示一下(此模板暂时数据只针对黄祁高速公路六标项目部)。
先在桩号那一列把K38+000~K38+200输入进去,可不要真的把字母“K”和加号“+”给输进去,只用输入纯数字就行了,否则计算会出错,之所以在模板里显示的是那样子,只不过是自定义的单元格式而已。
第二步剩下的仅仅就是拖动公式了,后面的都是公式,所以可以一起拖下来,先选定后面的所有单元格,然后向下直接拖动至最后,那么你需要的数据就全部出来了。
操作说明《线路计算》版本号:3.0.2版作者:徐光辉日期:2002年8月9日当线路改变或线路数据改变时,就要进行如下操作:(1)打开工作簿“线路计算.XLS”(2)在工作表“曲线要素”里,首先按屏幕要求输入曲线起点桩号,然后在蓝格子里(即第1~6、23、 改或更新数据:输入桩号时,只要输入数字即可,例如:桩号为K23+235.78,则输为23235.78;输入起终点和交点时,只要输入数字即可,起点输为0,终点输为“-”数,例如交点JD13输为13; 输入测量断链的增减长度时,长链输为“+”数,短链输为“-”数;注意各交点的转角值不能超过180°,若超过的话,可以把其划分为几个曲线。
(3)在工作表“副交点数据”中更新副交点设计数据,更新时,只要把不同于主线上的副交点数据更新 交点号要与主线上相同,其输入方法同“曲线要素”里的交点输入,列如主线上的交点JD13 存在 点,则只要输入13即可;当副交点数目跟主线交点数目不一样多时,则应将较少的那条线路划分开 从而达到交点数目相同。
(4)在工作表“竖曲线要素”里的蓝格子内(即第1~4列)修改或更新数据:输入桩号时,只要输入数字即可,例如:桩号为K23+235.78,则输为23235.78;输入变坡点时,只要输入数字即可,例如变坡点BD13输为13;输入起终点的变坡点编号时,起点输为0,终点输为“-”数;(5)在工作表“副线竖曲线”里修改或更新数据,其方法均同“竖曲线要素”里的输入,只不过不存在 路段要把主线上的数据输进去补齐一条完整的线路纵断数据;(6)在工作表“超高设计”里修改或更新超高设计桩号、横坡设计数据:输入桩号时,只要输入数字即可,例如:桩号为K23+235.78,则输为23235.78;输入横坡时,只要输入百分值即可,例如:横坡为3%,则输为3;橫坡输入时,符号规定:从中间向两侧上坡为"-",下坡为"+";(7)在工作表“副线超高”里修改或更新数据,其方法均同“超高设计”里的输入,同“副线竖曲线” 只不过不存在副线的路段要把主线上的数据输进去补齐整条路线;(8)在工作表“匝道设计”中输入匝道设计数据,在“匝道名称”栏里输入匝道名称,在“起点数据” 向对应行“X坐标”、“Y坐标”、“切线方位角”的单元格里分别输匝道起点的X坐标、Y坐标和切 角(度),在行“切点”、“桩号”、“半径R”、“曲率1/R”,分别输入对应的设计数据,当半径为 则在“半径R”行里千万不要输入任何数据,可以在“曲率1/R”里输入为0,当半径不为∞时,可 “曲率1/R”行输入任何数据,输入半径和曲率时,注意线路左转输为“-”数,右转输为“+”数; 直接和圆曲线相接时,应该把一个切点看作桩号相同的两个,即假想直线和圆曲线之间有一段长度 缓和曲线。
本程序是本人花了大量的时间编成的,为了表示对劳动成果的尊重,请你付点小费,你不会忠 QQ:337699117 邮箱:337699117@ 开户行: 中国工商银行 卡号:622202240300户名:徐明忠 付费100元整 付完费请将你的邮箱地址发到我的邮箱中,我会在一天内将密码发。
谢谢合作!!!!!!欢迎你使用!请加我的QQ:欢迎使用!!W S K E Z2M1102.8469986-1-20666.3715611774.126685.24241819611859.3691-0.967755757 -1-508.767064.407880485.2423248501-1005.7910112.310203864.40798160 #DIV/0!#DIV/0!#DIV/0!187.8999832#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!W S K E Z2M1102.8469986#VALUE!-185.24241819-1-449.394092064.407880485.24232485#VALUE!1-946.4180920112.310203864.4079816#VALUE! #DIV/0!#DIV/0!#DIV/0!187.8999832#DIV/0!0#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!W S K E Z2M 1102.8469986#VALUE!-17.022*******.022********.2424181995.824498140 -1-608.224207064.407880485.242324851-1105.248210112.310203864.4079816#DIV/0!#DIV/0!#DIV/0!187.8999832#DIV/0!#VALUE! #DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#VALUE! #DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!W S K E Z2M 1102.8469986-1 6.854980654 6.85498065485.2424181995.99188198#VALUE!-1-609.684907064.407880485.24232485#VALUE!1-1106.708910112.310203864.4079816#VALUE! #DIV/0!#DIV/0!#DIV/0!187.8999832#DIV/0!#VALUE! #DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#VALUE! #DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0! #DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!W S K E Z2M 1102.8469986#VALUE!-1 6.853322838 6.853********.2424181995.9935398#VALUE!-1-609.699374064.407880485.242324851-1106.723370112.310203864.4079816#VALUE! #DIV/0!#DIV/0!#DIV/0!187.8999832#DIV/0!#VALUE! #DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0! #DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!TFSGC 0.005RAbs(I-J)H+0.01(Z-L)J+(I-336.508454840.034877340.256261995.7338.164336.5084548127.55338.177337.672133100转换前原坐标方位角转换后坐标方位角角度差值85.23921306085.2392130685°14′21.17″0°0′0″X0###########0.000YO500895.0010.000X1###########10.000M 3615414.145方位Y1500899.9840.000N 500895.001方度、点号需转换R 需转换V转换后X 转换后Y 13615406.172500895.665-1.6599E-058.0006015423615363.903500259.347-637.630803-2.687969657EX 施工坐标与大地坐标转换EXCEL表格成果输出33615472.936500379.368-508.974604-101.3835522 43615398.423500706.101-189.553136-0.010154291 53615447.634501297.377403.76720770.022069493 63615645.854501711.242832.6557627-163.1649827 700-799231.1483561368.391 800-799231.1483561368.391 900-799231.1483561368.391 1000-799231.1483561368.391)你不会介意吧! 创作人:徐明银行 卡号:622202************* 开中,我会在一天内将密码发到你的邮箱中159.42635.1644425P 4.951433D S4.951411755.100556#VALUE!#VALUE!#VALUE! -17.6044410678.96159.37290880.969372 -20.834441.4877592-99.45819-13.75678 47.9022221.1241313-88.06205-48.231280#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!59.37290880.969372P D S55.100556#VALUE!#VALUE!#VALUE! -17.60444#VALUE!#VALUE!#VALUE! -20.834441.4877592-158.8301-13.77461 47.9022221.1241313-143.5455-69.36460#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!-158.8301-13.77461P D S 55.100556#VALUE!#VALUE!#VALUE! -17.60444 1.672453-1.4607-4.953567 -20.834441.4877592-0.526157-5.13757 47.9022221.1241313 1.3355128-4.9887750#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!-1.4607-4.953567P D S 55.100556#VALUE!#VALUE!#VALUE! -17.604441.6753744-0.014467-4.951412 -20.834441.48775920.9093064-4.867222 47.9022221.1241313 2.5809607-4.2255570#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!-0.014467-4.951412P D S 55.100556#VALUE!#VALUE!#VALUE! -17.604441.6754033-0.000143-4.951412 -20.834441.48775920.9235197-4.864523 47.9022221.1241313 2.5932848-4.217980#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!0#DIV/0!#DIV/0!#DIV/0!-0.000143-4.951412ZP YP FZP FYP k-0.01068 -44-3.990326 3.9709786#DIV/0!-2-2-2-2#DIV/0!-2-2-2-2#VALUE!#DIV/0!#DIV/0!#DIV/0!#DIV/0!000-44-3.990326 3.9709786EXCEL表格计算方位角距离转换后坐标方位角转换前原坐标方位角0.415104.983012.007228910象限角 1.487704920方位角弧度表示 1.487704920方位角度表示85.239213060度、分、秒表示85°14′21.17″0°0′0″距离 5.00010.000一哟!!10678.960551.487759231D J#VALUE!#VALUE! 10678.96055-10680.47694 1.487759231-3.00414753 1.124131343-2.640519642#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!D#VALUE!#VALUE!#VALUE!#VALUE! 1.487759231-3.055083655 1.124131343-2.691455768#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!D#VALUE!#VALUE! 1.672452997-1.857547771 1.487759231-1.672854005 1.124131343-1.309226118#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!D#VALUE!#VALUE! 1.675374396-1.573718146 1.487759231-1.38610298 1.124131343-1.022475093#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!D#VALUE!#VALUE! 1.67540333-1.570825261 1.487759231-1.383181162 1.124131343-1.019553274#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!#DIV/0!zp2YP2K FXPD Wz4.25337.99373084.25-17.361634.25-20.500364.2547.540844.25#DIV/0!4.25#DIV/0!4.25#DIV/0!4.25#DIV/0!4.25-20.50036HZWy z y TZ TY 338.3337308 5.753134604 5.5831346045.753134604 5.5831346045.7531346040.802#VALUE!。