If you want to recreate the LinkToSlope subassembly using the Subassembly Composer, then you may need this Expression:
IF((SuperSource=LeftInsideLane)AND(SE.HasLeftLI),SE.RightLI,
IF((SuperSource=LeftOutsideLane)AND(SE.HasLeftLO),SE.RightLO,
IF((SuperSource=LeftInsideShoulder)AND(SE.HasLeftSI),SE.RightSI,
IF((SuperSource=LeftOutsideShoulder)AND(SE.HasLeftSO),SE.RightSO,
IF((SuperSource=RightInsideLane)AND(SE.HasRightLI),SE.RightLI,
IF((SuperSource=RightOutsideLane)AND(SE.HasRightLO),SE.RightLO,
IF((SuperSource=RightInsideShoulder)AND(SE.HasRightSI),SE.RightSI,
IF((SuperSource=RightOutsideShoulder)AND(SE.HasRightSO),SE.RightSO,
0))))))))
The expression uses SuperSource which is the name of an Input Parameter using the Superelevation Enumeration. Use the expression either in the creation of a point or create a variable that is the grade to be used. There may be a better way, but as far as I can tell you can’t specify the input parameter of Superelevation to override the slope.
3 comments:
I ended up creating the exact same formula in order to accomplish that. I have one more IF statement that allows the user to specify a variable "slope" that can be used if no superelevation is applied.
Hola Eric C, podrĂas poner tu codigo porfavor.
There is an error in the first 4 lines, they should be pointing to the left, instead of the right:
IF((SuperSource=LeftInsideLane)AND(SE.HasLeftLI),SE.LeftLI,
IF((SuperSource=LeftOutsideLane)AND(SE.HasLeftLO),SE.LeftLO,
IF((SuperSource=LeftInsideShoulder)AND(SE.HasLeftSI),SE.LeftSI,
IF((SuperSource=LeftOutsideShoulder)AND(SE.HasLeftSO),SE.LeftSO,
IF((SuperSource=RightInsideLane)AND(SE.HasRightLI),SE.RightLI,
IF((SuperSource=RightOutsideLane)AND(SE.HasRightLO),SE.RightLO,
IF((SuperSource=RightInsideShoulder)AND(SE.HasRightSI),SE.RightSI,
IF((SuperSource=RightOutsideShoulder)AND(SE.HasRightSO),SE.RightSO,
0))))))))
Post a Comment