Creating Cross Sections in OpenRoads Designer

Hi guys,

I have some questions about generating cross section sheets in ORD.

Previously in GEOPAK SS3 we created cross section sheets using the "Create Cross Section" tool from the Corridor toolbar:

The cross sections were placed in sheet models as graphical elements that could be modified, deleted, moved and so on.

These were static cross sections and would need to be generated from scratch following any update to the design model.

One could define the number of cross sections per column and many other settings:

In ORD the concept of cross section generation is approached quite differently using Named Boundaries. 

The Civil Cross Section tool is used to place cross section named boundaries:

These boundaries are then used to create cross section sheets:

But these sheets are in fact snapshots or views into the design model and cannot be modified as before.

They are dynamic cross sections that are updated on-the-fly as the design model changes.

My questions are as follows:

1. Have I correctly understood the approach used by ORD to generate cross sections? Am I missing something?

2. How can I define the cross section stacking in the sheet model? What about the many other settings that existed in the SS3 cross section dialog?

3. How do I make modifications to the graphic elements in these dynamic cross sections?

4. Is it possible to generate static cross sections in ORD?

Regards,

Benzi

Parents
  • 1.  This is the correct procedure for creating the cross sections, but the dynamic part of the cross section creation is just using the displayed information from the 3D model to generate the cross section models.  It isn't dynamically getting changed as the 3D Model changes.  If you make changes, you must recreate (reprocess) the cross sections to create a new cross section model/sheets. 

    2.  The cross section sheets are all controlled by the Sheet Model DGN and how it is created and defined.  The sections fit into the sheet border based on how many can physically fit inside the boundary of the border.

    3. You should be able to make modifications to any of the graphics using the edit commands.  It will not tie back to the elements in the 3D model and change those, only the graphics of the cross section.  It is dynamically slicing the model based on what is displayed, but it isn't a dynamic section in the terms that if you change something in the 3D model, the cross sections will change.

    4. The cross sections in OpenRoads Designer are in fact dynamic models which contains the 3D information from the 3D model.   Since we create the named boundaries, we are creating a dynamic window for referencing the 3D model into the cross section model. 


    For more information about the Road and Site design tools, visit the Road and Site design WIKI at: http://communities.bentley.com/products/road___site_design/w/road_and_site_design__wiki

  • Please forgive me for my lapse regarding my last response.  The cross sections in OpenRoads Designer are in fact dynamic models which contains the 3D information from the 3D model.  I was still thinking of the OpenRoads cross sections from SS4.  Since we create the named boundaries, we are creating a dynamic window for referencing the 3D model into the cross section model. 

    As to not lead to more confusion, I have edited the response above to reflect this misstatement.


    For more information about the Road and Site design tools, visit the Road and Site design WIKI at: http://communities.bentley.com/products/road___site_design/w/road_and_site_design__wiki

  • Benzi. That macro sounds very useful. Are you able to share?

    Regards

    Chris


    AECOM Roads UK&I Digital Engineering, Design & Solutions Lead | Sector Information Management Lead

    Associate Director – Digital

    OpenRoads Designer 10.12 | MicroStation 2023 | ProjectWise CE 10.3.4 | ContextCapture | ProjectWise PowerShell 2023 | ProjectWise WSG API | Generative Components | OpenBridge Designer 10.12

    Civil 3D 2023 | Dynamo | Navisworks Manage

    PowerShell | Visual Studio | Office 365 | Power Platform | Teams | SharePoint | Visio

    Speckle | BIMVision | Revizto | Solibri

  • What we do is: we generate a sheet model using all sections and then attach this sheet model to the default model.  So this way we have all the cross sections in to the default model.

  • My version is 2020 Release 2 Update 8 10.08.01.33. I will generate 1,300 sections, so much to do a manual proces.

  • There is no manual work to do, you create all your section (using bentley xs_stacked preference) it will create your section on a bic sheet where you will have all your sections.  Is you want to have your section next to your design you can have 2 views open or just attach your xs to your default model with nesting deph of 3

  • Here is the code. Paste it into a new MVBA module and run macro ArrangeCrossSections: The constant variables control the grid arrangement and can be customized:

    Option Explicit
    
    Const MAXROW = 10
    Const DELTAX = 100
    Const DELTAY = 100
    
    Sub ArrangeCrossSections()
    
    Dim att As Attachment
    Dim i As Integer
    Dim rowIndex, colIndex As Integer
    
    ' init
    CadInputQueue.SendCommand "NULL"
    rowIndex = 0
    colIndex = 0
    
    ' user ok
    If (MsgBox("Arrange cross sections", vbQuestion Or vbYesNo) = vbNo) Then
        Exit Sub
    End If
    
    For i = 1 To ActiveModelReference.Attachments.count
        Set att = ActiveModelReference.Attachments(i)
        
        ' shift location
        att.Redraw msdDrawingModeErase
        SetOriginTo att, Point3dFromXY(colIndex * DELTAX, rowIndex * DELTAY)
    
        ' update row/column
        rowIndex = rowIndex + 1
        If (rowIndex = MAXROW) Then
            rowIndex = 0
            colIndex = colIndex + 1
        End If
        
        ' update attachment
        att.Rewrite
        att.Redraw
    Next i
    
    CommandState.StartDefaultCommand
    
    End Sub
    
    Sub SetOriginTo(att As Attachment, destination As Point3d)
    
    Dim distance As Point3d
    
    ' move attachment origin
    distance = Point3dSubtract(destination, att.MasterOrigin)
    att.Move distance, True
    
    End Sub

    There are a few things to bear in mind before using the macro:

    1. Before you drag the drawing models make sure to sort the cross section drawing models by ascending name in the Models dialog. This ensures cross section models are attached by ascending station:

    2. After you drag the drawing models open the references dialog in the new model, select all attachments and change the reference scale back to 1:1.

    3. Make sure to set the annotation scale in the new design model so that annotations from the attached drawing models will appear correctly.

    4. If you intend to do manual edits to these cross sections you will need to merge them into the active model. Because cross sections are referenced from the 3D model what works best is to first export the original ORD file to V8 with "Self Attachments" set to "Merge":

