怎样计算高速公路路线坐标及高程教学提纲_第1页
怎样计算高速公路路线坐标及高程教学提纲_第2页
怎样计算高速公路路线坐标及高程教学提纲_第3页
怎样计算高速公路路线坐标及高程教学提纲_第4页
怎样计算高速公路路线坐标及高程教学提纲_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一个excle模板的制作在当今社会,excle的使用已经是越来越来频繁了,几乎涉及所有的行业,路桥施工也不例外。我在某路桥公司曾经负责过某项目部的测量工作。大家都知道,测量最主要的就是计算了,如坐标、高程、横坡度等。我现在给大家推荐一款我自己编制的关于测量计算的excel模板。首先我会跟大家介绍一下模板的作用,然后再一一讲解此模板的制作过程。首先给大家看一下此模板的界面如下:也许大家咋一看,切这算啥,我也会做这张表格,实在是太简单了。不错,如果仅仅是靠手动输入这样子的数字,也许只要懂一点点excle的人都会制作出这张表格吧。不过,这张表格并不是你表面所看到的仅仅是几个数字而已,其内在的公式才是

2、它的亮点。也许这样讲大家还不是很清楚,我继续给大家截个图,看看它里面的公式是什么。zbx(),那么后面的都是一样吗?完全正确,后面的都是自定义函数,它们分别是zby()、sqx()、hpz()、hpy()。也许大家会问,恩,是不错,但是有什么用呢?那让我先给大家简述一下这个自定义函数的用法。竟然是一个函数,那么它就必须要有一个自变量,这几个函数的自变量又是什么呢?其实这个模板里面所有函数的自变量只有一个,就是桩号。什么意思?就是只要你给出任意一个桩号,都能得到其对应的坐标、中桩高程和横坡度。假设我们要K38+000K38+200段落内每隔20M一个断面所有点的坐标、中桩高程、以及左右横坡。我就

3、用这个模板给大家演示一下(此模板暂时数据只针对黄祁高速公路六标项目部)。先在桩号那一列把K38+000K38+200输入进去,可不要真的把字母"K”和加号“+”给输进去,只用输入纯数字就行了,否则计算会出错,之所以在模板里显示的是那样子,只不过是自定义的单元格式而已。fSlMicrosoftExcel资科M;老1宜年田飒号正叽插入(D将寸©XS©致蠡©宿口)趣由。一i:dj-12B25京奇兰山典/,'uCA一一典2l1纪收回算时总含更鼓心4=1A341应S800CABCEEFgin1桩号生:东中柱高程横坡备注9一Xy左右3K3S+C00.3302

4、546.52351圈阳的W2Q3L050-2non也口。】4KJK-HL20.3302552.315138/9.875202.M0-2.00UT.CJOO5K3B-+040.3302558.240513860.752202.1T0-2.000-2.0006K3B十060.3302564.0死51384,63。201.73C-2,000-2.0007K334C80.3302569.942513822.502201.29C2000-2.000SK3B+100.83025TS.733513813.35920a850-2000-13*9K3S-H20.10K3S-+140.11能8+160.12_繇打

