Excel公式坐标正反算程序

合集下载

坐标反算程序

坐标反算程序

坐标正反算程序(5800)反算主程序:FS1.Prog"SJ"2.90U÷π÷R→H 第一回旋线所对应圆心角β013.90V÷π÷R→T 第二回旋线所对应圆心角β024.Rec((Z[3]+Z[4]÷cosK)÷tanK,F+90G):Z[5]+I→Z[11]:Z[6]+J→Z[12]ZH 、HZ点垂线交点坐标5.F-90G→Z[13]ZH点与ZH、HZ点垂线交点连线方位角6.Z[13]+GH→Z[14]HY点与圆心连线方位角7.Z[13]+G(K-T)→Z[15]YH点与圆心连线方位角8.Z[15]+GT→Z[16]HZ点与ZH、HZ点垂线交点连线方位角9.Lbl 0:?X:?Y10.Pol(X-Z[11],Y-Z[12])11.If GIsin(J-Z[13])<0:Then Pol(N-X,E-Y):Rec(I,F-J)12.Q-I→Z: J→S:Cls:“Z=”:Locate3,1,Z:”S=”:Locate 3,2,S◢13.Goto 0:IfEnd 第一直线14.If GIsin(J-Z[16])>0:Then Pol(X-N,Y-E):Rec(I,J-F-GK)15.I-Z[4]+D→Z: J→S:Cls:“Z=”:Locate3,1,Z:”S=”:Locate 3,2,S◢16.Goto 0:IfEnd 第二直线17.If GIsin(J-Z[13])>0:Then Pol(X-Z[9],Y-Z[10])18.If GIsin(J-Z[14])<0:ThenZ[13]→P:U→H:A→M:1→T:Z[5]→Z[17]:Z[6]→Z[18]:F→Z[19]:Goto 1:IfEnd 第一缓和曲线19.If GIsin(J-Z[15])<0:Then Abs(J-Z[14])→Z[20]:Z[20]>360?Z[20]-360→Z[20]20.B+πRZ[20]÷180→Z: G(R-I)→S:Cls:“Z=”:Locate3,1,Z:”S=”:Locate 3,2,S◢21.Goto 0:IfEnd 圆曲线22.If GIsin(J-Z[15])>0:Then Z[16]→P:V→H:D→M:-1→T:Z[7]→Z[17]:Z[8]→Z[18]:F+GK+180→Z[19]:Goto 1:IfEnd 第二缓和曲线23.Lbl 1:Pol(X-Z[11],Y-Z[12]): Abs(J-P)→J:J>180?J-360→J:JπR÷180→L L为以R为半径,以所求点-(Z[11],Z[12])连线与P的角度差计算得的弧长24.Lbl 2:L-L5÷(40R2H2)+L9÷(3456R4H4)-L13÷(599040R6H6)→O25.L3÷(6RH)-L7÷(336R3H3)+L11÷(42240R5H5)-L15÷(9676800R7H7)→P26.Rec(sqrt(O2+P2),Z[19]+TGtan-1(P÷O)):Z[17]+I→O:Z[18]+J→P27.Pol(X-O+0.00001,Y-P+0.00001):Rec(I,J-(Z[19]+90TGL2÷(πRH)))28.If AbsI>0.001:Then L+I→L:Goto 2:Else M+TL→Z:TJ→S:Cls:“Z=”:Locate3,1,Z:”S=”:Locate 3,2,S◢29.Goto 0:IfEnd子程序(曲线要素数据):SJ1.20→DimZ:?M2.If M=1:Then *→F:*→K:*→G:*→U:*→V:*→R:*→Q:*→N:*→E:Goto 1:IfEnd3.If M=2:Then *→F:*→K:*→G:*→U:*→V:*→R:*→Q:*→N:*→E:Goto 1:IfEnd4.………………5.Lbl 1:U2÷24÷R-U4÷2688÷R3+U6÷506880÷R5→Z[1]Z[1]第一回旋线内移值P16.V2÷24÷R-V4÷2688÷R3+V6÷506880÷R5→Z[2]Z[2]第二回旋线内移值P27.(R+Z[2]-(R+Z[1])cosK)÷sinK→M8.(R+Z[1]-(R+Z[2])cosK)÷sinK→P9.M+U÷2-U3÷240÷R2→Z[3]Z[3]第一切线长T110.P+V÷2-V3÷240÷R2→Z[4]Z[4]第二切线长T211.πRK÷180+(U+V)÷2→L 曲线长(Ls1+圆+Ls2)12.Q-Z[3]→A:A+U→B:A+L→D:D-V→C ZH,HY,HZ,YH里程桩号13.0→I:0→J:Rec(Z[3],F+180):N+I→Z[5]:E+J→Z[6]ZH点坐标14.Rec(Z[4],F+GK):N+I→Z[7]:E+J→Z[8]HZ点坐标15.Rec(sqrt(M2+(R+Z[1])2),F+G(K+tan-1((R+Z[2])÷P))):N+I→Z[9]:E+J→Z[10]Z[9],Z[10] 圆心坐标注:F-起始边方位角K-转角G-线路左转输-1,右转输1U-第一回旋线长V-第二回旋线长R-圆曲线半径Q-交点桩号N,E-交点坐标Z-待求点桩号S-偏距(左偏为-,右偏为+)sqrt为根号。

