<?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 Re: Select Multiple Browser Nodes in Drawing in Inventor Programming - iLogic, Macros, AddIns &amp; Apprentice</title>
    <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/select-multiple-browser-nodes-in-drawing/m-p/8023221#M84680</link>
    <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/684354"&gt;@johnster100&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;As Browser node is entity object, browser node collection can not be added to SelectMultple(EntityColleciton) method. For more details, refer below help documentation on Inventor 2018 API.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://help.autodesk.com/view/INVNTOR/2018/ENU/?guid=GUID-77E546E6-0AA9-4907-B2B4-6946AB500C66" target="_blank"&gt;http://help.autodesk.com/view/INVNTOR/2018/ENU/?guid=GUID-77E546E6-0AA9-4907-B2B4-6946AB500C66&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Below iLogic code does the same behavior by selecting individual browser node.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;Sub Main()
    Dim oDoc As DrawingDocument
    oDoc = ThisApplication.ActiveDocument
    
    Dim oTopBrowserNode As BrowserNode
    oTopBrowserNode = oDoc.BrowserPanes.ActivePane.TopNode
    
    Dim objColl As ObjectCollection
    objColl = ThisApplication.TransientObjects.CreateObjectCollection
    
    Call Get_SelectedNodes(oTopBrowserNode, objColl)
    
    Dim oNode As BrowserNode
    For Each oNode In objColl
		
	oNode.Expanded = True   
        
        oNode.DoPreSelect() 
		
        Dim oControlDef As ControlDefinition
        oControlDef = ThisApplication.CommandManager.ControlDefinitions.Item("DrawingBodyHiddenLinesCtxCmd")

        oControlDef.Execute2(False)
		
	Call ThisApplication.UserInterfaceManager.DoEvents() 

    Next
    
End Sub

Sub Get_SelectedNodes(oTopBrowserNode As BrowserNode, ByRef objColl As ObjectCollection)
    Dim oNode As BrowserNode
    For Each oNode In oTopBrowserNode.BrowserNodes
        If oNode.Selected = True Then
            Call objColl.Add(oNode)
        ElseIf oNode.BrowserNodes.Count &amp;gt; 0 Then
            Call Get_SelectedNodes(oNode, objColl)
        End If
    Next
End Sub&lt;/PRE&gt;
&lt;P&gt;Please feel free to contact if there is any queries.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If solves problem, click on "Accept as solution" / give a "Like".&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks and regards,&lt;/P&gt;</description>
    <pubDate>Thu, 24 May 2018 09:38:42 GMT</pubDate>
    <dc:creator>chandra.shekar.g</dc:creator>
    <dc:date>2018-05-24T09:38:42Z</dc:date>
    <item>
      <title>Select Multiple Browser Nodes in Drawing</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/select-multiple-browser-nodes-in-drawing/m-p/8020926#M84656</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I have code which will find a browser node of a model part in the drawing environment. I then use the following code to turn on hidden lines for the selected node:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;        'Dim oNode As BrowserNode
        oNode.Expanded = True
        oNode.DoPreSelect()
        oNode.DoSelect()

        Dim oControlDef As ControlDefinition
        oControlDef = oCommandMgr.ControlDefinitions.Item("DrawingBodyHiddenLinesCtxCmd")

        oControlDef.Execute2(True)&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This works fine but I have to select one node at time then run the command as '.DoSelect' doesn't appear to allow multiple nodes to be selected.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is really slowing down my drawing update as I have to show hidden lines for about 30 components (across multiple views).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there a way to select multiple nodes at once?&lt;/P&gt;&lt;P&gt;(then I could just run the hidden lines command once)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I tried using SelectSet but could not get this to work &lt;img class="lia-deferred-image lia-image-emoji" src="https://forums.autodesk.com/html/@F462EEC827775DA92CB03B7FC147D389/emoticons/1f61e.png" alt=":disappointed_face:" title=":disappointed_face:" /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any help is greatly appreciated,&lt;/P&gt;&lt;P&gt;thanks,&lt;/P&gt;&lt;P&gt;John&lt;/P&gt;</description>
      <pubDate>Wed, 23 May 2018 13:59:02 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/select-multiple-browser-nodes-in-drawing/m-p/8020926#M84656</guid>
      <dc:creator>johnster100</dc:creator>
      <dc:date>2018-05-23T13:59:02Z</dc:date>
    </item>
    <item>
      <title>Re: Select Multiple Browser Nodes in Drawing</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/select-multiple-browser-nodes-in-drawing/m-p/8022793#M84673</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/684354"&gt;@johnster100&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hoping that below iLogic code would help to select multiple nodes. Before running this code, make sure that selection is made browser node.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;Sub Main()
    Dim oDoc As DrawingDocument
    oDoc = ThisApplication.ActiveDocument
    
    Dim oTopBrowserNode As BrowserNode
    oTopBrowserNode = oDoc.BrowserPanes.ActivePane.TopNode
    
    Dim objColl As ObjectCollection
    objColl = ThisApplication.TransientObjects.CreateObjectCollection
    
    Call Get_SelectedNodes(oTopBrowserNode, objColl)
    
    Dim oNode As BrowserNode
    For Each oNode In objColl
		  
        oNode.Expanded = True
        oNode.DoPreSelect()
        oNode.DoSelect()

        Dim oControlDef As ControlDefinition
        oControlDef = ThisApplication.CommandManager.ControlDefinitions.Item("DrawingBodyHiddenLinesCtxCmd")

        oControlDef.Execute2(True)
    Next
    
