Cruisers Forum
 


Reply
  This discussion is proudly sponsored by:
Please support our sponsors and let them know you heard about their products on Cruisers Forums. Advertise Here
 
Thread Tools Search this Thread Rate Thread Display Modes
Old 01-06-2012, 00:45   #1
Registered User

Join Date: May 2012
Posts: 1,205
Chart Bearing Accuracy

OpenCPN is being used here to check the charted values for transit bearings. This is for use in compass correction and drawing up deviation cards (Trainee Compass Adjuster!).

I have a little experience of C++ and wonder if there is any way of changing the code and recompiling in order to give a bearing accuracy to one decimal point. At present the routes and measure only seem to work to the nearest degree. Any help on this one would be appreciated.

Many thanks.

Mike
Rasbats is offline   Reply With Quote
Old 01-06-2012, 02:38   #2
Senior Cruiser
 
GordMay's Avatar

Cruisers Forum Supporter

Join Date: Mar 2003
Location: Thunder Bay, Ontario - 48-29N x 89-20W
Boat: (Cruiser Living On Dirt)
Posts: 49,431
Images: 241
Re: Chart Bearing Accuracy

Greetings and welcome aboard the CF, Mike.
__________________
Gord May
"If you didn't have the time or money to do it right in the first place, when will you get the time/$ to fix it?"



GordMay is offline   Reply With Quote
Old 01-06-2012, 06:43   #3
Marine Service Provider
 
bdbcat's Avatar

Join Date: Mar 2008
Posts: 7,401
Re: Chart Bearing Accuracy

Rasbats....

Are you using the "Measure" function to show bearings? Or maybe the Route tool?

Thanks
Dave
bdbcat is offline   Reply With Quote
Old 01-06-2012, 11:23   #4
Registered User

Join Date: May 2012
Posts: 1,205
Re: Chart Bearing Accuracy

Hello Dave,

Great work with OpenCPN!

Yes, I am using both of those tools.

Mike
Rasbats is offline   Reply With Quote
Old 01-06-2012, 18:10   #5
Marine Service Provider
 
bdbcat's Avatar

Join Date: Mar 2008
Posts: 7,401
Re: Chart Bearing Accuracy

Rasbats....

For example:

For Route leg bearing information, look at chcanv.cpp line 10,077.

Code:
     s.Printf(_T("%03d "), (int)brg);
change to

Code:
      s.Printf(_T("%g"), brg);
Dave
bdbcat is offline   Reply With Quote
Old 01-06-2012, 23:53   #6
Registered User

Join Date: May 2012
Posts: 1,205
Re: Chart Bearing Accuracy

Dave,

Thanks. Problem solved.

Mike
Rasbats is offline   Reply With Quote
Old 10-07-2012, 13:50   #7
Registered User

Join Date: Jul 2012
Location: Torino
Posts: 9
Re: Chart Bearing Accuracy

HELLO, I wonder why bearing and kompass indication is not already at decimal point. I am using OpneCPN for dead reckoning and coastal navigation practice on electronic charts, so absence of decimal precision is significant, the result points may be much different if You cannot place the correct lines/bearings on the chart. Morover, bearings do not explicity exist, routes must be used and 180 degrees added or substracted to obtain real bearings.
Why this accuracy is not already used in openCPN ?

PS : Other programs do use decimal point in magnetic and kompass direction indications.
seasniffer is offline   Reply With Quote
Old 10-07-2012, 15:41   #8
Marine Service Provider
 
bdbcat's Avatar

Join Date: Mar 2008
Posts: 7,401
Re: Chart Bearing Accuracy

seasniffer...

Our judgment is that for typical use of OpenCPN bearings (transfer to paper chart, hand bearing compass transit, etc), plotting accuracy of one degree is optimistic, 0.1 degree is impossible.

If you really need this feature, I suggest adding a Feature Request to the OpenCPN issues tracker.

OpenCPN::Tracker All Projects: Tasklist

Thanks
Dave
bdbcat is offline   Reply With Quote
Old 01-08-2012, 12:03   #9
Registered User

Join Date: Jul 2012
Location: Torino
Posts: 9
Re: Chart Bearing Accuracy

Hi finally found the time to compile OpenCpn 3.0.0 with the suggested modification (using %4.1f instead of %03d) on original floating bearing value (not casted to int) and changes in the code (several points) seem to work.
But while doing rough testing, I realized that the mouse drag with the baloon indicating the bearing appears when you create a new route leg and in distance mode, but not when you move an already created waypoint of a route.
I am a sw engineer, but I have no time to analize all the sw. Can You suggest me where to act, in the code, in order to get bearing also when moving route legs, not only when creating legs ?

