Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Azimuthal projection centered on custom coordinates #493

Closed
mapsmak353478 opened this issue Mar 26, 2021 · 7 comments · Fixed by #538
Closed

Azimuthal projection centered on custom coordinates #493

mapsmak353478 opened this issue Mar 26, 2021 · 7 comments · Fixed by #538
Milestone

Comments

@mapsmak353478
Copy link

Thank you very much for this great program

I would like if possible to ask for the possibility to change the map projection used concerning the azimuthal projection centered on the north pole.

For example that we can modify the azimuthal projection by choosing our own coordinates, like in QGIS with the Proj4 projection

For example here is an azimuthal projection centered on a custom coordinates point
+proj=aeqd +lat_0=23.4 +lon_0=31 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m +no_defs

Is the same thing possible in this application, while keeping the same functionalities (solar illumination), moon/sun position on the personal azimuthal map, etc)

Thank you very much for your work (can you add donations in cryptocurrencies like Monero please, it's much easier to make donations, thanks) ;)

@forrestguice
Copy link
Owner

forrestguice commented Mar 28, 2021

Its not impossible but definitely challenging.

The azimuthal projection currently uses simplified formulas - the math is a lot easier when centered on the north pole. These could be carefully reworked to allow for custom coordinates. This would allow the app to draw the shadow bitmap and overlay moon/sun positions. That seems to be the easy part.

That shadow bitmap is then layered over a map background, a png created once with QGIS (by "printing" a shapefile in the given map projection). The app would need to somehow re-project the background to be centered on the custom coordinates. I'm not entirely sure how to go about doing this, but I suspect its probably possible if the background were stored as an svg instead.

That makes user-configurable coordinates difficult. The shadow bitmap could be displayed on its own, but without any reference points its probably not useful. Including a projection centered on non-configurable coordinates is 'easy enough' (by re-projecting the background with QGIS, recompiling the app, etc), but probably only useful for a few people.

I can look into accepting donations in crypto. I don't personally use these currencies (but recognize them as a store of value). I'm not sure whats required to "do it right". Is it as easy as generating an address (with something like "Paper Wallet") and publishing that to the readme? I'm not real keen on actively monitoring some blockchain (or whatever is required to properly maintain a wallet).

@mapsmak353478
Copy link
Author

Hi brother

Okay I got it, thanks for your answer.

To me, the easiest thing to do (for advanced users only) would be the following:

  1. Add the possibility to specify custom azimuthal coordinates for the shadow bitmap and overlay moon/sun positions.

The shadow bitmap and the moon/sun positions will then be calculated for the azimuthal coordinates that the user has chosen.

  1. Then, the user will have to generate himself the background map in QGIS (png format, 1024x1024 px) with the same coordinates as in the SunTimes application (so that the shadow bitmap corresponds to the map)

The user will only have to change the azimuthal north pole map for his personal map that he has generated

What do you think about it?


OFF TOPIC
"I can look into accepting donations in crypto.
--> I advise you to use Monero.
Bitcoin is not anonymous, everything is transparent on the blockchain.
Imagine that anyone on earth has access to your bank account, how much money you have, what you bought, where you transferred your money, etc. EVERYTHING is accessible.

Monero is digital cash, truly anonymous, untraceable, fungible, decentralized from A to Z, both at the level of the nodes but also for mining thanks to the RandomX protocol, everything that noobs think of crypto when buying Bitcoin is in fact Monero. I'm not going to get into the controversy or the details here.

Some useful links:
https://web.getmonero.org/get-started/faq/
https://localmonero.co/knowledge/why-monero-is-better
https://localmonero.co/knowledge/monero-mining-randomx
https://localmonero.co/knowledge
https://www.youtube.com/watch?v=QrHsFZBab4U

You just have to download the official GUI wallet here https://web.getmonero.org/downloads/
Then create a Monero wallet, be careful to note the seed of your wallet, it must be stored in an ultra-secure place (a encrypted Veracrypt volume or buried 10m underground written on an indestructible paper, it's up to you, whoever has your seed has your Monero wallet. Be careful with this.

You have the choice to download the whole blockchain (about 110GB, to synchronize quickly you have to do it on an SSD) to use your Monero wallet on your own local node connected to the rest of the decentralized nodes of the network.This is the most secure and anonymous method, or if you don't have time you can connect directly to other nodes of the network (if you are paranoid you can use a VPN or Tor)

Then once your wallet is synchronized to the network, you just have to create a sub-address and share it so that people can send you Monero all over the world absolutely anonymously and untraceably.

Why not your main Monero address (starting with a "4") instead of a sub-address (starting with "8")?
https://localmonero.co/knowledge/monero-subaddresses

Post a sub-address of your Monero wallet here, I'll give you a 10€ donation as soon as I see it.
You will never know where these Moneros will come from, nothing and nobody will know where these Moneros come from, neither the amount nor the original Monero address (my Monero wallet), not even from which IP address (thanks to Dandelion++ anonymization)
https://localmonero.co/knowledge/monero-dandelion

@forrestguice
Copy link
Owner

Its definitely an "advanced feature", but what you propose sounds like a reasonable way to implement this. I am open to including this as part of v0.14.0 (along with a few other worldmap refinements). These releases are usually several months apart though - or whenever I have time/energy for a "full sprint" - I don't anticipate tagging the next one until June (or later).


off-topic
Thanks for the info on Monero - I haven't acted yet but this is very interesting. I was aware of the privacy implications of Bitcoin, which is why I've hesitated to request it in the readme - my understanding is that the "right way" to spend/receive is to create and use a unique address for every transfer (to avoid a shared record that later compromises privacy). That's inconvenient - it seems collecting all donations in a single bitcoin address is actually a mistake from a privacy standpoint (yet F-Droid does this.. it probably makes auditing easier).

@mapsmak353478
Copy link
Author

mapsmak353478 commented Apr 14, 2021

Thank you I am looking forward to this new feature.


OFF-TOPIC
Almost all cryptocurrencies offer only single wallet addresses. If you post your Bitcoin address here, it will be permanently and FOREVER linked to your identity. The whole world will be able to look at your Bitcoin wallet and know how much money you've received, who gave you money, what you did with it, etc.

It's a privacy nightmare. Your Bitcoin address will be linked to you forever.
Many Bitcoin users are beginning to discover the very unpleasant incoveniences of a transparent, non-fungible cryptocurrency.
Here is a terrifying, non-exhaustive list : https://sethsimmons.me/posts/fungibility-graveyard/

Remember : Real money is fungible. Bitcoin is not. Monero is anonymous and opaque by default, so no more problems.

"my understanding is that the "right way" to spend/receive is to create and use a unique address for every transfer (to avoid a shared record that later compromises privacy).That's inconvenient - it seems collecting all donations in a single bitcoin address is actually a mistake from a privacy standpoint"

Monero brings a simple solution, you don't need to create different addresses (seed) thanks to sub-addresses.

Once your Monero wallet is created, you have your main address (which starts with a "4"). This main address should never be shared (unless you know exactly what you are doing).
You can derive as many sub-addresses (starting with "8") as you want from your seed, a kind of like the branches of a tree. Subaddresses are mathematically and cryptographically not reliable with your main address.

Why is this useful?
-> https://localmonero.co/knowledge/monero-subaddresses
https://web.getmonero.org/2019/10/18/subaddress-janus.html

image

@mapsmak353478
Copy link
Author

Hi brother

Any update on this feature ?
Thanks have a good day

forrestguice added a commit that referenced this issue Jan 18, 2022
adds azimuthal projection with arbitrary center coordinates #493
@forrestguice
Copy link
Owner

Your ears must be burning or something ;) because I've been working on this recently (right now in fact).

There is code in the worldmap-background branch for loading an arbitrary background image, as well as a partially complete azimuthal projection that centers on a given location. Its not working quite right though, and not so easy to debug. With any luck it will be in v0.14.0.

@mapsmak353478
Copy link
Author

Hi

Lol I wanted to post this message long before but it took me on the moment to do it now
Telepathy? ;)

Great, I'm waiting for this option with impatience
Thanks brother

forrestguice added a commit that referenced this issue Jan 19, 2022
implements forward equations for equiazimuthal oblique projection (#493); adds test.
forrestguice added a commit that referenced this issue Jan 21, 2022
implements inverse equations for equiazimuthal oblique projection (#493)
@forrestguice forrestguice added this to the v0.14.0 milestone Jan 21, 2022
This was referenced Jan 29, 2022
forrestguice added a commit that referenced this issue May 3, 2022
changes map widgets to use custom center/background options if app is also configured to do so (#493)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants