Ilogic - Assemblies

Ilogic - Assemblies

Anonymous
Not applicable
812 Views
9 Replies
Message 1 of 10

Ilogic - Assemblies

Anonymous
Not applicable

Hello All,

 

I have an assembly that consists of about a dozen parts, one part controls the width of my assembly. I have generated a form and rules that control my LOD at this time. How do I utilze my "Length" parameter in my part file to control the length in my assembly file. I don't think I have my parameters setup right in my part file or my assembly.

 

Below will show my setup:

 

Part File

Parameter - Model - "Length"

 

Assembly File

I Linked - "Length" from part file

(see screenshot attached)

 

Any advice will be greatly appreciated

 

0 Likes
813 Views
9 Replies
Replies (9)
Message 2 of 10

Anonymous
Not applicable

See my code attached

0 Likes
Message 3 of 10

BrandonBG
Collaborator
Collaborator

Right now with your code, iLogic is looking for a parameter named with the value of Length, not the name "Length".

 

Try:

Parameter("Booth_Length") = Parameter("Part 1:1", "Length")

 

Assuming the Parameter named "Booth_Length" is in the Assembly and the Parameter named "Lenght" is in a part. It's a little hard to tell from the screen shot.

 

Brandon

0 Likes
Message 4 of 10

Anonymous
Not applicable

 "Booth_Length" is in the Part File as (Model Parameter) and the "Lenght" is in a Assembly as (User Parameter).

 

I entered the code and received the same error message.

 

Parameter(Length) = Parameter(Parameter("**3X2 Standard Front Seat Frame:1", "Booth_Length"))

 

Error in rule: Length, in document: Main Booth Assembly.iam

Parameter: Could not find a parameter named: "30"

 

System.ArgumentException: Parameter: Could not find a parameter named: "30"

at iLogic.ParamDynamicFinder.ThrowException(String callerName)

at iLogic.ParamDynamic.get_Item(String docAndParamName)

at LmiRuleScript.Main()

at Autodesk.iLogic.Exec.AppDomExec.ExecRuleInAssembly(Assembly assem)

at iLogic.RuleEvalContainer.ExecRuleEval(String execRule)

 

 

0 Likes
Message 5 of 10

BrandonBG
Collaborator
Collaborator
Parameter(Length) should be Parameter ("Length"). Can you clarify your intent? Is the Assembly size being driven by the part? It looks like you already have the "Booth_Length" parameter linked between the part and the assembly, but the hyperlink is cut off on your screenshot. If so, in the assembly parameters, set the equation for Length to be Booth-Length. Brandon
0 Likes
Message 6 of 10

Anonymous
Not applicable

Parameter(Length) should be Parameter ("Length").

 

Can you clarify your intent?

"My goal is to have the form in my assembly adjust the length based on the part"

 

Is the Assembly size being driven by the part?

"Yes"

 

It looks like you already have the "Booth_Length" parameter linked between the part and the assembly, but the hyperlink is cut off on your screenshot. If so, in the assembly parameters, set the equation for Length to be Booth-Length.

 

"Ok, in my assembly (Length) is now equal to (Booth_length) from part file"

 

 

0 Likes
Message 7 of 10

BrandonBG
Collaborator
Collaborator
You shouldn't need to run another rule. The parameter Length in the assembly should update with the Booth_Length in the part. Brandon
0 Likes
Message 8 of 10

Anonymous
Not applicable

But in my form within the assembly I would like to control the length, so I will need to control the part from the assembly.

0 Likes
Message 9 of 10

BrandonBG
Collaborator
Collaborator
Because you already have a link from part->assembly you can't link assembly->part to have the form run in the assembly. You'll get a cyclic dependency error. You may need to rethink how the assembly works or set up an Excel spreadsheet or dummy .ipt to hold the parameter values. Brandon
0 Likes
Message 10 of 10

Anonymous
Not applicable

OK, thank you very much for your time and have a good day.

0 Likes