basemap
basemap copied to clipboard
Feature to draw great circle around given point
Good day,
This issue relates to this question I asked on Stackoverflow.
In summary, I would like to draw a great circle a fixed distance around a certain coordinate point, as in the linked question.
Is this something that could be implemented with existing functionality, perhaps using drawgreatcircle() or gcpoints(), or will it need to be implemented from scratch? If so, is this a feature that I could perhaps work on and contribute to the project?
Thank you Michael
In the end I managed to get this working, as in the answer I posted to my own question here.
If you think this could be a useful feature, let me know and I'd be glad to contribute it to the project.
Regards Michael
Do be aware that basemap is in maintenance mode, and will be end-of-lifed
at the end of the year, at which point I'll finalize any remaining issues
and cut one final release. You are free to submit a PR if you'd like. I'll
review it. The naming would need work, perhaps equidistant circle. Or
maybe this is properly classified as a Tissot circle (I am not a
geographer, just a meteorologist who stepped up to maintain this project).
What I would strongly encourage you to do is consider adapting your code to use Cartopy, which is generally considered to be basemap's successor. Functionality like what you described here is useful (although, like I noted, the name is wrong and needs to be corrected), and I would hate to see it get largely forgotten just because it was added to a project that is about to go unsupported.
On Thu, Nov 14, 2019 at 12:02 PM Michael Kruger [email protected] wrote:
In the end I managed to get this working, as in the answer I posted to my own question here https://stackoverflow.com/questions/58809429/draw-shaded-region-within-great-circle-distance-from-specified-point-with-matplo .
If you think this could be a useful feature, let me know and I'd be glad to contribute it to the project.
Regards Michael
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/matplotlib/basemap/issues/477?email_source=notifications&email_token=AACHF6HGU6UBPFE4DMOLSZDQTWABVA5CNFSM4JMHLJO2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEECRQJY#issuecomment-553981991, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACHF6GZIZUJCKXWRLWUITTQTWABVANCNFSM4JMHLJOQ .
Thank you very much for the correction on the nomenclature. I myself am not a geographer and know very little on the topic, but found basemap useful for an aviation-related project I am working on. Too bad basemap development will end. Although, that being the case, I will check out Cartopy and see if I can contribute it there. I might also submit a pull request for basemap if time allows.
Thanks for your response Michael
Good day,
I submitted a PR and I'm not sure what to do next, since there are some alerts, although it seems like most alerts are not related to my PR.
Please advise Thanks!
sorry, I have been very busy lately with an upcoming deadline. My plan is to review this PR this upcoming week.
On Sat, Nov 23, 2019 at 3:29 PM Michael Kruger [email protected] wrote:
Reopened #477 https://github.com/matplotlib/basemap/issues/477.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/matplotlib/basemap/issues/477?email_source=notifications&email_token=AACHF6B3PCBUI2ZTZ7EBXOLQVGHCDA5CNFSM4JMHLJO2YY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOVBVKHQI#event-2825561025, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACHF6EOLFIU57ILFXZLGRTQVGHCDANCNFSM4JMHLJOQ .
No problem. I thought maybe I should do something. Thanks!
From the linked description, it sounds like you want to draw a circle a given real-world/great-circle distance from a given point, rather than drawing a great circle with a given point as one of two "poles" to the new "equator" or whatever the terminology is, is this correct?
This sounds like the description for the Tissot Indicatrix code already in Basemap (docs here, code here), although with the radius in meters or kilometers rather than degrees. It should be straightforward to write a wrapper for that function to take the radius in whatever length units, divide by the earth radius to get radians, and then multiply by $180/\pi$ to get the radius in degrees.
Alternately, you could copy that function and skip the line that determines dist, passing that instead of radius_deg, which would be slightly more accurate.
Do those work for you?