Different strokes for different folks

Level of Detail representations (or LODs) in Inventor can be very useful for a number of tasks. Most people who have used them are likely to have done so for the purpose of reducing the complexity of an assembly for performance reasons. When using them in this sense, components can be suppressed to prevent them from loading into memory or being visible in the display window. The BOM ignores the suppression however and treats them as active. This is great if that is the behaviour that you’re after, but if you are creating LODs to represent various configurations of an assembly then you may want the BOM to ignore components that have been suppressed. Enter iLogic (and more importantly the Component.IsActive command).

Here are a series of screenshots to show both workflows.

Assembly of 3 components with BOM

Here you see an assembly that consists of 1 x Block A and 2 x Block B, which are shown in the BOM as you’d expect.

Now let’s pretend we’d like to simplify the assembly (for performance reasons) by creating a new level of detail and simply suppressing one of the “B” blocks.

Assembly with B block suppressed for performance
The BOM quantity still shows 2 x Block B even though one has been supressed.
And now we’d like to simplify the assembly in the same way, but for configuration reasons and therefore, we want the BOM to reflect the assembly we see on the screen.
I first created a new LOD and then created an iLogic rule to suppress 1 of the “B” blocks using the following code:

Assembly with B block suppressed to show a configuration

Leave a reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.