测量程序测量代码方便实用.docx

上传人:b****7 文档编号:16161479 上传时间:2023-07-11 格式:DOCX 页数:156 大小:124.79KB
下载 相关 举报
测量程序测量代码方便实用.docx_第1页
第1页 / 共156页
测量程序测量代码方便实用.docx_第2页
第2页 / 共156页
测量程序测量代码方便实用.docx_第3页
第3页 / 共156页
测量程序测量代码方便实用.docx_第4页
第4页 / 共156页
测量程序测量代码方便实用.docx_第5页
第5页 / 共156页
测量程序测量代码方便实用.docx_第6页
第6页 / 共156页
测量程序测量代码方便实用.docx_第7页
第7页 / 共156页
测量程序测量代码方便实用.docx_第8页
第8页 / 共156页
测量程序测量代码方便实用.docx_第9页
第9页 / 共156页
测量程序测量代码方便实用.docx_第10页
第10页 / 共156页
测量程序测量代码方便实用.docx_第11页
第11页 / 共156页
测量程序测量代码方便实用.docx_第12页
第12页 / 共156页
测量程序测量代码方便实用.docx_第13页
第13页 / 共156页
测量程序测量代码方便实用.docx_第14页
第14页 / 共156页
测量程序测量代码方便实用.docx_第15页
第15页 / 共156页
测量程序测量代码方便实用.docx_第16页
第16页 / 共156页
测量程序测量代码方便实用.docx_第17页
第17页 / 共156页
测量程序测量代码方便实用.docx_第18页
第18页 / 共156页
测量程序测量代码方便实用.docx_第19页
第19页 / 共156页
测量程序测量代码方便实用.docx_第20页
第20页 / 共156页
亲,该文档总共156页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

测量程序测量代码方便实用.docx

《测量程序测量代码方便实用.docx》由会员分享,可在线阅读,更多相关《测量程序测量代码方便实用.docx(156页珍藏版)》请在冰点文库上搜索。

测量程序测量代码方便实用.docx

测量程序测量代码方便实用

 

测量程序测量代码方便实用

Functioncnx(zk,s,a,d,v)

'完整曲线直线+缓和曲线+圆曲线+缓和曲线+直线

Ifzk>=60600Andzk<=Then

'有关数据输入

jd1=60600

jd1x=

jd1y=

jd2=

jd2x=

jd2y=

ls=315

r=2400

u=1

zh=

hy=

yh=

hz=

'有关数据计算

Letpi=

yy=jd2y-jd1y

xx=jd2x-jd1x

fwj=Atn(yy/xx)

Ifyy>0Andxx<0Then

fwj=fwj+pi

EndIf

Ifyy<0Andxx<0Then

fwj=fwj+pi

EndIf

Ifyy<0Andxx>0Then

fwj=fwj+pi*2

EndIf

Iffwj>pi*2Then

fwj=fwj-pi*2

EndIf

Iffwj<0Then

fwj=fwj+pi*2

EndIf

zhx=jd1x+Cos(fwj)*(zh-jd1)

zhy=jd1y+Sin(fwj)*(zh-jd1)

zhj=fwj+u*Atn(((hy-zh)^3/(6*r*ls)-(hy-zh)^7/(336*r^3*ls^3)+(hy-zh)^11/(42240*r^5*ls^5)-(hy-zh)^15/(9676800*r^7*ls^7))/((hy-zh)-(hy-zh)^5/(40*r^2*ls^2)+(hy-zh)^9/(3456*r^4*ls^4)-(hy-zh)^13/(599040*r^6*ls^6)+(hy-zh)^17/(0*r^8*ls^8)))

hyfwj=fwj+(hy-zh)^2/(2*r*ls)*u

zhc=((hy-zh)^3/(6*r*ls)-(hy-zh)^7/(336*r^3*ls^3)+(hy-zh)^11/(42240*r^5*ls^5)-(hy-zh)^15/(9676800*r^7*ls^7))/Sin(Atn(((hy-zh)^3/(6*r*ls)-(hy-zh)^7/(336*r^3*ls^3)+(hy-zh)^11/(42240*r^5*ls^5)-(hy-zh)^15/(9676800*r^7*ls^7))/((hy-zh)-(hy-zh)^5/(40*r^2*ls^2)+(hy-zh)^9/(3456*r^4*ls^4)-(hy-zh)^13/(599040*r^6*ls^6)+(hy-zh)^17/(0*r^8*ls^8))))

