导航:首页 > 网络设置 > 网络数据集如何设置转弯

网络数据集如何设置转弯

发布时间:2022-12-09 17:55:27

⑴ 如何创建网络数据集

//<summary>
///创建自定义网络数据集
///</summary>
///<paramname="_pWsName"></param>
///<paramname="_pDatasetName"></param>
///<paramname="_pNetName"></param>
///<paramname="_pFtName"></param>

voidCreateNetworkDataset(string_pWsName,string_pDatasetName,string_pNetName,string_pFtName)
{
=newDENetworkDatasetClass();
pDENetworkDataset.Buildable=true;
IWorkspacepWs=GetWorkspace(_pWsName);
IFeatureWorkspacepFtWs=pWsasIFeatureWorkspace;
IFeatureDatasetpFtDataset=pFtWs.OpenFeatureDataset(_pDatasetName);

//定义空间参考,负责会出错
IDEGeoDatasetpDEGeoDataset=(IDEGeoDataset)pDENetworkDataset;

IGeoDatasetpGeoDataset=pFtDatasetasIGeoDataset;
pDEGeoDataset.Extent=pGeoDataset.Extent;
pDEGeoDataset.SpatialReference=pGeoDataset.SpatialReference;

//网络数据集的名称
IDataElementpDataElement=(IDataElement)pDENetworkDataset;
pDataElement.Name=_pNetName;

//参加建立网络数据集的要素类
=newEdgeFeatureSourceClass();
pEdgeNetworkSource.Name=_pFtName;
pEdgeNetworkSource.ElementType=esriNetworkElementType.esriNETEdge;

//要素类的连通性
=(IEdgeFeatureSource)pEdgeNetworkSource;
pEdgeFeatureSource.UsesSubtypes=false;
pEdgeFeatureSource.ClassConnectivityGroup=1;

pEdgeFeatureSource.ClassConnectivityPolicy=.esriNECPEndVertex;

//不用转弯数据
pDENetworkDataset.SupportsTurns=false;
IArraypSourceArray=newArrayClass();
pSourceArray.Add(pEdgeNetworkSource);
pDENetworkDataset.Sources=pSourceArray;

//网络数据集的属性设置

IArraypAttributeArray=newArrayClass();

//:
;
INetworkAttribute2pNetAttr2;
;
;

pEvalNetAttr=();
pNetAttr2=(INetworkAttribute2)pEvalNetAttr;
pNetAttr2.Name="Meters";
pNetAttr2.UsageType=esriNetworkAttributeUsageType.esriNAUTCost;
pNetAttr2.DataType=esriNetworkAttributeDataType.esriNADTDouble;
pNetAttr2.Units=esriNetworkAttributeUnits.esriNAUMeters;
pNetAttr2.UseByDefault=false;

pNetFieldEval=newNetworkFieldEvaluatorClass();
pNetFieldEval.Setexpression_r("[METERS]","");
//方向设置
pEvalNetAttr.set_Evaluator(pEdgeNetworkSource,esriNetworkEdgeDirection.esriNEDAlongDigitized,(INetworkEvaluator)pNetFieldEval);
pEvalNetAttr.set_Evaluator(pEdgeNetworkSource,esriNetworkEdgeDirection.esriNEDAgainstDigitized,(INetworkEvaluator)pNetFieldEval);

pNetConstEval=();
pNetConstEval.ConstantValue=0;
pEvalNetAttr.set_DefaultEvaluator(esriNetworkElementType.esriNETEdge,(INetworkEvaluator)pNetConstEval);
pEvalNetAttr.set_DefaultEvaluator(esriNetworkElementType.esriNETJunction,(INetworkEvaluator)pNetConstEval);
pEvalNetAttr.set_DefaultEvaluator(esriNetworkElementType.esriNETTurn,(INetworkEvaluator)pNetConstEval);

//一个网络数据集可以有多个属性,我只添加了一个
pAttributeArray.Add(pEvalNetAttr);
pDENetworkDataset.Attributes=pAttributeArray;

//创建网络数据集,注意在创建几何网络的时候会锁定相应的要素类,因此不要用ArcMap或者catalog等打开参相应的数据
=Create(pFtDataset,pDENetworkDataset);

//建立网络
INetworkBuildpNetworkBuild=(INetworkBuild)pNetworkDataset;
pNetworkBuild.BuildNetwork(pGeoDataset.Extent);
}

阅读全文

与网络数据集如何设置转弯相关的资料

热点内容
网络共享中心没有网卡 浏览:517
电脑无法检测到网络代理 浏览:1369
笔记本电脑一天会用多少流量 浏览:561
苹果电脑整机转移新机 浏览:1372
突然无法连接工作网络 浏览:1044
联通网络怎么设置才好 浏览:1219
小区网络电脑怎么连接路由器 浏览:1019
p1108打印机网络共享 浏览:1206
怎么调节台式电脑护眼 浏览:681
深圳天虹苹果电脑 浏览:920
网络总是异常断开 浏览:608
中级配置台式电脑 浏览:977
中国网络安全的战士 浏览:627
同志网站在哪里 浏览:1409
版观看完整完结免费手机在线 浏览:1453
怎样切换默认数据网络设置 浏览:1103
肯德基无线网无法访问网络 浏览:1279
光纤猫怎么连接不上网络 浏览:1460
神武3手游网络连接 浏览:959
局网打印机网络共享 浏览:994