<?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: Placing iParts into an assembly with iLogic in Inventor Programming Forum</title>
    <link>https://forums.autodesk.com/t5/inventor-programming-forum/placing-iparts-into-an-assembly-with-ilogic/m-p/13754572#M176448</link>
    <description>&lt;P&gt;For anyone with a similar problem I figured out a solution, may not be the most efficient or user friendly, but it works for me:&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;'import parts folder as string EDIT ME!
Dim partsFolder As String = "R:\Industrial Engineering\A-ME\CAD\Dolly plaques v2"

'define number of plaques EDIT ME! (could be improved by reading this value from the selected part?)
Dim numOfPlaques As Integer = 500

'define size of plaque and spacing of laser EDIT ME!
Dim plaqueLength As Integer = 280
Dim plaqueWidth As Integer = 40
Dim laserClearance As Integer = 5

'define size of sheet for nesting EDIT ME!
Dim sheetLength As Integer = 2440
Dim sheetWidth As Integer = 1220


'define x y location variables
Dim xLocation As Integer = 0
Dim yLocation As Integer = 0
Dim sheetNum As Integer = 0

'main loop for number of plaques
Dim i As Integer = 0
While i &amp;lt; numOfPlaques
	i += 1
	
	'debugging window text
	'Dim txt As String = String.Format("X= {0}   Y= {1}",xLocation,yLocation)
	'MessageBox.Show(txt, "Part placed:")
	
	'set name and pos for adding component
	Dim name As String = String.Format("Plaque-{0}",i)
	Dim pos = ThisDoc.Geometry.Point(xLocation,0,yLocation)

	'add Component dolley plaques v2.ipt
	Dim componentPlaque = Components.AddiPart(name, partsFolder &amp;amp; "\Dolley plaques v2.ipt", row := i, position :=pos, grounded := True, visible := True, appearance := Nothing)
	
	'increment collumn
	xLocation += plaqueLength + laserClearance
	
	'increment row once collumns full
	If xLocation &amp;gt;= sheetLength - plaqueLength + ((sheetLength + plaqueLength) * sheetNum)
		'increment row
		yLocation += plaqueWidth + laserClearance
		'go back to bottom left corner of current sheet
		xLocation = 0 + ((sheetLength + plaqueLength) * sheetNum)
	End If
	
	If yLocation &amp;gt;= sheetWidth - plaqueWidth
		'this loop getting entered every collumn after first sheet
		'increment sheet number
		sheetNum += 1
		'go to bottom left corner of next sheet
		xLocation = 0 + ((sheetLength + plaqueLength) * sheetNum)
		yLocation = 0
	End If
	
End While
&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
    <pubDate>Tue, 05 Aug 2025 13:42:38 GMT</pubDate>
    <dc:creator>medwardsNKCFQ</dc:creator>
    <dc:date>2025-08-05T13:42:38Z</dc:date>
    <item>
      <title>Placing iParts into an assembly with iLogic</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-forum/placing-iparts-into-an-assembly-with-ilogic/m-p/13752858#M176430</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm trying to automate nesting several hundred rectangular sheet metal plaques with sequential ID numbers.&lt;BR /&gt;The parts are fairly simple just a rectangle, rounded corners, 2 mounting holes, and text such as "AA PRODU 999".&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I've successfully setup an iPart with all the required text variations being read from a spreadsheet.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What I want to do now is iteratively nest each variant of the iPart into an assembly in a grid layout.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;I need help with using iLogic to place a specific variant of an iPart into an assembly at some specified location.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm new to iLogic, but have done some coding in Python, C# and Arduino/C in the past, so any help is appreciated.&lt;/P&gt;</description>
      <pubDate>Mon, 04 Aug 2025 14:48:21 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-forum/placing-iparts-into-an-assembly-with-ilogic/m-p/13752858#M176430</guid>
      <dc:creator>medwardsNKCFQ</dc:creator>
      <dc:date>2025-08-04T14:48:21Z</dc:date>
    </item>
    <item>
      <title>Re: Placing iParts into an assembly with iLogic</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-forum/placing-iparts-into-an-assembly-with-ilogic/m-p/13754572#M176448</link>
      <description>&lt;P&gt;For anyone with a similar problem I figured out a solution, may not be the most efficient or user friendly, but it works for me:&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;'import parts folder as string EDIT ME!
Dim partsFolder As String = "R:\Industrial Engineering\A-ME\CAD\Dolly plaques v2"

'define number of plaques EDIT ME! (could be improved by reading this value from the selected part?)
Dim numOfPlaques As Integer = 500

'define size of plaque and spacing of laser EDIT ME!
Dim plaqueLength As Integer = 280
Dim plaqueWidth As Integer = 40
Dim laserClearance As Integer = 5

'define size of sheet for nesting EDIT ME!
Dim sheetLength As Integer = 2440
Dim sheetWidth As Integer = 1220


'define x y location variables
Dim xLocation As Integer = 0
Dim yLocation As Integer = 0
Dim sheetNum As Integer = 0

'main loop for number of plaques
Dim i As Integer = 0
While i &amp;lt; numOfPlaques
	i += 1
	
	'debugging window text
	'Dim txt As String = String.Format("X= {0}   Y= {1}",xLocation,yLocation)
	'MessageBox.Show(txt, "Part placed:")
	
	'set name and pos for adding component
	Dim name As String = String.Format("Plaque-{0}",i)
	Dim pos = ThisDoc.Geometry.Point(xLocation,0,yLocation)

	'add Component dolley plaques v2.ipt
	Dim componentPlaque = Components.AddiPart(name, partsFolder &amp;amp; "\Dolley plaques v2.ipt", row := i, position :=pos, grounded := True, visible := True, appearance := Nothing)
	
	'increment collumn
	xLocation += plaqueLength + laserClearance
	
	'increment row once collumns full
	If xLocation &amp;gt;= sheetLength - plaqueLength + ((sheetLength + plaqueLength) * sheetNum)
		'increment row
		yLocation += plaqueWidth + laserClearance
		'go back to bottom left corner of current sheet
		xLocation = 0 + ((sheetLength + plaqueLength) * sheetNum)
	End If
	
	If yLocation &amp;gt;= sheetWidth - plaqueWidth
		'this loop getting entered every collumn after first sheet
		'increment sheet number
		sheetNum += 1
		'go to bottom left corner of next sheet
		xLocation = 0 + ((sheetLength + plaqueLength) * sheetNum)
		yLocation = 0
	End If
	
End While
&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 05 Aug 2025 13:42:38 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-forum/placing-iparts-into-an-assembly-with-ilogic/m-p/13754572#M176448</guid>
      <dc:creator>medwardsNKCFQ</dc:creator>
      <dc:date>2025-08-05T13:42:38Z</dc:date>
    </item>
  </channel>
</rss>

