/
EDMmodelServerManager Kartintegrasjon

EDMmodelServerManager Kartintegrasjon





EDMmodelServerManager
Map Integration,
Version 3.2






Opphavsrett
Denne programvaren inneholder opphavsrettsbeskyttet materiale, forretningshemmeligheter samt annet beskyttet materiale. Du skal ikke, og skal ikke forsøke å, modifisere, reversere, dekompilere Programvaren. Du kan heller ikke lage avledede verk eller andre arbeider som er basert på eller avledet fra Programvaren, helt eller delvis.
Jotne EPM Technology AS navn, logo og grafikkfil som representerer Programvaren skal ikke brukes på noen måte å markedsføre produkter utviklet med programvaren uten Jotne EPM Technologys godkjennelse. Jotne EPM Technology AS beholder den eneste og eksklusive eierskap til alle rettigheter, tittel og interesser i og for Programvaren og alle immaterielle rettigheter knyttet til dette.
Copyright lov og internasjonale opphavsrettstraktatbestemmelser beskytter alle deler av programvaren, produkter og tjenester. Ingen program, kode, del, bilde, eller tekst kan kopieres eller brukes på noen måte av brukeren unntatt som forutsatt innenfor rammene av programvarens naturlige bruk. Alle rettigheter som ikke uttrykkelig er gitt, er forbeholdt for Jotne EPM Technology AS.
Ansvarsfraskrivelse
Denne programvaren og tilhørende dokumentasjon leveres som den er og det gis ingen garantier for dens egnethet for et spesielt formål. Ikke under noen omstendigheter skal Jotne stilles ansvarlig for direkte eller indirekte tap eller skader, (inkludert men ikke begrenset til tap av data, tap av fortjeneste eller produksjonsstans), uansett årsak og ansvarsteori, verken som følge av bruken av denne programvaren eller av de data den produserer.


Contents
1 References
1.1 Abrevations
1.2 External References
1.3 EDMmodelServer references
2 Map integration and georefrencing
2.1 Global geographical coordinates
2.1.1 The NTM coordinate system
2.1.2 Converting between latitude / longitude and NTM
2.2 IFC Coordinates
2.2.1 IFC Coordinate Systems
2.2.2 IFC Exchange Requirements
2.2.3 Specifying the chosen NTM origin
2.3 Local frames of reference
3 Georeferering – metoder
3.1 Applying georeferencing
3.2 Bygninger med målepunkt
4 Additional information
4.1 Property set for georeferencing
4.2 Archicad issues
4.2.1 Coordinate systems for "IfcSite" and "IfcBuilding" objects

References


Geo-referencing is here defined to be placing the IFC elements in a chosen known global coordinate system.

Abrevations


External References

BuildingSmart, «IDM Georeferencing,» 2010.

EDMmodelServer references

  1. EDMmodelServerManager™ Generell Brukermanual, versjon 3.2.13 (norsk)




Map integration and georefrencing


Global geographical coordinates

The NTM coordinate system

For Norway, the NTM system is used. To specify an NTM "origin", we have to supply the NTM Zone, if the zone is known the origin is defined as follows:

NTM Zone

X coordinate

Y coordinate

Z coordinate

Direction

5

5º30' E is 100 000

58º N is 1 000 000

Height above sea level

Y true north

6

6º30' E is 100 000

58º N is 1 000 000

Height above sea level

Y true north

7

6º30' E is 100 000

58º N is 1 000 000

Height above sea level

Y true north

….

 

 

 

 

For Norway, zones range from 5 to 30. Measurement unit in the above table is meter.
Positions within the zone are defined as:

X: Eastings

NTM east coordinate for site, always positive within the zone

Meters (real)

Y: Northings

NTM north coordinate for site, relative to 58º N

Meters (real)


Converting between latitude / longitude and NTM

The conversion between NTM and LAT/LONG is complicated due to the fact that the meters per degree ratio vary according to the geographical location. There are multiple calculators available on the internet for doing this – example:
Calculated on http://msi.nga.mil/MSISiteContent/StaticFiles/Calculators/degree.html
Norwegian coordinates: http://kart.statkart.no/adaptive2/default.aspx?gui=1&lang=2

Latitude

Meters/degree LAT

Meters/degree LONG

Comment

0

110574

111319

Ekvator

58

111378

59133

(Lindesnes, Norges sørligste punkt)

63.5

111470

49804

(Trondheim)

71

111586

34504

(Nordkapp. Norges nordligste punkt)