Reply
  • Here is the code. Paste it into a new MVBA module and run macro ArrangeCrossSections: The constant variables control the grid arrangement and can be customized:

    Option Explicit
    
    Const MAXROW = 10
    Const DELTAX = 100
    Const DELTAY = 100
    
    Sub ArrangeCrossSections()
    
    Dim att As Attachment
    Dim i As Integer
    Dim rowIndex, colIndex As Integer
    
    ' init
    CadInputQueue.SendCommand "NULL"
    rowIndex = 0
    colIndex = 0
    
    ' user ok
    If (MsgBox("Arrange cross sections", vbQuestion Or vbYesNo) = vbNo) Then
        Exit Sub
    End If
    
    For i = 1 To ActiveModelReference.Attachments.count
        Set att = ActiveModelReference.Attachments(i)
        
        ' shift location
        att.Redraw msdDrawingModeErase
        SetOriginTo att, Point3dFromXY(colIndex * DELTAX, rowIndex * DELTAY)
    
        ' update row/column
        rowIndex = rowIndex + 1
        If (rowIndex = MAXROW) Then
            rowIndex = 0
            colIndex = colIndex + 1
        End If
        
        ' update attachment
        att.Rewrite
        att.Redraw
    Next i
    
    CommandState.StartDefaultCommand
    
    End Sub
    
    Sub SetOriginTo(att As Attachment, destination As Point3d)
    
    Dim distance As Point3d
    
    ' move attachment origin
    distance = Point3dSubtract(destination, att.MasterOrigin)
    att.Move distance, True
    
    End Sub

    There are a few things to bear in mind before using the macro:

    1. Before you drag the drawing models make sure to sort the cross section drawing models by ascending name in the Models dialog. This ensures cross section models are attached by ascending station:

    2. After you drag the drawing models open the references dialog in the new model, select all attachments and change the reference scale back to 1:1.

    3. Make sure to set the annotation scale in the new design model so that annotations from the attached drawing models will appear correctly.

    4. If you intend to do manual edits to these cross sections you will need to merge them into the active model. Because cross sections are referenced from the 3D model what works best is to first export the original ORD file to V8 with "Self Attachments" set to "Merge":