5、180.13K384200.第二步剩下的仅仅就是拖动公式了,后面的都是公式,所以可以一起拖下来,先选定后面的所有单元格,然后向下直接拖动至最后,那么你需要的数据就全部出来了。irniV9V11D:曰文件口需褥购机图出插入3招式工具(X数据包氢口/苻田四L目1I_|B3tA-zbx(A3)ABCEFG1桩亏而中桩高程横坡备注2yV左右3K38+000.3302546.523513893.996203.050-2000-2.0004K33+020.3302552.381513879.875202,610-2000-2,烦5葭9Mo.3302E5S.240513860.752202,170-2000

6、出0006K38i-06O.3302564.098513841.630201,.730000-2.0007K38-OSO.3302569.942513822.502201.290000-E,0008K38+100,3302575.733513803,359200.850000-L3159KFR-120.3302581.434513T84.189200.410000-0,4S210K38-14Q.3302587.004513Pq.980199,9700000.35111K38+16D*3302592.403S13T45.723199.5300001.185L2K3S-130.3302597.5g

7、lB13T2S.40819.09001s2.018FK3S+2O0,33U2602.52g513“口心阳198.650E512.3511415呵呵,是不是很神奇!并不是只能计算整数桩号数据的,是任意桩号的,也就是说桩号K38+000和K38+111.232计算出来的结果的精度是一样的。这个模板可以让你计算任意你想要的坐标,比如其演化计算出来的桥梁墩柱坐标,涵洞坐标等等。给大家示范一下计算涵洞的坐标。假设某涵洞桩号是K38+433.245,左边据中桩距离是23.45M,右边距中桩距离是33.56M,基础宽度是6M,那么我要用这个模板计算出涵洞基础4个拐点的坐标。在这里我用此模板的一个空白的工作表

8、来给大家演示一下。上面这张表格现在大家都会做了吧,只不过多了一个自定义函数jfw(),它也是以桩号为自变量的一个函数,其得出的值是所在路线的某桩号的方位角。好了,有了中桩坐标和方位角,而且距离我们已经知道了,那么各边桩的坐标就可以计算出来了,x左=中桩坐标x+距离左X(乘号)cos(方位角-pi/2),y左二中桩坐标y+距离左X(乘号)sin(方位角-pi/2)。至于右边坐标公式仅仅是把那里面角度的减号改成加号而已。那么就可以得出来下面的表格了,离那4个拐点坐标也就越来越近了。好了,我们计算出了涵洞轴线的两个坐标,宽度我们又是知道的,而且我们方位角也知道,那么左边两个的拐点坐标就是轴线左边的坐

9、标分别利用三角函数就能计算出来了,只是距离变成了宽度的一半,而另外一个拐点的方位角要加上一个pi,如下表:同篇四*9 皿伽顶D 皿 UD 黠世:二d;上), I较:二 ,_£学网的删0)3三工迷4 口门,泄& 阖工:"二rr1FGKIIK右r-j野翦&333261539以我,3232迎563W1.496WIWmmM.33C三;口,口月典城9m3戏强,351皿购32234牌26注力8mm以上就是拐点的4个坐标。至于边桩高程就不做介绍,竟然有了中桩高程,而且有了左边和右边的横坡度,那么自然的边桩高程也是很容易计算出来的了。讲了这么多其实只是介绍了这个模板是怎么操

10、作和有什么用处,可是有那么多用处又有什么用呢,它只是针对你黄祁六标项目部才能用,我们项目部又不能用。没关系,我马上给大家详细讲解此模板的制作流程。还回到这个模板里面来,打开这个模板,然后进入vb编辑器里面,直接按Alt+F11可以进入,也可以从以下界面进入:工具宏vb编辑器(不好意思了,怎么都截不了那个图,还是直接按Alt+F11来的快)接下来就进入此界面了,注意旁边的模块,之所以可以能用自定义函数全部是它们的功劳,我一个一个的模块给大家讲解,先讲模块1:模块1a Mkfotoft Viml Bmk ,嘘央 1Function zbx(zh As Double) As DoubleDim x

11、As Double Dim y As Double Dim zhjd As Double Dim jzj As Double Dim r As Double Dim ls As Double Dim jzh As Double Dim pi As Double Dim m As Double Dim p As Double'交点横坐标'交点纵坐标'交点桩号'转角(右转为正,左转为负)'圆曲线半径缓和曲线长起始直线方位角'pi=3.14159265358979切垂差'内移距DimtAsDouble'切线长DimlcAsDouble&

12、#39;外矢距Dimj0AsDoubleDimzhzhAsDoubleDimzhhyAsDoubleDimzhyhAsDoubleDimzhhzAsDouble'缓圆点切线方位角'直缓点桩号DimzbzhAsDoubleDimzbhyAsDoubleDimzbyhAsDoubleDimzbhzAsDouble'直缓点坐标DimliAsDoubleDimxeAsDoubleDimyeAsDoubleDimdsAsDouble'弦长DimjiAsDoubleDimiAsDouble'转角'转角正负号Ifzh>=35290Andzh<365

13、71.636Then'从这里开始x=3302618.225y=515805.714zhjd=36087.224jzj=-1*dzh(46.3735)r=1096.226ls=130jzh=dzh(299.1304)ElseIfzh<37683.43Thenx=3302286.5y=514747.726zhjd=37142.734jzj=dzh(34.263)r=1600ls=150jzh=dzh(252.353)ElseIfzh<38850.118Thenx=3302680.931y=513460.274zhjd=38458.851jzj=-1*dzh(28.2945)r=

