We have been asked how setting out coordinates for building components can be provided using real world coordinates, when we recommend modelling close to the Design File Origin. Recent enhancements to our Reports feature combined with knowledge from our mapping products make this easier. This article will step through the initial object creation, reporting, geo-coordination and finally reporting the real-world coordinates via Excel formulae. This example uses the UK dataset and a UK coordinate system, but applies to other datasets and regions in exactly the same way.
Other articles in this series will provide background to this one: Series Index - Setting Up in the Real World
The techniques described below apply similarly to MicroStation or other applications where geocoordination is used.
A set of examples files can be downloaded below, the notes provide further detail on the example shown in the video (which will be uploaded shortly)
Before getting into the geocoordination and reporting aspects, the fundamental step is to be fully aware of the way the objects to be reported on are placed in the first instance.
Taking round concrete piles as an example, the setting out coordinate will be the centre of the pile top. The element property that we will be reporting on are the coordinates of the element origin. This means that the piles should be placed by 'Two Points', starting at the top so the element origin is at the top of the pile:
Use of other placement options such as 'Length at End 1' will result in the origin being at the bottom of the pile. (See an additional note regarding an alternative method at the end of the blog.)
Once the piles and other elements have been placed use the OpenBuildings Schedules tools to assign data such as IDs to the piles. The Edit in Excel feature is the easiest way to do this. Rather than attempting to reinvent Excel features such as drag to fill and increment inside the Schedules dialog we take advantage of Excel's functionality.
This model was created in Geo_Facility_002.dgn:
In the schedule below we have included the column location by grid property that was added in OpenBuildings (AECOsim) Designer Update 2 so that location information relative to the structural grid is available directly to an OpenBuildings Schedule, in this example note that three piles are offset from the grid intersections:
Once the Pile IDs are added using Edit in Excel they can also be scheduled:
While DataGroup scheduling cannot directly access properties/values that are stored as each element's ECSchema data so we are unable to include x,y,z coordinates in OpenBuildings Schedules, all of the properties and values stored as DataGroup Instance Data are available to Power Platform reporting tools so both DataGroup and ECSchema data can be scheduled using the CONNECT Edition Reports feature.
An example report is contained in Geo_Facility_002.dgn. Creating this report follows the normal steps of adding the Item Types to report upon, then selecting the columns of data to be included. The points to remember are that only Item Types and other properties that are actually present in the active file will be available to report upon, but that once a report is created it can be stored in a DGNLIB or imported to another file to be used. The columns particular to this example are the concrete and steel pile Item Types provided by the OpenBuildings elements and Cells. Cells is added as the origin of each pile is is a Cell property, not a DataGroup Item Type property:
Note that when adding Item Types to a Report, 'Select an Item Type' provides an interactive search facility:
The default format for an Origin column is XYZ all in one text field; creating three separate columns formatted for X, Y and Z allows each dimension to be reported to a separate field:
The report can be previewed, placed as a Table or exported to Excel:
The coordinates listed above are obviously relative to the design model origin, not to the real-world, the report accesses the properties of the elements themselves. The coordinates of the element Origin are relative to the file that they are contained in, not to a file that references them.
From the Reports dialog, export the schedule to Excel:
The data is now ready for the next stage.
To obtain the real-world coordinates the design model must be geo-coordinated with the site location. The parameters of the resulting Helmert Transformation can then be used to calculate the real-world coordinates in Excel.
In the design model Geo_Facility_002.dgn there is a notional site boundary, this will be used to create the transformed GCS:
Go to the site model Geo_Site_002.dgn, then attach the appropriate Geographic Coordinate System (GCS):
Once a GCS is attached the View Attributes dialog will include the option to display Bing Maps default mapping or aerial content as a background:
This site boundary is copied from Geo_Facility_002.dgn into the site plan Geo_Site_002.dgn. In a real project this is more likely to be a site boundary or other appropriate polygon from a site survey or other setting out information. (Which way round this is done does not matter, as long as both site and design contain identical shapes in their correct relationship to both the the design and the site.)
In the site model the site boundary is at its real world rotation and coordinates. (Mote, the location shown was randomly chosen and does not relate to any actual project.)
Return to Geo_Facility_002.dgn and attach Geo_Site_002.dgn, using Orientation 'Coincident':
Then using the Reference Move/Rotate tools, move and rotate Geo_Site_002.dgn so that the site boundary contained in it aligns exactly with the site boundary contained in Geo_Facility_002.dgn.
Once the two files are aligned in this way a GCS can be added to Geo_Facility_002.dgn using the 'From Reference' method. This creates a transformed version of the library GCS attached to the site plan that can be used to attach the design model to the site plan using Reference by 'AEC Transform' and contains the parameter that will be used to calculate the real-world coordinates.
(AEC Transform is designed for use with buildings ensuring that any building elements retain their correct relationship to the vertical, a true geographic reprojection could result in deviation from the vertical.)
This results in:
The properties of this transformed GCS include a description field that can be edited to a meaningful description related to the project:
And the five parameters that will be used to calculate the real-world coordinates.
Now the transformed GCS is attached to the design model, turning on Bing maps in the design model will display the correct location oriented to the model:
Returning to Geo_Site_002.dgn, the design model can be referenced using AEC Transform
(Note that running the same Report in this file will output the element coordinates from the design model, not their position when referenced, the coordinates are properties of the elements in the reference file and are read from that file.)
To produce the real-world coordinates we now apply the parameters of the Helmert Transformation to the information initially exported to Excel. The formulae that do this are described in a wiki from Bentley's mapping team: 2D Conformal Transformation. The PDF that can be downloaded from this page discusses the use of the Helmert Transformation parameters and formulae.
The example file containing these formulae is PilesTransformed.xls:
It contains empty columns ready for the exported data and coordinates to be pasted into.
The green columns contain formulae which apply the Transform Parameters to the model coordinates respectively:
The Transform Parameters are copied from the transformed GCS properties into the orange cells:
The orange cells are named as shown in brackets in their title, these names are used in the formulae above:
The exported data is then pasted into the empty columns and additional rows of formulae are filled down using Excel's fill series tool on the E,N and H columns:
Labels can be placed to show the coordinates of a couple of the pile tops as a confidence check. Checking pile CP_100 by placing a coordinate note shows that the coordinates match:
The attached zip file, OBD_Geo_Reporting_2020-02-21.zip, contains the two DGN files mentioned above:
The Pile schedule:
To see this in the Schedules dialog put it into "C:\ProgramData\Bentley\OpenBuildings CONNECT Edition\Configuration\WorkSpaces\Building_Examples\worksets\BuildingTemplate_UK\Standards\DataGroupLayouts\"
The spreadsheet containing the finished results:
In situations where the original placement is inconsistent another way to find the centre point of the top of an object is a range box. Every element has a range box. This is a Cartesian cuboid that encloses the maximum extent of the element. (Turn on the Fast Cells option in view attributes to see any cells present in your model displayed as their range boxes.)
In a simple example such as this each 0.6m diameter x 10m long vertical pile will be enclosed in a range box 0.6 x 0.6 x 10m. Where different placement methods have been used the origin of the pile may be at the bottom, reporting the correct x and y values but the wrong z value.
By adding a column for Range High:
(Note, I used the search box to find properties containing "range".)
Renamed as shown:
'Add formatting' can be used to apply the same formatting as the OriginZ column:
This will then report the required Z value from the top of the range box.
This has limitations, if the piles are not vertical, the maximum Z value will be above the top face of the pile and the x and y values for the origin at bottom of the pile will obviously not be directly below the top.
This just reinforces the value of consistent object placement when modelling for data generation.