【技术】在Excel表格中,轻松做到坐标反算。。。

【技术】在Excel表格中,轻松做到坐标反算。。。

【技术】在Excel表格中,轻松做到坐标反算。

定期推送测量资讯,资源共享,求职招聘,测量软件,测量书籍规范,5800编程,⼟⽯⽅计算等诸多优质内容,测量最接地⽓、重服务的本地微信平台!关注我们妥妥没错!⼩编提⽰Excel电⼦表格也是我们测量⼯作中必不可少的软件,利⽤Excel电⼦表格可以取代⼀些⼤量的计算与减少⼿⼯计算误会,接下来,我们说说在Office Excel电⼦表格中求⽅位⾓和距离的公式。

如上图所⽰;⽅位⾓“度”格式公式:=(PI()*(1 - SIGN(B3-$B$1) / 2) - ATAN((A3-$A$1) /(B3-$B$1)))*180/PI()Excel 中求⽅位⾓公式:a1,b1放起始点坐标 a3,b3放终点坐标。

⽅位⾓度分秒格式公式:=INT((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) /(B3-$b$1)))*180/PI())&'-'& INT( ((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) /(B3-$b$1)))*180/PI()-INT((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) /(B3-$b$1)))*180/PI()))*60)&'-'&INT( (((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) /(B3-$b$1)))*180/PI()-INT((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) /(B3-$b$1)))*180/PI()))*60-INT(((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) /(B3-$b$1)))*180/PI()-INT((PI()*(1 - SIGN(B3-$b$1) / 2) - ATAN((A3-$a$1) /(B3-$b$1)))*180/PI()))*60))*600)/10其中:A1,B1中存放测站坐标,a3,b3放终点坐标。

坐标正算、反算计算方法及在Excel中的VBA编程

坐标正算、反算计算方法及在Excel中的VBA编程

坐标正算、反算计算方法及在Excel 中的VBA 编程测量中经常需要将某点相对坐标系坐标转换成线路的里程、偏距,或根据线路某一里程偏距计算出对应的相对坐标系坐标,为寻求一种快速简单高效的计算方法,本文对线路正算反算的原理进行了阐述,并结合Excel VBA 编程,将编程和Excel 的拖拽的功能相结合,编制出实用计算表,特别适用于需要大量计算边桩、围护桩的情况。

关键词:坐标方位角坐标正算坐标反算 V AB 编程循环迭代直接算法一、坐标方位角的反算1.坐标方位角反算如图1所示,已知点A 、B 的坐标,求直线AB坐标方位角α。

图1坐标方位角反算直线AB 之间的坐标增量:AB B AAB B Ax x x y y y ∆=−∆=−当0,0AB AB x y ∆>∆>时,角α位于第一象限角:arctan ABABy x α∆=∆当0,0AB AB x y ∆<∆>时,角α位于第二象限角:arctan 180AB ABy x α∆=+°∆当0,0AB AB x y ∆<∆<时,角α位于第三象限角:arctan 180AB ABy x α∆=+°∆当0,0AB AB x y ∆>∆<时,角α位于第二象限角:arctan360AB AB y x α∆=+°∆2.坐标方位角反算的VBA 编程可用VBA 将上述过程定义为一个名为angel()的函数,代码如下:Function angel(x0As Double, y0 As Double, x1 As Double, y1 As Double) As Double dx = x1- x0dy = y1- y0If dx > 0 And dy > 0 Thenangel = Atn(dy / dx)End IfIf dx < 0 And dy > 0 Thenangel = Atn(dy / dx) + 3.14159265358979End IfIf dx < 0 And dy < 0 Thenangel = Atn(dy / dx) + 3.14159265358979End IfIf dx > 0 And dy < 0 Thenangel = Atn(dy / dx) + 3.14159265358979 * 2End IfEnd Function二、直线段坐标正算与反算1.直线段正算图2直线段计算已知HZ 点坐标(x1,y1)、里程N HZ ,ZH 点坐标(x2,y2),正算时已知P 点对应的中桩里程Np 和偏距e (规定沿着线路前进方向,左边偏距为负,右边偏距为正),Np>N HZ ,求P 点对应的坐标。

