Toxcct's Polars CSV Extractor
Post by iconPost by toxcct | 2018-05-19 | 15:49:49

Hi guys,

I fixed the 2 known bugs regarding the CSV extractor.
Please let me know if you see anything inconsistant with it.

I have yet to document how to use it, but for thos who didn't figured out yet, you have to get the raw "Meta_GetPolar" WebSocket response from VR server.

I integrated the use of foils and hull polish directly within the CSV output, as well as the globalSpeedRatio. Whenever original values are altered because within the foiling range, of because applying hull polish, or because the GlobalSpeedRatio is different from 1, then values are truncated to 3 digits. Let me know if you think it is not enough...

I also added a little readout display of what has been read from the raw input.

Here it goes :

And here is a screenshot of it:

commenticon 24 Comments
Post by iconPost by PML | 2018-05-19 | 19:43:05
Dear toxcct,
Each time I click the 'Read Input' button, the following message "EvalError: Unexpected empty input" is displayed in the bottom screen, and I never get a chance to select the sails and option. What do I do wrong?
Post by iconPost by toxcct | 2018-05-19 | 19:55:42
well, I hoped the message would be self explanatory...
You have to provide the raw polars in the upper textarea, like you can see on the screenshot above.

I will provide soon how you can retrieve such data if you don't know yet, and how to fully exploit this CSV Generator.

However, I would recommend you to use the VR Dashboard if you don't already (

Post by iconPost by PML | 2018-05-19 | 20:22:16
Thanks, your response makes your initial post much clearer. I use already the VR Dashboard, but I don't know how to retrieve the raw polar data from the VR server. I would much appreciate if you could explain how to do that.
Post by iconPost by toxcct | 2018-05-19 | 21:12:02
If you already use the VR Dashboard, then you probably noticed the "RAW LOG" tab below the upper table.
There, you must ensure that "Log messages" is checked.

Meanwhile in the game interface, stay in the Lobby until the dashboard is ready to log messages (you can "Clear Logs" at that moment).

Then click on a race you want to get the raw polar data.
Switch back to the Dashboard and you should soon see a request for "Meta_GetPolar". Get the corresponding requestId, and search for any response with that same requestId (it should be right after/below, but not always).

Once you found the response, copy its entiere line (on Windows, a triple-click anywhere on the line should select it all), and paste it in the CSV Generator input field.

Make sure to remove the prepending "<<<" before clicking the "Read Input" button, or you will get a "SyntaxError: Unexpected token < in JSON at position 0"
Post by iconPost by PML | 2018-05-21 | 20:50:28
Thank you very much. It works. One last question: how can I extract the data in the output field and turn them into a .csv file? For some reasons, I do not seem to be able to copy / paste them...
Post by iconPost by toxcct | 2018-05-22 | 04:59:16
A CSV file is a text file with a specific format inside.
All you have to do is copy the ouput into your clipboard, then paste it in an editor (Microsoft Word is NOT a proper file editor ; consider using Notepad if you don't ready know/have one), and then, save the file with a CSV extension (like myfile.csv)
Post by iconPost by PML | 2018-05-22 | 06:36:10
I could not copy / paste the data because I had opened the generator in Firefox, and for some reasons, the output data cannot be selected in this browser. It works perfectly in Chrome. Thanks again for the tool and the explanations !
Post by iconPost by toxcct | 2018-05-22 | 09:39:10
CSV Generator updated to version 2.0.0-beta5 :

* Output is now automatically generated as soon as options/sails are checked/unchecked.

* A new display as been added to be able to visualize the output as an array directly.

Post by iconPost by GeGaX | 2018-05-22 | 18:21:57
Superb work Toxcct! 😉
This polar generator is just perfect !
Essential tool, for me, thanks for that 😊
Post by iconPost by toxcct | 2018-05-22 | 20:18:53
"Copy to clipboard" is coming. Wait for it ;)

[EDIT] Done.
Post by iconPost by Ursus Maritimus | 2018-05-23 | 05:33:12
so where do you guys put these polars in? Zezo loads them as well. Are there other/better routers?
Post by iconPost by toxcct | 2018-05-23 | 06:06:25
I don't use any myself, but I've been asked many times, so I guess some use other tools, yes
Post by iconPost by GeGaX | 2018-05-23 | 06:10:49
These polar allow you to use them in QtVlm, Squid, OpenCPN, ... but also in Maxsea TimeZero, Adrena, Expedition, ...
The great interest of having these polar and Cvetan's gribs is to be able to compare different routes.
It will soon be possible to export the zezo routing in gpx format (I have css concerns on the road extension) but once set all that will make sense.

