没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
C#+AE网络分析问题?
namespace NetworkAnalysis
{
public partial class Form1 : Form
{
//定义几何网络
public IGeometricNetwork m_ipGeometricNetwork;
public IPointCollection m_ipPoints;
public IPointToEID m_ipPointToEID;
public IEnumNetEID m_ipEnumNetEID_Junctions;
public IEnumNetEID m_ipEnumNetEID_Edges;
IPolyline m_ipPolyline;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
string str;
//此处修改存储几何网络的Personal Geodatabase的名称和路径
str = @"D:\二次开发实习\例子数据\网络数据\USA_Highway_Network Geodatabase.mdb";
IWorkspaceFactory m_pWSF;
IEnumDataset m_pEnumData;
IDataset m_pDS;
IEnumFeatureClass pEnumFC;
m_pWSF=new AccessWorkspaceFactoryClass();
IFeatureWorkspace m_pFWS;
m_pFWS = m_pWSF.OpenFromFile(str, 0) as IFeatureWorkspace;
IFeatureDataset m_pFDS;
namespace NetworkAnalysis
{
public partial class Form1 : Form
{
//定义几何网络
public IGeometricNetwork m_ipGeometricNetwork;
public IPointCollection m_ipPoints;
public IPointToEID m_ipPointToEID;
public IEnumNetEID m_ipEnumNetEID_Junctions;
public IEnumNetEID m_ipEnumNetEID_Edges;
IPolyline m_ipPolyline;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
string str;
//此处修改存储几何网络的Personal Geodatabase的名称和路径
str = @"D:\二次开发实习\例子数据\网络数据\USA_Highway_Network Geodatabase.mdb";
IWorkspaceFactory m_pWSF;
IEnumDataset m_pEnumData;
IDataset m_pDS;
IEnumFeatureClass pEnumFC;
m_pWSF=new AccessWorkspaceFactoryClass();
IFeatureWorkspace m_pFWS;
m_pFWS = m_pWSF.OpenFromFile(str, 0) as IFeatureWorkspace;
IFeatureDataset m_pFDS;
//此处修改存储几何网络的FeatureDataset的名称
m_pFDS = m_pFWS.OpenFeatureDataset("high");
m_pEnumData = m_pFDS.Subsets;
m_pEnumData.Reset();
m_pDS = m_pEnumData.Next();
//此处修改几何网络的名称
while (m_pDS.Name != "high_Net")
{
m_pDS = m_pEnumData.Next();
}
m_ipGeometricNetwork = m_pDS as IGeometricNetwork;
pEnumFC = GetEnumNetFC(esriFeatureType.esriFTSimpleEdge);
AddMapLayers(pEnumFC);
pEnumFC=GetEnumNetFC(esriFeatureType.esriFTComplexEdge);
AddMapLayers(pEnumFC);
pEnumFC = GetEnumNetFC(esriFeatureType.esriFTSimpleJunction);
AddMapLayers(pEnumFC);
pEnumFC = null;
}
public IEnumFeatureClass GetEnumNetFC(esriFeatureType ftype)//定义GetEnumNetFC函数
{
IEnumFeatureClass pEnumFC;
try
{
//GetEnumNetFC = null;
if (m_ipGeometricNetwork == null)
{ return null; }
pEnumFC = null;
pEnumFC = m_ipGeometricNetwork.get_ClassesByType(ftype);
if (pEnumFC == null)
m_pFDS = m_pFWS.OpenFeatureDataset("high");
m_pEnumData = m_pFDS.Subsets;
m_pEnumData.Reset();
m_pDS = m_pEnumData.Next();
//此处修改几何网络的名称
while (m_pDS.Name != "high_Net")
{
m_pDS = m_pEnumData.Next();
}
m_ipGeometricNetwork = m_pDS as IGeometricNetwork;
pEnumFC = GetEnumNetFC(esriFeatureType.esriFTSimpleEdge);
AddMapLayers(pEnumFC);
pEnumFC=GetEnumNetFC(esriFeatureType.esriFTComplexEdge);
AddMapLayers(pEnumFC);
pEnumFC = GetEnumNetFC(esriFeatureType.esriFTSimpleJunction);
AddMapLayers(pEnumFC);
pEnumFC = null;
}
public IEnumFeatureClass GetEnumNetFC(esriFeatureType ftype)//定义GetEnumNetFC函数
{
IEnumFeatureClass pEnumFC;
try
{
//GetEnumNetFC = null;
if (m_ipGeometricNetwork == null)
{ return null; }
pEnumFC = null;
pEnumFC = m_ipGeometricNetwork.get_ClassesByType(ftype);
if (pEnumFC == null)
剩余10页未读,继续阅读
资源评论
- zjr4489481932014-06-18好乱 要是源代码就更好了
- 撒哈拉死海2011-11-05如果有基于NetworkDateset的就更好了
boyu715411044
- 粉丝: 9
- 资源: 16
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功