利用EXCEL计算转换坐标

利用EXCEL计算转换坐标

利用EXCEL计算转换坐标在Excel中,可以使用一些内置的函数和公式来计算转换坐标。

以下是一种可能的方法:1. 打开Excel,并在第一列输入原始坐标的横坐标值。

假设这些值位于A列,从第2行开始。

如下所示:A------X1X2X3...2.在第二列输入原始坐标的纵坐标值,假设这些值位于B列,从第2行开始。

如下所示:AB------X1Y1X2Y2X3Y3...3.在第三列输入转换后的坐标的横坐标值,假设这些值位于C列,从第2行开始。

如下所示:ABC------------X1Y1X1'X2Y2X2'X3Y3X3'...4.在第四列输入转换后的坐标的纵坐标值,假设这些值位于D列,从第2行开始。

如下所示:ABCD----------------X1Y1X1'Y1'X2Y2X2'Y2'X3Y3X3'Y3'...5.在C2单元格中输入以下公式来计算转换后的横坐标值:`=A2*缩放比例+平移值`缩放比例和平移值可以根据具体的坐标转换规则来确定。

例如,假设原始坐标的单位为英尺,我们想将其转换为米,则缩放比例应为0.3048(1英尺=0.3048米),平移值为0(因为不需要进行平移)。

6.在D2单元格中输入以下公式来计算转换后的纵坐标值:`=B2*缩放比例+平移值`同样,缩放比例和平移值根据具体的坐标转换规则来确定。

7.复制C2和D2单元格的公式,并将其粘贴到剩余的单元格中,以计算所有的转换后的坐标。

通过这种方法,您可以在Excel中轻松地计算坐标的转换。

请注意,缩放比例和平移值应根据您的具体需求进行调整。

excel中xyz互逆转换 -回复

excel中xyz互逆转换 -回复

excel中xyz互逆转换-回复【Excel中XYZ互逆转换】Excel是一款广泛应用于数据处理和数据分析的电子表格软件,其强大的计算功能和灵活的操作方式使得它成为了许多人工作中必备的工具。

然而,在使用Excel进行数据处理和分析的过程中,有时候我们需要进行XYZ互逆转换的操作,即将数据在X、Y、Z三个不同的维度之间进行转换。

本文将一步一步回答在Excel中进行XYZ互逆转换的具体步骤。

第一步,打开Excel并准备要进行XYZ互逆转换的数据。

在Excel中,可以使用不同的方式准备数据,比如直接手动输入数据,或者从其他文件中导入数据。

第二步,在Excel的工作表中创建三个列,分别命名为X、Y和Z,用于分别存放数据的X、Y和Z坐标值。

如果已经有原始数据的话,可以直接将数据填入对应的列中。

第三步,计算要转换的坐标值。

在Excel中,可以使用公式来计算数据的坐标值。

假设要将X坐标值转换为Y坐标值,可以在Y列中输入以下公式:“=A1*2”(假设X坐标的数据在A列),然后将该公式拖动到Y列的其余单元格中,即可计算出对应的Y坐标值。

同样,也可以使用类似的方式将Z坐标值计算出来。

第四步,进行XYZ互逆转换。

在Excel中,互逆转换的操作可以通过复制和粘贴来完成。

假设已经将X坐标值转换为了Y坐标值,并且想要将Y坐标值再次转换为X坐标值,可以选择Y列的数据,然后执行复制操作(使用快捷键Ctrl+C或者点击复制按钮)。

接下来,在X列的第一个单元格处,执行粘贴操作(使用快捷键Ctrl+V或者点击粘贴按钮),即可将Y坐标值粘贴到X列。

同样的操作也适用于将Z坐标值转换为X或Y坐标值。

第五步,对转换后的数据进行验证。

在进行数据转换之后,建议对转换后的数据进行验证,以确保转换结果的准确性。

可以手动计算一部分数据,然后与转换后的结果进行比对,以验证转换操作的正确性。

第六步,保存和导出转换后的数据。

在进行XYZ互逆转换之后,可以选择将转换后的数据保存和导出。

坐标正反算计算程序

坐标正反算计算程序

