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

block axis2 #163

Merged
merged 36 commits into from
Jan 4, 2024
Merged

block axis2 #163

merged 36 commits into from
Jan 4, 2024

Conversation

SimonDanisch
Copy link
Member

@SimonDanisch SimonDanisch commented Apr 19, 2023

Continuation of #148

This PR does the following:

  1. Reimplement GeoAxis as its own layoutable Block
  2. Add a new transformation framework which can later be built out to use e.g. geodetic lines
  3. Add Geodesy.jl for 2.5D (lat, long, alt) to 3D (earth-centered cartesian) transformation!

@asinghvi17 asinghvi17 self-assigned this Apr 23, 2023
@asinghvi17
Copy link
Member

This is pretty gnarly to work through, because there are multiple bounding boxes one might care about. So, I propose to split the geoaxis into three separate cases:

  1. InputSpaceAxis: an axis whose bounding box is defined by input space. This has curved spines - consider it similar to GMT's axes, in that the spines curve along lon/lat lines. No inverse transform needed, but cannot handle coordinate singularities.
  2. NonlinearAxis: a square-framed axis which only applies transformation to gridlines and tick positions. Simplest and easiest to interact with. Requires some kind of inverse transform to get limits.
  3. OutputSpaceAxis: an axis whose frame is the border of valid space, i.e., the outline of the circle of the globe in an orthographic projection.

@briochemc
Copy link

briochemc commented Dec 4, 2023

Sorry if this is just bothering noise, but here are my first notes after attempting to run most_projections.jl. Things look good at first glance, with GLMakie giving something like below

Screenshot 2023-12-04 at 10 41 32 pm

But, I noticed that:

  • titles do not appear (I saw that title= does not work "yet" somewhere as a comment in the code already)
  • Latitude tick labels show the first/last longitudes instead of the latitude

I also noticed differences between backends (but that may be just on my end?), in particular that with CairoMakie,

  • GeoAxes for k ≤ 4 don't show at all
  • grids disappear for all GeoAxes after the 5th GeoAxis is added

@briochemc
Copy link

Side question to help me contribute: What's your setup to check the docs? I tried to serve them locally with LiveServer.jl but cannot get it to work... Maybe it's because I don't have the same environment? Should the docs/Manifest.toml file be version-controlled?

@SimonDanisch
Copy link
Member Author

@briochemc to be honest, I've always just run the examples, which are included into the docs (GeoMakie/examples/*)...
I added titles and improved the ticks a bit and cleaned up some other things...
I didn't realize how bad tagged GeoMakie is, so I'd say we merge this even though its far from perfect...

@SimonDanisch SimonDanisch merged commit 782a388 into master Jan 4, 2024
3 checks passed
@SimonDanisch SimonDanisch deleted the sd/block-axis2 branch January 4, 2024 23:03
likev added a commit to likev/GeoMakie.jl that referenced this pull request Apr 25, 2024
lonlims and datalims were removed in MakieOrg#163
asinghvi17 added a commit that referenced this pull request Jun 12, 2024
* Update README.md

lonlims and datalims were removed in #163

* Update italy.jl

* Update osmmakie.jl

* Update graph_on_usa.jl

* Update GeoMakie.jl

* Update osmmakie.jl

* Update graph_on_usa.jl

---------

Co-authored-by: Anshul Singhvi <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

4 participants