1

enter image description hereI’d like to extract some specific data from QGIS to be drawn in a Garmin application which uses Monkey C but I am unsure of how to do it.

Currently I use many coordinate points to portray roads made of many dots (like breadcrumbs), I’d quite like to reduce the number of points needed as it gets the XML I store them in too large too quickly so I’m wondering. The way you draw a circle in Monkey C is around a center point (x,y) and use radius to define size. (x,y,radius). I could severely reduce the number of points required if I could isolate all circle shapes in a vector layer and extract their centre coordinates and if possible radius (if that were not possible then a second coord at the perimeter of the circles would suffice as I can then calculate its radius in Monkey C by distance from those two points).

On top of that I could further reduce points by just getting the end points of straight roads (currently there appear to be multiple points in straight lines for some reason), all you need in Monkey C is two points to draw a line.

Is there a way to do this in QGIS, a plug-in, a tool in toolbox, a Python line of code?

I did make an image explaining what I’m trying to achieve but I can’t seem to add it.

What I’ve tried: The simplify tool, although this reduces the amount of points (which is really the end goal to be honest), it changes the road shape which is not necessarily ideal, I have also removed minor roads and kept just highways and secondary roads but this is not as satisfactory due to the fact I want to display a fair amount of roadway. Hence the idea I’ve come up with in the above question but am unsure where to begin.

Further information:

The map I am working from is equirectangular and the Garmin app I’m developing also uses equirectangular so any coords would transfer fine, another note is I’m not converting from polygons but instead what QGIS calls multiline strings. Looking at my provided picture the red dots are I believe the vertices/points of each line so I would have thought there is something that can detect the shape these form and identify a circle. My knowledge of anything not Monkey C is rather limited though.

8
  • Welcome to GIS SE. As a new user, please take the Tour. We're not a discussion site; instead we use a Focused question/Best answer model. The answer to most "Is it possible?" questions is "Yes, of course," but because we require prior research and an attempt as solution, that will be followed with, "What have you tried, and where are you stuck?". I expect your real issue is going to be fitting GPS points to a curve, which will combine natural error and geodesic complexity; using a different format would save more space and processing time.
    – Vince
    Commented Jun 4, 2022 at 12:34
  • @Vince Thankyou for your reply, I have looked at the Tour, I am hoping my question qualifies for gis stackexchange . I have added a “what I have tried section” and clarified a little bit on what I’m looking for, I will try and add the picture too.
    – IceBear123
    Commented Jun 4, 2022 at 13:45
  • When using the Simplify plugin, can you specify a lower tolerance to avoid changing the road shape? Converting polygons to circles is a bit of a stumper. Most of the mapping software I've seen goes the other way: it converts circle to polygons. I believe tools like Leaflet can't even draw circles directly. Of course, the definition of 'circle' is itself dependent on your projection. Commented Jun 4, 2022 at 13:58
  • @barrycarter I have added some further info in the post if it helps.
    – IceBear123
    Commented Jun 4, 2022 at 14:50
  • If you can't post it here, could you post the image to a free image-sharing site? If a "multiline string" is a set of points that starts and ends the same, it's essentially the same thing as a polygon. Commented Jun 4, 2022 at 15:08

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.