<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Pass Weights to CreateForwardStar Method - VBA in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/pass-weights-to-createforwardstar-method-vba/m-p/632589#M17052</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;First of all I would like to mention that a I am an amateur ArcObjects user, that's why my code does not seem professional.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm trying to perform a network Analysis to a given network without the Network Analyst (I am not an owner of a license).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;After having created inside my personal geodatabase the geometric network (through the ArcCatalog Wizard) of a given polyline network and assigned weights to the links, &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I am trying to "traverse" it by using the ForwardStar method. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here's the code.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Private Sub GetNodes()&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pMxDoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pMxDoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pAWFactory As IWorkspaceFactory&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pAWFactory = New AccessWorkspaceFactory&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pFeatWorkspace As IFeatureWorkspace&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pFeatWorkspace = pAWFactory.OpenFromFile("FilePath", 0) 'I Give the FilePath manually&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pFeatDataSet As IFeatureDataset&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pFeatDataSet = pFeatWorkspace.OpenFeatureDataset("FeatDataset")&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pNetCollection As INetworkCollection&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pNetCollection = pFeatDataSet&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pGeomNet As IGeometricNetwork&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pGeomNet = pNetCollection.GeometricNetworkByName("FeatDataset_Net")&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pNet As INetwork&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pNet = pGeomNet.Network&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pEdgeWeight As INetWeight&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pEdgeWeight = pNetSchema.WeightByName("LENGTH") 'The field from where the weights should be extracted&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pForStar As IForwardStar&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pForStar = pGeomNet.Network.CreateForwardStar(False, pEdgeWeight, pEdgeWeight, pEdgeWeight, Nothing)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim lCnt As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim AdjW As Double&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim AdjEdgeEID As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim li As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;li = 2 'Just a number for test&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;pForStar.FindAdjacent 0, li, lCnt&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pForStar.QueryAdjacentEdge 0, AdjEdgeEID, False, AdjW&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;MsgBox "Edge = " &amp;amp; AdjEdgeEID &amp;amp; " " &amp;amp; "Weight = " &amp;amp; AdjW&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;End Sub&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Although the AdjEdgeEID returns a logical number the AdjW keeps returning 0&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Could anyone provide me with some help?&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you in advance!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 14 May 2012 21:45:14 GMT</pubDate>
    <dc:creator>HarisBallis</dc:creator>
    <dc:date>2012-05-14T21:45:14Z</dc:date>
    <item>
      <title>Pass Weights to CreateForwardStar Method - VBA</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/pass-weights-to-createforwardstar-method-vba/m-p/632589#M17052</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;First of all I would like to mention that a I am an amateur ArcObjects user, that's why my code does not seem professional.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm trying to perform a network Analysis to a given network without the Network Analyst (I am not an owner of a license).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;After having created inside my personal geodatabase the geometric network (through the ArcCatalog Wizard) of a given polyline network and assigned weights to the links, &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I am trying to "traverse" it by using the ForwardStar method. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here's the code.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Private Sub GetNodes()&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pMxDoc As IMxDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pMxDoc = ThisDocument&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pAWFactory As IWorkspaceFactory&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pAWFactory = New AccessWorkspaceFactory&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pFeatWorkspace As IFeatureWorkspace&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pFeatWorkspace = pAWFactory.OpenFromFile("FilePath", 0) 'I Give the FilePath manually&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pFeatDataSet As IFeatureDataset&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pFeatDataSet = pFeatWorkspace.OpenFeatureDataset("FeatDataset")&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pNetCollection As INetworkCollection&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pNetCollection = pFeatDataSet&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pGeomNet As IGeometricNetwork&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pGeomNet = pNetCollection.GeometricNetworkByName("FeatDataset_Net")&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pNet As INetwork&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pNet = pGeomNet.Network&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pEdgeWeight As INetWeight&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pEdgeWeight = pNetSchema.WeightByName("LENGTH") 'The field from where the weights should be extracted&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim pForStar As IForwardStar&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Set pForStar = pGeomNet.Network.CreateForwardStar(False, pEdgeWeight, pEdgeWeight, pEdgeWeight, Nothing)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim lCnt As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim AdjW As Double&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim AdjEdgeEID As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Dim li As Long&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;li = 2 'Just a number for test&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;pForStar.FindAdjacent 0, li, lCnt&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pForStar.QueryAdjacentEdge 0, AdjEdgeEID, False, AdjW&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;MsgBox "Edge = " &amp;amp; AdjEdgeEID &amp;amp; " " &amp;amp; "Weight = " &amp;amp; AdjW&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;End Sub&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Although the AdjEdgeEID returns a logical number the AdjW keeps returning 0&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Could anyone provide me with some help?&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you in advance!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 14 May 2012 21:45:14 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/pass-weights-to-createforwardstar-method-vba/m-p/632589#M17052</guid>
      <dc:creator>HarisBallis</dc:creator>
      <dc:date>2012-05-14T21:45:14Z</dc:date>
    </item>
  </channel>
</rss>