hyx=zhx+Cos(zhj)*zhc

hyy=zhy+Sin(zhj)*zhc

hyj=hyfwj+u*((yh-hy)/r)/2

hyc=Sin(((yh-hy)/r)/2)*2*r

yhx=hyx+Cos(hyj)*hyc

yhy=hyy+Sin(hyj)*hyc

yhfwj=hyfwj+u*((yh-hy)/r)

hzj=yhfwj+u*((hz-yh)^2/(2*r*ls)-Atn(((hz-yh)^3/(6*r*ls)-(hz-yh)^7/(336*r^3*ls^3)+(hz-yh)^11/(42240*r^5*ls^5)-(hz-yh)^15/(9676800*r^7*ls^7))/((hz-yh)-(hz-yh)^5/(40*r^2*ls^2)+(hz-yh)^9/(3456*r^4*ls^4)-(hz-yh)^13/(599040*r^6*ls^6)+(hz-yh)^17/(0*r^8*ls^8))))

hzc=((hz-yh)^3/(6*r*ls)-(hz-yh)^7/(336*r^3*ls^3)+(hz-yh)^11/(42240*r^5*ls^5)-(hz-yh)^15/(9676800*r^7*ls^7))/Sin(Atn(((hz-yh)^3/(6*r*ls)-(hz-yh)^7/(336*r^3*ls^3)+(hz-yh)^11/(42240*r^5*ls^5)-(hz-yh)^15/(9676800*r^7*ls^7))/((hz-yh)-(hz-yh)^5/(40*r^2*ls^2)+(hz-yh)^9/(3456*r^4*ls^4)-(hz-yh)^13/(599040*r^6*ls^6)+(hz-yh)^17/(0*r^8*ls^8))))

hzx=yhx+Cos(hzj)*hzc

hzy=yhy+Sin(hzj)*hzc

hzfwj=yhfwj+u*((hz-yh)^2/(2*r*ls))

'直线计算

Ifzk>=jd1Andzk<=zhAndv=1Then

cnx=jd1x+Cos(fwj)*(zk-jd1)+Cos(fwj)*s+Cos(fwj+a*pi/180)*d

EndIf

Ifzk>=jd1Andzk<=zhAndv=2Then

cnx=jd1y+Sin(fwj)*(zk-jd1)+Sin(fwj)*s+Sin(fwj+a*pi/180)*d

EndIf

'第一条缓和曲线计算

Ifzk>zhAndzk

l=zk-zh

x=l-l^5/(40*r^2*ls^2)+l^9/(3456*r^4*ls^4)-l^13/(599040*r^6*ls^6)+l^17/(0*r^8*ls^8)

y=l^3/(6*r*ls)-l^7/(336*r^3*ls^3)+l^11/(42240*r^5*ls^5)-l^15/(9676800*r^7*ls^7)

j=Atn(y/x)

c=y/Sin(j)

zj=l^2/(2*r*ls)

Ifzk>zhAndzk

cnx=zhx+Cos(fwj+u*j)*c+Cos(fwj+u*zj)*s+Cos(fwj+u*zj+a*pi/180)*d

EndIf

Ifzk>zhAndzk

cnx=zhy+Sin(fwj+u*j)*c+Sin(fwj+u*zj)*s+Sin(fwj+u*zj+a*pi/180)*d

EndIf

EndIf

'圆曲线计算

Ifzk>=hyAndzk<=yhThen

l=zk-hy

j=(l/r)/2

zj=2*j

c=Sin(j)*2*r

Ifzk>=hyAndzk<=yhAndv=1Then

cnx=hyx+Cos(hyfwj+u*j)*c+Cos(hyfwj+u*zj)*s+Cos(hyfwj+u*zj+a*pi/180)*d

EndIf

Ifzk>=hyAndzk<=yhAndv=2Then

cnx=hyy+Sin(hyfwj+u*j)*c+Sin(hyfwj+u*zj)*s+Sin(hyfwj+u*zj+a*pi/180)*d

EndIf

EndIf

'第二条缓和曲线计算