End Sub

Sub Get_SelectedNodes(oTopBrowserNode As BrowserNode, ByRef objColl As ObjectCollection)
    Dim oNode As BrowserNode
    For Each oNode In oTopBrowserNode.BrowserNodes
        If oNode.Selected = True Then
            Call objColl.Add(oNode)
        ElseIf oNode.BrowserNodes.Count &amp;gt; 0 Then
            Call Get_SelectedNodes(oNode, objColl)
        End If
    Next
End Sub&lt;/PRE&gt;
&lt;P&gt;Thanks and regards,&lt;/P&gt;</description>
      <pubDate>Thu, 24 May 2018 05:55:36 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/select-multiple-browser-nodes-in-drawing/m-p/8022793#M84673</guid>
      <dc:creator>chandra.shekar.g</dc:creator>
      <dc:date>2018-05-24T05:55:36Z</dc:date>
    </item>
    <item>
      <title>Re: Select Multiple Browser Nodes in Drawing</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/select-multiple-browser-nodes-in-drawing/m-p/8022904#M84675</link>
      <description>&lt;P&gt;Hi Chandra,&lt;/P&gt;&lt;P&gt;thanks for the reply.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Unfortunately this does not help as I'm trying to only run the 'show hidden lines' command once. Using the for loop with the collection does not achieve this.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm try to run the command only once as the view seems to regenerate each time it is run, so it is very slow to run it multiple times.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;thanks again,&lt;/P&gt;&lt;P&gt;John&lt;/P&gt;</description>
      <pubDate>Thu, 24 May 2018 06:52:14 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/select-multiple-browser-nodes-in-drawing/m-p/8022904#M84675</guid>
      <dc:creator>johnster100</dc:creator>
      <dc:date>2018-05-24T06:52:14Z</dc:date>
    </item>
    <item>
      <title>Re: Select Multiple Browser Nodes in Drawing</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/select-multiple-browser-nodes-in-drawing/m-p/8023221#M84680</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/684354"&gt;@johnster100&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;As Browser node is entity object, browser node collection can not be added to SelectMultple(EntityColleciton) method. For more details, refer below help documentation on Inventor 2018 API.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://help.autodesk.com/view/INVNTOR/2018/ENU/?guid=GUID-77E546E6-0AA9-4907-B2B4-6946AB500C66" target="_blank"&gt;http://help.autodesk.com/view/INVNTOR/2018/ENU/?guid=GUID-77E546E6-0AA9-4907-B2B4-6946AB500C66&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Below iLogic code does the same behavior by selecting individual browser node.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;Sub Main()
    Dim oDoc As DrawingDocument
    oDoc = ThisApplication.ActiveDocument
    
    Dim oTopBrowserNode As BrowserNode
    oTopBrowserNode = oDoc.BrowserPanes.ActivePane.TopNode
    
    Dim objColl As ObjectCollection
    objColl = ThisApplication.TransientObjects.CreateObjectCollection
    
    Call Get_SelectedNodes(oTopBrowserNode, objColl)
    
    Dim oNode As BrowserNode
    For Each oNode In objColl
		
	oNode.Expanded = True   
        
        oNode.DoPreSelect() 
		
        Dim oControlDef As ControlDefinition
        oControlDef = ThisApplication.CommandManager.ControlDefinitions.Item("DrawingBodyHiddenLinesCtxCmd")

        oControlDef.Execute2(False)
		
	Call ThisApplication.UserInterfaceManager.DoEvents() 

    Next
    
End Sub

Sub Get_SelectedNodes(oTopBrowserNode As BrowserNode, ByRef objColl As ObjectCollection)
    Dim oNode As BrowserNode
    For Each oNode In oTopBrowserNode.BrowserNodes
        If oNode.Selected = True Then
            Call objColl.Add(oNode)
        ElseIf oNode.BrowserNodes.Count &amp;gt; 0 Then
            Call Get_SelectedNodes(oNode, objColl)
        End If
    Next
End Sub&lt;/PRE&gt;
&lt;P&gt;Please feel free to contact if there is any queries.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If solves problem, click on "Accept as solution" / give a "Like".&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks and regards,&lt;/P&gt;</description>
      <pubDate>Thu, 24 May 2018 09:38:42 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/select-multiple-browser-nodes-in-drawing/m-p/8023221#M84680</guid>
      <dc:creator>chandra.shekar.g</dc:creator>
      <dc:date>2018-05-24T09:38:42Z</dc:date>
    </item>
  </channel>
</rss>

