Assigning output parameters to subassembly composer input parameters

Assigning output parameters to subassembly composer input parameters

JohnDutz
Enthusiast Enthusiast
5,121 Views
12 Replies
Message 1 of 13

Assigning output parameters to subassembly composer input parameters

JohnDutz
Enthusiast
Enthusiast

We are upgrading an existing, superelevated road and need to control superelevation using profiles.  We have a custom shoulder subassembly that reads the superelevation of the road just fine.  I thought we could simply use the output parameters from the lane subassembly to define the slope of the shoulder, but I can't assign output parameters to the input parameters of the custom subassembly.

 

The custom subassembly works as expected, except for when we need to reference parameters from other subassemblies.  I've attached a screen shot showing the assembly with our custom subassembly and the Input and Output values are blank.  I can assign output parameters to input parameters for other subassemblies in this assembly.

 

Did we miss a setting in Subassembly Composer 2015 that is required to enable this functionality?  Any tricks, or things we should not have done?

 

I've attached the PKT file, in case it helps.

0 Likes
Accepted solutions (1)
5,122 Views
12 Replies
Replies (12)
Message 2 of 13

Yonas89
Collaborator
Collaborator

Could you add PKT file of your lane, where the output parameter is defined? Now both files are  the same.  

0 Likes
Message 3 of 13

JohnDutz
Enthusiast
Enthusiast

The lane subassembly is out of the box - LaneSuperelevationAOR

0 Likes
Message 4 of 13

Yonas89
Collaborator
Collaborator

oh,yes. I haven't seen the image. 

Looks that I can assign output parameters to your subassembly. 

Message 5 of 13

JohnDutz
Enthusiast
Enthusiast
Looks like I posted this one too quickly. After starting a new drawing and doing some tests it is working. I think I need to re-build those drawings from scratch.

Thanks for looking into it.
0 Likes
Message 6 of 13

JohnDutz
Enthusiast
Enthusiast
Accepted solution

After much testing, it appears that the LaneSuperelevationAOR subassembly passes the default slope straight through to the Lane Slope output parameter.  To workaround this, for now, we created a custom subassembly that calculates the actual lane slope and passes that to an output parameter correctly.  Solved the problem for us, entirely.

0 Likes
Message 7 of 13

Anonymous
Not applicable
but how to assign output parameter in custom subassembly?
Message 8 of 13

LeafRiders
Collaborator
Collaborator

Unfortunately this is NOT a solution to the initial post. I wonder how many people come here looking for the solution that doesn't exist in this thread. Sure you solved your own problem, but where is the solution to assign an output parameter in a custom subassembly which was the title of this post?

0 Likes
Message 9 of 13

JohnDutz
Enthusiast
Enthusiast

I can answer that question for you.

 

On the Input/output tab in the subassembly composer, you can define whether or not a particular parameter is an input or an output. The location of this setting can be seen in the attached image.

0 Likes
Message 10 of 13

LeafRiders
Collaborator
Collaborator

Again, you're providing a solution to "where it is". Have you actually assigned an output parameter to a lane link and then tap into that value for the link for your shoulder in the same custom subassembly? Similar to what you're asking to do in this thread at the onset?

 

I'm well aware of where these things are, but the question should be HOW does one have this functionality in the Assembly properties area of Civil 3D. I've had numerous custom SAs not highlight the "output parameters" to use the slope values.  Something is getting missed here, and I'm not sure what it is. The stock subassemblies don't have a problem. But within my custom SAs you can't tap into lane slope for the shoulder slope within the same SA within Assembly Properties.

 

 

0 Likes
Message 11 of 13

JohnDutz
Enthusiast
Enthusiast

I don't think this is actually the same issue as I was having in my original post. I was using two different SAs, and wasn't getting the expected values out of the lane SA when I put them into a different, custom SA.

 

I am not sure if there is a way to access the output parameters of a subassembly in that subassembly. Perhaps someone from Autodesk can weigh in on that one. But you can define a variable in Subassembly Composer and reuse it later or you can access the link properties using VBA dot notation (i.e. L1.Slope) instead of accessing the output parameter directly.

0 Likes
Message 12 of 13

LeafRiders
Collaborator
Collaborator

So basically if you set these up as an Output parameter and then "Set" them within the Flowchart area of the Subassembly composer they "should" be highlighted when you go to your Assembly Properties. However, when I proceed to review this, you still can't apply LaneSlope to the ShoulderSlope by using the "Construction" section within the Assembly Properties (Assembly.png)... Anyone?

 

This thread does have to do with Subassembly Composer, not stock out-of-the-box SA behaviours as per the title not?

0 Likes
Message 13 of 13

Anonymous
Not applicable

The subassemblies has to be in the same side in order to use output parameter, and subassembly with output parameter has to be added first. If you need that output from one side should go to other side, just add subassemblies to one side of assembly than take your needed output parameter and in the same assembly properties change side of yours desired subassembly

0 Likes