Ifzk>yhAndzk

l=hz-zk

x=l-l^5/(40*r^2*ls^2)+l^9/(3456*r^4*ls^4)-l^13/(599040*r^6*ls^6)+l^17/(0*r^8*ls^8)

y=l^3/(6*r*ls)-l^7/(336*r^3*ls^3)+l^11/(42240*r^5*ls^5)-l^15/(9676800*r^7*ls^7)

j=Atn(y/x)

c=y/Sin(j)

zj=l^2/(2*r*ls)

fj=zj-j

Ifzk>yhAndzk

cnx=hzx+Cos(hzfwj+pi+(-u)*j)*c+Cos(hzfwj+(-u)*zj)*s+Cos(hzfwj+(-u)*zj+a*pi/180)*d

EndIf

Ifzk>yhAndzk

cnx=hzy+Sin(hzfwj+pi+(-u)*j)*c+Sin(hzfwj+(-u)*zj)*s+Sin(hzfwj+(-u)*zj+a*pi/180)*d

EndIf

EndIf

EndIf

'结束

'完整曲线直线+缓和曲线+圆曲线+缓和曲线+直线

Ifzk>=Andzk<=Then

'有关数据输入

jd1='交点1的桩号

jd1x='交点1的X坐标

jd1y='交点1的Y坐标

jd2='交点2的桩号

jd2x='交点2的X坐标

jd2y='交点2的Y坐标

ls=335'缓和曲线长

r=3000'圆曲线半径

u=-1'转向(左转为负,右转为正)

zh='直缓点桩号

hy='缓圆点桩号

yh='圆缓点桩号

hz='缓直点桩号

'有关数据计算

Letpi=

yy=jd2y-jd1y

xx=jd2x-jd1x

wj=Atn(yy/xx)

Ifyy>0Andxx>0Then

fwj=wj

EndIf

Ifyy>0Andxx<0Then

fwj=wj+pi

EndIf

Ifyy<0Andxx<0Then

fwj=wj+pi

EndIf

Ifyy<0Andxx>0Then

fwj=wj+pi*2

EndIf

Iffwj>pi*2Then

fwj=fwj-pi*2

EndIf

Iffwj<0Then

fwj=fwj+pi*2

EndIf

zhx=jd1x+Cos(fwj)*(zh-jd1)

zhy=jd1y+Sin(fwj)*(zh-jd1)

zhj=fwj+u*Atn(((hy-zh)^3/(6*r*ls)-(hy-zh)^7/(336*r^3*ls^3)+(hy-zh)^11/(42240*r^5*ls^5)-(hy-zh)^15/(9676800*r^7*ls^7))/((hy-zh)-(hy-zh)^5/(40*r^2*ls^2)+(hy-zh)^9/(3456*r^4*ls^4)-(hy-zh)^13/(599040*r^6*ls^6)+(hy-zh)^17/(0*r^8*ls^8)))

hyfwj=fwj+(hy-zh)^2/(2*r*ls)*u

zhc=((hy-zh)^3/(6*r*ls)-(hy-zh)^7/(336*r^3*ls^3)+(hy-zh)^11/(42240*r^5*ls^5)-(hy-zh)^15/(9676800*r^7*ls^7))/Sin(Atn(((hy-zh)^3/(6*r*ls)-(hy-zh)^7/(336*r^3*ls^3)+(hy-zh)^11/(42240*r^5*ls^5)-(hy-zh)^15/(9676800*r^7*ls^7))/((hy-zh)-(hy-zh)^5/(40*r^2*ls^2)+(hy-zh)^9/(3456*r^4*ls^4)-(hy-zh)^13/(599040*r^6*ls^6)+(hy-zh)^17/(0*r^8*ls^8))))

hyx=zhx+Cos(zhj)*zhc

hyy=zhy+Sin(zhj)*zhc

hyj=hyfwj+u*((yh-hy)/r)/2

hyc=Sin(((yh-hy)/r)/2)*2*r

yhx=hyx+Cos(hyj)*hyc

yhy=hyy+Sin(hyj)*hyc

yhfwj=hyfwj+u*((yh-hy)/r)

