26 楼:wyqzm 呵呵,此次修改比之以前的要强了一些了,提点意思行吗?(高手看了不要见笑了) 回 1,建议取消所有扩展变量,因为有部分用户用的还是4800P,或4500,并且可能已经存储了很多自己的小程序,如果使用了Defm 50用来扩展50个定长字节串,那就很有可能产生存储器超界的.注意说的是\字节串\不是字符串,由于这种变量无论你是否使用,它都要占用固定长度的字节空间,并且每使用一个变量,他就会比默认变量多好几个字节,一旦程序变长,特别是数据文件的变长,这种多余字节的影响对4800的用户还是很大的,对于4500的用户那就不要想了,它的存储容量太小了, 2,子程序SUB1使用的常量应是可以代换的,个人认为设置这样的常量并不可取,虽然说在一定程序上节省了点空间,但相对你的整个SUB1来说,这点空间实在是微不足道的,并且这个常数大多数人并不好理解,我认为还是改成计算表达式更为好一点. 3,你的程序极尽计算器编程之能事啊,用一段子程序SUB1就实现了,说实话,我看起来真是有点费劲,不知道其他同仁有没有同感啊?对于此式我也有一句要说,希望你不要介意才是: 诚然,在程序中使用一定的技巧可以达到很好的效果,但现代程序设计的感点认为,条理清晰,简单易懂的程序才是标准哦,你的计算表达写得过于繁杂,一般人是难以看懂的,而且算法体现不出来啊,要不你另外提供一个这个程序的计算表达式?毕竟坐标并不闹着玩的,它很重要. 4,既然是线元曲率半径法,那当然就是直线和圆曲线元两端曲率半径相等,回旋线元不相等了,你在程序中规定直线元曲率半径输入10的45次方,我觉得这一点设计不可取啊,虽然10的45次方已经够大了,但有个更简单的方法怎么不用呢?无穷大的倒数就是无穷小,此外需入0就行了,没有必要输入那么个大数吧? 5,回旋线的精度可以通过循环迭代获得提高,但这个设置值在哪里呢?我看了半天也没有看明白,请指教 [img]http://www.cz88.net/ip/pic_5.aspx[/IMG] 27 楼:njy135njy 回 在主程序的Lbl A中B=Z[8(N+1)+3]-M及B=Z[8(N+1)+3]+M程序运行时总显示“Mem ERROR”, 28 楼:njy135njy 回 我输了16个线元的数据,反算时在主程序的Lbl A中B=Z[8(N+1)+3]-M及B=Z[8(N+1)+3]+M程序运行时总显示“Mem ERROR”,我的defm设定为200,请指点一下啊!谢了 29 楼:yshf njy135njy: 定义一个扩展变量要耗有10字节,(200+1)×8×10=16080,如果是4800P,已远远大于4500字节了;如果是4850P,还回 勉强可以(机内所有程序耗用的字节数不得超过12420情况下)。个人认为要计算16个线元,使用PC—1500、PC—E500,或者掌上电脑,可以不当心出“Mem ERROR”的问题。 30 楼:yshf wyqz: (1). 第一个观点略有同感; (2). SUB1中的常量乃积分得出的真数,怎样用计算表达式代替?那样做岂不是再将简单的问题复杂化,无异于站起来翻身; (3). 载重量是几百千克的面包车,能期望像一列火车或是万吨巨轮那样的载重量吗?不问具体的运用环境,乱用标准,对微分几何知之甚至少,给在别人的感觉就成了:“井底之蛙、赶面杖吹火”;要是人人都看懂了,hanniu_1973岂不吃饱了没事干,费尽心想写这样的程序逗大伙玩吗? (4).10的45次方小了,你再试试10的100次方、1000次方、......,那肯定会味道不错的; 照你的想法,在4800P或4850P上运行一下:“1÷0”,说不定你会有新的收获的! (5).回旋线什么样的精度,怎样通过循环迭代来获得提高呢?还是那句话:“你对微分几何知道的不多”,当然看不明白那设置值啦,明确地告诉你:正算中就没有循环迭代。建议你再找有关资料看看,信口雌雄,盲加评论,这可不是好事,这对一个人是很重要的。 31 楼:njy135njy 嗯,现在我的程序可以用行了,我是这样处理的: 把DAT1程序中的 Lbl1:J=1=>U=Z[8]:V=Z[9]:O=Z[10]:G=Z[11]:H=Z[12]:P=Z[13]:R=Z[14]:Q=Z[15]Δ J=2=>U=Z[16]:V=Z[17]:O=Z[18]:G=Z[19]:H=Z[20]:P=Z[21]:R=Z[22]:Q=Z[23]Δ J=3=> U=Z[24]:V=Z[25]:O=Z[26]:G=Z[27]:H=Z[28]:P=Z[29]:R=Z[30]:Q=Z[31]Δ J=4=> U=Z[32]:V=Z[33]:O=Z[34]:G=Z[35]:H=Z[36]:P=Z[37]:R=Z[38]:Q=Z[39]Δ …………………………… J=N=> U=Z[8N]:V=Z[8N+1]:O=Z[8N+2]:G=Z[8N+3]:H=Z[8N+4]:P=Z[8N+5]:R=Z[8N+6]:Q=Z[8N+7]Δ 换为Lbl 1: U=Z[8J]:V=Z[8J+1]:O=Z[8J+2]:G=Z[8J+3]:H=Z[8J+4]:P=Z[8J+5]:R=Z[8J+6]:Q=Z[8J+7]Δ就不出现哪个“Mem ERROR”了。 32 楼:njy135njy yshf 定义一个扩展变量要耗10字节,defm 200不是200X10=2000字节吗?不是200个线元啊?16线元应该是(16+1)×8×10=1360。没有你说的哪么多啊!? 回 回 回 感谢你的程序,真的是very good!!! 33 楼:wyqzm yshf (看了你的几句话,我有些不吐不快)我真是不明白你怎么会发那么大的火,我之前已经声明了,高手看了不要见笑,我只不过是个低低手,甚至更低,言词有所冒犯还请你原谅! 1,估计没有看过windows的极限编程,像这样的数据存储,只怕是4800P也存储不了几个,留给有4850P的朋友使用吧?由于定义的数据过多,此类程序用手工输入方法倒还不如常规程序方法; 2,你用的什么方法我不太清楚,但表达式写得如此之长,凭这一点就可以肯定并不是什么好的表达方法,也许我的思路与你的并不一样,编写的程序也就不相同,但说回来,难道一个程序写到人家都看不懂或是不易看懂,那能算是好程序吗?我只是建议,提点意思罢了,用得着发那么大的火吗?朋友,脾气不用那么爆燥吧?呵 3,条理清晰,简单易懂的程序难道就差么?非得写那么复杂?4800P不也可以计算积分吗?就算是写不了,另外给坛中的朋友提供一个相关资料也行吧? 4,我并不是说10的45次方太小了,你大概是没有看清楚吧?我是说太大了,用于计算直线还用得着这个,那是高射炮打蚊子----大材小用了,大概是你自己把简单问题复杂化了吧,请你看看<<全站仪与高等级公路测量>>这本老书吧,它后面的几页也讲述了这个论题,你的经典理论很精湛,我这个低低手是及不上你的了,那本书的计算式也是积分得到的,好像也没有你的这么复杂吧? 5,只能说算法不够灵活,有时取简化公式的前两项就能满足要求,但有些时候仅仅两项是不够的,我好像看到哪里说这个程序是计算前6项,以我认为,一些时候计算6项都是多余,还浪费不少时间,消耗电能;从另外一个方面来说,也许你睦砺鄹哂谒?撕芏?但这个算法描述也绝不是一个好的算法描述,之所以就算你有好的理论,却无法用算法表达出来,那也只是枉然,说实话,这个程序我也就扫了一眼,知道有更好的算法来实现,从你的上一回复也能看得出来,计算器你并不了解,程序你更不懂......所以,我也并不是信口雌雄,盲加评论,再说了,我也不想跟你再争论什么,在我看来,既然你懂得这么高深的理论,那么你应该也是一个脾气温和的人,肯请你注意!这里是论坛,是\论\的地方,我并不想为这么一个小东西争论,相信你也是吧! 温馨提示你:在现代道桥路线理论中,除经典的交点导线法之处,还有线元积木法,模式法,关于此类理论,<<测绘通报>>很早以前就有很多相关描述,但使用最多的还是经典的交点导线法和线元积木法,这在国内有名的路线软件如中交一公院的<<纬地道路辅助设计系统>>,南京李方的EICAD,国外著名路线软件德国IB&T公司的CARD/1中已经被广泛使用,如你的理论(也是线元法吧?)得以重用,也许可以开辟路线设计的新篇章了 34 楼:yshf wyqzm: 正如你所说的,“windows的极限编程”的确没看过,它的理论和数据结构能否引用到计算器中本人真不得而知;对计算器回 回 嘛我不了解,程序嘛更谈不上懂,至于什么导线法、线元法、模具式法、拟合法、积木法、综合法、弦切法、圆弧移动法、端点受限法、......,还有什么设计系统等啦更是闻所未闻了,跟你比起来差得不只是一点点,惭愧啊。不过,“windows”操作系统大家都在用,它的程序假如不编译,看得懂的不是大多数人,按你的的观点那是好程序吗?再如,500万像素的数码像机,真懂它原理的人有多少,按你的观点它岂能称为照像机或者好像机吗?我不爆燥也没有发火,既然有人提意见,就得有回复,不然怎称之为“论谈”吗,何况像你这样没看清没看明白的,我更不会那样了!本人要表达只是:没有最好,只有更好,能运行、快速准确得出所要求的结果即可,提意见或建议请透过现象看本质、请看清楚、请看明白了后再进行。是的,仅凭“扫了一眼”就看出半径为10的45次的曲率可以用0代替这简单的问题被复杂化,真神了,真服了你,上次回复不是让你试一下:“1÷0”,试了吗、你知道其中的奥秘吗?这怎能不让人联想起猪八戒吃人生果嘛!是的,计算直线用了那么长的表达式,真是杀鸡用了宰牛刀,为什么要那样做你知道吗?你期望的是用一个以上的子程序来解决坐标计算,这样会思路清晰、条理清楚、简单而易于理解,我想再笨的人也不会如此的,源程序的说明岂不成了画蛇添足,看明白了吗?你所期望的灵活是不是可能以样理解:将面包车的车箱造成可拆卸的,拉货时换上一个货箱,拉人时再换上车箱?程序已从使用范围、精度、速度、储存空间上作了统筹兼顾提炼而成的,难道这一点也没看出来?若论积分计算,4500P前的就能进行,何况4800P乎?用真数进行积分计算意义和速度你知道吗?乌呼,不知道这程序设计的概念是不是在远古的恐龙时代就已产生了,以至于在文明的现代,这样的程序就像4800P计算器本身能进行各种计算的原理一样让人难以看懂,看来开辟新篇章时代已到来! 35 楼:lshy 能编出这样的程序的确不简单,使用方便,计算准确。到目前为止,还未发现比这更好的呢! 36 楼:njy135njy 同意lshy,这个程序也是我用过中的最好的! 37 楼:njy135njy 忘记评分了 38 楼:wyqzm 回 回 评:+5 分 回 回 评:+5 分 你这个人真是不可理喻,我已说了,不想为这个东西争论什么,你是高手高手高高手,行了吧????好像这个世界上就你行一样! 简直无聊之极! 39 楼:yshf 回 是的,我这个人真是不可“理喻”,你不是要“看了半天也没有看明白,请指教”吗?,怎么才指教了几句,就受不啦,不理不论,怎么能辩清可取不可取?这程序对你来说太复杂了,对你不适用,因为“现代程序设计的感点认为,条理清晰,简单易懂的程序才是标准”。你不是“我也就扫了一眼,知道有更好的算法来实现”了,拿出来嘛,见见太阳,别捂着发霉了!哦,忘记了,听你的口气,《测绘通报》你不是经常看吗,这程序的核心算法来源于那里,难道说这也没看出来?天下不是我最行,但天下就不行!我还是要再次提醒你:请看清楚看明白了,再提意见或建议,否则别之乎者也。本人非在取笑你,只是认为太草率了,明白么? 40 楼:yshf 回 更正一下:”天下不是我最行,但天下就不行!”应为:“天下不是我最行,但天下就你不行!”。还有一点:此程序不是本人写的,但它是采取本人程序的核心算法扩展而成的。 41 楼:wyqzm 回 你不是说人家扯大旗么?那你这又是什么?难道不是更大的大旗?看楼上的,还有人尊称你为\老师\那就是敬重你,既是这样,难道不应该做做表率?而你都做了什么?这样的话只会让人看你没有斗量,为了如此小事就大为光火,不要怪别人说你没有素质,如此这样,我真是为你感到惭愧,我都不在乎你如此说了,你竟然还...... 另外,我也看了其他一些贴子,难道你不觉得自己就是在扯大旗?也许那些发贴的朋友水平是不如你,但你犯不着态度如此之差吧?你说你这不是扯大旗是什么?还对其他发贴的朋友如此强硬,小心风大了闪了舌头,就算你水平如此之高,但做人如此不厚道,态度不谦逊,那只也能说明你这个人俗不可耐,还说什么\但天下就你不行\之类,.......不要那么狂妄自大了,借你的话:\井底之蛙、撼面杖吹火\不要自以为了不起!迟早你会让你的无知自负付出代价的,既然我已经在第一贴就说了\高手看了不要见笑了)\难道你还不明白 42 楼:wyqzm 回 真是搞不明白,自己才来这个地方,小心发点小小的意思(还敬请高手不要见笑),居然还惹来如此苦笑不得的事,真不知道得罪了哪路神仙了,如此这般的话,还是敬请管理员删除我的贴子和ID吧,以免影响其他发贴看贴的朋友! 在此,我向其他的发贴看贴的朋友道歉了. 43 楼:wyqzm 更正一下:”小小的意思”应为:“小小的意见”。 44 楼:wuheqi 回 回 我刚刚在研究你的程序,我对你的程序的数学模型没接触过! 计算原理:利用Gauss-Legendre 5点通用公式正算线路中边桩坐标、线外测点至曲线元起点和终点的垂距的符号是否相异(即Dca×Dcb<0=>该测点在其线元内)进行判断并利用该线元要素反算中桩里程、支距,最后计算出放样数据。 我去查了Gauss-Legendre 没查到,我不知道这个是什么含义,具体是什么样的一个原理, 还有Lbl 0:Defm 50:\=> XY\:\=> SZ\:N: N=1=>Goto 1:≠>Goto 2Δ← 这句中,我对1.SZ => XY\:\=> SZ\不理解 45 楼:wuheqi 希望各位朋友能相互学习,我的QQ49619996 回
曲线任意里程中边桩坐标正反算(4850P计算器)程序(第四次修改(3)
2019-04-09 13:47
曲线任意里程中边桩坐标正反算(4850P计算器)程序(第四次修改(3).doc
将本文的Word文档下载到电脑
下载失败或者文档不完整,请联系客服人员解决!