14、1300ls=150jzh=dzh(287.0159)ElseIfzh<=40400Thenx=3302433.987y=512242.43zhjd=39687.464jzj=dzh(28.4725)r=1700ls=150jzh=dzh(258.3215)Elsezbx=NullExitFunctionEndIf'到这里结束pi=3.14159265358979i=Sgn(jzj)j0=ls/r/2m=Is/2-IsA3/rA2/240p=Isa2/r/24t=m+(r+p)*Tan(Abs(jzj)/2)e=(r+p)/Cos(Abs(jzj)-rIc=r*(Abs(jzj)

15、-2*j0)Ii=Isxe=Ii-IiA5/rA2/IsA2/40+IiA9/rA4/IsA4/3456-IiA13/rA6/IsA6/599040+IiA17/rA8/IsA8/175472640-IiA21/rA10/IsA10/(7.80337152*10A10)ye=IiA3/r/Is/6-IiA7/rA3/IsA3/336+IiA11/rA5/IsA5/42240-IiA15/rA7/IsA7/9676800+IiA19/rA9/IsA9/(3.53009664*10A9)-IiA23/rA11/IsA11/(1.8802409472*10A12)ds=(xeA2+yeA2)A(1/

16、2)ji=Atn(ye/xe)zhzh=zhjd-tzhhy=zhzh+Iszhyh=zhhy+Iczhhz=zhyh+Iszbzh=x+t*Cos(jzh+pi)zbhy=zbzh+ds*Cos(jzh+i*ji)zbhz=x+t*Cos(jzh+jzj)zbyh=zbhz+ds*Cos(jzh+jzj-i*ji+pi)Ifzh<zhzhThenIi=zhzh-zhds=Iiji=jzh+pix=zbzh+ds*Cos(ji)EIseIfzh<zhhyThenIi=zh-zhzhxe=Ii-IiA5/rA2/IsA2/40+IiA9/rA4/IsA4/3456-IiA13/rA6

17、/IsA6/599040+IiA17/rA8/IsA8/175472640-IiA21/rA10/IsA10/(7.80337152*10A10)ye=IiA3/r/Is/6-IiA7/rA3/IsA3/336+IiA11/rA5/IsA5/42240-IiA15/rA7/IsA7/9676800+IiA19/rA9/IsA9/(3.53009664*10A9)-IiA23/rA11/IsA11/(1.8802409472*10A12)ds=(xea2+yea2)a(1/2)ji=jzh+i*Atn(ye/xe)x=zbzh+ds*Cos(ji)Elselfzh<zhyhThenli=z

18、h-zhhyds=2*r*Sin(li/r/2)ji=jzh+i*j0+i*li/r/2x=zbhy+ds*Cos(ji)Elselfzh<zhhzThenli=zhhz-zhxe=li-lia5/ra2/lsa2/40+lia9/ra4/lsa4/3456-lia13/ra6/lsa6/599040+lia17/ra8/lsa8/175472640-lia21/ra10/lsa10/(7.80337152*10a10)ye=lia3/r/ls/6-lia7/ra3/lsa3/336+lia11/ra5/lsa5/42240-lia15/ra7/lsa7/9676800+lia19/ra

19、9/lsa9/(3.53009664*10a9)-lia23/ra11/lsa11/(1.8802409472*10a12)ds=(xea2+yea2)a(1/2)ji=jzh+jzj-i*Atn(ye/xe)+pix=zbhz+ds*Cos(ji)Elseli=zh-zhhzds=liji=jzh+jzjx=zbhz+ds*Cos(ji)EndIfzbx=xEndFunction以上模块其实就是一个以自变量为桩号的函数,名字是叫zbx(),所返回的值就是坐标x。也许有人会说什么乱七八糟的东西,我一点也看不懂。呵呵,没关系,我们所要的只是把它运用于实际中来,并不要求所有人都能看懂,毕竟要全部看

