曲线坐标计算程序VBA 4.8
圆曲线坐标计算程序

Q=(180-O)÷2
G=E+Rcos(J-BQ)◢
H=F+Rsin(J-BQ)◢
Pol((E-G),(F-H)):J<0=>K=J+360:≠>K=J△K▲
E、F—ZY点X、Y坐标
C、D—,YZ点X、Y坐标
J—ZY到YZ方位角
K—圆心到ZY 方位角
G、H—圆心点X、Y坐标 B—路线方向 (左+1,右-1)
角度
角度
°
°
53.98575249 53.98575249
ZY至YZ方位角(J)
°′ ″
弧度
53°59′09″
0.942
圆心点至ZY方位角
圆心点坐标
(K)弧度
度
°′ ″
G(X)
H(Y)
4.850 277.8858034 277°53′09.″ 4577641.564 730131.890
圆曲线圆心法坐标计算
R—圆曲线半径
说明:本程序最适用只知道圆曲线ZY点和YZ点的桩号及坐标,还有圆曲线半径,就可计算这段圆
待求点桩号
里程差 W
圆心角 弧度
距中桩距离 左+,右-
待求点坐标
N(X)
E(Y)
K0+000
0
0.000
5
4577655.355 730032.320
K0+005
0
0.000
-5
4577653.983 730042.226
G、H—圆心点X、Y坐标 M—待测点里程桩号
K—圆心点到ZY方位角
S—待测点左右桩距离(左+,右-)
V—圆心点到待测点方位角 R—圆曲线半径
B—路线方向 (左+1,右-1)
4800-4850p《多条曲线坐标计算程序》