A Javascript calculator for computing meters/degree out of longitude and latitude can be found at
http://www.csgnetwork.com/degreelenll avcalc.html . By using "View Source"you can retrieve the
Javascript source. The algorithm used are :
// Set up "Constants"
m1 = 111132.92; // latitude calculation term 1
m2 = -559.82; // latitude calculation term 2
m3 = 1.175; // latitude calculation term 3
m4 = -0.0023; // latitude calculation term 4
p1 = 111412.84; // longitude calculation term 1
p2 = -93.5; // longitude calculation term 2
p3 = 0.118; // longitude calculation term 3
// Calculate the length of a degree of latitude and longitude in meters
Function PP_LATLEN(lat)
latlen = m1 + (m2 * Math.cos(2 * lat)) + (m3 * Math.cos(4 * lat)) +
(m4 * Math.cos(6 * lat));
Function PP_LONGLEN(lat)
longlen = (p1 * Math.cos(lat)) + (p2 * Math.cos(3 * lat)) +
(p3 * Math.cos(5 * lat));
A relatively good approximation for latitude ang longitude out of NTM coordinates can be done as follows; "False Northings" is the X offset value within each NTM zone:

  1. Correct "Northings" with the "False Northings" value
    1. Northings1 = Northings – 1 000 000
    2. Eastings1 = Eastings - 100000
    3. Mapzone1 = LONG(Mapzone) + 0.5
  2. Find an approximate latitude out of "Northings" using 58 N as initial latitude
    1. LAT1 = 58 + (1/latlen1)*Northings1, latlen1=111378
    2. LAT1Rad = LAT1 * (2*Math.PI)/360)----degrees to Radius
  3. Using the approximate latitude, recalculate latitude again yielding actual latitude
    1. Latlen2 = PP_LATLEN(LAT1Rad), see above
    2. LAT2 = 58 + (1/latlen2) * Northings1
    3. Repeat step 3 for more adjustment if needed
  4. Using the actual latitude, calculate longitude out of "Eastings"
    1. LAT2Rad = LAT2 * (2*Math.PI)/360)----degrees to Radius
    2. Longlen2 = PP_LONGLEN(LAT2Rad), see above
    3. LONG2 = Mapzone1 + (1/longlen2) * Eastings1


Use the Following Service to Get Lat & Long from Easting, northings & Mapzone
http://epsg.io/trans?x=94850.220000&y=1604694.800000&s_srs=5110
x = Eastings; y = Northings; srs = '51'+MapZone
Use the Following Service to Get Easting & Northings from Lat &Long
http://epsg.io/trans?data=10.922630310058596,63.45824944729649&t_srs=5110
data = Longitude, Latitude
To Check Manually Eastings and Northings to Lat & Long vice versa
http://epsg.io/5110/map#

IFC Coordinates

IFC Coordinate Systems

The IFC model operates with an implied origin, Ifc NULL. While it is possible to specify location relative to IFC NULL for any IFC object, many IFC objects are located relative to another IFC object, yielding local coordinate systems.
The most relevant systems in our case is the IfcSite coordinate system and the IfcBuilding coordinate system. They are illustrated in the figure below:

Figur 1 - IFC coordinate systems for site and building
Here the coordinate system X1Y1 for the IfcSite has a displacement R1 from Ifc NULL coordinate system X0Y0, and no rotation. The coordinate system for the IfcBuilding X2Y2 has a displacement R2 from the IfcSite system and a rotation as well. This also applies to the Z coordinate not shown in the figure.
When geo-referencing an Ifc model we specify the geo-position of the Ifc NULL in NTM coordinates.

IFC Exchange Requirements

If a model is to be displayed correctly in its surroundings, the internal coordinates has to satisfy certain requirements. The proposed exchange requirements are:

ER id (temp)

Requirement

Comment/Motivation

GR-1

All elements belonging to a building like walls, windows, roof slabs etc have to be positioned relative to the corresponding IfcBuilding object.

Makes it possible to rotate and translate the building within the site.

GR-2

All elements belonging to a site like trees, fences, landscape etc have to be positioned relative to the IfcSite object.

Makes it possible to translate and rotate the site (terrain) within the universe.

GR-3

The IfcSite object should be positioned relative to the chosen NTMAs an alternative, another global or regional origin may be used, if NTM is not applicable or feasible. origin. If the NTM origin is not known or relevant at the time, the site position should be set to origin (0,0,0).

Implies that the IFC file provider cannot freely chose the site coordinate origin.

GR-4

The direction of the global Y axis in the Ifc model should be true north.

Not sure if holds / is necessary

IMPORTANT: "Positioned" is by definition specified by a location and a rotation.
NOTE: there exist limitations in software tools for applying these ER's. In some cases it is only possible to apply a single transformation between building and Ifc NULL, in case either R1 or R2 in figure Figur 1 - IFC coordinate systems for site and building will become zero.

Specifying the chosen NTM origin

According to [1]there is no standard way to specify the chosen origin in IFC2x3.
To be able to handle import/export transparently we cannot accept a global transformation of coordinates in the IFC model as a general solution. The transformation used has to be known by the model server to be able to back-transform for transparent re-export of imported IFC files.
For IFC2x3 the EDMmodelServer will handle a "spam" property set "EDMmodelServer_georef" that mimics the "IfcMapConversion" in IFC4. The property set is described in [1] and in section 4.1 Property set for georeferencing.
The population of this property set can be done by the application providing the IFC file or within the EDMmodelServer itself.

Local frames of reference