坐标正反算计算程序```pythonimport mathdef coordinate_forward(h0, l0, alpha, s):"""坐标正算函数,根据给定的起始位置和观测角度、距离计算目标位置的坐标。

:param h0: 起始位置的水平坐标。

:param l0: 起始位置的纵向坐标。

:param alpha: 观测角度,以正北方向为基准,顺时针方向为正。

:param s: 距离。

:return: 目标位置的水平坐标和纵向坐标。

"""d = math.radians(alpha)h = h0 + s * math.sin(d)l = l0 + s * math.cos(d)return h, ldef coordinate_inverse(h0, l0, h, l):"""坐标反算函数,根据给定的起始位置和目标位置的坐标计算观测角度和距离。

:param h0: 起始位置的水平坐标。

:param l0: 起始位置的纵向坐标。

:param h: 目标位置的水平坐标。

:param l: 目标位置的纵向坐标。

:return: 观测角度和距离。

"""dh = h - h0dl = l - l0s = math.sqrt(dh ** 2 + dl ** 2)alpha = math.degrees(math.atan2(dh, dl))if alpha < 0:alpha += 360return alpha, s```使用这个坐标正反算计算程序,可以简单地实现坐标的正反算。

例如:```python#坐标正算示例h0=0l0=0alpha = 45s=10h, l = coordinate_forward(h0, l0, alpha, s)print(f"目标位置坐标:h={h}, l={l}")#坐标反算示例h0=0l0=0h=5l=5alpha, s = coordinate_inverse(h0, l0, h, l)print(f"观测角度和距离:alpha={alpha}, s={s}")```这段程序中的坐标正算函数`coordinate_forward`接受起始位置的坐标`h0`和`l0`,观测角度`alpha`(以正北方向为基准,顺时针方向为正),以及距离`s`作为参数,返回目标位置的水平坐标`h`和纵向坐标`l`。

坐标正算和坐标反算公式

坐标正算和坐标反算公式

坐标正算和坐标反算公式
给定原始坐标系下的坐标(x,y),以及原始坐标系的参考点的坐标(x0,y0),以及原始坐标系与目标坐标系之间的偏移量(dx,dy),则目标坐标系下的坐标(x',y')可以通过以下公式计算得出:
x' = x0 + (x - x0) * dx + (y - y0) * dy
y' = y0 - (x - x0) * dy + (y - y0) * dx
坐标反算公式
给定目标坐标系下的坐标(x',y'),以及原始坐标系的参考点的坐标(x0,y0),以及原始坐标系与目标坐标系之间的偏移量(dx,dy),则原始坐标系下的坐标(x,y)可以通过以下公式计算得出:
x = x0 + (x' - x0) * dx - (y' - y0) * dy
y = y0 + (x' - x0) * dy + (y' - y0) * dx
这些公式可以用于地理定位、地图投影、坐标转换等相关应用中。

请根据实际需要调整参数的取值和精度以及公式的单位。

EXCEL公式进行经纬度与XY坐标的相互转换

EXCEL公式进行经纬度与XY坐标的相互转换

EXCEL公式进行经纬度与XY坐标的相互转换•一、用EXCEL进行高斯投影换算从经纬度B、L换算到高斯平面直角坐标X、Y(高斯投影正算),或从X、Y换算成B、L(高斯投影反算),一般需要专用计算机软件完成。

在目前流行的换算软件中不足之处,就是灵活性较差,大都需要一个点一个点地进行,不能成批量地完成,给实际工作带来许多不便。

而用EXCEL可以很直观、方便地完成坐标换算工作,不需要编制任何软件,只需要在EXCEL的相应单元格中输入相应的公式即可。

下面以1954年北京坐标系为例,介绍具体的计算方法。

上图为编辑好的EXCEL表(红色为输入数据项)完成经纬度B、L到平面直角坐标X、Y的换算,在EXCEL中大约需要占用21列,当然读者可以通过简化计算公式或考虑直观性,适当增加或减少所占列数。

在EXCEL中以公式从第3行第1列(A3格)为起始单元格为例,各单元格的公式如下:(1)单元格A3输入中央子午线,以度、分、秒形式输入,如107度0分则输入107.00 (2)单元格B3公式如上图,把L0化成度形式。

(3)单元格C3以度小数形式输入纬度值,如23°44′01″则输入23.4401。

(4)单元格D3以度小数形式输入经度值,如107°42′48″则输入107.4248。

(5)单元格E3公式如上图,把纬度B化成度形式。

(6)单元格F3公式如上图,把经度L化成度形式。

(7)各个单元格输入公式如下:表中计算公式见由孔祥元等主编、武汉大学2002年出版的《控制测量学》,EXCEL软件的操作方法请参阅有关资料。

按上面表格中的公式输入到相应单元格后,就可方便地由经纬度求得平面直角坐标。

当输入完所有的经纬度后,用鼠标下拉即可得到所有的计算结果。

表中的许多单元格公式为中间过程,可以用EXCEL的列隐藏功能把这些没有必要显示的列隐藏起来,表面上形成标准的计算报表,使整个计算表简单明了,可计算的数据量是无限的,当第一次输入公式后,相当于自己完成了一软件的编制,可存储起来供今后重复使用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档