ZHCHXU(线路坐标、放样计算主程序)提示:必须先执行一次“Defm 60”命令,使扩展变量得到确认Deg:Norm:Lb1 S:Z<1=»{QU}:Q″X o″: U″Y o″ΔFix4: Z≥3=»U=0:K=1mInt Z[Z]kΔFixm:Lb1 A:Z≠.1=»{K}ΔM=K: N=3:Lb1 B:Z[N+3:Rnd:K<Ans=»Prog″D″:Pol(X[N]-X[N-3], Y[N]-Y[N-3:V=J: Pol(X[N+3]-X[N],Y[N+3]-Y[N:W=J: S=Sin-1Sin(W-V:C=AbsS:S=S÷C:H=1k Frac1E4Z[N:G=1E5Frac X[N]k+Frac1E4Y[N:L=GC÷1r+H:E=G+H2÷(24G)-H4÷(2688G3):T=E tan.5C+H÷2-H3÷240 G2:E=E÷Cos.5C-G:R=GS:Z[N:Rnd: Z≥4=»Q=AnsΔP=K-Ans: D=P:X=Rec(-T,V)+ X [N:Y=J+Y[N:D≤0=»A=X+Rec(D,V:B=Y+J:F=V:≠»C=V:O=2:Prog″ H ″ΔP>H=»O=3:D=P-L÷2: C=V+90S+.5Sin-1Sin(W-V: X=Rec(E+G , C)+X[N:Y=J+Y [N: A=X+ Rec(-G , D r÷R+C: B=J+Y:F= D r÷R+C-90SΔP>L-H=»O=4: D=P-L: R=-R:X=Rec(T , W)+X[N:Y=J+Y[N:C=W:D<0=»Prog″ H ″: ≠»O=0:A=X+Rec(D,W:B=J+Y: F=WΔΔH≠0=»E=Abs D÷HΔD=0: P=90:Lb1 0:P″ANG .″:Rec(D , P+F:X=A+I:Y=B+J: Prog″ F ″:Z≥1=»X:Pause 0:Y: Pause 0Δ◄┘Z=.2=»Fix1:Goto SΔ Z≠.1=»{D}Δ Z≥6=»U=1=»D″[HY]″ΔU=2=»D″[QZ]″ΔU=3=»D″[O]″ΔU=4=»D″[YH]″ΔU=5=»D″[HZ]″ΔD″[ZH] ″ΔO=2=»D″D r″ΔO=3=»D″D o″ΔO=4=»D″D2r″ΔD=i=»P=0:D=0:{PD}:Goto 0 Δ Z≥3=»K=Q=»K=Q+H+ln ΔU=1=»K=Q+L÷2ΔU=2=»D=R: U=3:Goto 0ΔU=3=»K=Q+L-HΔU=4=»K=Q+L-.4mΔIsz U:U=6=»Z=Z+3: Goto SΔ Goto AΔD=0=»Z=.1=»M=M-I Cos(F-J): Pause 0:Abs(F-J)÷90:Rnd:Ans=1=»I Sin(F-J:Pause 0:K=M: Goto SΔΔK=M: Goto A ΔFrac D k≠0=»D÷π:A=X:B=Y:P=0: Goto 0 Δ P=90: Goto 0:≠»N=N+3: Goto B◄┘H(数据输入子程序)H≠0=»Rec(D-D5÷90R2H2 ,D2r÷6RH+C:A=I+X:B=J+Y:F=D2r÷2RH+CΔF(计算子程序)Z=.2=»Pol(Qm-Frac X,Um-Frac Y): ≠»K=0=»{XY}Δ Pol(Q-X,U-YΔ Z=.5 =»X: Pause 0:Y:Pause 0: ″X=″:″Y=″▲ΔZ ≠1=»J=J+πr: 60Frac J:Int J+10mInt Ans+6mFrac Ans:Fix 4:Pause 0: Fix 3: I:Pause 0:Z=.2=»Fix 1:100 I:Pause 0:Ans Sin(F-J):Pause 0ΔD(数据输入子程序)A=0:B=0:N=3=»A=0:B=0Δ K>A=»K<B=»0:″TIU NRO″:″NEEKZISAS″: Prog″ZHCHXU ″ΔΔK≥B=»O=1: K≤A=»{O}ΔK=K+AO″KIU″-BOΔ◄┘FD(计算子程序)Lb1 0:{XYLF}:Fix3:Q″X o″: U″Y o″:D=Pol(X-Q,Y-U:J<0=»J=J+360ΔJ:60Frac J:J=Int J+10mInt Ans+6mFrac Ans:Fix 4:Pause 0:D:Fix 3:Pause 0:SHU(基本数据输入子程序)Norm:Lb1 0: {NKRHXY}:NXY:Z[N]=K+1E -7H:X[N]=X+1E-8Int R:Y[N]=Y+1E -4Frac R:N=N+3:Goto 0◄┘说明:1、必须先执行一次“Defm 60”命令,使扩展变量得到确认;2、“m”和“k”均在“FUNCTION”的1-“MATH”里;3、“E”是“EXP”;4、“o”和“r”均在“FUNCTION”的5-“DRG”里;2-----------CASIO fx---4800p <<多条曲线坐标计算程序>> ------整理:刘欣--------<<多条曲线坐标计算程序>>---------3一、程序输入说明:1、输入本程序前必须先扩容60个字节 (特别强调) ;2、输入数时小数点前面的位数只能≤5位,小数点后面只能保留3位;3、每个曲线的编号为3的倍数,第一个曲线N=3;第二个曲线N=6;第三个曲线N=9......;4、输入N后,再输入交点JD的X、Y坐标值,K为曲线起点的里程、H为缓和曲线长度、R为曲线半径;5、输入时最少要输入3个曲线的资料此程序才能运算;二、本程序计算范围说明:1、计算方位角和距离Z=0 例:测站(6551.446, 8080.424) 中桩K3+307.5方位角250-17-28 平距330.872例: 测站(同上) k=0, KIU=π任意点(6600,6600)方位角271-52-43 平距1481.222、计算中边桩坐标Z=13、以上二者兼而有之Z=0.54、根据坐标推算里程桩号 Z=0.15、计算路线中线偏位 Z=0.26、计算曲线逐点坐标 Z=N7、计算斜交涵洞轴线 D=i8、在切线方向前后移动 D=π9、返回输入桩号状态 D=0三、启动主程序“ZHCHXU ”进行计算说明:1、 Z输入1时,再输入中桩的里程K ,即可得到中桩的坐标XY ;D 为中桩左右侧边桩的平距:● 如果该中桩位于直线上,则D 辨别为“D ”;如果该中桩位于第一缓和曲线上,则D 辨别为“D r ”;如果该中桩位于圆曲线上,则D 辨别为“D O ”; 如果该中桩位于第二缓和曲线上,则D 辨别为“D 2r ”;● 左侧边桩为“-”值,即可得到左侧边桩的坐标XY ;右侧边桩为“+”值,即可得到右侧边桩的坐标X 、Y ;2、Z 输入0时,可计算中桩的或任何一个坐标值的方位角和边长,结果显示方位角为度分秒,边长显示米。
曲线坐标计算程序

I=30/(3.1415926*A*A)*(LF-LT)*(LF+2*LT)
l=L-LF的五次方/(72*A的四次方)*(0.8-LT/LF-LT/LF的平方+LT/LF的3次方+LT/LF的4次方-0.8LT/LF的5次方)
LT=A*A/R-(该曲线起点里程与HY点里程之差) LF=LT+(该曲线起点里程与前视点里程之差)
坐标简易计算表
圆曲线部分坐标计算
里程
起始 点里
L 玄切角玄长 方位角
坐标增量 X Y
中线坐标 X Y
左X
路基边桩坐标 Y 右X
Y
起始点 起始点坐标 方位角 起始点 中线坐标X+路基 中线坐标Y+路 中线坐标X+路 中线坐标Y+路 L/(2*R) 方位角 左宽*COS(路基 基左宽*SIN(路 基右宽*COS(路 基右宽*SIN(路 加或减 边桩左方位角) 基边桩左方位 基边桩右方位 基边桩右方位 角) 角) 角) 各点玄 玄长 玄长 起始点 起始点 2*R* 10M一 该计算 点延 里程减 注:R为 SIN( 切角 *COS( *SIN( X坐标 Y坐标+ 续计 起始点 曲线半 玄切 注:左 方位 方位 +坐标 坐标增 角) 角) 里程 角) 增量X 算 量Y 径 转为
Hale Waihona Puke 缓和曲线部分坐标计算 坐标增量 中线坐标 X Y X Y 左X 起始点坐标
路基边桩坐标 Y 右X
Y
路基边桩方位角计算 右转曲线:
右侧=该点方位角-2*L*L/(6*A*A)+90(化为弧度)
右侧=该点方位角+2*L*L/(6*A*A)+90(化为弧度)
置缓和曲线上任一点为曲线起点坐标计算:
曲线坐标计算程序VBA 4.9

程 序 信 息 提 示欢迎你使用本程序!当你看见此页面表示你的Office Excel已禁止“宏”无法正常显示和计算,需要启用“宏”才可进行下一步操作!如果你已启用“宏”请点击左上角“返回界面”按钮进入程序界面进行相关操作!提示 :本程序不支持金山WPS软件和Excel 2003精简版,仅支持微软Microsoft Office Excel 2003以上完整版本才可运行。
退出表格时会自动返回停留在该页面,当启用宏后再次运行本程序时则不会停留在该页面。
若有疑问请详询作者QQ:295188316操作方法:本程序运行环境为Microsoft Office Excel 2003以上版本,运行时要把安全级别设置为“低”或提示启用宏,否则点击程序按钮时会没有任何反映,设置方法如Office Excel 2003版:点击顶部【工具】>>>【宏】>>>【安全性】>>>【安全级】>>>【低】>>>【确定】>>>【重新打开文件即可运行】。
Office Excel 2007版:点击顶部【Office按钮】>>>【Excel选项】>>>【信任中心】>>>【信任中心设置】>>>【宏设置】>>>【启用所有宏】>>>【确定】。
Office Excel 2010版:点击顶部【文件】>>>【选项】>>>【信任中心】>>>【信任中心设置】>>>【宏设置】>>>【启用所有宏】>>>【确定】。
方法如下:>>>【宏】>>>【安全性】>>>【安全级】>>>【低】>>>【确定】>>>【重新打开文件即可运行】。
坐标正算、反算计算方法及在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 VBA编写测量坐标计算程序

教你如何通过Excel VBA编写测量坐标计算程序发布日期:2013-01-11 来源:网络作者:未知浏览次数:1704摘要:认识VBA、理解VBA,并利用Office Excel VBA编写测量坐标计算程序。
关键词:Excel VBA 程序坐标编写了解:VBA是什么?简单的说就是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案。
可以用Excel的宏语言来使Excel自动化运行等……Microsoft让它开发出来的应用程序共享一种通用的自动化语言——Visual Basic For Application(VB A),可以认为VBA是非常流行的应用程序开发语言Visual Basic的子集,事实上VBA是V B应用程序的版本,尽管存在有些不同VBA和VB在结构上仍然十分相似。
如果你已经了解VB会发现学习VBA非常快。
相应的学完VBA会给学习VB打下坚实的基础。
理由:选择Excel VBA编程的理由是因为它的计算功能非常强大,是现今任何编程计算器无法逾越的。
它运用范围广,计算速度快,计算精度高,合理化显示等。
或许很多测量人员对Excel VBA还有些陌生,主要是大家寄托于计算器、电脑、手机PDA等系列软件使用。
Excel VBA对于大多数测量人员而没有系统学过计算机语言程序设计的人群来讲有一定含糊,不过只要有基本数学知识、测量常识和逻辑理解的人,都能通过Excel VBA编写设计出称心如意的测量程序。
目标:基于Excel VBA的测量坐标计算程序的设计目标是将繁琐计算过程转入到计算机中,利用程序语言的重复性原理,在计算机中可将坐标计算得出更精确的结果,使坐标计算更加可靠。
最终目标是让用户可以通过Excel VBA自行完成坐标计算程序设计。
认识:学习VBA到底需要什么基础和了解些什么?学习VBA需要认识英文字母、一般的单词(如:函数所用的过程)、数学基础知识、测量常识、逻辑性思维即可。
[Excel]曲线坐标计算程序VBA_4.7
![[Excel]曲线坐标计算程序VBA_4.7](https://img.taocdn.com/s3/m/4e2bacdfce2f0066f5332235.png)
日期:
曲线要素表
单位名称: **集团有限公司 工程名称: **铁路线**标段 交点号
JD
交点里程
DK
交点坐标
X(N)
交点坐标
Y(E)
曲线半径
R
缓和曲线
Ls1
缓和曲线
Ls2
备 注
编制:
复核:
日期:
曲线要素表
单位名称: **集团有限公司 工程名称: **铁路线**标段 交点号
JD
交点里程
DK
交点坐标
曲线要素表
单位名称: **集团有限公司 工程名称: **铁路线**标段 交点号
JD JD0 JD1 JD2 JD3 JD4 JD5 987.122 4758.992 6224.744 10021.359
交点里程
DK
交点坐标
X(N) 3381507.389 3381002.829 3379475.002 3378819.247 3378226.731 3373351.385
交点坐标
Y(E) 446682.036 447530.464 450979.990 452290.956 456053.721 458628.379
曲线半径
R
缓和曲线
Ls1
缓和曲线
Ls2
备 注
5500 8000 5000 4500
300 170 330 360
300 170 330 360
编制:
复核:
X(N)
交点坐标
Y(E)
曲线半径
R
缓和曲线
Ls1
缓和曲线
Ls2
备 注
编制:
复核:
日期:
曲线要素表
单位名称: **集团有限公司 工程名称: **铁路线**标段 交点号
(完整word版)曲线坐标计算(

曲线坐标计算一、圆曲线圆曲线要素:α—-—-----———---—曲线转向角R—-——-—-—-------曲线半径根据α及R可以求出以下要素:T—---——-—————----切线长L---—-—————-——-——曲线长E-—--—---——------外矢距q—-———————--——-——切曲差(两切线长与曲线全长之差)各要素的计算公式为:2αtgR T ⋅=︒⋅=180παR L (弧长))12(sec -=αR E (sec α=cos α的倒数)圆曲线主点里程:ZY=JD -TQZ=ZY +L /2 或 QZ=JD -q /2 YZ=QZ +L /2 或 YZ=JD +T -q JD=QZ +q /2(校核用)1、基本知识◆ 里程:由线路起点算起,沿线路中线到该中线桩的距离。
◆ 表示方法:DK26+284。
56.“+”号前为公里数,即26km ,“+”后为米数,即284。
56m 。
CK -— 表示初测导线的里程。
DK —- 表示定测中线的里程。
K -— 表示竣工后的连续里程。
铁路和公路计算方法略有不同.2、曲线点坐标计算(偏角法或弦切角法)已知条件:起点、终点及各交点的坐标。
1)计算ZY 、YZ 点坐标 通用公式:ii i i i i αT Y Y αT X X i i i i ,1JD ZY ,1JD ZY sin cos --⨯-=⨯-=2)计算曲线点坐标 ① 计算坐标方位角i 点为曲线上任意一点。
li 为 i 点与ZY点里程之差。
弧长所对的圆心角弦切角弦的方位角当曲线左转时用“-",右转时用“+”.② 计算弦长③ 计算曲线点坐标 此时的已知数据为:ZY (x ZY,y ZY )、 aZY- i 、 C 。
根据坐标正算原理:iZY ZY i αC x x -⨯+=cosiZY ZY i αC y y -⨯+=sin切线支距法 这种方法是以曲线起点ZY 或终点YZ 为坐标原点,以切线为X 轴,以过原点的半径为Y 轴,则圆曲线上任意一点的切线支距坐标可通过以下公式求得:πϕϕϕ︒⋅=-==180,)cos 1(sin R l R y R x 式中利用坐标平移和旋转,该点在大地平面直角坐标系中的坐标可由以下公式求得:式中:α为ZY (YZ )点沿线路前进方向的切线方位角.当起点为ZY 时,“±”取“+”,X0=X (ZY ), Y0=Y(ZY ), 曲线为左偏时应以yi=-yi 代入;当起点为YZ 时,“±"取“—”,X0=X (YZ), Y0=Y (YZ), 曲线为左偏时应以yi=—yi 代入;注:1、同弧所对的圆周角等于圆心角的一半2、切线性质 圆的切线与过切点的半径相垂直3、弦切角定理 弦切角等于它所夹弧上的圆周角4、弧长公式由 L/πR=n °/180° 得L=n °πR/ 180°=n πR/180二、缓和曲线(回旋线)缓和曲线主要有以下几类:A:对称完整缓和曲线(基本形)------切线长、ls1与ls2都相等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段
单位名称:工程名称:
坐 标 计 算 表
**集团有限公司**路线**标段。