Custom Side Ditch with Shoulder subassembly issue

NeoAlpha
Explorer
Explorer

Custom Side Ditch with Shoulder subassembly issue

NeoAlpha
Explorer
Explorer

Hello everyone,

I have created a custom side ditch that is attached to a shoulder, which is as one subassembly, when imported into civil 3d. I want the side ditch to look straight and not bent, as indicated by the number 2 in image 2. the connection of the shoulder near the number 1 should connect to the side ditch but still maintain the thickness of the subbase, whenever the shoulder superelevates. I have tried for 3 weeks but still cannot get it to work, please I need your help.

See attached is the subassembly, and the images.

 

0 Likes
Reply
Accepted solutions (3)
1,284 Views
8 Replies
Replies (8)

Dexterel
Collaborator
Collaborator
give me 1 and a half hour and I will fix it
0 Likes

Dexterel
Collaborator
Collaborator
Accepted solution

Fix some slopes and convert delta X-s to delta Y-s.

Small note: Link L51 has 0 slope so be sure to take into consideration, this means L5 length=L1 length-Trim, if you need P20 to coincide with P27.

New Parameters:

Use superelevations: if "Yes" it will use superelevation if superelevation is declared (presence) otherwise uses ShoulderSlope parameter.

Type of superelevation: In your case it will be outside shoulder. Note if subassambly is on the right it will use right outside shoulder and so on.

 

Formula for slope:

if(SA.islayout or Use_super=No,ctype(ShoulderSlope,Double),
if(Side=Left,
 if(super_type.value="OutsideLane",
  if(SE.HasLeftLO, ctype(SE.LeftLO,Double), ctype(ShoulderSlope,Double)),
  if(super_type.value="InsideLane",
   if(SE.HasLeftLI, ctype(SE.LeftLI,Double), ctype(ShoulderSlope,Double)),
   if(super_type.value="OutsideShoulder",
    if(SE.HasLeftSO, ctype(SE.LeftSO,Double), ctype(ShoulderSlope,Double)),
    if(super_type.value="InsideShoulder",
     if(SE.HasLeftSI, ctype(SE.LeftSI,Double), ctype(ShoulderSlope,Double)),
     ctype(ShoulderSlope,Double)  )   )  ) ),
 if(super_type.value="OutsideLane",
 if(SE.HasRightLO, ctype(SE.RightLO,Double), ctype(ShoulderSlope,Double)),
 if(super_type.value="InsideLane",
 if(SE.HasRightLI, ctype(SE.RightLI,Double), ctype(ShoulderSlope,Double)),
 if(super_type.value="OutsideShoulder",
 if(SE.HasRightSO, ctype(SE.RightSO,Double), ctype(ShoulderSlope,Double)),
 if(super_type.value="InsideShoulder",
 if(SE.HasRightSI, ctype(SE.RightSI,Double), ctype(ShoulderSlope,Double)),ctype(ShoulderSlope,Double)) ) ) )))

Dexterel
Collaborator
Collaborator

One more thing.
I change the SA so WallHeight represents the vertical distance mentioned in the attached image. SideSlope no longer influences this distance. This is way i change the points form deltaX-s to deltaY-s.

Jowennl
Advisor
Advisor
Accepted solution

Hi @NeoAlpha,

 

Just a suggestion. Probably similar to @Dexterel.

 

Please see suggestion below and attached PKT:

 

Animated GifAnimated GifFormula usedFormula usedadd infoadd info

 

General Notes: 

1) I remove AOR as it confused me.

2) I use math.abs to always show correct value.

 

Cheers,

Jowenn

Dexterel
Collaborator
Collaborator
one of the problems I fix is the WallHeight. Change the WallHeight and you will see it.

NeoAlpha
Explorer
Explorer

That was awesome, thanks Dexerel and Jowenni.

The wallheight was also a very great fix as I can also change the wallheight without any issue. I tested both .pkt and they both worked great. Thanks once again.

0 Likes

Dexterel
Collaborator
Collaborator
You miss L15 and P16. The Height should be fix (to 0.1)and not dependent on Sideslope.
Same for P29.
0 Likes