zezo :

QtVlm :

Google Earth :

Post by iconPost by GeGaX | 2018-05-23 | 10:38:48
A suggestion toxcct:
You could implement a background color for each sail?
It would be interesting to visualize (numerically) in the output array.

Have you seen the M63's mail about the sailing rigging (LJ / C0 / LG) on TWA 65 and 115, TWS 17 to 19?
Post by iconPost by toxcct | 2018-05-23 | 12:06:52
CSV is a format which does not support styling (unlike an XLS file for example).
It's basically an array of raw number, but we cannot add colors to it.

Regarding the output array, well, I could update it somehow (currently, I only compare the values, and keep the bigger ones, regardless which sail it's taken from), but would it really be useful, as the copied CSV output will loose the coloring information ?

Post by iconPost by GeGaX | 2018-05-23 | 18:58:01
Yes you're right it's csv and not xls (error on my part)
Would you have a solution just to have it visually on the generator?
It is interesting to see the global composition of the polar (even if for more precision it is necessary to go through the polar chart)
The digital reading (colored) allows to quickly get an idea.

I come back on this story of forced sails (TWA and TWS cited above) that put forward M63, as you could see?
Post by iconPost by toxcct | 2018-05-23 | 14:38:14
CSV Generator updated to version 2.0.0-beta7 :

* Several bug fixed (like for instance the "Full Pack" button not to activate unavailable options, if that ever happens)

* Informational messages moved to their proper display box.

* improved the UI with transitionning effects and disabling unused elements

Post by iconPost by GeGaX | 2018-05-23 | 18:58:49
Excellent work ! 😉
Post by iconPost by toxcct | 2018-05-26 | 07:55:19
CSV Generator updated to version 2.0.0-beta9 :

A dropdown list now allows to pick a raw polar file from those already known by the chart application :

I also added a button to be able to fold/unfold the input field.

Happy Generating folks ;)
Post by iconPost by toxcct | 2018-05-28 | 09:54:34
CSV Generator updated to version 2.0.0-beta11 :

Sails colors have been added to the CSV rendering array, so we can easily spot the best sails.
The colorset is the same than on the Polars Chart
You can also hover the cells with your mouse to get the actual speed value (useful when the array is too narrow to display all), and to have the sail name :

(Thanks to GeGaX for this suggestion).
Post by iconPost by TomekN_zegluj_net | 2018-05-28 | 10:08:29
Perfect !!!
Post by iconPost by GeGaX | 2018-05-28 | 15:52:25
Very good job Toxcct 😉
You have a mail 😊
Post by iconPost by toxcct | 2018-05-31 | 12:12:46
CSV Generator updated to version 2.0.0-beta12:

Quite a big change with this new update.
As some sailors observed and notified me by email), the consolidation was lacking precision if I was only combining the best speeds between the sails selected.

The actual issue with combining many sails into a single CSV, but with keeping the actual TWA and TWS scales provided by VR was inducing missing information in the shadowed zones (where TWA/TWS where not provided per se).

I then added a new option to the CSV Generator so it can now provide a full array of values.

Currently, you cannot choose the steps, so when checking the "Interpolated" Generator Option, steps of 1° and 1 knot will be taken.
If this option is now checked, then, the steps provided by the raw data will still be taken in account. This may still be useful if you want to generate single sail CSV files for instance...

Here is what is generated for a FULL PACK (all sails, all options), on a Mini 6.50 boat :

You see that zone where VR does NOT provide data for a wind of 18kts.
We only see that the Light Jib (pink) is used at 16kts and a tight angle to the wind, and the Staysail (blue) is used at 20kts.
But we cannot guess which sail is best at 18kts...

Well, here is what the same boat configuration generated with the Interpolation enabled :

Is that the Jib appearing now ? YES ! :)

Once again, thanks to GeGaX for his detailed remarks, and thanks to M63 for spotting that issue.
Post by iconPost by toxcct | 2018-05-31 | 12:15:22
Oh, and don't worry if the array cells are not readable :
The color-rendered array provides tooltip on each cell, so you can figure out which speed it is exactly, and which sail is used, and anyway, the raw-text CSV is still generating (and copying to the clipboard) properly...
Topics list
Copyright 2009 by ZEZO.ORG. All Rights Reserved.