Question

How are ArcByCentrepoint (and Circle) implemented in AIXM 5.1/GML?


Badge

Hello everyone!

 

I struggle with understanding how ArcByCentrepoint (and Circle) are implemented in AIXM 5.1/GML. I ingest exactly the same dataset in FME and QGIS. However, in FME everything looks correct whereas QGIS butchers the geometry.

 

I tried this with class C airspaces around Munich and other airspaces. The system behavior is the same regardless of the airspace. These discrepancies are not just ugly, but they also lead to partially invalid geometries. I have attached example screenshots.

In FME

EDDM Airspace C in FME In QGISEDDM Airspace C in QGISI believe that these discrepancies may occur due to each application utilizing a slightly different projection, e.g. UTM, AZMED, AZMEA, and other local coordinate reference systems are probably just part of a longer list. With each projection, the displayed geometries are slightly differently skewed in terms of distances and angles.

 

So far, I have selected Lambert Azimuthal Equidistant Projection for my calculations/constructions, which originate at the circle’s midpoint. In my understanding, it is possible to measure the radius and angles very precisely once projected. I use the "CommonLocalReprojector" to accomplish this task.

 

Whether that is the ideal approach to projection is debatable. However, it would be important to standardize the projection used for calculating angles and distances. Ideally, this would not be in UTM since problems with the different UTM zones occur rather quickly.

 

Since everything works well using FME, I would like to know which projection is used in FME to interpret these geometries and preferably learn the reason for the incorrect display in QGIS?

To standardize the processes in our organization, it would be helpful if somebody could outline the steps that lead from a GML-geometry to a stroked arc in the inspector - not in FME-Transformers but technically.

 

Thank you for your help,

Jan-Philipp


3 replies

Userlevel 3
Badge +13

Hello @jan-philipp​, thanks for posting! I can’t speak directly to why the results in FME and QGIS differ, but I can give you some pointers I received from our development team after reviewing your post! Though the difference could be caused by many things, one aspect to consider is the unit of measure for the radius, which for AIXM is usually nautical miles, but it could be feet, meters, etc. Please see the following resources:

Otherwise, it could also relate to how the arc direction is interpreted while taking the start and end angles into account (see resource). Someone else with better background on the subject may be able to input more, but please let me know if you have any other related questions. Happy to help, Kailin.

Badge

Hello @jan-philipp​, thanks for posting! I can’t speak directly to why the results in FME and QGIS differ, but I can give you some pointers I received from our development team after reviewing your post! Though the difference could be caused by many things, one aspect to consider is the unit of measure for the radius, which for AIXM is usually nautical miles, but it could be feet, meters, etc. Please see the following resources:

Otherwise, it could also relate to how the arc direction is interpreted while taking the start and end angles into account (see resource). Someone else with better background on the subject may be able to input more, but please let me know if you have any other related questions. Happy to help, Kailin.

Hi Kailin,

 

Thank you for your quick reply.

I think I'm familiar with the posts you provided. I assume our implementation is compliant with the AIXM specification. This is supported by the fact that in both QGIS and FME the Airspace-Arcs are in principle displayed correctly. Only the radius varies which causes the artefacts I outlined in my post above.

 

If you are in contact with the developers, could you perhaps outline to me, what happens in FME internally, when I execute a "GeometryReplacer" with a GML-Arc (in EPSG:4326) followed by an "ArcStroker". Of special interest for me would be, which projection(s) is/are used in the process, what factors are used for converting the radius to meters (is it 1NM = 1852m as I suspect?), and what causes the rotation of the arc that sometimes appears in the Inspector. Is that because UTM is involved?

 

These pieces of information would be incredibly valuable for integrating FME into a standardized workflow in our organization.

 

Thank you and best regards,

JP

Userlevel 3
Badge +13

Hi Kailin,

 

Thank you for your quick reply.

I think I'm familiar with the posts you provided. I assume our implementation is compliant with the AIXM specification. This is supported by the fact that in both QGIS and FME the Airspace-Arcs are in principle displayed correctly. Only the radius varies which causes the artefacts I outlined in my post above.

 

If you are in contact with the developers, could you perhaps outline to me, what happens in FME internally, when I execute a "GeometryReplacer" with a GML-Arc (in EPSG:4326) followed by an "ArcStroker". Of special interest for me would be, which projection(s) is/are used in the process, what factors are used for converting the radius to meters (is it 1NM = 1852m as I suspect?), and what causes the rotation of the arc that sometimes appears in the Inspector. Is that because UTM is involved?

 

These pieces of information would be incredibly valuable for integrating FME into a standardized workflow in our organization.

 

Thank you and best regards,

JP

Hello @jan-philipp​, correct, FME's implementation is compliant with the AIXM spec. If we take a look at the Creator transformer, we can get a good idea of what FME requires to create an ArcByCentrePoint:

ArcByCentrePointIn AIXM the center point is usually in lat lon (but not always!). FME will try to interpret the unit of measurement of the radius lengths and circles. FME arcs and circles radius are assumed to be in the same ground units as the coordinate system. In this case, AIXM5 data is in EPSG:4326 (unless you're using a different one) where the ground units are lat lon, and therefore you have to calculate the length of one degree.

 

The length of one degree may vary for a specific latitude, so we have to take into account the different factors for latitude and longitude. These links should help:

Length Of A Degree Of Latitude

When constructing the FME arc, the longitude portion of the AIXM radius becomes the FME arc's primary radius, and the latitude portion the secondary radius. I'm not sure if this answers your question 100% , so let me know if something still isn't clear! Happy to help, Kailin

 

Reply