View Single Post
Posts: 1,548 | Thanked: 7,510 times | Joined on Apr 2010 @ Czech Republic
#1054
Originally Posted by skykooler View Post
Really looking forward to location alarms! (Also, pilot here, would appreciate altitude alarms )
I think I'll just do it with elevation on the third place, to make the design cleaner and more future proof:
Code:
lat;lon;elevation;distance;enabled;name;alert
If elevation is empty, modRana would count the distance in 2D, if it is filled in, it would count the distance in 3D.

Originally Posted by 7thd View Post
Sailor here,
Altitude is not a real (measurable) issue on the water. I'd suggest the idea to add content that portrays the angle to the next waypoint (either a visual or a measurement in degrees). This could open the way for efficient tacking (going upwind). BTW, I could imagine this would be too major an alteration. On the other hand, such a feature could come in handy for land driving as well btw. (i.e. for visualizing the general direction).

Anyway, absolute distance to next waypoint, too, could be informative as well and/or alternatively (i.e. to mark the 90 degr. position to a buoy, although 90 degrees normally is 'late' for a tack).
So basically a mode, which takes into account the order of the alarm points and shows the angle to the next one ? BTW, I think I'm a bit confused about the context of the angle - could perhaps provide a simple sketch illustrating how it would work ?

Anyway, I thinks that such "sailing mode" mode might not be that difficult to add, once the general alarms are implemented.

Originally Posted by Wikiwide View Post
Quick message...
First, I have made it so that labels for POIs are not displayed if zoom level is smaller than 13: POIs are too close to each other, the labels become a useless mess, and besides, when the map is zoomed out enough, locations (continents, countries, et cetera) can be recognized without any labels at all. Though, '13' should be replaced with an option to be set through user interface.
Good idea ! You are right that the labels are not really usable at low zoomlevels and this handles the issue quite nicely.

Another possible, but more complicated future solution, would be to group nearby markers and just show a single marker with the label displaying the number of markers in the group. Clicking the label would show a list of the grouped marker or something similar.

Originally Posted by Wikiwide View Post
I am also creating an amusing kind of POI. If description of a POI matches 'airport', then, instead of the green translucent circle, an over-simplified image of airplane is drawn. And, an 'airport' doesn't have any label at all, no matter what zoom level: the number of airports is small enough than an airport doesn't need it.
Well, why not.

It would be good to add and "icon" column to the database so that POIs can have both an icon and a full description, but this should work in the meantime.

Originally Posted by Wikiwide View Post
And, the bright blue dot is replaced with a changing-colour one: bright green if GPS isn't available, yellow if GPS gives large speed and large distance till the point, red if the speed is large and distance is small, green if the speed is small and distance is large, black if both speed and distance are small. Speed is compared to pedestrian's 5km/h, and distance is compared to one hour of travel at current speed.
Oh, I've finally got it ! Like this, you know how accessible the points are from your position, with you current speed ? Nice idea !

Originally Posted by Wikiwide View Post
By the way, is it true that POIs are drawn even when they are outside the screen?
Unfortunately yes, modRana just draws all points that were designated as visible, even if they are outside of the viewport. Also, I think the most costly is actually not the drawing but the calculations needed to compute the screen coordinates from the geographic ones and the distance, which currently happen every time the screen is redrawn.

Therefore, just looking what points should be visible doesn't help as you still have to iterate over all the points and check if they are visible, would not help due to all the unnecessary comparisons and coordinate conversions.

Of course, there is place for optimizations (the basic idea is to somehow reduce the number of points you have to work with at a time), the first one from the top of my head :
  • calculate the bounding box of the current viewport in screen coordinates (I think a bounding box represented by geographic coordinates might not actually be a rectangle)
  • then calculate a "border" bounding box, say 2x times larger
  • check what markers are in the "border" bounding box
  • as long as the viewport bounding box is inside the "border" bounding box, you can ignore markers that are outside
  • once you detect that the viewport bounding box is outside of the "border" bounding box, you recalculate a new "border" bounding box and check what markers are contained within

I'm sure there are also other ways how to optimize this.

Originally Posted by Wikiwide View Post
It can make drawing work for cairo context about ten-twenty-forty times larger.
I don't understand what you mean, can can you clarify ?

Originally Posted by Wikiwide View Post
I'm still wavering: to install CSSU or not... Thank you for ModRana.
I'm using it for quite some time already, without issues. Still, I remember the Saera developer mentioning some issues with the camera UI in CSSU.


Anyway, thanks for the changes ! I'll check them out & integrate them to the upstream source code in the coming days.
__________________
modRana: a flexible GPS navigation system
Mieru: a flexible manga and comic book reader
Universal Components - a solution for native looking yet component set independent QML appliactions (QtQuick Controls 2 & Silica supported as backends)
 

The Following 7 Users Say Thank You to MartinK For This Useful Post: