阅读:1718回复:2
请分析生成GeometricNetwork代码
<B>请分析生成GeometricNetwork代码</B><BR>这段创建GeometricNetwork的代码是根据帮助一步一步做的.运行到最后一句加载不起来,请各位分析一下原因<BR>Private Sub BuildGeometricNetwork()<BR>''Dim pDataset As IDataset<BR>Dim pFC As IFeatureClass<BR>Dim pLayer As ILayer<BR>Dim pFeatureLayer As IFeatureLayer<BR>Dim pNetworkCollection As INetworkCollection<BR>Dim pGeoNetwork As IGeometricNetwork<BR>Dim pFDB As IFeatureDataset <BR>
<P>Dim pNetLoader As INetworkLoader2<BR>pNetLoader = New NetworkLoader</P> <P><BR>pLayer = Me.AxMapControl1.Map.Layer(0)<BR>pFeatureLayer = pLayer<BR>pFC = pFeatureLayer.FeatureClass<BR>''Feature Dataset Name<BR>pFDB = pFC.FeatureDataset<BR>pNetLoader.FeatureDatasetName = pFDB.FullName</P> <P>Select Case (pNetLoader.CanUseFeatureClass(pFC.AliasName))<BR>Case esriNetworkLoaderFeatureClassCheck.esriNLFCCValid<BR>pNetLoader.NetworkName = "water"<BR>pNetLoader.NetworkType = esriNetworkType.esriNTUtilityNetwork<BR>''set snap tolerance<BR>Dim dMySnapTol As Double<BR>dMySnapTol = 10<BR>If dMySnapTol < pNetLoader.MinSnapTolerance Then<BR>MsgBox("The proposed snap tolerance ")<BR>Exit Sub<BR>End If<BR>pNetLoader.SnapTolerance = dMySnapTol</P> <P>Dim u As New UID<BR>pNetLoader.AddFeatureClass(pFC.AliasName, esriFeatureType.esriFTSimple, u, True)</P> <P>pNetLoader.AddWeight("Length", esriWeightType.esriWTDouble, 0)<BR>pNetLoader.AddWeightAssociation("Length", pFC.AliasName, pFC.LengthField.AliasName)</P> <P>pNetLoader.LoadNetwork()</P> <P>Case Else<BR>MessageBox.Show("Can not create network!")<BR>End Select</P> <P>End Sub<BR></P> |
|
|
1楼#
发布于:2005-08-02 10:24
<img src="images/post/smile/dvbbs/em03.gif" />,问题已经解决,多谢斑竹!
|
|
|
2楼#
发布于:2005-08-02 00:13
<P>AddFeatureClass需要添加一个line和point层吧 </P>
<P>如果你是pNetLoader.LoadNetwork()不能运行下去,那可能是你idatasename接口并没有设置过去</P> <P>希望能看到你的好消息</P> |
|
|