拓扑生成实习报告讲述.docxVIP

  • 18
  • 0
  • 约 13页
  • 2017-04-08 发布于湖北
  • 举报
拓扑生成实习报告讲述

多边形拓扑生成程序实现实习报告班级: 1401 学号: 2014301610207 姓名: XXX 建立多边形拓扑关系如果使用DIME或者类似的编码模型,多边形拓扑关系的表达需要描述以下实体之间的关系:·多边形的组成弧段;·弧段左右两侧的多边形,弧段两端的节点;·节点相连的弧段。为了确定上述关系,需要建立:·弧段表(弧段--左右多边形,两端节点);·节点表(节点--相邻的弧段)。然后得出:·多边形表(多边形--组成弧段);多边形拓扑建立过程注:·弧段有方向,弧段A的起始节点称为首节点NS(A),而终止节点为尾节点NE(A);·沿弧段前进方向,将其相邻的多边形分别定义为左多边形和右多边形PL(A)和PR(A); ·N0搜寻的起始节点,NC当前节点。程序实现程序代码:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.IO;using System.Data.OleDb;using System.Collections;namespace GIS_TopologyOfPolygon{//节点弧段表的结构structNodeArcTable {publicint Arc;publicstring LeftPolygon;publicstring RightPolygon; }publicpartialclassForm1 : Form {public Form1() { InitializeComponent(); }//导入数据,数据文件在debug文件夹中privatevoid ImportDataToolStripMenuItem_Click(object sender, EventArgs e) { dataGridView1.RowCount = 4;string mypath1 = 节点弧段.txt;StreamReader sr = File.OpenText(mypath1);string str = sr.ReadLine();Int16 n = 0;while (str != null) { str = str.Trim();string[] strArray = newstring[2]; strArray = str.Split(\t);for (int i = 0; i 2; i++) dataGridView1[i, n].Value = strArray[i]; str = sr.ReadLine(); n++; } sr = File.OpenText(弧段-起点终点.txt); n = 0; dataGridView2.RowCount = 6; str = sr.ReadLine(); str = sr.ReadLine();while (str != null) { str = str.Trim();string[] strArray = newstring[3]; strArray = str.Split(\t);for (int i = 0; i 3; i++) dataGridView2[i, n].Value = strArray[i]; str = sr.ReadLine(); n++; } sr.Close(); }//根据当前节点和弧段搜索当前节点当前弧段的下一弧段privateint searchnextarc(string CurrentNode,int arc) {int result;int tempi=0, tempj=0;for (int i = 0; i dataGridView

文档评论(0)

1亿VIP精品文档

相关文档