Johannes Hofmann
66fb1d8f02
Fix README.md link
7 år sedan
Johannes Hofmann
f70407d4ce
Move MIN_ZOOM_LEVEL, MAX_ZOOM_LEVEL to map_view
7 år sedan
Johannes Hofmann
2d3600907d
README.md: Add compilation instructions
7 år sedan
Johannes Hofmann
41c480b1d1
Fix code that assumes that tiles touch the poles
Web-mercator tiles don't touch the poles.
7 år sedan
Johannes Hofmann
755ea56825
Fix tile loading discontinuity at 180th meridian
Tiles near the viewport center should be loaded first. This commit
fixes a discontinuity in the distance function that is used to sort the
queue of requested tiles.
7 år sedan
Johannes Hofmann
3dbfa7769d
query::KeyValueQuery: Use raw tags for dense nodes
7 år sedan
Johannes Hofmann
b95968c3ed
Update dependencies, min Rust version to 1.25.0
crossbeam-utils needs Rust >= 1.25.0
7 år sedan
Johannes Hofmann
b3149bc777
Accelerate key-value queries
by examining the stringtable for each PrimitiveBlock before iterating
over the contained elements.
7 år sedan
Johannes Hofmann
f974ea1701
Add key-value queries
* Add --keyval command line option to search for elements with a
specific tag
* Add query module and Query trait to abstract over different types of
queries
7 år sedan
Johannes Hofmann
f07306b538
Update dependencies
7 år sedan
Johannes Hofmann
1e62ec6a99
Update directories (to 1.0)
7 år sedan
Johannes Hofmann
98a1ace781
Add windows_subsystem crate attribute
7 år sedan
Johannes Hofmann
9a40c6dfb7
Fix virtual key code mapping for zooming
7 år sedan
Johannes Hofmann
d9d2dd7e3c
Log winit events at trace level
7 år sedan
Johannes Hofmann
63531915dd
Use high precision for all shaders
medium precision causes visible seams between tiles on some drivers.
7 år sedan
Johannes Hofmann
bb87e09bc1
Update glutin (to 0.18)
7 år sedan
Johannes Hofmann
f95d4268c8
Add OrthograficView::zoom_at
which only includes a dummy implementation.
7 år sedan
Johannes Hofmann
76666e804c
Update dependencies
7 år sedan
Johannes Hofmann
f0dcd3a80c
Fix OrthograficView::covers_viewport
7 år sedan
Johannes Hofmann
4b7f8419c0
Remove some superfluous calls to check_gl_errors
7 år sedan
Johannes Hofmann
87739486fd
OrthograficView::radius_physical_pixels -> diameter_*
7 år sedan
Johannes Hofmann
15c9e053e9
{mercator,orthografic}_view: Convert ScreenCoords
Add functions to convert screen coordinates to MapCoord/LatLonRad.
7 år sedan
Johannes Hofmann
03c33086ba
Spherical tile visibility, part IV
Partial solution. Check AABB of tile vertices.
7 år sedan
Johannes Hofmann
2651bfe138
Fix clippy warnings
7 år sedan
Johannes Hofmann
b3e327b59c
Add overly dramatic atmosphere layer
Toggle with Ctrl+h
7 år sedan
Johannes Hofmann
1bad7a91bd
Also draw markers in orthografic view
7 år sedan
Johannes Hofmann
b3dc228f1e
Remove redundant viewport parameter from draw fns
7 år sedan
Johannes Hofmann
2642342dab
Add module projection, store projection in Session
and restore the projection of the last session.
7 år sedan
Johannes Hofmann
69a245c187
Fix accuracy issue at high zoom levels in ortho view
This now uses an f64 transformation matrix (instead of f32) to transform
points on the sphere to screen coordinates. Conversion to f32 vertex
positions happens as a last step before uploading to a GPU buffer.
7 år sedan
Johannes Hofmann
6269775c2c
buffer: Add missing draw modes
7 år sedan
Johannes Hofmann
7d5997991a
Improve tile rendering in orthografic view
* Reach feature parity with mercator view:
* Resize tile atlas to reduce draw calls
* Fill in tiles from other zoom layers
7 år sedan
Johannes Hofmann
d92bde5ac4
Add trait tile_atlas::VisibleTilesProvider
This enables the implementation of TileAtlas::textured_visible_tiles for
different kinds of visible tiles, e.g. for different layers.
7 år sedan
Johannes Hofmann
7a3a12aa68
Rename tile_layer -> mercator_tile_layer
and TileLayer -> MercatorTileLayer
7 år sedan
Johannes Hofmann
2084a7bb2d
Update dependencies
This fixes a glutin/winit issue that resulted in 100% CPU usage because
of repeated X11 ConfigureWindow/ConfigureNotify events.
7 år sedan
Johannes Hofmann
cf5a195488
Spherical tile visibility, part III
Still a partial solution. Uses region growing starting from the central
tile and checks if at least one of the vertices is visible.
7 år sedan
Johannes Hofmann
eefea571ea
Add orthografic_view::tile_neighbors and tests
7 år sedan
Johannes Hofmann
cd29a5f0c8
Update glutin (to 0.17) and become DPI aware
7 år sedan
Johannes Hofmann
4803a02187
Update dependencies (except glutin/winit)
7 år sedan
Johannes Hofmann
cf7f21acc3
Restructure modules
* Split up map_view module into
* map_view
* mercator_view
* orthografic_view
7 år sedan
Johannes Hofmann
333593ca95
Rename ViewMode -> Projection
ViewMode::Flat -> Projection::Mercator
ViewMode::Globe -> Projection::Orthografic
7 år sedan
Johannes Hofmann
c8f358ebc6
Spherical tile visibility, part II
Still not solved. Tried to approach by calculating properties of
elliptical arcs, but there are so many edge cases...
7 år sedan
Johannes Hofmann
696d382fc8
Add globe view mode, partially solve tile visibility
* Toggle between ViewMode::Flat and ViewMode::Globe with Ctrl+G
* Approach tile visibility problem at the sphere
7 år sedan
Johannes Hofmann
c8959c4fdc
coord: Add TileCoord::globe_norm
7 år sedan
Johannes Hofmann
e64385d0ca
Add TileCoord::children_iter method and Iterator
7 år sedan
Johannes Hofmann
cfbf9d20fa
globe_tile_layer: Add missing tiles to globe's edge
7 år sedan
Johannes Hofmann
f482a08091
coord: Fix conversion edge cases
This removes the holes of the globe at the poles.
7 år sedan
Johannes Hofmann
d51ed6a905
globe_tile_layer: Combine transformation matrices
7 år sedan
Johannes Hofmann
7034b667a9
Fix seams between globe tiles
7 år sedan
Johannes Hofmann
408f7da93e
Rename coord::LatLon -> coord::LatLonDeg
7 år sedan
Johannes Hofmann
f5f4e00d26
coord: Add some conversions and tests
7 år sedan