A local frame of reference means that there is a coordinate system defined spanning multiple buildings / Ifc files. This is a very common way of laying out a building site. This implies that the "NTM Origin" is known and given from the start, and that there exists local axis and reference points that should be known, also within the Ifc Files.
For StOlav this has been (partly) applied to some of the buildings at Øya in Trondheim, where the top of the church tower at Nidarosdomen is chosen as origin.
An illustration is given in the figure below:

Figur 2 - local frames of reference


Georeferering – metoder


Applying georeferencing

So far geo-referencing has been done in the CAD application supplying the IFC file, hence, no EDMmodelServer manipulation functions have been necessary
The following functions are available in the model server to handle geo-referencing tasks on selected model:

Function

Actions done

Geo-reference

  • Coordinates for IfcSite object are transformed according to given values in "EDMmodelServer_georef" property set
  • "EDMmodelServer_georef.IsApplied" is set to true

Geo-dereference

  • Coordinates for IfcSite object are reset to "old" values ahead of geo referencing
  • "EDMmodelServer_georef.IsApplied" is set to false

Geo-rereference

  • Coordinates for IfcSite object are reset to "old" values ahead of geo referencing, and then the specified transformation in "EDMmodelServer_georef" is performed again
  • "EDMmodelServer_georef.IsApplied" is set to false
    The purpose of this function is to enable "manual" adjustments of placement

Read AC map reference

  • Copy values from ArchiCAD "PSET_map_Reference" property set into "EDMmodelServer_georef" property set



Bygninger med målepunkt

I noen tilfeller har vi målepunkt (fastpunkt) for et bygg, det vil si vi vet geografiske koordinater for et eller flere punkt. Vi kan regne ut forholdet mellom IFC-koordinater og geografiske koordinater for bygget dersom vi har minst to fastpunkt som vi kjenner både geo-posisjon og IFC-posisjon til.

I slike tilfeller bør (må) fastpunktene legges inn i BIM'en, foreslått som følger:

  1. Legg inn fastpunktene som objekter, for eksempel IfcBuildingElementProxy i modellen på riktig sted. Da vet vi IFC-koordinatene.
  2. Legg inn georef-egenskapssettet beskrevet i avsnitt 4.1Property set for georeferencing med navn " EDMmodelServer_georef" for alle fastpunkt. Da vet vi geo-koordinatene.

Vi kan beregne posisjon og rotasjon for bygget i forhold til et 0-punkt (Ifc NULL) som vi kjenner geo-posisjonen til. Dersom vi ikke har noe slikt 0-punkt, velger vi et i modellen, for eksempel at av fastpunktene. Beregning kan gjøres manuelt, det vil si ved hjelp av regneark og andre hjelpemidler, men bør ideelt gjøres i modellserver.

Additional information


Property set for georeferencing

The property set given is a subset of the property set described in [1] . The NAME of the property set is not entirely fixed, since the usage for IFC2x3 as described in this document is not defined in any standard.

Property name

IFC4 / [1]

Range/Unit

Name

NTM Zone Name
(IfcMapConversion.IfcCoordinateReferenceSystem.Name)

"EUREF89-NTM-<NTMSone>"

MapZone

Zone within map projection (IfcProjectedCRS.MapZone)

Legal NTM Zone Range is 5..30

Eastings

NTM east coordinate for site
(IfcMapConversion.Eastings)

Meters (real)

Northings

NTM north coordinate for site
(IfcMapConversion.Northings)

Meters (real)

OrthogonalHeight

Orthogonal height relativ to the vertical datum (IfcMapConversion.OrthogonalHeight)

NN1954 value in meter(real)

XaxisAbscissa

X component of site X direction vector (see IFC spec) (IfcMapConversion.XAxisAbscissa)

(real)

XAxisOrdinate

Y component of site X directionvector (see IFC spec) (IfcMapConversion.XAxisOrdinate)

(real)

Scale

Scale to be used when site length unit are different from map length unit
(IfcMapConversion.Scale)

Always 1.0 according to IDM 2010

 

 

 

 

 

 

 

 

 

 

 

 

 

 

IsApplied

True if transformation applied to IfcSite, false else

Boolean

It is possible to use the IfcSite attributes as below, however these are not foreseen implemented, as they become superfluous in IFC4:

  1. RefLongitude, RefLatitude and RefElevation specified in the IfcSite object. This defines LOCATION. The model server will use internal tables to find default NTM Zone and offset values within the zone.
  2. TrueNorth from the IfcSite object. This defines the ROTATION of the georef. The rotation must be given manually, if not, a Y direction pointing true north is assumed.


Archicad issues

Coordinate systems for "IfcSite" and "IfcBuilding" objects

By observation, an IFC file originating from Archicad seems to relate building objects (IfcBuildingStorey, really) to the "IFC origin", which is the one that is geo-referenced. The IfcSite and IfcBuilding objects seem to always have a relative location {0,0,0} and rotation {0} relative to the "IFC origin".
Consequently, it is not possible to define a "local frame of reference" that spans multiple models (Ifc files), as outlined in previous sections. The "local frame of reference" origin is the one that should be geo-referenced, and then all positions can/shall be given relative to the reference point.

Related content