20、懂,还得学会编程语言vba。这里我只讲它的用法,怎么能让它运用到所有项目的路线中去。首先让我们知道这个函数所要运用到的已知条件,如下:一宣叁;曲线及转角塞sitH莫白土神MAIB班V«IIW曲*至笫M*otttafflflia¥0*母货朽曲脏度.梃O3».ife曲坦嘴E“循虹m而nt££而圆母艮一乌蚪蛇彳屯=皿即堂:当时灯iGii12J1£曾a01。II我1JIt杵聘1?制如引刖*g斓iW*9A产A生世比th璃,*,MIT幽l在狂37?创晔翊Mi|5TS/i曰栉3s色口MMS出aE3M135丘,门对z-jcczbi-nwsirasCf

21、i-L«2TMMsoL的itnaL9DW3"W3HJEFTleuRi15TJ7XL4Err*ifft即K3T*S33L«3DESl+EitJUE>511*8(1271#*u.bsiEIN网IIIwCWlhm旧批听1部rsMaja翩0X1剧ilJ即项HITWT11*IIS妁吒a询512242W理由占ardlfamtWl-eu注牺.-:-ESbK值Tie-但钻汨咨的自1国k4J>jXl£1Ban*ir薄?w*III-UIM«这是设计院所给的数据,那么我现在要用到哪些呢?注意了,到重点了,以下的大家只要跟着我一步一步做就行,请不要问为什么

22、(如果你很想知道为什么的话,我就推荐你看一下excle关于vba的书)。在模块中看见从“从这里开始”和“到这里结束”了吗?呵呵,为了写这个特意加上的。好了,竟然我们要运用到新的路线上面去,那么它的已知条件的各个数据是变化的。所以必须得改一些东西。刚才说的那个把它全部删除,什么?删除?对,全部删了!呵呵,然后改成下面的:Ifzh>=起始桩号Andzh<第一个交点的第二缓和曲线终点桩号Then'从这里开始x=交点横坐标y=交点纵坐标zhjd=交点桩号jzj=-1*dzh(转角)(说明:输入方式,比如31°02'19就输入31.0219左转就如上一样输入,如右转

23、就是jzj=dzh(转角)没有负号的。)r=圆曲线半径ls=缓和曲线长度jzh=dzh(前一个交点到下一个交点的方位角)(说明:输入方式,比如31°02'19就输入31.0219)ElseIfzh<第二个交点的第二缓和曲线终点桩号Thenx=第二个交点横坐标y=第二个交点纵坐标zhjd=第二个交点桩号jzj=dzh(第二转角)r=圆曲线半径ls=缓和曲线长度jzh=dzh(第二交点与第一交点的方位角)(直到全部输完,用的都是第二段语句的格式)Elsezbx=NullExitFunctionEndIf'到这里结束明白了吗?黑体字换成你应该要输入的数据,文字说明就免

24、了,而且必须免了,不然程序就会出错。数据在你输入的时候一定要保证准确无误,不然的话就到时候计算出来的数据就全错了。到这里模块1应该弄清楚了吧,接下来的就特别简单了,我们继续讲解模块2:模块2跟模块1所要改的东西几乎是一模一样的,你所需要的仅仅是把模块1输入的数据首先复制过来,然后在一个地方要改写一下,倒数第3行(“到这里结束”是算最后一行)模块1里面是zbx,如果到了模块2里面请将其改为zby就OK了。是不是觉得万事开头难这句话很有道理,这么快就搞定模块2了。模块2好了,就应该是模块3了吧。小二二a ¥ V5APrcj#ci目二曰 NR1>»« l4 典hv

25、iL.卧依15 1sMMW Thi叩叶班用*,JJin a.-. A*Hin 产 Ai Jlo<bl*jin dz As Dgbl"=挎长Sin jii M JiQtble" KHl _Hin a Am Dnukle. * /-F号三If d X 装"。加4 点 < 3*571 9» lien 工=李H翁I日2E5 y = SISBCfr . TJfl 小沁=3«初224 jxj = -1 *"魄如峋 r S a HOB. 2e6Is = 1,3Dj.k eek 呢网JQ4 tl.IF rk < 376Fi3 43

26、Th = 330陵掠5 7 = 5|<7<7.738£ -hjd =茸 142 731 jij 41f £6国 r = IFflJD Is LSD"h谷小色52 3E3£1»1 di < HB ThenX二。翔加汕8司F = 5il4fi-_ 4rbjd 用4所;的Ijzj = -1 * d=h(38. E34Er a】第613 - I5QJ小=5BTMS即 rk 金 nmg工=3332433 9BT y 514编£。 Ekjd = BgSHT 犯jij = 4tsee打骂】 sr = 3W L> = I&am

27、p;D iih = &小哈狰8IF HI 3啊?怎么可能,改的完全是一样的,只是还要改正一下倒数第三行,把模块1里面的zbx改成jfw就行了,哈哈,这也太简单了吧。是的,就是这么简单。再接再厉,我们进行模块4的研究:冷端0MCE)MODMAU30则时期TRIT*例融国J3M,“_1|射叶,uJ4,金学期行12.列L靠1很周-JdzL司 曲mQ Ehtii! '麓Shgl l停卜的噌乾9X5胃的若 rtzY zrkliOoijEFmTiHidmh。MUghTG口in0jL=DnullitDinLJulTin<A>口qbl毕Donri如1cutie取-a乂德堂相上斑)t

