TransWikia.com

Converting a description of polygon with arcs to WKT

Geographic Information Systems Asked by m.reening on February 20, 2021

A document that I am trying to digitize contains descriptions of polygons (see below). The descriptions are converted to WKT for a backend. However, I get stuck at the "along (counter)clockwise arc" segments.

I have made several attempts to do this by having a CircularString that starts and ends at the specified points, and has the middle point at the radius, on the line from the center point of the circle, perpendicular to the line through the start and end points. However, this gave a very distorted shape.

For example, the bearing of the line between 53°06’18.47"N 006°24’23.79"E and 53°13’24.22"N 006°39’29.22"E is about 52 degrees. To get the perpendicular line (it is a circle, so some assumptions are made here), I set out a bearing of (52 deg - 90 deg) = 322 deg from the centerpoint of the circle. At 6.5NM on that line, I find the point 53°12’36.0"N 6°28’21.0"E. Drawn on a map, the segment looks like this compared to the intended shape:

comparison of achieved and intended results

I am currently stuck at how to approach this problem further, without converting the circle to a LineString first, and then intersecting with the start and end points. This is not my preferred approach because of the loss of precision.

53°02'27.95"N 006°16'17.31"E;
53°06'18.47"N 006°24'23.79"E;
along clockwise arc (radius 6.5 NM, centre 53°07'30.00"N 006°35'00.00"E) to
53°13'24.22"N 006°39'29.22"E;
53°17'13.14"N 006°47'39.82"E;
53°12'29.90"N 006°53'48.78"E;
53°08'40.58"N 006°45'36.79"E;
along clockwise arc (radius 6.5 NM, centre 53°07'30.00"N 006°35'00.00"E) to
53°01'35.60"N 006°30'32.01"E;
52°57'44.69"N 006°22'24.16"E;
to point of origin.

Note on this example is that the centerpoint for the circle is the same for both arc, this is not the case for every polygon.

The tools I have available are Python and QGIS. How should I approach this problem?

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP