4a82055867
Some more code cleanup
2023-12-26 20:05:38 +01:00
14dc2af877
Code cleanup
2023-12-26 14:14:08 +01:00
9380f31022
Code cleanup
2023-12-25 11:12:52 +01:00
5f76427ba4
Code cleanup
2023-12-25 10:49:50 +01:00
d4b731aeaf
Use MIB numbers for QTextCodec fetching
...
Discard the "broken name cache" workaround and use QTextCodec search based
on MIB numbers.
2023-12-22 09:32:47 +01:00
3d27b4ea00
The codec is always set in load(), use the default constructor
2023-12-21 17:27:27 +01:00
502a7b4129
Do not have a separate class/file for ENC style retrieving, move
...
the stuff to the ENC raster tile constructor
2023-12-21 16:57:11 +01:00
6f32c73684
Added infinitive recursion assert
2023-12-21 16:55:42 +01:00
829d85a70a
Optimize TextCodec initialization
...
QTextCodec initialization is very slow due to it's broken caching in Qt when
ICU is enabled. Make TetCodec initialize fast anyway as it may be used very
often in IMG maps (every LBL subfile has it's own codec!).
2023-12-21 01:31:44 +01:00
bff27df10c
Fixed race conditions on local static data
2023-12-21 01:13:36 +01:00
11ac5da640
Increase the default pixmap cache size on Android to 384MB
...
We need at least 4 * 4096x4096x4 for overzoomed vector tiles + additional
memory for remaining pixmaps (GUI icons, ...)
2023-12-18 21:18:50 +01:00
112dc59cf2
Fixed broken map scale (ruler) on HiDPI maps
2023-12-18 20:35:55 +01:00
aa892f6c3f
Limit the overzoom by the resulting tile size rather than number of levels
...
Huge sizes may cause broken rendering and cache ping-pong. Do not allow
resulting tile sizes > 4096x4096px.
2023-12-18 20:32:00 +01:00
c1c8f6303c
Code cleanup
2023-12-11 21:13:11 +01:00
5fcc27c176
Fixed broken TMS maps rendering
2023-12-11 20:31:13 +01:00
77e9fae19d
Asynchronous rendering of online vector maps
2023-12-11 20:11:16 +01:00
148fc76d5a
Added support for online vector maps overzoom
2023-12-11 18:54:46 +01:00
6f1f5fd965
Limit the overzoom to max 3 levels
2023-12-10 15:34:39 +01:00
58cd2a826d
Added support for MVT overzoom
...
Requires QtPBFImagePlugin version 2.7
2023-12-10 15:24:39 +01:00
5525ba6e8c
Code cleanup
2023-12-10 08:51:18 +01:00
63d3558b14
Provide the zoom level to QImageReader when fetching the tile size
...
Although technically not needed here, it workarounds the issue with the broken
Qt SVG imageformat plugin (QTBUG-119910).
2023-12-10 08:46:26 +01:00
eee4f31369
Cosmetics
2023-12-09 18:48:44 +01:00
bac55e317b
Added workaround for broken Qt SVG image plugin colliding with the MVT plugin
2023-12-09 18:00:24 +01:00
c4bd3d39d1
Fixed possible double delete
...
QCache takes ownership (deletes the object) even if insert returns false!
2023-11-26 12:32:14 +01:00
6d03834167
Improved error reporting
2023-11-26 10:51:37 +01:00
cbca92513b
Fixed crash on empty MBTiles files
2023-11-26 09:07:08 +01:00
0a5d5315c0
Code cleanup
2023-11-20 23:31:42 +01:00
95d354f10c
Fixed map bounds limiting
2023-11-18 23:55:58 +01:00
aedbc99a6c
Improved MBTiles map loading performance when metadata table present
...
+ Fixed zoom limiting
2023-11-18 23:29:18 +01:00
04f9457085
Fixed bounds limiting
2023-11-18 21:32:30 +01:00
bbc03ae59f
Render MBTiles maps asynchronous if they include vector tiles
2023-11-17 17:39:33 +01:00
059ed3aa14
Dothe QImage -> QPixmap transformation in parallel
2023-11-17 16:17:53 +01:00
f258ca1a3e
Prevent broken Qt heuristics to put submenus on wrong places on Mac
2023-11-17 13:41:01 +01:00
8ebd73115f
Added "Open recent" menu
2023-11-15 01:24:39 +01:00
75a757cc0c
Added support for GPSDump WPT files
2023-11-08 22:36:05 +01:00
b27981fe0f
Fixed build with Qt versions < 5.12
2023-10-28 14:20:06 +02:00
7611bb15a7
Added missing DEM cache row on Mac
2023-10-28 12:10:51 +02:00
043a27dfae
Use new GUI icons that fit the recent platform styles.
...
Switched to a new flat color icon set on Windows/Mac and platform provided
icon themes (e.g. Breeze) on Linux with a fallback to the Papirus theme. All
the GUI icons are now SVG.
2023-10-27 20:32:13 +02:00
6c50402423
Display ferry line names
2023-10-23 21:57:01 +02:00
f24e70dc91
Fixed maximal lines angle check
2023-10-22 23:45:10 +02:00
e1e0392917
Discard empty segments
2023-10-22 20:42:05 +02:00
1033ca2840
Added "Open directory" action for desktop systems
...
closes #522
2023-10-13 02:21:34 +02:00
e63fbffe08
Silenced compiler warnings
2023-10-10 23:05:15 +02:00
78240787ab
Fixed line splitting algorithm
2023-10-10 08:11:08 +02:00
197c3b91be
Fixed/improved path label layout algorithm
2023-10-09 21:58:03 +02:00
b123981dde
Fixed llBounds() functions with broken signatures
2023-09-25 18:20:37 +02:00
0531389cd8
Fixed storing of WMTS tiles with file system incompatible tile matrix names
2023-09-16 14:29:09 +02:00
a281a68cbd
Decreased map zoom level treshold to 80%
...
There are evidently more maps that have bigger diferences in bounding box
latitudes which lead to differnt resolutions for the same zoom level in
Mercator projection than maps that would have zoom level differences < 20%.
2023-09-15 23:28:55 +02:00
2e7f8dc341
Fixed map resolution computation for maps > world/2
2023-09-15 23:28:16 +02:00
d310399b4f
Fixed Qt6 build
2023-09-14 19:02:19 +02:00
845a4b2921
Yet another TrekBuddy compatability enhancement & fixes
...
+ related map API refactoring
2023-09-14 18:36:03 +02:00
00fff55cd3
Check for bounds overflow in the computed/approximated case
2023-09-13 22:33:14 +02:00
722f3acb1e
Support all variants of TrekBuddy maps/atlases
...
Added support for gmi calibration files and arbitrary named tba/map/gmi files.
2023-09-13 20:02:24 +02:00
b38cf31920
Allow arbitrary .map file names in TrekBuddy TAR maps
2023-09-12 22:05:42 +02:00
2884c39367
Contiguous zones
2023-09-12 08:47:39 +02:00
1124a1adb4
Distinguish silos and tanks
2023-09-10 11:41:38 +02:00
d1e632523a
Refactoring
2023-09-08 19:26:46 +02:00
b1f104c2ec
Added support for ENC atlases (catalogues)
2023-09-07 09:31:23 +02:00
0f26114f5d
Two-way radio reporting points
2023-09-03 10:59:43 +02:00
f85634af3f
Fixed Android build
2023-08-30 20:56:04 +02:00
903c925e2a
Added the "Don't show again" checkbox also to map load error messages
2023-08-30 20:43:29 +02:00
490052bc6c
Fixed broken "Use styles" persistent configuration
...
Fixes #511
2023-08-29 22:06:08 +02:00
6cba68f0d1
The logging period is apparently an int, not a byte in GHP files
2023-08-29 22:03:05 +02:00
e34f77f1a1
Use the real file names for suffix extraction on Android
...
Many file URLs/paths that are passed to GPXSee on Android are unusable for
extracting the file suffix due to the Android file name mangling. Use
the converted "display names" for suffix extraction where possible.
2023-08-28 20:18:38 +02:00
00e8004042
Improve GHP data detection
...
Do not consider all files with size divisible by 20 as valid GHP data... Require
at least on valid data point.
2023-08-28 20:14:30 +02:00
128ce8d78c
Added missing windmill and flagstaff landmark icons
2023-08-24 09:07:01 +02:00
04ef7ba092
If there are multiple labels for a point, use the one with the highest priority
2023-08-19 13:36:20 +02:00
f683525fce
Fixed/improved map info background rendering settings
...
All text items on the map (including path marker info) have now the same
background color (the map background color) and the "info background" option
also applies to all items now.
2023-08-19 11:01:12 +02:00
03711ede97
Re-introduce the zoom level offset
...
Most Mapsforge themes expect the zoom levels to be offset by one from
the standard OSM zoom levels. Additionally, the rendering is much faster
which always helps when dealing with a format that slow like Mapsforge...
2023-08-13 13:00:05 +02:00
984a8b6afc
Try to open all files when browsing using the keys
2023-08-12 07:44:36 +02:00
f998148fec
Added option to surpress error messages
...
Closes #487
2023-08-12 06:55:50 +02:00
7e10e6640c
Added support for the "base-stroke-width" rendertheme parameters
2023-08-09 01:19:41 +02:00
97b61451b1
Removed the zoom level offset hack
...
In the Mapsforge library the offset is dependent on the tile size which is
in turn dependent on whether the tiles are hidpi or not. In other words
the Mapsforge library is broken and inconsistent between hidpi/non-hdpi
displays. GPXSee is consistent here and we have thus tochoose one zoom level
mapping (i.e. what zoom level corresponds to what resolution). Lets choose
"no offset" = more details on a given zoom level/resolution.
2023-08-09 01:12:42 +02:00
d064cedbbe
Apply the Mapsforge maps zoom levels offset
...
Offset the Mapsforge zoom level when fetching data/rendering the tiles to get
the expected data/sizes/widths for the tiles at the given zoom level.
2023-08-05 18:56:55 +02:00
61b51e5596
Be more tolerant to unknown file header data
2023-08-04 09:34:36 +02:00
4bf81e020f
Yet another code cleanup
2023-08-03 00:39:56 +02:00
e07e109c7d
Code cleanup
2023-08-01 23:38:33 +02:00
dcf45475ba
Show the arrows even when no label is set
2023-08-01 23:21:49 +02:00
3e8b54f605
Added hi-dpi one-way street (+ water ways) arrows
2023-07-31 23:36:14 +02:00
96e762beb5
Properly mark one-way streets in data from NET links
2023-07-14 09:52:27 +02:00
b4be5ea206
Display one-way streets info in IMG maps
2023-07-13 11:59:53 +02:00
cd220216dd
Do not affect the map object scaling when resizing the tiles
2023-07-04 20:27:41 +02:00
0d6b02f466
Removed obsolete include
2023-06-30 09:55:35 +02:00
059c515175
Added graph pinch zooming
...
Fixes #501
2023-06-29 07:22:11 +02:00
688861bf65
Code cleanup
2023-06-23 09:30:44 +02:00
41188360bf
Make the Mapsforge tiles sufficient large for the layout
2023-06-14 00:40:00 +02:00
9afeaf672a
Properly match symbols to captions
2023-06-10 08:11:18 +02:00
5ddd63e697
Do not limit text that was not inserted
2023-06-06 07:32:42 +02:00
88fa1ed786
Some more Mapsforge maps rendering improvements
2023-06-06 07:18:31 +02:00
1233d20a21
Added support for lineSymbols in Mapsforge maps
2023-06-04 23:56:00 +02:00
1746eddb8d
Code cleanup
2023-06-03 13:35:29 +02:00
ecda5103c8
Properly handle Mapsforge style menus
2023-05-31 01:01:42 +02:00
2b300fab54
Code cleanup
2023-05-29 23:19:16 +02:00
961061b643
Added rescue station
2023-05-28 11:28:12 +02:00
8bebea53ad
Added LNDELV elevation values
2023-05-28 10:40:39 +02:00
c3b484bb75
Properly include std::isnan()
2023-05-26 21:57:45 +02:00
d6d43baec5
Optimization
2023-05-26 21:30:27 +02:00
c6c3e0978c
Use generic icon rotate instead of special icon draw functions
2023-05-26 21:28:44 +02:00
320b04c3fa
Added support for line "dy" parameter
2023-05-22 23:29:04 +02:00
822a0c2866
Tile search can be done lock-free
2023-05-21 09:14:19 +02:00
a92d6efec6
Do not do any time consuming actions in the mapview redraw callback
...
On all vector maps (ENC, IMG and Mapsforge), do the data loading
asynchronous like the tile rendering.
2023-05-19 19:33:22 +02:00
8a72b20af8
Added support for all paths scaling modes
2023-05-19 01:30:54 +02:00
e351eb6370
Only preallocate the memory when usin moveto/lineto
2023-05-17 23:10:45 +02:00
81e967f20d
Only fetch data when the rect is valid
2023-05-17 23:08:17 +02:00
cf81a90865
Some more micro-optimizations & code cleanup
2023-05-16 23:03:07 +02:00
d0cea97c90
Added support for custom HTTP headers in map tile requests
2023-05-13 15:01:35 +02:00
ddc7eb7149
Do not outline soundings like in ENC maps
2023-05-12 10:19:52 +02:00
bb22ad95b7
Use the point label as additional source for the id hash
...
Some (marine) maps have different points with the same type on the same
position.
2023-05-11 22:57:35 +02:00
60e83b24f9
Use as much as possible of the 64b hash in Qt6
2023-05-11 21:31:10 +02:00
e6fdd0f53d
Fixed crash on empty routes
2023-05-07 21:15:44 +02:00
d9c0770b51
Code cleanup
2023-05-06 21:53:40 +02:00
ca6c7247c0
Added missing cache insert
2023-05-06 16:14:49 +02:00
190a961242
Fixed wrong date info on tracks with segments
2023-05-04 21:49:02 +02:00
ccfb748404
Fixed KMZ maps bounds computation
2023-05-04 21:14:52 +02:00
a4a54101a3
Removed forgotten debug stuff
2023-05-04 09:51:42 +02:00
97e12d809f
Map API refactoring
...
Including several map providers refactoring/rewrite
especial KML, JNX and TrekBuddy atlases.
2023-05-04 09:38:35 +02:00
62aabe0c56
If there are broken matrix limits, ignore them
2023-04-27 00:16:54 +02:00
2bd25dd9b0
Fixed build with Qt < 5.13
2023-04-25 23:33:54 +02:00
8cea06f2ad
Improve SQLite-based maps error reporting
2023-04-25 22:52:55 +02:00
1d589e25d8
Some more Mapsforge microoptimizations + code cleanup
2023-04-25 22:11:47 +02:00
1eaaf719fd
Code cleanup
2023-04-25 00:02:50 +02:00
6c91060cbb
Some more Mapsforge micro-optimizations
2023-04-23 11:01:18 +02:00
ce4f0472c0
Use integers as tag keys in Mapsforge maps
2023-04-22 17:28:32 +02:00
229af4c749
The coordinates and the point type are sufficient for a unique ID
2023-04-19 00:33:04 +02:00
adc09da815
Added missing Garmin GPX power extension
2023-04-17 23:32:48 +02:00
a928cc4ccb
Cosmetics
2023-04-16 09:42:00 +02:00
2824751615
Allow advanced CSV formating in CRS files
2023-04-15 03:18:52 +02:00
53c6f08af5
Fixed Android build
2023-04-14 00:04:09 +02:00
dc799f4642
Use a new/better location for the CRS data
2023-04-13 23:53:31 +02:00
7bfae8a398
Code cleanup
2023-04-13 23:51:25 +02:00
e5199f8648
Redesigned CRS logic (including CSV files structure)
2023-04-13 08:39:33 +02:00
aec052edaf
Fixed elevation source selection logic
2023-04-10 17:21:02 +02:00
1bbc57173e
Add only valid graph segments to the graphs
...
Fixes #489
2023-04-10 13:06:19 +02:00
52ea52ff4e
Fixed broken graphs when data contains empty segments
...
fixes #490
2023-04-10 10:00:30 +02:00
b6ca28e159
Render circles
2023-04-08 00:34:33 +02:00
648627b17f
Use style-defined priorities
...
+ code cleanup
2023-04-06 23:29:05 +02:00
2aa759a4bc
Filter all way references, not only "ref"s
2023-04-06 09:41:31 +02:00
84dc58da71
Code cleanup
2023-04-05 21:50:19 +02:00
25838ad02d
Removed obsolete header include
2023-04-05 21:02:20 +02:00
6cd122f59b
Fix/improve Mapsforge tiles rendering
2023-04-05 19:28:17 +02:00
981bd33680
Properly encapsulate the ENC-specific text point
2023-04-05 19:27:25 +02:00
8b24aa17e2
Increase path render instructions cache
2023-04-04 00:29:50 +02:00
6fc5a2f67d
Added support for the "text-transform" attribute
2023-04-04 00:22:15 +02:00
d794de5818
Added support for curved lines
2023-04-03 23:53:57 +02:00
81f695a672
Fixed crash on empty IMG/GMAP maps
2023-04-03 23:29:35 +02:00
84a592998d
Only tile big (> Qt OpenGL cache size / 2) images
2023-04-02 14:36:03 +02:00
c114383c85
Do not outline countour height entries
2023-04-01 12:04:21 +02:00
164e59602e
Added missing BCNCAR rendering
2023-03-30 00:00:45 +02:00
b80cd05d4b
Added currents rendering
2023-03-25 13:31:15 +01:00
46109d0ce0
Render masts as pylons
2023-03-25 10:55:32 +01:00
cd1f80f2c1
Label sizes adjustment
2023-03-25 00:12:06 +01:00
dbe407d9d9
Various ENC rendering improvements
2023-03-24 22:54:53 +01:00
54d6016b1a
A better point items layout algorithm
2023-03-24 09:18:13 +01:00
f057ebdbb7
Added fog signals rendering
2023-03-23 01:05:44 +01:00
416bd3472f
Render lights merged with the root objects, not as separate objects
2023-03-22 00:41:03 +01:00
048198dfe1
Removed duplicit map error debug output
2023-03-18 10:11:11 +01:00
a50fa28c08
Properly chceck for GCS/PCS files
2023-03-18 09:51:07 +01:00
152f17f15a
Do not try to load the style when it does not exist
2023-03-18 09:04:55 +01:00
62f3343f75
Render international border lines
2023-03-16 21:37:27 +01:00
07581f027b
Fixed header length check
2023-03-16 20:58:28 +01:00
b3767e85e1
Added missing nmea serial port baudrate setting
2023-03-16 02:03:40 +01:00
4acc0a25e0
Fixed DEM cache size configuration
2023-03-03 07:36:30 +01:00
f275938fef
Make the DEM cache configurable
2023-03-03 00:04:03 +01:00
6105783a6d
Redesigned marine icons
...
Added marine icons outlines to make the icons visible on dark backgrounds.
2023-03-02 00:43:20 +01:00
267094dc6c
Fixed build with older Qt versions
2023-03-01 00:23:01 +01:00
7be3a27196
Added support for 0.5" (7201x7201) DEM tiles
...
+ DEM cache limit fix
2023-02-28 23:59:52 +01:00
00a349575c
Marine maps draw order fix
2023-02-28 23:58:03 +01:00
f026387d76
Fixed broken handling of IMG "multi-maps" (maps with overviews)
2023-02-27 22:06:31 +01:00
108444d29b
Fix multiple MSVC warnings
2023-02-25 11:06:14 +01:00
ed638bb5fc
Fixed marine charts rendering
2023-02-24 20:00:50 +01:00
ae3d190e08
Do not unnecessary convert the image tiles to pixmaps
2023-02-23 22:46:45 +01:00
a5916cad90
Make the MSVC2019 Debug builds compile
2023-02-23 22:45:42 +01:00
7a53fb8e01
Remove the qpainter/qimage draw workaround
...
Seems to be fixed in newer Qt versions and it did not properly work in older
Qt versions anyway...
2023-02-22 23:22:18 +01:00
f952e02535
Allow arbitrary large images
...
GeoTIFFs can be very huge, the limit of 128MB set in Qt6 is not sufficient for
real-life aerial images. Behave like Qt5 with no limit.
2023-02-22 22:45:18 +01:00
9538d15d79
Fixed centroid computation
2023-02-19 14:47:57 +01:00
7febd2971e
Fixed GeoJSON waypoint properties parsing
2023-02-15 01:40:28 +01:00
211ff46487
Report the correct error message on invalid "when" tag
2023-02-15 01:39:33 +01:00
b7415ca2c9
Fixed areas digital zoom handling
2023-02-14 00:58:44 +01:00
dec70f6bfe
Fixed area items hovering
2023-02-14 00:55:55 +01:00
4f661128ba
Do not load into memory files that are definitely not JSON files
2023-02-14 00:55:55 +01:00
15bc9ac774
Fixed NMEA line limit check
2023-02-14 00:55:55 +01:00
1480f8ad02
Cosmetics
2023-02-10 00:17:07 +01:00
b73ad9772f
Fixed broken waypoint settings
2023-02-10 00:16:16 +01:00
903b73d9a4
Set OpenStreetMap as the default map
2023-02-09 00:35:22 +01:00
7bb2c3a09d
Added Android "desktop" integration
2023-02-07 00:32:36 +01:00
820350d60b
Fixed Android build
2023-02-05 00:06:02 +01:00
3801ff7bcb
Settings refactoring
2023-02-04 23:59:47 +01:00
c001235e91
Code cleanup
2023-02-01 22:49:03 +01:00
d6d316676c
Properly use the default positioning plugin as the default option
2023-02-01 22:26:36 +01:00
973abedf3e
A better current path macro
2023-02-01 09:41:18 +01:00
505f01a990
Code cleanup
2023-01-31 19:21:14 +01:00
bfeb6d266e
Some more iso8211 code cleanup
2023-01-26 01:13:15 +01:00
af3e5d41c2
Split the config header to config+hash headers
2023-01-26 01:11:56 +01:00
51511a9bf9
Fixed broken parsing of KML tracks with empty coordinates
2023-01-25 09:01:20 +01:00
ab76521990
ISO8211 API cleanup
2023-01-19 10:08:17 +01:00
ee73908231
Do not treat Ozimaps as directories
...
Directory parsing was stopped at the level of the map which is not what we
want - users would have to create separate directories for every Ozimap.
2023-01-19 10:04:03 +01:00
3af98b6785
Fixed typo
2023-01-16 21:16:20 +01:00
21c02010f7
Improved marine charts render style
2023-01-14 13:00:36 +01:00
c209e24db8
Optimization/code cleanup
2023-01-14 08:45:18 +01:00
9ff7ecea97
ENC signal stations
2023-01-11 23:03:54 +01:00