Reply
Thread Tools
Posts: 78 | Thanked: 135 times | Joined on Jul 2012
#111
So I took a look at http://en.wikipedia.org/wiki/Sunrise_equation and http://users.electromagnetic.net/bu/...unrise-set.php

The drive-qml approximation for the declination is legit, it is equation 3 from http://solardat.uoregon.edu/SolarRadiationBasics.html

What seems to be missing is probably a better approximation of the sun transit, i.e. the true sun noon.

Otherwise, just some signs were apparently wrong in the sunrise/sunset calculation, with that fixed, it works well enough for me.

This is the patch: http://paste.debian.net/download/178685

Or inline:

Code:
--- /usr/lib/drive-qml/models/MapSettingsModel.qml.orig
+++ /usr/lib/drive-qml/models/MapSettingsModel.qml
@@ -135,8 +135,8 @@
         var lat_rad = pos.latitude * (Math.PI/180);
         var declination = (23.4*Math.PI)/180 * Math.sin(2*Math.PI * (284+dayOfTheYear)/365);
         var omega = Math.acos(-Math.tan(declination) * Math.tan(lat_rad));
-        var sunset = 12 - (1/15) * omega * (180/Math.PI) - pos.longitude/15 + today.getTimezoneOffset()/60;
-        var sunrise = 24  - sunset; //(1/15) * omega * (180/Math.PI) - pos.longitude/15 + today.getTimezoneOffset()/60;
+        var sunset = 12 + (1/15) * omega * (180/Math.PI) - pos.longitude/15 - today.getTimezoneOffset()/60;
+        var sunrise = 12  - (1/15) * omega * (180/Math.PI) - pos.longitude/15 - today.getTimezoneOffset()/60;
 
         console.log("Sunset:" + sunset);
         console.log("Sunrise:" + sunrise);
 

The Following 8 Users Say Thank You to mbanck For This Useful Post:
Moderator | Posts: 6,215 | Thanked: 6,400 times | Joined on Nov 2011
#112
my output while patching:
patching file MapSettingsMode.qml
Hunk #1 FAILED at 135.
1 out of 1 hunk FAILED -- saving rejects to file MapSettingsModel.qml.rej

Could someone help?
 
Guest | Posts: n/a | Thanked: 0 times | Joined on
#113
Originally Posted by mbanck View Post
So I took a look at http://en.wikipedia.org/wiki/Sunrise_equation and http://users.electromagnetic.net/bu/...unrise-set.php

The drive-qml approximation for the declination is legit, it is equation 3 from http://solardat.uoregon.edu/SolarRadiationBasics.html

What seems to be missing is probably a better approximation of the sun transit, i.e. the true sun noon.

Otherwise, just some signs were apparently wrong in the sunrise/sunset calculation, with that fixed, it works well enough for me.

This is the patch: http://paste.debian.net/download/178685

Or inline:

Code:
--- /usr/lib/drive-qml/models/MapSettingsModel.qml.orig
+++ /usr/lib/drive-qml/models/MapSettingsModel.qml
@@ -135,8 +135,8 @@
         var lat_rad = pos.latitude * (Math.PI/180);
         var declination = (23.4*Math.PI)/180 * Math.sin(2*Math.PI * (284+dayOfTheYear)/365);
         var omega = Math.acos(-Math.tan(declination) * Math.tan(lat_rad));
-        var sunset = 12 - (1/15) * omega * (180/Math.PI) - pos.longitude/15 + today.getTimezoneOffset()/60;
-        var sunrise = 24  - sunset; //(1/15) * omega * (180/Math.PI) - pos.longitude/15 + today.getTimezoneOffset()/60;
+        var sunset = 12 + (1/15) * omega * (180/Math.PI) - pos.longitude/15 - today.getTimezoneOffset()/60;
+        var sunrise = 12  - (1/15) * omega * (180/Math.PI) - pos.longitude/15 - today.getTimezoneOffset()/60;
 
         console.log("Sunset:" + sunset);
         console.log("Sunrise:" + sunrise);
