subsurface/profile-widget
Berthold Stoeger 7ef0ae02a8 profile: implement adaptive depth markings
The old code used the maximum / minimum values of nine-minute
intervals to indicate maximum / minimum depths. This does not
work well when zooming, since the labels will get sparse.

Instead implement a primitive peak finding algorithm, that
searches for the deepest peak in the whole plot and then
repeats the procedure for the right and left sides, leaving
out a certain distance to the origninal peak. This is repeated
until there are no more peaks found.

Only peaks of a certain prominence are considered, which
conveniently gives us the valleys.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2021-12-17 11:54:23 -08:00
..
animationfunctions.cpp Profile: add speed parameter to Animation::* functions 2019-07-12 09:59:28 +02:00
animationfunctions.h Profile: add speed parameter to Animation::* functions 2019-07-12 09:59:28 +02:00
CMakeLists.txt profile: cache pixmaps for dive event items 2021-12-17 11:54:23 -08:00
divecartesianaxis.cpp profile: use dynamic distances between labels on chart 2021-12-17 11:54:23 -08:00
divecartesianaxis.h profile: use dynamic distances between labels on chart 2021-12-17 11:54:23 -08:00
diveeventitem.cpp profile: don't plot event-icons outside of range 2021-12-17 11:54:23 -08:00
diveeventitem.h profile: don't plot event-icons outside of range 2021-12-17 11:54:23 -08:00
divehandler.cpp profile: move axes to ProfileScene 2021-12-17 11:54:23 -08:00
divehandler.h profile: pass dive to DiveHandler 2021-01-10 15:57:39 -08:00
divelineitem.cpp
divelineitem.h
divepercentageitem.cpp profile: reimplement DivePercentageItem 2021-12-17 11:54:23 -08:00
divepercentageitem.h profile: reimplement DivePercentageItem 2021-12-17 11:54:23 -08:00
divepixmapcache.cpp profile: remove special iOS DPR handling for event icons 2021-12-17 11:54:23 -08:00
divepixmapcache.h profile: cache pixmaps for dive event items 2021-12-17 11:54:23 -08:00
divepixmapitem.cpp profile: move picture removal from DivePictureItem to ProfileWidget2 2020-12-19 20:19:51 +01:00
divepixmapitem.h profile: move picture removal from DivePictureItem to ProfileWidget2 2020-12-19 20:19:51 +01:00
diveprofileitem.cpp profile: implement adaptive depth markings 2021-12-17 11:54:23 -08:00
diveprofileitem.h profile: implement adaptive depth markings 2021-12-17 11:54:23 -08:00
diverectitem.cpp
diverectitem.h
divetextitem.cpp profile: generalize tick generation 2021-12-17 11:54:23 -08:00
divetextitem.h profile: calculate maximum label sizes on construction 2021-12-17 11:54:23 -08:00
divetooltipitem.cpp cleanup: replace membuffer by membufferpp in C-code 2021-07-23 11:22:43 -07:00
divetooltipitem.h cleanup: remove function static variables 2021-07-20 09:27:35 -07:00
profilescene.cpp profile: attempt to port mobile-visibility code 2021-12-17 11:54:23 -08:00
profilescene.h profile: attempt to port mobile-visibility code 2021-12-17 11:54:23 -08:00
profilewidget2.cpp profile: don't use scene for zooming 2021-12-17 11:54:23 -08:00
profilewidget2.h profile: don't use scene for zooming 2021-12-17 11:54:23 -08:00
qmlprofile.cpp profile: don't render mobile profile in printmode 2021-12-17 11:54:23 -08:00
qmlprofile.h profile: merge plotDive() into draw() call 2021-12-17 11:54:23 -08:00
ruleritem.cpp profile: pass dive to RulerItem 2021-01-10 15:57:39 -08:00
ruleritem.h profile: pass dive to RulerItem 2021-01-10 15:57:39 -08:00
tankitem.cpp profile: only plot visible range of tank info 2021-12-17 11:54:23 -08:00
tankitem.h profile: only plot visible range of tank info 2021-12-17 11:54:23 -08:00