Community
Inventor Forum
Welcome to Autodesk’s Inventor Forums. Share your knowledge, ask questions, and explore popular Inventor topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Using iLogic to change a subassembly component

0 REPLIES 0
Reply
Message 1 of 1
Anonymous
668 Views, 0 Replies

Using iLogic to change a subassembly component

Hi all

 

I'm trying to use iLogic to change the component within a subassembly.

 

The assembly I am trying to produce is made up of many other subassemblies, the suppression status of most of these subassemblies depend on the handing of the main assembly and I have used "component.isactive" quite successfully in getting the results I want.

 

Where I am running into difficulty is when I have multiple configurations of the same sub-iassembly, I have the subassembly set up as an iAssembly and have been able to use table replace in the main assembly author to change the sub-iassembly as needed. This would be fine if I only had one or two subassemblies but as I add further subassemblies to my main assembly the main ilogic assembly author is starting to get messy.

 

I would like to use the iAssembly Author to drive the iLogic, this has worked for suppressing and unsupressing a large number of parts by changing one custom variable.

 

     Member                        Part Number                   Handing   H      R      S    W

1: iLogic Assembly Test-01 / iLogic Assembly Test-02 / Left       /Yes / No / Yes / No
2: iLogic Assembly Test-02 / iLogic Assembly Test-03 / Right    / No / No /  No / Yes

 

 

If iProperties.Value("Custom", "H")=Yes Then Component.IsActive("Ass1Left:1") = True
If iProperties.Value("Custom", "H")=No Then Component.IsActive("Ass1Left:1") = False
If iProperties.Value("Custom", "H")=Yes Then Component.IsActive("Ass2Right:1") = True
If iProperties.Value("Custom", "H")=No Then Component.IsActive("Ass2Right:1") = False

 

 

The subassembly i'm having problems with is has it's own iAssembly Author made up of 5 rows and 13 columns, it has many parts whose sizes and positions depend on the size of the overall assembly, I really want to keep this as an intact sub-assembly. I have been trying to use the changerow command to select the member name but have had limited success so far.

 

What I would like to know is the correct procedure for reproducing what I need.

 

 

If iProperties.Value("Custom", "R")=No Then 
iAssembly.ChangeRow("Component-0:1",1) 

ElseIf iProperties.Value("Custom", "R")=Yes Then
iAssembly.ChangeRow("Component-R:1",2)

End If

 

I would also like to vary the status of one configuration depending on which variable has been chosen. eg: If H = Yes then R must always = No as both configurations can't both be active at the same time, I will get to this problem later, firstly would like to be able to select the right row within the subassembly.

 

Sorry if this all seems a bit confusing and If I have some of the terminology wrong it is because I have recently moved to inventor from solidworks.

 

Thanks in advance!

0 REPLIES 0

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report