*AssemblyPlaceholder()
Creates a placeholder for an assembly.
Syntax
*AssemblyPlaceholder(varname, "label", type, "user_prompt", reserved, assem_instance)
Arguments
- varname
- The variable name of the assembly.
- label
- The descriptive label of the assembly.
- type
- The selection type of the assembly.
- user_prompt
- Prompt for this assembly to be used in the model.
- reserved
- Reserved for future use.
- assem_instance
- Tag specifying the assembly instance. See Comments below.
Example
*DefineAssembly(sysdef_table_assembly, TYPED, , )
*AssemblyPlaceholder(sys_plank, "Plank Sub Assy", PlankAssembly, "Select Plank Assembly.", , )
*AssemblyPlaceholder(sys_leg_1, "Leg 1 Sub Assy", LegAssembly, "Select Leg 1 Assembly.", , Leg1Instance)
*AssemblyPlaceholder(sys_leg_2, "Leg 2 Sub Assy", LegAssembly, "Select Leg 2 Assembly.", , Leg2Instance)
*AssemblyPlaceholder(sys_leg_3, "Leg 3 Sub Assy", LegAssembly, "Select Leg 3 Assembly.", , Leg3Instance)
*EndDefine()
Context
Comments
The Assembly placeholder creates a placeholder for an assembly under the root system, or in another assembly or analysis of a distributed type.
A placeholder is a null assembly until an assembly is referred to it using the *BeginAssemblySelection() block.
The selection type string can be specified to restrict the type of assembly that can be instantiated into the placeholder. In the example above the placeholder for assem_cyl1 has an EngineCylinder selection type; therefore only an assembly definition which has the DEFINITION_TYPE as EngineCylinder can be added to this placeholder.
The assem_instance tag can be used to resolve attachments automatically when there are more than one instance of assembly referring to the common definition .
Refer to the example above:
A table assembly has an instance of plank assembly and three instances of leg assembly. Three points in the plank assembly are candidates for attachments for the leg assembly which refer to a common definition. The attachment candidate tag on the points in the plank assembly can be set as LegInstance1: CandidateTag, LegInstance2:CandidateTag, LegInstance3:CandidateTag where; LegIntance1, LegInstance2, and LegInstance3 are assem_instance values for each of the three leg assembly placeholders respectively.