excel计算大全-道桥-公路坐标计算程序
利用EXCEL表格计算线路中边桩坐标
利用EXCEL表格计算线路中边桩坐标高速公路施工中,桥梁、隧道施工以及路沿石施工时对测量要求相当严格,要求总体宽度误差在1cm以内。
这就要求测量工程师必须把线路边桩都计算出来,每隔10米(曲线段)或者20米(直线段)放样线路边桩,以便指导施工。
如果采用常规的计算器计算,不仅繁琐、费力而且容易出现差错。
本人在计算中边桩坐标时,试着利用EXCEL表格功能,编辑函数大批量计算线路中边桩坐标,达到了高效、准确的目的。
由于直线部分相对简单,复曲线又特别繁琐。
现就圆曲线举例计算如下:例:在浙江省龙丽一级公路施工中,左线圆曲线起点里程为K86+966.6,曲线半径为1500m,曲线左偏,起始方位角为147°43 ′58.2″,线路中心和隧道中心偏差15cm。
计算隧道中心线和衬砌边线(半径5.1m)。
1.在B4方格中输入:=$B$3+3000*SIN((A4-$A$3)/3000)*COS(2.5784244-(A4-$A$3)/3000)+ 0.15*COS(4.149220679-2*(A4-$A$3)/3000)按回车键确认即可以计算出该里程隧道中心线X轴坐标。
2.在C4方格中输入:=$C$3+3000*SIN((A4-$A$3)/3000)*SIN(2.5784244-(A4-$A$3)/3000)+0.15*SIN(4.149220679-2*(A4-$A$3)/3000)按回车键确认即可以计算出该里程隧道中心线Y轴坐标。
同理在3.D4方格中输入:=$B$3+3000*SIN((A4-$A$3)/3000)*COS(2.5784244-(A4-$A$3)/3000)+ COS(4.149220679-2*(A4-$A$3)/3000) *(0.15+5.1)4.在E4方格中输入:=$C$3+3000*SIN((A4-$A$3)/3000)*SIN(2.5784244-(A4-$A$3)/3000)+SIN(4.149220679-2*(A4-$A$3)/3000)*(0.15+5.1)其中 2.5784244为方位角147°43 ′58.2″的弧度表达方式,4.149220679为起始方位角147°43 ′58.2″加90°后的弧度值。
EXCEL快速计算任何难度的道路中线、边线坐标
EXCEL快速计算任何难度的道路中线、边线坐标主程序Public i As IntegerPublic pi As DoubleSub TP()Dim ii As IntegerDim k(1000) As DoubleDim xzq, yzq, kq, xzh, yzh, kzh, xjd, yjd, kjd, khy, kyh As Double'直线区域pi = 3.14159265358979xzq = 71862.642yzq = 63474.651kq = 0 '因为直线连接终点为ZH点,与圆曲线起点为同一点,所以在直线区域不定义ZH点参数'直线区域'曲线区域xzh = 71858.3267yzh = 63375.2684kzh = 99.4763xhz = 71909.3687yhz = 63283.8076 '曲线区域定义内容有:ZH(坐标、里程)、HZ(坐标、里程)、JD(坐标、里程)khz = 212.3392 'R(半径)、LS(缓和曲线长度)、HY(里程)、YH(里程)xjd = 71855.658yjd = 63313.806kjd = 160.9966ls = 30r = 75khy = 129.4763kyh = 182.3385'曲线区域i = 2 '从第二格开始读取数据所以定义I=2ii = 1 '桩号从第一个开始启用,所以定义II=2Dok(ii) = Workbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 1) '定义桩号等于读取数据If Workbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 1) = "" Then Exit Do '当没有数据读取时退出循环If k(ii) < kq Then '若计算点超过计算起点给予提示并退出程序MsgBox ("猪啊!!你的输入的桩号居然超过计算起点桩号")Exit SubElseIf k(ii) <= kzh Then '若计算点在ZH点前,则进入直线程序Call zx(xzq, yzq, kq, xzh, yzh, kzh, k(ii))ElseIf kzh < k(ii) And k(ii) <= khy Then '若计算点在ZH和HY之间则调入前段缓和曲线程序Call qhhqx(xzh, yzh, kzh, xhz, yhz, khz, xjd, yjd, kjd, ls, r, k(ii))ElseIf khy < k(ii) And k(ii) <= kyh Then '若计算点在HY和YH之间则调入圆曲线程序Call yqx(xzh, yzh, kzh, xhz, yhz, khz, xjd, yjd, kjd, ls, r, k(ii))ElseIf kyh < k(ii) And k(ii) <= khz Then '若计算点在YH和HZ之间则调入后段缓和曲线程序Call hhhqx(xzh, yzh, kzh, xhz, yhz, khz, xjd, yjd, kjd, ls, r, k(ii))ElseMsgBox ("笨啊!!数据已超出计算范围了") '若出现超出范围的桩号则给与提示并退出程序Exit SubEnd Ifi = i + 1ii = ii + 1LoopEnd Sub直线模块Sub zx(ByV al xzq As Double, ByV al yzq As Double, ByV al kq As Double, ByV al xzh As Double, ByV al yzh As Double, ByV al kzh As Double, ParamArray k())fw = fwj(xzh, xzq, yzh, yzq) '首先调入方位角程序计算直线方位角x = xzq + (k(ii) - kq) * Cos(fw) '然后根据桩号和长度计算出坐标值y = yzq + (k(ii) - kq) * Sin(fw)zdfm = dfm(fw) '将弧度形式的前进方位角转换度分秒形式'输出坐标值以弧度和度分秒形式的前进方位角Workbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 2) = xWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 3) = yWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 4) = fwWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 5) = zdfmEnd Sub圆曲线模块Sub yqx(ByV al xzh As Double, ByV al yzh As Double, ByV al kzh As Double, ByV al xhz As Double, ByV al yhz As Double, ByV al khz As Double, ByV al xjd As Double, ByV al yjd As Double, ByV al kjd As Double, ByV al ls As Double, ByV al r As Double, ParamArray k())l = Abs(k(ii) - kzh) '计算ZH点(因为以直缓点起算)到待求桩号的弧度长度ly = l - ls / 2 '计算圆弧长度p = ls ^ 2 / 24 / r - ls ^ 4 / 2688 / r ^ 3 '曲线内移值m = ls / 2 - ls ^ 3 / 240 / r ^ 2 '曲线切线长增量u = r * Sin(ly / r) + m '偏量坐标计算v = r * (1 - Cos(ly / r)) + p'调入方位角fwq = fwj(xjd, xzh, yjd, yzh) '计算ZH点方位角fwh = fwj(xhz, xjd, yhz, yjd) '计算HZ点方位角(此角作用是用来推算曲线是左偏还是右偏)'调入偏角判定nq = n(fwq, fwh) '计算偏角方向,左偏为-1右偏为1'计算坐标x = u * Cos(fwq) - nq * v * Sin(fwq) + xzhy = u * Sin(fwq) + nq * v * Cos(fwq) + yzhd = (90 * (2 * l - ls) / pi / r) * pi / 180 '计算圆曲线上的偏角(此句要点为角度必须转换为弧度即:pi/180)fw = fwq + d * nq '计算前进方位角zdfm = dfm(fw) '将弧度形式的前进方位角转换度分秒形式'输出坐标值以弧度和度分秒形式的前进方位角Workbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 2) = xWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 3) = yWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 4) = fwWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 5) = zdfmEnd Sub前缓和段Sub qhhqx(ByV al xzh As Double, ByV al yzh As Double, ByV al kzh As Double, ByV al xhz As Double, ByV al yhz As Double, ByV al khz As Double, ByV al xjd As Double, ByV al yjd As Double, ByV al kjd As Double, ByV al ls As Double, ByV al r As Double, ParamArray k())l = Abs(k(ii) - kzh) '计算测点到ZH点的距离u = l - l ^ 5 / 40 / r ^ 2 / ls ^ 2 + l ^ 9 / r ^ 4 / ls ^ 4 / 3456 '计算偏量v = l ^ 3 / 6 / r / ls - l ^ 7 / 336 / r ^ 3 / ls ^ 3'用公式二则以下两计算可省略(圆曲线和后缓和曲线也同理)Rem t = Atn(v / u)Rem s = Sqr(u ^ 2 + v ^ 2)'调入方位角计算fwq = fwj(xjd, xzh, yjd, yzh) '计算ZH点方位角fwh = fwj(xhz, xjd, yhz, yjd) '计算HZ点方位角(此角作用是用来推算曲线是左偏还是右偏)'调入偏角判定nq = n(fwq, fwh) '计算偏角方向,左偏为-1右偏为1'结果计算Rem x = xzh + s * Cos(fwq + nq * t)Rem y = yzh + s * Sin(fwq + nq * t)x = u * Cos(fwq) - nq * v * Sin(fwq) + xzh '经过测试,计算结果中的两种公式计算结果是一样的y = u * Sin(fwq) + nq * v * Cos(fwq) + yzhd = (90 * l * l / pi / r / ls) * pi / 180 '计算缓和曲线上的偏角(此句要点为角度必须转换为弧度即:pi/180)fw = fwq + d * nq '计算前进方位角zdfm = dfm(fw) '将弧度形式的前进方位角转换度分秒形式'输出坐标值以弧度和度分秒形式的前进方位角Workbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 2) = xWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 3) = yWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 4) = fwWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 5) = zdfmEnd Sub后缓和段模块Sub hhhqx(ByV al xzh As Double, ByV al yzh As Double, ByV al kzh As Double, ByV al xhz As Double, ByV al yhz As Double, ByV al khz As Double, ByV al xjd As Double, ByV al yjd As Double, ByV al kjd As Double, ByV al ls As Double, ByV al r As Double, ParamArray k())l = Abs(k(ii) - khz) '计算测点到HZ点的距离(后缓和曲线是以HZ点为起点)u = l - l ^ 5 / 40 / r ^ 2 / ls ^ 2 + l ^ 9 / r ^ 4 / ls ^ 4 / 3456 '计算偏量v = l ^ 3 / 6 / r / ls - l ^ 7 / 336 / r ^ 3 / ls ^ 3Rem t = Atn(v / u)Rem s = Sqr(u ^ 2 + v ^ 2)'调入方位角计算fwq = fwj(xjd, xzh, yjd, yzh) '计算ZH点方位角fwh = fwj(xhz, xjd, yhz, yjd) '计算HZ点方位角(此角作用是用来推算曲线是左偏还是右偏)'调入偏角判定nh = n(fwh, fwq) '计算偏角方向,左偏为-1右偏为1(注意:因为是从后HZ点起算,所以必须将HZ点方位角放在前ZH放在后)'结果计算Rem x = xzh + s * Cos(fwq + nq * t)Rem y = yzh + s * Sin(fwq + nq * t)x = xhz - (u * Cos(fwh) - nh * v * Sin(fwh)) '经过测试,计算结果中的两种公式计算结果是一样的y = yhz - (u * Sin(fwh) + nh * v * Cos(fwh))d = (90 * l * l / pi / r / ls) * pi / 180 '计算缓和曲线上的偏角(此句要点为角度必须转换为弧度即:pi/180)fw = fwh + d * nh '计算前进方位角zdfm = dfm(fw) '将弧度形式的前进方位角转换度分秒形式'输出坐标值以弧度和度分秒形式的前进方位角Workbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 2) = xWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 3) = yWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 4) = fwWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 5) = zdfmEnd Sub偏角模块Function n(ByV al fw1 As Double, ByV al fw2 As Double) As Doublepj = fw1 + pi - fw2 '前进的右角pjIf pj - pi > 0 Then '当右角pj-pi 〉0时为左偏否则为右偏n = -1Else: n = 1End IfEnd Function方位角模块Function fwj(ByV al x1 As Double, ByV al x2 As Double, ByV al y1 As Double, ByV al y2 As Double) As Double'计算增量x0 = x1 - x2y0 = y1 - y2'由增量判断方位角所在象限,不同象限取不同的值If x0 = 0 And y0 > 0 Thenfwj = pi / 2 '当在大地坐标中偏量在X轴上的值时ElseIf x0 = 0 And y0 < 0 Thenfwj = 3 * pi / 2 '当在大地坐标中偏量在负X轴上的值时ElseIf x0 < 0 Thenfwj = Atn(y0 / x0) + pi '当在大地坐标中偏量在第二第三象限上的值时ElseIf x0 > 0 And y0 < 0 Thenfwj = Atn(y0 / x0) + 2 * pi '当在大地坐标中偏量在第四象限上的值时Elsefwj = Atn(y0 / x0) '当在大地坐标中偏量在第一象限上的值时End IfEnd Function度分秒模块Function dfm(ByV al ao As Double) As V ariantao = ao * 180 / pi '将弧度转化为度jd = Int(ao) '计算度jf = Int(ao * 60 - jd * 60) '计算分jmx = (ao - jd - jf / 60) * 3600 '计算秒jm = Left(jmx, 8) '因为拆分出来的秒数经常占到十多位,所以只取秒数的前八位dfm = jd & "°" & jf & "′" & jm & "″" '连接度分秒End Function边桩公式(此公式在电子表格中直接输入):=B2+J2*COS(D2+RADIANS(L2)+PI()) =C2+J2*SIN(D2+RADIANS(L2)+PI()) =B2+K2*COS(D2+RADIANS(M2)) =C2+K2*SIN(D2+RADIANS(M2))=B3+J3*COS(D3+RADIANS(L3)+PI()) =C3+J3*SIN(D3+RADIANS(L3)+PI()) =B3+K3*COS(D3+RADIANS(M3)) =C3+K3*SIN(D3+RADIANS(M3))=B4+J4*COS(D4+RADIANS(L4)+PI()) =C4+J4*SIN(D4+RADIANS(L4)+PI()) =B4+K4*COS(D4+RADIANS(M4)) =C4+K4*SIN(D4+RADIANS(M4))=B5+J5*COS(D5+RADIANS(L5)+PI()) =C5+J5*SIN(D5+RADIANS(L5)+PI()) =B5+K5*COS(D5+RADIANS(M5)) =C5+K5*SIN(D5+RADIANS(M5))=B6+J6*COS(D6+RADIANS(L6)+PI()) =C6+J6*SIN(D6+RADIANS(L6)+PI()) =B6+K6*COS(D6+RADIANS(M6)) =C6+K6*SIN(D6+RADIANS(M6))=B7+J7*COS(D7+RADIANS(L7)+PI()) =C7+J7*SIN(D7+RADIANS(L7)+PI()) =B7+K7*COS(D7+RADIANS(M7)) =C7+K7*SIN(D7+RADIANS(M7))=B8+J8*COS(D8+RADIANS(L8)+PI()) =C8+J8*SIN(D8+RADIANS(L8)+PI()) =B8+K8*COS(D8+RADIANS(M8)) =C8+K8*SIN(D8+RADIANS(M8))=B9+J9*COS(D9+RADIANS(L9)+PI()) =C9+J9*SIN(D9+RADIANS(L9)+PI()) =B9+K9*COS(D9+RADIANS(M9)) =C9+K9*SIN(D9+RADIANS(M9))=B10+J10*COS(D10+RADIANS(L10)+PI()) =C10+J10*SIN(D10+RADIANS(L10)+PI()) =B10+K10*COS(D10+RADIANS(M10)) =C10+K10*SIN(D10+RADIANS(M10))=B11+J11*COS(D11+RADIANS(L11)+PI()) =C11+J11*SIN(D11+RADIANS(L11)+PI()) =B11+K11*COS(D11+RADIANS(M11)) =C11+K11*SIN(D11+RADIANS(M11))=B12+J12*COS(D12+RADIANS(L12)+PI()) =C12+J12*SIN(D12+RADIANS(L12)+PI()) =B12+K12*COS(D12+RADIANS(M12)) =C12+K12*SIN(D12+RADIANS(M12))=B13+J13*COS(D13+RADIANS(L13)+PI()) =C13+J13*SIN(D13+RADIANS(L13)+PI()) =B13+K13*COS(D13+RADIANS(M13)) =C13+K13*SIN(D13+RADIANS(M13))=B14+J14*COS(D14+RADIANS(L14)+PI()) =C14+J14*SIN(D14+RADIANS(L14)+PI()) =B14+K14*COS(D14+RADIANS(M14)) =C14+K14*SIN(D14+RADIANS(M14))=B15+J15*COS(D15+RADIANS(L15)+PI()) =C15+J15*SIN(D15+RADIANS(L15)+PI()) =B15+K15*COS(D15+RADIANS(M15)) =C15+K15*SIN(D15+RADIANS(M15))=B16+J16*COS(D16+RADIANS(L16)+PI()) =C16+J16*SIN(D16+RADIANS(L16)+PI()) =B16+K16*COS(D16+RADIANS(M16)) =C16+K16*SIN(D16+RADIANS(M16))=B17+J17*COS(D17+RADIANS(L17)+PI()) =C17+J17*SIN(D17+RADIANS(L17)+PI()) =B17+K17*COS(D17+RADIANS(M17)) =C17+K17*SIN(D17+RADIANS(M17))=B18+J18*COS(D18+RADIANS(L18)+PI()) =C18+J18*SIN(D18+RADIANS(L18)+PI()) =B18+K18*COS(D18+RADIANS(M18)) =C18+K18*SIN(D18+RADIANS(M18))=B19+J19*COS(D19+RADIANS(L19)+PI()) =C19+J19*SIN(D19+RADIANS(L19)+PI()) =B19+K19*COS(D19+RADIANS(M19)) =C19+K19*SIN(D19+RADIANS(M19))=B20+J20*COS(D20+RADIANS(L20)+PI()) =C20+J20*SIN(D20+RADIANS(L20)+PI()) =B20+K20*COS(D20+RADIANS(M20)) =C20+K20*SIN(D20+RADIANS(M20))=B21+J21*COS(D21+RADIANS(L21)+PI()) =C21+J21*SIN(D21+RADIANS(L21)+PI()) =B21+K21*COS(D21+RADIANS(M21)) =C21+K21*SIN(D21+RADIANS(M21))=B22+J22*COS(D22+RADIANS(L22)+PI()) =C22+J22*SIN(D22+RADIANS(L22)+PI()) =B22+K22*COS(D22+RADIANS(M22)) =C22+K22*SIN(D22+RADIANS(M22))=B23+J23*COS(D23+RADIANS(L23)+PI()) =C23+J23*SIN(D23+RADIANS(L23)+PI()) =B23+K23*COS(D23+RADIANS(M23)) =C23+K23*SIN(D23+RADIANS(M23))呵呵,这个就是传说已久的EXCEL自动计算曲线坐标.给大家研究研究.欢迎在此基础上开发增加新模块。
公路曲线坐标计算程序
L2 Y=T+PsinU
五、坐标转换子程序:4
L1 I<0=>Y=-Y:V=-V⊿
L2 S=S+XcosU-YsinU
L3 Y=T+XsinU+YcosU
L4 X=S
说明:1、该程序适用于计算器CASIO fx-4500PA。
2、程序符号定义说明:测站点坐标CX,CY;后视点坐标HX,HY;交点坐标JDX,JDY;交点里程
L4 Lbl 1:G=L-Q:P=Z-G:S=E-QcosH:T=F-QsinH:U=H:V=H:Fixm
L5 P≤0=>Prog 3:≠=>P≤J=>Prog 1:≠=>P≤J+K=>Prog 2:V=90J/π/R+180π-1R-1
(P-J)⊿⊿P≤J+K=>Prog 4:V=H+V⊿⊿
L6 P>J+K=>P=2J+K-P:S=E+Qcos(U+I):T=F+Qsin(H+I):P>0=>Prog 1:X=-X:U=H+I:Prog
3、计算结果显示的数据是:极角、极距和坐标。
4、该程序适用于极坐标法测量曲线时的数据(极角和极距)计算,以及曲线坐标计算。
匝道计算主程序:ZADAO(ZADAO是文件名,下同)
L1 B”K0”C”K1”K”X0”L”Y0”V”A0” I”P0”J”P1”
L2 Lbl 1:{A}:A”DK”:P=A-B:S=K:T=L:I=J=>I=0=>Prog 3:≠=>Prog 8⊿⊿I≠J=>Prog
L1 V=90P2(πRJ)-1
excel坐标正算的计算公式
excel坐标正算的计算公式摘要:1.Excel坐标正算简介2.Excel坐标正算公式3.如何使用Excel进行坐标正算4.坐标正算在实际应用中的案例正文:Excel坐标正算是一种通过已知的两个点坐标,计算出它们之间的距离、方位角等地理信息的方法。
在工程测量、地理信息系统等领域具有广泛的应用。
下面我们将详细介绍Excel坐标正算的计算公式、操作步骤以及实际应用案例。
一、Excel坐标正算简介Excel坐标正算主要基于平面直角坐标系中的距离公式和三角函数关系。
通过已知的两个点坐标,计算出它们之间的距离和方位角。
二、Excel坐标正算公式1.距离公式:距离= sqrt((x2-x1)^2 + (y2-y1)^2)其中,(x1, y1)和(x2, y2)分别为两个点的坐标。
2.方位角公式:方位角= atan((y2-y1)/(x2-x1))其中,(x1, y1)和(x2, y2)分别为两个点的坐标。
三、如何使用Excel进行坐标正算1.打开Excel,新建一个工作表。
2.在A1、B1单元格分别输入第一个点的横纵坐标,例如(x1, y1)。
3.在A2、B2单元格分别输入第二个点的横纵坐标,例如(x2, y2)。
4.在C1单元格输入距离公式:=SQRT((A2-A1)^2 + (B2-B1)^2)5.在C2单元格输入方位角公式:=ATAN((B2-B1)/(A2-A1))四、坐标正算在实际应用中的案例1.工程测量:在土地测量、建筑施工等领域,通过坐标正算计算两点间的距离和方位角,以指导实际工作。
2.地理信息系统:在GIS数据处理中,坐标正算常用于计算地图上的两点距离和方向,以便进行路径规划、地理分析等。
3.数据分析:在数据分析领域,坐标正算可以帮助我们更好地理解数据的空间分布,从而为决策提供依据。
总之,Excel坐标正算作为一种实用的计算方法,在各种场景中都有广泛的应用。
小白自学ExcelVBA道路坐标高程计算程序流程
小白自学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”表示。
EXCEL快速计算任何难度的道路中线、边线坐标
EXCEL快速计算任何难度的道路中线、边线坐标主程序Public i As IntegerPublic pi As DoubleSub TP()Dim ii As IntegerDim k(1000) As DoubleDim xzq, yzq, kq, xzh, yzh, kzh, xjd, yjd, kjd, khy, kyh As Double'直线区域pi = 3.14159265358979xzq = 71862.642yzq = 63474.651kq = 0 '因为直线连接终点为ZH点,与圆曲线起点为同一点,所以在直线区域不定义ZH点参数'直线区域'曲线区域xzh = 71858.3267yzh = 63375.2684kzh = 99.4763xhz = 71909.3687yhz = 63283.8076 '曲线区域定义内容有:ZH(坐标、里程)、HZ(坐标、里程)、JD(坐标、里程)khz = 212.3392 'R(半径)、LS(缓和曲线长度)、HY(里程)、YH(里程)xjd = 71855.658yjd = 63313.806kjd = 160.9966ls = 30r = 75khy = 129.4763kyh = 182.3385'曲线区域i = 2 '从第二格开始读取数据所以定义I=2ii = 1 '桩号从第一个开始启用,所以定义II=2Dok(ii) = Workbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 1) '定义桩号等于读取数据If Workbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 1) = "" Then Exit Do '当没有数据读取时退出循环If k(ii) < kq Then '若计算点超过计算起点给予提示并退出程序MsgBox ("猪啊!!你的输入的桩号居然超过计算起点桩号")Exit SubElseIf k(ii) <= kzh Then '若计算点在ZH点前,则进入直线程序Call zx(xzq, yzq, kq, xzh, yzh, kzh, k(ii))ElseIf kzh < k(ii) And k(ii) <= khy Then '若计算点在ZH和HY之间则调入前段缓和曲线程序Call qhhqx(xzh, yzh, kzh, xhz, yhz, khz, xjd, yjd, kjd, ls, r, k(ii))ElseIf khy < k(ii) And k(ii) <= kyh Then '若计算点在HY和YH之间则调入圆曲线程序Call yqx(xzh, yzh, kzh, xhz, yhz, khz, xjd, yjd, kjd, ls, r, k(ii))ElseIf kyh < k(ii) And k(ii) <= khz Then '若计算点在YH和HZ之间则调入后段缓和曲线程序Call hhhqx(xzh, yzh, kzh, xhz, yhz, khz, xjd, yjd, kjd, ls, r, k(ii))ElseMsgBox ("笨啊!!数据已超出计算范围了") '若出现超出范围的桩号则给与提示并退出程序Exit SubEnd Ifi = i + 1ii = ii + 1LoopEnd Sub直线模块Sub zx(ByV al xzq As Double, ByV al yzq As Double, ByV al kq As Double, ByV al xzh As Double, ByV al yzh As Double, ByV al kzh As Double, ParamArray k())fw = fwj(xzh, xzq, yzh, yzq) '首先调入方位角程序计算直线方位角x = xzq + (k(ii) - kq) * Cos(fw) '然后根据桩号和长度计算出坐标值y = yzq + (k(ii) - kq) * Sin(fw)zdfm = dfm(fw) '将弧度形式的前进方位角转换度分秒形式'输出坐标值以弧度和度分秒形式的前进方位角Workbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 2) = xWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 3) = yWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 4) = fwWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 5) = zdfmEnd Sub圆曲线模块Sub yqx(ByV al xzh As Double, ByV al yzh As Double, ByV al kzh As Double, ByV al xhz As Double, ByV al yhz As Double, ByV al khz As Double, ByV al xjd As Double, ByV al yjd As Double, ByV al kjd As Double, ByV al ls As Double, ByV al r As Double, ParamArray k())l = Abs(k(ii) - kzh) '计算ZH点(因为以直缓点起算)到待求桩号的弧度长度ly = l - ls / 2 '计算圆弧长度p = ls ^ 2 / 24 / r - ls ^ 4 / 2688 / r ^ 3 '曲线内移值m = ls / 2 - ls ^ 3 / 240 / r ^ 2 '曲线切线长增量u = r * Sin(ly / r) + m '偏量坐标计算v = r * (1 - Cos(ly / r)) + p'调入方位角fwq = fwj(xjd, xzh, yjd, yzh) '计算ZH点方位角fwh = fwj(xhz, xjd, yhz, yjd) '计算HZ点方位角(此角作用是用来推算曲线是左偏还是右偏)'调入偏角判定nq = n(fwq, fwh) '计算偏角方向,左偏为-1右偏为1'计算坐标x = u * Cos(fwq) - nq * v * Sin(fwq) + xzhy = u * Sin(fwq) + nq * v * Cos(fwq) + yzhd = (90 * (2 * l - ls) / pi / r) * pi / 180 '计算圆曲线上的偏角(此句要点为角度必须转换为弧度即:pi/180)fw = fwq + d * nq '计算前进方位角zdfm = dfm(fw) '将弧度形式的前进方位角转换度分秒形式'输出坐标值以弧度和度分秒形式的前进方位角Workbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 2) = xWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 3) = yWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 4) = fwWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 5) = zdfmEnd Sub前缓和段Sub qhhqx(ByV al xzh As Double, ByV al yzh As Double, ByV al kzh As Double, ByV al xhz As Double, ByV al yhz As Double, ByV al khz As Double, ByV al xjd As Double, ByV al yjd As Double, ByV al kjd As Double, ByV al ls As Double, ByV al r As Double, ParamArray k())l = Abs(k(ii) - kzh) '计算测点到ZH点的距离u = l - l ^ 5 / 40 / r ^ 2 / ls ^ 2 + l ^ 9 / r ^ 4 / ls ^ 4 / 3456 '计算偏量v = l ^ 3 / 6 / r / ls - l ^ 7 / 336 / r ^ 3 / ls ^ 3'用公式二则以下两计算可省略(圆曲线和后缓和曲线也同理)Rem t = Atn(v / u)Rem s = Sqr(u ^ 2 + v ^ 2)'调入方位角计算fwq = fwj(xjd, xzh, yjd, yzh) '计算ZH点方位角fwh = fwj(xhz, xjd, yhz, yjd) '计算HZ点方位角(此角作用是用来推算曲线是左偏还是右偏)'调入偏角判定nq = n(fwq, fwh) '计算偏角方向,左偏为-1右偏为1'结果计算Rem x = xzh + s * Cos(fwq + nq * t)Rem y = yzh + s * Sin(fwq + nq * t)x = u * Cos(fwq) - nq * v * Sin(fwq) + xzh '经过测试,计算结果中的两种公式计算结果是一样的y = u * Sin(fwq) + nq * v * Cos(fwq) + yzhd = (90 * l * l / pi / r / ls) * pi / 180 '计算缓和曲线上的偏角(此句要点为角度必须转换为弧度即:pi/180)fw = fwq + d * nq '计算前进方位角zdfm = dfm(fw) '将弧度形式的前进方位角转换度分秒形式'输出坐标值以弧度和度分秒形式的前进方位角Workbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 2) = xWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 3) = yWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 4) = fwWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 5) = zdfmEnd Sub后缓和段模块Sub hhhqx(ByV al xzh As Double, ByV al yzh As Double, ByV al kzh As Double, ByV al xhz As Double, ByV al yhz As Double, ByV al khz As Double, ByV al xjd As Double, ByV al yjd As Double, ByV al kjd As Double, ByV al ls As Double, ByV al r As Double, ParamArray k())l = Abs(k(ii) - khz) '计算测点到HZ点的距离(后缓和曲线是以HZ点为起点)u = l - l ^ 5 / 40 / r ^ 2 / ls ^ 2 + l ^ 9 / r ^ 4 / ls ^ 4 / 3456 '计算偏量v = l ^ 3 / 6 / r / ls - l ^ 7 / 336 / r ^ 3 / ls ^ 3Rem t = Atn(v / u)Rem s = Sqr(u ^ 2 + v ^ 2)'调入方位角计算fwq = fwj(xjd, xzh, yjd, yzh) '计算ZH点方位角fwh = fwj(xhz, xjd, yhz, yjd) '计算HZ点方位角(此角作用是用来推算曲线是左偏还是右偏)'调入偏角判定nh = n(fwh, fwq) '计算偏角方向,左偏为-1右偏为1(注意:因为是从后HZ点起算,所以必须将HZ点方位角放在前ZH放在后)'结果计算Rem x = xzh + s * Cos(fwq + nq * t)Rem y = yzh + s * Sin(fwq + nq * t)x = xhz - (u * Cos(fwh) - nh * v * Sin(fwh)) '经过测试,计算结果中的两种公式计算结果是一样的y = yhz - (u * Sin(fwh) + nh * v * Cos(fwh))d = (90 * l * l / pi / r / ls) * pi / 180 '计算缓和曲线上的偏角(此句要点为角度必须转换为弧度即:pi/180)fw = fwh + d * nh '计算前进方位角zdfm = dfm(fw) '将弧度形式的前进方位角转换度分秒形式'输出坐标值以弧度和度分秒形式的前进方位角Workbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 2) = xWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 3) = yWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 4) = fwWorkbooks("单交点平曲线.xls").Worksheets("sheet1").Cells(i, 5) = zdfmEnd Sub偏角模块Function n(ByV al fw1 As Double, ByV al fw2 As Double) As Doublepj = fw1 + pi - fw2 '前进的右角pjIf pj - pi > 0 Then '当右角pj-pi 〉0时为左偏否则为右偏n = -1Else: n = 1End IfEnd Function方位角模块Function fwj(ByV al x1 As Double, ByV al x2 As Double, ByV al y1 As Double, ByV al y2 As Double) As Double'计算增量x0 = x1 - x2y0 = y1 - y2'由增量判断方位角所在象限,不同象限取不同的值If x0 = 0 And y0 > 0 Thenfwj = pi / 2 '当在大地坐标中偏量在X轴上的值时ElseIf x0 = 0 And y0 < 0 Thenfwj = 3 * pi / 2 '当在大地坐标中偏量在负X轴上的值时ElseIf x0 < 0 Thenfwj = Atn(y0 / x0) + pi '当在大地坐标中偏量在第二第三象限上的值时ElseIf x0 > 0 And y0 < 0 Thenfwj = Atn(y0 / x0) + 2 * pi '当在大地坐标中偏量在第四象限上的值时Elsefwj = Atn(y0 / x0) '当在大地坐标中偏量在第一象限上的值时End IfEnd Function度分秒模块Function dfm(ByV al ao As Double) As V ariantao = ao * 180 / pi '将弧度转化为度jd = Int(ao) '计算度jf = Int(ao * 60 - jd * 60) '计算分jmx = (ao - jd - jf / 60) * 3600 '计算秒jm = Left(jmx, 8) '因为拆分出来的秒数经常占到十多位,所以只取秒数的前八位dfm = jd & "°" & jf & "′" & jm & "″" '连接度分秒End Function边桩公式(此公式在电子表格中直接输入):=B2+J2*COS(D2+RADIANS(L2)+PI()) =C2+J2*SIN(D2+RADIANS(L2)+PI()) =B2+K2*COS(D2+RADIANS(M2)) =C2+K2*SIN(D2+RADIANS(M2))=B3+J3*COS(D3+RADIANS(L3)+PI()) =C3+J3*SIN(D3+RADIANS(L3)+PI()) =B3+K3*COS(D3+RADIANS(M3)) =C3+K3*SIN(D3+RADIANS(M3))=B4+J4*COS(D4+RADIANS(L4)+PI()) =C4+J4*SIN(D4+RADIANS(L4)+PI()) =B4+K4*COS(D4+RADIANS(M4)) =C4+K4*SIN(D4+RADIANS(M4))=B5+J5*COS(D5+RADIANS(L5)+PI()) =C5+J5*SIN(D5+RADIANS(L5)+PI()) =B5+K5*COS(D5+RADIANS(M5)) =C5+K5*SIN(D5+RADIANS(M5))=B6+J6*COS(D6+RADIANS(L6)+PI()) =C6+J6*SIN(D6+RADIANS(L6)+PI()) =B6+K6*COS(D6+RADIANS(M6)) =C6+K6*SIN(D6+RADIANS(M6))=B7+J7*COS(D7+RADIANS(L7)+PI()) =C7+J7*SIN(D7+RADIANS(L7)+PI()) =B7+K7*COS(D7+RADIANS(M7)) =C7+K7*SIN(D7+RADIANS(M7))=B8+J8*COS(D8+RADIANS(L8)+PI()) =C8+J8*SIN(D8+RADIANS(L8)+PI()) =B8+K8*COS(D8+RADIANS(M8)) =C8+K8*SIN(D8+RADIANS(M8))=B9+J9*COS(D9+RADIANS(L9)+PI()) =C9+J9*SIN(D9+RADIANS(L9)+PI()) =B9+K9*COS(D9+RADIANS(M9)) =C9+K9*SIN(D9+RADIANS(M9))=B10+J10*COS(D10+RADIANS(L10)+PI()) =C10+J10*SIN(D10+RADIANS(L10)+PI()) =B10+K10*COS(D10+RADIANS(M10)) =C10+K10*SIN(D10+RADIANS(M10))=B11+J11*COS(D11+RADIANS(L11)+PI()) =C11+J11*SIN(D11+RADIANS(L11)+PI()) =B11+K11*COS(D11+RADIANS(M11)) =C11+K11*SIN(D11+RADIANS(M11))=B12+J12*COS(D12+RADIANS(L12)+PI()) =C12+J12*SIN(D12+RADIANS(L12)+PI()) =B12+K12*COS(D12+RADIANS(M12)) =C12+K12*SIN(D12+RADIANS(M12))=B13+J13*COS(D13+RADIANS(L13)+PI()) =C13+J13*SIN(D13+RADIANS(L13)+PI()) =B13+K13*COS(D13+RADIANS(M13)) =C13+K13*SIN(D13+RADIANS(M13))=B14+J14*COS(D14+RADIANS(L14)+PI()) =C14+J14*SIN(D14+RADIANS(L14)+PI()) =B14+K14*COS(D14+RADIANS(M14)) =C14+K14*SIN(D14+RADIANS(M14))=B15+J15*COS(D15+RADIANS(L15)+PI()) =C15+J15*SIN(D15+RADIANS(L15)+PI()) =B15+K15*COS(D15+RADIANS(M15)) =C15+K15*SIN(D15+RADIANS(M15))=B16+J16*COS(D16+RADIANS(L16)+PI()) =C16+J16*SIN(D16+RADIANS(L16)+PI()) =B16+K16*COS(D16+RADIANS(M16)) =C16+K16*SIN(D16+RADIANS(M16))=B17+J17*COS(D17+RADIANS(L17)+PI()) =C17+J17*SIN(D17+RADIANS(L17)+PI()) =B17+K17*COS(D17+RADIANS(M17)) =C17+K17*SIN(D17+RADIANS(M17))=B18+J18*COS(D18+RADIANS(L18)+PI()) =C18+J18*SIN(D18+RADIANS(L18)+PI()) =B18+K18*COS(D18+RADIANS(M18)) =C18+K18*SIN(D18+RADIANS(M18))=B19+J19*COS(D19+RADIANS(L19)+PI()) =C19+J19*SIN(D19+RADIANS(L19)+PI()) =B19+K19*COS(D19+RADIANS(M19)) =C19+K19*SIN(D19+RADIANS(M19))=B20+J20*COS(D20+RADIANS(L20)+PI()) =C20+J20*SIN(D20+RADIANS(L20)+PI()) =B20+K20*COS(D20+RADIANS(M20)) =C20+K20*SIN(D20+RADIANS(M20))=B21+J21*COS(D21+RADIANS(L21)+PI()) =C21+J21*SIN(D21+RADIANS(L21)+PI()) =B21+K21*COS(D21+RADIANS(M21)) =C21+K21*SIN(D21+RADIANS(M21))=B22+J22*COS(D22+RADIANS(L22)+PI()) =C22+J22*SIN(D22+RADIANS(L22)+PI()) =B22+K22*COS(D22+RADIANS(M22)) =C22+K22*SIN(D22+RADIANS(M22))=B23+J23*COS(D23+RADIANS(L23)+PI()) =C23+J23*SIN(D23+RADIANS(L23)+PI()) =B23+K23*COS(D23+RADIANS(M23)) =C23+K23*SIN(D23+RADIANS(M23))呵呵,这个就是传说已久的EXCEL自动计算曲线坐标.给大家研究研究.欢迎在此基础上开发增加新模块。
道路工程测量计算excel(功能齐全)
本程序是本人花了大量的时间编成的,为了表示对劳动成果的尊重,请你付点小费,你不会忠 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!。
Excel 公路中线 坐标计算
:Excel 公路中线坐标计算现阶段我国公路工程中已普遍使用大地坐标进行线型的控制及测设,在施工中经常要对中线坐标进行复核、加密,才能满足公路工程施工的需要。
本文是结合公路工程的实际需要,利用Exce电子表格制作的用于由直线、圆曲线、缓和曲线组成的一般公路线型中桩、边桩等计算的通用模版,用于减轻计算工作的劳动强度和提高计算结果的准确度。
一、采用公式1 直线段1.1 中桩坐标计算公式1.2 边桩坐标计算公式2 缓和曲线段2.1 中桩坐标计算公式当P点位于顺时针方向时,其方位角为αE→p=αA→B+90°;当P点位于逆时针方向时,其方位角为αE→p=αA→B-90°。
2.2 边桩坐标计算公式3 圆曲线段3.1 中桩坐标计算公式当E点位于顺时针方向时取“+”,当E点位于逆时针方向时取“-”。
3.2 边桩坐标计算公式XP、YP——未知点P的坐标X1、Y1——各线型起点的坐标(第二曲线段为终点)XA、YA、XB、YB——P点边桩A点、B点的坐标(A为左侧、B为右侧)α1→2——直线段起点的方位角αA→B——各线形起点的切线方位角(第二曲线段为终点)L——P点距各线形起点的长度LS——缓和曲线段缓和曲线长R——各曲线段的半径β——P点的切线角(曲线左转时取“-”、曲线右转时取“+”)T1、T2——P点至边桩A、B的距离(A为T1、B为T2)二、计算模板的建立步骤表1-1表1-21.新建一个工作薄,在其中输入如表1所示的内容;2. 选中工作表A列,打开格式菜单,选中“单元格”,在单元格菜单中选中“数字”栏,自定义单元格格式为“K000+000.000”。
按此方法分别将其他列设置为如表1所示单元格格式;3. 将“4”行做为路线起点数据行,在“5”行中进行公式编辑;4.在“J5”单元格中输入“=IF(C5=4,RADIANS(IF((G5+H5/60+I5/60/60)<180,(G5+H5/60+I5/60/60)+180,(G5+H5/60+I5/60/60)-18 0)),IF(C5=5,RADIANS(IF(B5=0,G5+H5/60+I5/60/60-E5/2/D5*180/PI(),G5+H5/60+I5/60/60+E5/2/D5*180 /PI())),RADIANS(G5+H5/60+I5/60/60)))”;5.在“K5”单元格中输入“=A5-$A$4”;6.在“L5”单元格中输入“=$L$4+IF(C5=1,K5*COS(J5),IF(C5=2,2*D5*SIN(K5/2/D5)*IF(B5=0,COS(J5-K5/2/D5),COS(J5+K5/2/D5) ),IF(C5=3,(K5-K5^5/40/D5^2/E5^2)*COS(J5)+(K5^3/6/D5/E5-K5^7/336/D5^3/E5^3)*IF(B5=0,COS(J5-90 *PI()/180),COS(J5+90*PI()/180)),IF(C5=4,(K5-K5^5/40/D5^2/E5^2)*COS(J5)+(K5^3/6/D5/E5-K5^7/33 6/D5^3/E5^3)*IF(B5=0,COS(J5-90*PI()/180),COS(J5+90*PI()/180)),2*D5*SIN(K5/2/D5)*IF(B5=0,COS( J5-K5/2/D5),COS(J5+K5/2/D5))))))”;7.在“M5”单元格中输入“=$M$4+IF(C5=1,K5*SIN(J5),IF(C5=2,2*D5*SIN(K5/2/D5)*IF(B5=0,SIN(J5-K5/2/D5),SIN(J5+K5/2/D5) ),IF(C5=3,(K5-K5^5/40/D5^2/E5^2)*SIN(J5)+(K5^3/6/D5/E5-K5^7/336/D5^3/E5^3)*IF(B5=0,SIN(J5-90 *PI()/180),SIN(J5+90*PI()/180)),IF(C5=4,(K5-K5^5/40/D5^2/E5^2)*SIN(J5)+(K5^3/6/D5/E5-K5^7/33 6/D5^3/E5^3)*IF(B5=0,SIN(J5-90*PI()/180),SIN(J5+90*PI()/180)),2*D5*SIN(K5/2/D5)*IF(B5=0,SIN( J5-K5/2/D5),SIN(J5+K5/2/D5))))))”;8.在“N5”单元格中输入“=IF(B5=0,J5-RADIANS(IF(C5=2,K5/D5*180/PI(),IF(C5=3,K5^2/2/D5/E5*180/PI(),IF(C5=4,K5^2/2/D5 /E5*180/PI(),IF(C5=5,K5/D5*180/PI()))))),J5+RADIANS(IF(C5=2,K5/D5*180/PI(),IF(C5=3,K5^2/2/D5 /E5*180/PI(),IF(C5=4,K5^2/2/D5/E5*180/PI(),IF(C5=5,K5/D5*180/PI()))))))”;9.在“P5”单元格中输入“=IF(C5=4,L5+O5*COS(N5+90*PI()/180),L5+O5*COS(N5-90*PI()/180))”;10.在“Q5”单元格中输入“=IF(C5=4,M5+O5*SIN(N5+90*PI()/180),M5+O5*SIN(N5-90*PI()/180))”;11.在“S5”单元格中输入“=IF(C5=4,L5+O5*COS(N5-90*PI()/180),L5+O5*COS(N5+90*PI()/180))”;12.在“T5”单元格中输入“=IF(C5=4,M5+O5*SIN(N5-90*PI()/180),M5+O5*SIN(N5+90*PI()/180))”;13.选定“5行”向下复制到表格最后一行;14.点击“文件”菜单中的“另存为”选项,输入文件名为“坐标计算”在文件类型中选择为“模版”并点击“保存”。
excel计算大全-道桥-交通量调查及路面计算表
ps
1.86E+07
30 0.143 0.01 0.1 1.64 0.75 1.25 4 荷载疲劳应力计算 1201 0.16 4.44 100.44 0.82 1.29 2.60
层回弹模量E1(Mpa) 混凝土路面下面层厚度h(m) 混凝土下面层弯拉弹性模量Ec(Mpa) 上层板接缝传荷能力应力折减系数kr 混凝土板弯拉强度标准值fr(Mpa)
0.37 0.81
29.41 1.08
0.058 40
0.57 0.13
有沥青上面层混凝土板应力计算
请输入基础资料 一、标准轴载累计作用次数 临界荷位标准轴载累计作用次数 二、土基回弹模量和路面结构参数 1、土基参数 土基回弹模量E0(Mpa) 2、底基层参数 底基层厚度h2(m) 3、基层参数 基层厚度h1(m) 4、初拟路面参数 沥青混凝土上面层厚度h a (m) 系数ξ 系数ξ ' 综合系数kc 混凝土板长度l (米) 1、计算基层顶面当量回弹模量 基层和底基层当量回弹模量E x (Mpa) 基层和底基层当量厚度hx (m) 回归系数a 基层顶面当量回弹模量Et (Mpa) 2、计算有沥青混凝土板荷载应力 混凝土板相对刚度半径rg
基层和底基层当量弯曲刚度Dx(Mn-m)
回归系数b
混凝土板截面总刚度D g(Mn-m)
有沥青混凝土板上面层时荷载应力σ
psa
疲劳应力折减系数kf 有沥青混凝土板荷载疲劳应力σ
3.04 温度应力计算
1、查找输入回归系数、温度梯度 回归系数a 回归系数c 2、温度应力计算 0.841 1.323 回归系数b 最大温度梯度T g
l/rg 温度翘曲应力σ
tm tr tra
EXCEL计算坐标方法
计算坐标需要"桥型布置图"、"桥台结构图"、"桥墩结构图"、"点位图"、"纵断面".
先点开"桥型布置图","纵断面",找出台帽前墙位置与纵断线上已知一点的距离,例:
量取已知点距台帽前墙距离,如:1.978m
再点开"点位图",找到已知点投影到拟定桥梁中线的位置.
再在该位置向路线方向移动1.978m.
以该点为基点,并在CAD中点出该点的坐标,记录下来.
但是注意CAD的坐标和测量的坐标X、Y是相反的.记下坐标X:6645.8554 ;Y:4103.3546.
再查看桥型布置图,查看两台帽前墙间的距离,13.04m
再在点位图中把之前的基点移动13.04m,并记录下在CAD中的坐标.
如:X:6658.8019,Y:4101.7962
再打开设计完的"桥台结构图",算出台帽至基础前点的平面距离2.7m,并记录下来.
再查看基础的侧面长度,如6.7m,和基础的横向宽度7.0m,并记录下来.
OK有这些记录下来的数据就可以通过EXCEL计算基础坐标了.
方法:
打开excel并把记录下的数据填如表中:
黄色的框是要填入的数据.
注意:EXCEL计算1#台填入的"间距"等于13.04减去1#台台帽前墙距基础前点的平面距离. 如果是斜交的桥梁,输入的交角是路线方向逆时针旋转至桥台前墙的角度.如图中斜交60度,就输入60度.
1 / 1。
怎样计算高速公路路线坐标及高程
一个excle模板的制作在当今社会,excle的使用已经是越来越来频繁了,几乎涉及所有的行业,路桥施工也不例外。
我在某路桥公司曾经负责过某项目部的测量工作。
大家都知道,测量最主要的就是计算了,如坐标、高程、横坡度等.我现在给大家推荐一款我自己编制的关于测量计算的excel 模板。
首先我会跟大家介绍一下模板的作用,然后再一一讲解此模板的制作过程。
首先给大家看一下此模板的界面如下:也许大家咋一看,切~ 这算啥,我也会做这张表格,实在是太简单了。
不错,如果仅仅是靠手动输入这样子的数字,也许只要懂一点点excle的人都会制作出这张表格吧。
不过,这张表格并不是你表面所看到的仅仅是几个数字而已,其内在的公式才是它的亮点。
也许这样讲大家还不是很清楚,我继续给大家截个图,看看它里面的公式是什么。
大家注意到上面的公式了吗,并不是仅仅是输入数字就完事的,它是一个自定义函数zbx(),那么后面的都是一样吗?完全正确,后面的都是自定义函数,它们分别是zby()、sqx()、hpz()、hpy()。
也许大家会问,恩,是不错,但是有什么用呢?那让我先给大家简述一下这个自定义函数的用法。
竟然是一个函数,那么它就必须要有一个自变量,这几个函数的自变量又是什么呢?其实这个模板里面所有函数的自变量只有一个,就是桩号。
什么意思?就是只要你给出任意一个桩号,都能得到其对应的坐标、中桩高程和横坡度。
假设我们要K38+000~K38+200段落内每隔20M一个断面所有点的坐标、中桩高程、以及左右横坡。
我就用这个模板给大家演示一下(此模板暂时数据只针对黄祁高速公路六标项目部)。
先在桩号那一列把K38+000~K38+200输入进去,可不要真的把字母“K”和加号“+”给输进去,只用输入纯数字就行了,否则计算会出错,之所以在模板里显示的是那样子,只不过是自定义的单元格式而已。
第二步剩下的仅仅就是拖动公式了,后面的都是公式,所以可以一起拖下来,先选定后面的所有单元格,然后向下直接拖动至最后,那么你需要的数据就全部出来了。