28、ui=Ini(nJi*=琳-埠imcIntmfah=(a*g/&qi4fb-e3*100/36DO)ypi/ISC这个大家什么都不用改,只是一个输入转换的小程序,意思就是如果你要输入角度,比如31°02'44,只要输入dzh(31.0244)就会把角度转换成对应的弧度。这就是上面说明中解释角度为什么要这样子输入,嘿嘿,方便吧。快了,离成功就只有一点点了,我们现在已经能计算出全部的坐标了,让我们看看高程是怎么计算的吧。模块5登场了:t fc- 12 3 4- rEJnr B常麒歌黑卬粕榭咸思禺&&址混rjiqdHi加耻I*纵装,竖曲线总/4依«

29、MHAwmimint为球»州曲浒半艳fllii:'为M+Ti1讲Ft弓3*身*仃)J4?纲El2Txnn.4.33IWIEtOMT3血mitu.m44K旧通的甑EE的齿iCn-UUiLont4n.mIM.IWW8涧Nil工整1行珏花-ijmiMM.MID时DlICQiw+mMfCL&mIM训之B*niilu.im61IJUJWLzmzzBrHnZ.>M能-f.fQIVPMbPQI52LUFHl多1独.印力11.DODLUH口卧H&HlUSMTLMU1.an獗m)M.1«U“brtF|X3,nKHDDIBl.WDQlEL-107Kjmnr.mji

30、TAWHO用1MMHIE*MlSPl.TfllmFNP-flP7.1M-jlioi出Lxm244.ISOilw2*j附LEI141*9%喇我们还从这个模块里面的“从这里开始”和“到这里结束”谈起,大家知道怎么做了吧,不错,正如你所想,把它删掉。然后没有然后了,这样子就行了,嘿嘿,开玩笑的了,还得改成下面的:Ifzh=起始桩号Andzh第一个圆曲线的终点桩号Then'从这里开始zh1=前一个交点桩号zh2=中间的交点桩号(也就是正用的第一个)zh3=下一个交点桩号gc1=前一个交点的高程gc2=中间的交点的高程gc3=下一个交点的高程r=圆曲线半径Elselfzh第二个圆曲线的终点桩号T

31、henzh1=相对于这个交点的前一点桩号zh2=这个交点的桩号zh3=相对于这个交点的下一个桩号gc1=还用说明你就是傻瓜gc2=还用说明你就是傻瓜gc3=还用说明你就是傻瓜r=圆曲线半径(一直到结束,用的都是第二段语句的格式)Elsesqx=NullExitFunctionEndIf'到这里结束注意:所有输入的数据在等号后面是没有空格的,直接输入数据,而数据后面都跟上一个空格或N个空格,我也不怎么记得语法了,你这样做至少能够保证是正确的。我们还要研究模块7和模块8了吗?嘿嘿,大家就自己琢磨吧,这已经差不多够用了。现在我们已经在vb编辑器里面全部改过来了,我们可以在工作表里面试验一下子了,刚才我们用了几个自定义函数呢,x坐标zbx()、y坐标zby()、方位家jfw

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论