Inventor General Discussion

Inventor General Discussion

Posts: 3
Registered: ‎01-22-2013
Message 1 of 3 (263 Views)
Accepted Solution

i Logic- Assembly Pattern

263 Views, 2 Replies
01-28-2013 10:01 AM

I am currently working on a parametric assembly using i Logic to control the size of the components as well as patterns. However, I have hit a road block in trying to figure out how to write a rule for resizing the last roof sheet in this assembly pictured below to be even with the frame. The rule below is what controls the roof sheet pattern based on the frame length. The problem I am continually running into is how do you modify a part which is in an element within the pattern without having it affect the rest of the parts in the pattern since they all refer to part. I will appreciate any help I can get since it is hard to find information on i Logic.


Thank You,


Ben K



Roof_Pattern_Spacing = Roof_Sheet_Width
Roof_Pattern_Count=Ceil(Parameter("Length")/Parameter("Sheet Metal Roof Section:1", "Roof_Sheet_Width"))


(Note: The red line symbolizes where I would like to have the roof sheet end.)


Frame with Roof 2.JPG

*Expert Elite*
Posts: 2,898
Registered: ‎03-08-2006
Message 2 of 3 (239 Views)

Re: i Logic- Assembly Pattern

01-28-2013 01:07 PM in reply to: kirchnerb


Hi kirchnerb,


I started working on something like this a couple of years ago. Attached is the example I had on hand, but I don't really recall what all is going on in the rules. But I thought you might get a hint from this.



I just had another look at this and cleaned the attached example files up a bit so it is more straight forward. The code is pretty basic so it should be easy to figure out.


Here's a quick video of this example in action:


I hope this helps.
Best of luck to you in all of your Inventor pursuits,


  solution.png  Did you find this reply helpful ? If so please use the Accept as Solution or  Kudos button below.

Posts: 3
Registered: ‎01-22-2013
Message 3 of 3 (217 Views)

Re: i Logic- Assembly Pattern

01-28-2013 02:24 PM in reply to: Curtis_Waguespack

Thanks Curtis,


The solution was a little simpler than I first thought. All I needed to do is to add another roof sheet with a different part number, then add parameters and write a rule, shown below, to fill in the gap. Thank you for your help.


Ben K


Fill_Length = Length - (Roof_Pattern_Count * Roof_Sheet_Width)

If Fill_Length <= 0 Then
Component.IsActive("Sheet Metal Roof Section config:1") = False

Component.IsActive("Sheet Metal Roof Section config:1") = True
Parameter("Sheet Metal Roof Section config:1", "Roof_Sheet_Width_Fill") = Fill_Length

End If
iLogicVb.UpdateWhenDone = True


Complete Roof.jpg

Are you familiar with the Autodesk Expert Elites? The Expert Elite program is made up of customers that help other customers by sharing knowledge and exemplifying an engaging style of collaboration. To learn more, please visit our Expert Elite website.
Need installation help?

Start with some of our most frequented solutions or visit the Installation and Licensing Forum to get help installing your software.