Children
  • Excellent thanks Benzi

    Regards

    Chris


    AECOM Roads UK&I Digital Engineering, Design & Solutions Lead | Sector Information Management Lead

    Associate Director – Digital

    OpenRoads Designer 10.12 | MicroStation 2023 | ProjectWise CE 10.3.4 | ContextCapture | ProjectWise PowerShell 2023 | ProjectWise WSG API | Generative Components | OpenBridge Designer 10.12

    Civil 3D 2023 | Dynamo | Navisworks Manage

    PowerShell | Visual Studio | Office 365 | Power Platform | Teams | SharePoint | Visio

    Speckle | BIMVision | Revizto | Solibri

  • 'Because cross sections are referenced from the 3D model what works best is to first export the original ORD file to V8 with "Self Attachments" set to "Merge".'

    Does this mean the final product of this procedure will be in V8i? 

    We are trying to produce graphic cross sections similar to InRoads/Microstation V8i within OpenRoads.

    It looks like the procedure you describe above is seeking the same goal.

    If so, was this procedure successful and have you made any additional progress towards this goal?

    Thanks in advance 

  • The actual DGN file format is essentially the same between V8 and CONNECT. This just asks for "V8" as opposed to V7 or DWG. The point of exporting the sections to a plain V8 DGN is because that's the fastest way to merge dozens and dozens of reference attachments. The sections end up merged into the drawing as "dumb graphics" without civil intelligence so that hand edits can be made.

    Of course, these sections will no longer actively reflect changes to the design model...But if you are "done" designing and want to just fix things to get it out the door, it's as good a way as any to generate graphic cross sections. Also, not a bad way to archive off cross sections for any intermediate submittal (since they will be unaffected by future design changes).

    MaryB

    Power GeoPak 08.11.09.918
    Power InRoads 08.11.09.918
    OpenRoads Designer 2021 R2

        

  • Thanks Mary (my following rant/comments are general questions and are not directed towards you in any way)

    Is there not a more straight forward way to do this in ORD?  If not, do we know why this capability has been taken away from the user?    I understand that the industry is moving towards having a 3D model as the deliverable, but not all DOTs have finalized this transition. There is also a thing called the law of diminishing returns, which dictates that having the capability to hand edit some things on cross sections, at whatever stage in project development the user chooses, would be beneficial.  If ORD can display the sections dynamically, why can it not display them statically, as graphics?  

  • It comes from the philosophy that the 3d model should be accurate and that no manual edits are needed in the cross sections. 

    It's part of the move away from drawings as the medium which is used to transfer design information.

    The principal, is that previously with static graphic cross sections, for every change in the design we had to recreate the cross sections. Say 10mins each time probably recreated 6 times over life of project. In ORD you create the cross sections once (20mins), it then updates automatically with every change. We only need to update the annotation (if annotated) 5mims each time. Overall the time taken to keep cross sections up to date is less than with SS products.

    Also, Cross Sections in ORD cut through the 3D view which includes all references, which could be DWG data, Revit data, SUDA, anything referenced. Without the need to add these later. One of the reason ls it takes longer to generate.

    Regards

    Chris


    AECOM Roads UK&I Digital Engineering, Design & Solutions Lead | Sector Information Management Lead

    Associate Director – Digital

    OpenRoads Designer 10.12 | MicroStation 2023 | ProjectWise CE 10.3.4 | ContextCapture | ProjectWise PowerShell 2023 | ProjectWise WSG API | Generative Components | OpenBridge Designer 10.12

    Civil 3D 2023 | Dynamo | Navisworks Manage

    PowerShell | Visual Studio | Office 365 | Power Platform | Teams | SharePoint | Visio

    Speckle | BIMVision | Revizto | Solibri