This works very well.
Now, what seems to be missing is that it will actually refresh the daylight settings on a scheduled basis, or at least at app start.
ATM it seems to only change if you enter settings and press auto :0
 

The Following 2 Users Say Thank You to For This Useful Post:
Posts: 11 | Thanked: 5 times | Joined on Jun 2012 @ Russia
#114
mbanck
Good job, man. It's seems to work.

thedead1440
Edit it manually.
 

The Following 2 Users Say Thank You to 3sigma For This Useful Post:
Posts: 1 | Thanked: 9 times | Joined on Feb 2012 @ Vienna
#115
When you click on the toggle item for the traffic mode in the main settings screen, you can see that the label changes to "Hide traffic" for a fraction of a second before the screen is closed - But when the settings screen is opened again, the label is still set to "Show traffic". So I found out this small UI improvement:

In assistanceModeSettingsPage.qml, line 207 (inside the block "onBeforeShow:"), you can add the following line:

buttonModel.updateTraffic();

This will show the label "Hide traffic" and the corresponding icon if traffic has been activated.
 

The Following 9 Users Say Thank You to nailwood For This Useful Post:
Posts: 36 | Thanked: 28 times | Joined on Jul 2011 @ Germany
#116
i think, the better way to switch day/night is to use the lightsensor... itīs more helpfull in tunnel...
is there a possibility to realice so?
 

The Following User Says Thank You to MaikEF For This Useful Post:
Posts: 24 | Thanked: 7 times | Joined on Apr 2006
#117
I would also prefer a solution in help of the light sensor. I think this is a better way to switch between day and night.
 
MaddogG's Avatar
Posts: 234 | Thanked: 175 times | Joined on Jun 2010 @ Genova (Italy)
#118
Originally Posted by MaikEF View Post
i think, the better way to switch day/night is to use the lightsensor... itīs more helpfull in tunnel...
is there a possibility to realice so?
Originally Posted by jimthefly View Post
I would also prefer a solution in help of the light sensor. I think this is a better way to switch between day and night.
See previous page (here)...
__________________
Some say the world will end in fire; some say in segfaults...
 
Posts: 1,320 | Thanked: 915 times | Joined on Feb 2010
#119
Until we find a way to sort of loop the isNght function so it checks every so often, the Light Sensor won't work efficiently as it will only check the light sensor on start-up and then set the map colours accordingly and then stop checking light sensor.

We need a way of it to keep checking either light sensor or comparing the current time to the Sunset/Sunrise to make it truly automatic switching.

Probably what the plugin they were missing was meant to do!
__________________
Well Nokia do at least know how to build a decent phone, just apparently don't know how to support it..

N900 Died Replaced with N8, Requested E7, "Accidentally Broke E7", Now rolling with an N9 and im loving it!


My Contributions

N900 Conversations Wiki Page
 
Posts: 458 | Thanked: 783 times | Joined on Jan 2010 @ France
#120
Originally Posted by nailwood View Post
When you click on the toggle item for the traffic mode in the main settings screen, you can see that the label changes to "Hide traffic" for a fraction of a second before the screen is closed - But when the settings screen is opened again, the label is still set to "Show traffic". So I found out this small UI improvement:

In assistanceModeSettingsPage.qml, line 207 (inside the block "onBeforeShow:"), you can add the following line:

buttonModel.updateTraffic();

This will show the label "Hide traffic" and the corresponding icon if traffic has been activated.
Thanks for this perspicuous Fix, I like guys verifying behavior of modifications.

Now, the button to switch traffic on/off be refreshed properly ...

Also, I have reread all the thread, but not be able to find how to add the "auto" tick option, there is only the 2 original options "day" & "night" tick options.

If someone have the modification, feel free to put it here ...

A++
 
Reply


 
Forum Jump


All times are GMT. The time now is 09:40.