hzj=yhfwj+u*((hz-yh)^2/(2*r*ls)-Atn(((hz-yh)^3/(6*r*ls)-(hz-yh)^7/(336*r^3*ls^3)+(hz-yh)^11/(42240*r^5*ls^5)-(hz-yh)^15/(9676800*r^7*ls^7))/((hz-yh)-(hz-yh)^5/(40*r^2*ls^2)+(hz-yh)^9/(3456*r^4*ls^4)-(hz-yh)^13/(599040*r^6*ls^6)+(hz-yh)^17/(0*r^8*ls^8))))

hzc=((hz-yh)^3/(6*r*ls)-(hz-yh)^7/(336*r^3*ls^3)+(hz-yh)^11/(42240*r^5*ls^5)-(hz-yh)^15/(9676800*r^7*ls^7))/Sin(Atn(((hz-yh)^3/(6*r*ls)-(hz-yh)^7/(336*r^3*ls^3)+(hz-yh)^11/(42240*r^5*ls^5)-(hz-yh)^15/(9676800*r^7*ls^7))/((hz-yh)-(hz-yh)^5/(40*r^2*ls^2)+(hz-yh)^9/(3456*r^4*ls^4)-(hz-yh)^13/(599040*r^6*ls^6)+(hz-yh)^17/(0*r^8*ls^8))))

hzx=yhx+Cos(hzj)*hzc

hzy=yhy+Sin(hzj)*hzc

hzfwj=yhfwj+u*((hz-yh)^2/(2*r*ls))

'直线计算

Ifzk>=jd1Andzk<=zhAndv=1Then

cnx=jd1x+Cos(fwj)*(zk-jd1)+Cos(fwj)*s+Cos(fwj+a*pi/180)*d

EndIf

Ifzk>=jd1Andzk<=zhAndv=2Then

cnx=jd1y+Sin(fwj)*(zk-jd1)+Sin(fwj)*s+Sin(fwj+a*pi/180)*d

EndIf

'第一条缓和曲线计算

Ifzk>zhAndzk

l=zk-zh

x=l-l^5/(40*r^2*ls^2)+l^9/(3456*r^4*ls^4)-l^13/(599040*r^6*ls^6)+l^17/(0*r^8*ls^8)

y=l^3/(6*r*ls)-l^7/(336*r^3*ls^3)+l^11/(42240*r^5*ls^5)-l^15/(9676800*r^7*ls^7)

j=Atn(y/x)

c=y/Sin(j)

zj=l^2/(2*r*ls)

Ifzk>zhAndzk

cnx=zhx+Cos(fwj+u*j)*c+Cos(fwj+u*zj)*s+Cos(fwj+u*zj+a*pi/180)*d

EndIf

Ifzk>zhAndzk

cnx=zhy+Sin(fwj+u*j)*c+Sin(fwj+u*zj)*s+Sin(fwj+u*zj+a*pi/180)*d

EndIf

EndIf

'圆曲线计算

Ifzk>=hyAndzk<=yhThen

l=zk-hy

j=(l/r)/2

zj=2*j

c=Sin(j)*2*r

Ifzk>=hyAndzk<=yhAndv=1Then

cnx=hyx+Cos(hyfwj+u*j)*c+Cos(hyfwj+u*zj)*s+Cos(hyfwj+u*zj+a*pi/180)*d

EndIf

Ifzk>=hyAndzk<=yhAndv=2Then

cnx=hyy+Sin(hyfwj+u*j)*c+Sin(hyfwj+u*zj)*s+Sin(hyfwj+u*zj+a*pi/180)*d

EndIf

EndIf

'第二条缓和曲线计算

Ifzk>yhAndzk

l=hz-zk

x=l-l^5/(40*r^2*ls^2)+l^9/(3456*r^4*ls^4)-l^13/(599040*r^6*ls^6)+l^17/(0*r^8*ls^8)

y=l^3/(6*r*ls)-l^7/(336*r^3*ls^3)+l^11/(42240*r^5*ls^5)-l^15/(9676800*r^7*ls^7)

j=Atn(y/x)

c=y/Sin(j)

zj=l^2/(2*r*ls)

fj=zj-j

Ifzk>yhAndzk

cnx=hzx+Cos(hzfwj+pi+(-u)*j)*c+Cos(hzfwj+(-u)*zj)*s+Cos(hzfwj+(-u)*zj+a

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2