Thanks if You can help me.

PS: I found OpenCpn very useful for nautical exercise about dead and live reckoning, it saves me the need to use a very large nautical paper map, pencil and rulers. (When I will re-buy a boat, for sure I will use it in real live mode). I wouls like to be more useful in the build and tracking process, but at present I am engaged at work in a big reverse engineering process that exhosts my energies...
seasniffer is offline   Reply With Quote
Old 21-08-2012, 04:01   #10
Registered User

Join Date: Jul 2012
Location: Torino
Posts: 9
Re: Chart Bearing Accuracy

I opened a feature request (#871) about OpenCPN new future versions, in order to have a baloon (called - may be - rollover window (?)) appear and follow bearing and distance changes while draggind already existing route leg end points, like it happens when You calculate distances or create route legs. At present this baloon appears only while You >>CREATE<< a route leg, not when You >>CHANGE<< it.

Hope this helps ...
seasniffer is offline   Reply With Quote
Old 30-11-2013, 15:24   #11
Registered User
 
MikeAux's Avatar

Join Date: Nov 2013
Location: Gloucester, MA
Boat: 1926 Knockabout Schooner 122'
Posts: 6
Re: Chart Bearing Accuracy

Hello, This is my first time ever using a forum. I am having the same issue with accuracy. I am using OPENCPN, surveyors transit and, laser range finder to survey the location of Aids To Navigation using range and bearing. My goal is to eliminate all variables by OPENCPN rounding numbers. I am new to C++ but I can follow step by step procedure. I would like bearings to be in DEG,MIN and distances to read in meters up to 1000m instead of the current 185m.
MikeAux is offline   Reply With Quote
Old 30-11-2013, 23:30   #12
bcn
Registered User

Join Date: May 2011
Location: underway whenever possible
Boat: Rangeboat 39
Posts: 4,739
Re: Chart Bearing Accuracy

Hi MikeAux,

please have a look at OpenCPN settings (the "wrench" symbol) and there at user interface.

Distance in meters and location in decimal degrees are options already available.
Just bearings with decimals are not (yet) implemented.

Hubert
bcn is offline   Reply With Quote
Old 01-12-2013, 05:43   #13
Senior Cruiser
 
GordMay's Avatar

Cruisers Forum Supporter

Join Date: Mar 2003
Location: Thunder Bay, Ontario - 48-29N x 89-20W
Boat: (Cruiser Living On Dirt)
Posts: 49,431
Images: 241
Re: Chart Bearing Accuracy

Greetings and welcome aboard the CF, MikeAux.
__________________
Gord May
"If you didn't have the time or money to do it right in the first place, when will you get the time/$ to fix it?"



GordMay is offline   Reply With Quote
Old 01-12-2013, 07:32   #14
Registered User
 
MikeAux's Avatar

Join Date: Nov 2013
Location: Gloucester, MA
Boat: 1926 Knockabout Schooner 122'
Posts: 6
Re: Chart Bearing Accuracy

Quote:
Originally Posted by bcn View Post
Hi MikeAux,

please have a look at OpenCPN settings (the "wrench" symbol) and there at user interface.

Distance in meters and location in decimal degrees are options already available.
Just bearings with decimals are not (yet) implemented.

Hubert
Thanks for the help. I have figured out the yards to meters but id also like it to read meters up to 1000m before it reads in nMi instead of the current 185m and of course direction ° ' " . Unfortunately im not too good with writing code and I am going through with learning how just to add my ideas to better OPENCPN.
MikeAux is offline   Reply With Quote
Old 01-12-2013, 08:53   #15
Registered User
 
MikeAux's Avatar

Join Date: Nov 2013
Location: Gloucester, MA
Boat: 1926 Knockabout Schooner 122'
Posts: 6
Re: Chart Bearing Accuracy

Quote:
Originally Posted by bdbcat View Post
Rasbats....

For example:

For Route leg bearing information, look at chcanv.cpp line 10,077.

Code:
     s.Printf(_T("%03d "), (int)brg);
change to

Code:
      s.Printf(_T("%g"), brg);
Dave
What file and how do you open it in VisualC++. What do you need to change to change bearings to ° ' " and distances to read only meters or yards up to 2MNi.
MikeAux is offline   Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Advertise Here


All times are GMT -7. The time now is 07:55.


Google+
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Social Knowledge Networks
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc.

ShowCase vBulletin Plugins by Drive Thru Online, Inc.