空间数据分析算法

空间数据分析算法

ID:20352671

大小:66.00 KB

页数:6页

时间:2018-10-09

空间数据分析算法_第1页
空间数据分析算法_第2页
空间数据分析算法_第3页
空间数据分析算法_第4页
空间数据分析算法_第5页
资源描述:

《空间数据分析算法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验七空间数据分析算法实验目的:1.理解空间数据分析算法原理2.掌握缓冲区分析算法和最短路径算法3.实现线的缓冲区边界生成算法实验环境:pc电脑一台,.NET2005开发环境实验内容:线的缓冲区边界生成,其算法原理是对拐角出作角的角平分线,然后对每段线以缓冲距作平行线,具体处理过程如下:1)首尾点额外处理:推求过该点的并且垂直于相连直线段的垂线,求出到该点相距为缓冲距大小的两点2)中间点重复处理:推求前一线段的平行线;推求相邻两线夹角的平分线;求两线的交点3)构建整个缓冲区多边形边界:将所求的所有点按一个方向串联起来

2、,构建一个多边形实验过程:线的缓冲区边界生成1)在编辑菜单栏下添加一个子菜单项为缓冲区,添加单击事件(参考代码如下)Graphicsgra=panel1.CreateGraphics();BufferFormbform=newBufferForm();bform.ShowDialog();doubledistance=bform.value;Listring=newList();foreach(Geometry_Tgeoinchoosegeos.Geofeatures){if(ge

3、o.GetType()==typeof(Path_T)){Path_Tpa=(Path_T)geo;ring=BufferofPath(path,distance);}}intn=ring.Count-1;for(inti=0;i

4、ed,newPoint((int)ring[n].X,(int)ring[n].Y),newPoint((int)ring[0].X,(int)ring[0].Y));2)添加一个新的窗体,其目的是为了输入缓冲距,窗体设计如下:设计可仿照前面几个实验的窗体设计3)添加一个矢量线的数据结构,为了处理上下两条平行线,左右两个点(参考代码如下)publicclassVectorLine{doubleparaA;publicdoubleParaA{get{returnparaA;}set{paraA=value;}}doub

5、leparaB;publicdoubleParaB{get{returnparaB;}set{paraB=value;}}doubleparaC;publicdoubleParaC{get{returnparaC;}set{paraC=value;}}publicVectorLine(){}publicVectorLine(Point_Tfp,Point_Ttp){paraA=fp.Y-tp.Y;paraB=tp.X-fp.X;paraC=fp.X*tp.Y-fp.Y*tp.X;}publicVectorLine(d

6、oublepa,doublepb,doublepc){paraA=pa;paraB=pb;paraC=pc;}}4)实现线的缓冲区算法(参考代码如下)publicListBufferofPath(Path_Tpa,doubledistance){Listring=newList();Listlpath=newList();Listrpath=newList();Point_Tlfpt=newP

7、oint_T();Point_Trfpt=newPoint_T();TwoParallelPoint(pa.Path[0],pa.Fpoint,distance,lfpt,rfpt);lpath.Add(lfpt);rpath.Add(rfpt);intn=pa.Path.Count-1;for(inti=0;i

8、th[i+1].Frompt,pa.Path[i+1].Topt);VectorLinecvl=AngleBisector(fvl,svl);VectorLinelvl=newVectorLine();VectorLinervl=newVectorLine();;TwoParallelLine(fvl,distance,lvl,rvl);Poi

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。