首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

ArcEngine中IFeature与IPoint的关系,该怎么解决

2012-04-12 
ArcEngine中IFeature与IPoint的关系问题描述:在用C#写engine程序的过程中,想通过查询point类型的shp的属性

ArcEngine中IFeature与IPoint的关系
问题描述:在用C#写engine程序的过程中,想通过查询point类型的shp的属性表查找公共汽车站点,比如查到一个站点的feature,请问如何将这个feature变成一个point类型,从而可以运用最短路径算法,找到两个车站的最短距离(一个车站已定)?

[解决办法]
IFeature 是一个原色,Ipoint是图形

IFeature包含图形的一些其他属性

如果IFeature的图形是点的话,那么可以用
IPoint pt=PFeature.Shape;
[解决办法]

C# code
using System;using System.Collections;using System.Text;namespace Greedy{       class Marx    {        private int[] distance;                private int row;        private ArrayList ways = new ArrayList();        public Marx(int n,params int[] d)        {            this.row = n;            distance = new int[row * row];            for (int i = 0; i < row * row; i++)            {                this.distance[i] = d[i];                          }            for (int i = 0; i < this.row; i++)  //有row个点,则从中心到各点的路有row-1条            {                ArrayList w = new ArrayList();                int j = 0;                w.Add(j);                ways.Add(w);            }        }        //------------------------------        public void Find_way()        {            ArrayList S = new ArrayList(1);            ArrayList Sr = new ArrayList(1);            int []Indexof_distance=new int[this.row];                        for(int i=0; i < row; i++)            {                 Indexof_distance[i]=i;            }            S.Add( Indexof_distance[0] );                    for (int i = 0; i < this.row; i++)            {                Sr.Add( Indexof_distance[i] );            }            Sr.RemoveAt(0);            int[] D = new int[this.row];    //存放中心点到每个点的距离                    //---------------以上已经初始化了,S和Sr(里边放的都是点的编号)------------------            intEnd Fu 

热点排行