Commit 2cd268b4 authored by Xavier de Blas's avatar Xavier de Blas

0.8.9.4

added Dj power on treeeview jumps and export
updated po. Updated spanish translation

solved problem of dialogMessage not showing contents ok on windows. solution: commented the hide of dialog.
Finally done as resizable because found also a problem on Linux

0.8.9.3
commented all logs functions except Write and WriteLine
better message on runAnalaysis touch at end
logs hidden at preferences window
parent c7a4c8a3
......@@ -4,7 +4,6 @@ check all the radios, now should work different. change some of them to combos,
but person win height and weigt work
mantenir running
eliminar logs (doing)
mirar crash a l'obrir-se eventexecute window a WINDOWS
......
CHANGELOG.txt
18 jun 2009
0.8.9.4
added Dj power on treeeview jumps and export
updated po. Updated spanish translation
solved problem of dialogMessage not showing contents ok on windows. solution: commented the hide of dialog.
Finally done as resizable because found also a problem on Linux
17 jun 2009
0.8.9.3
commented all logs functions except Write and WriteLine
better message on runAnalaysis touch at end
logs hidden at preferences window
18 may 2009
0.8.9.2
runType add distancesString now with a combo
......
......@@ -2612,7 +2612,6 @@ comments</property>
<child>
<widget class="GtkVBox" id="vbox145">
<property name="border_width">8</property>
<property name="visible">True</property>
<property name="homogeneous">False</property>
<property name="spacing">10</property>
......@@ -2624,7 +2623,6 @@ comments</property>
<child>
<widget class="GtkLabel" id="label531">
<property name="visible">True</property>
<property name="label" translatable="yes">&lt;b&gt;Logs directory&lt;/b&gt;</property>
<property name="use_underline">False</property>
<property name="use_markup">True</property>
......@@ -2649,7 +2647,6 @@ comments</property>
<child>
<widget class="GtkLabel" id="label_logs">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes"></property>
<property name="use_underline">False</property>
......@@ -2742,6 +2739,25 @@ comments</property>
</packing>
</child>
<child>
<widget class="GtkCheckButton" id="checkbutton_power">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Show power on Drop Jump</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
<widget class="GtkCheckButton" id="checkbutton_initial_speed">
<property name="visible">True</property>
......@@ -15185,7 +15201,7 @@ suitable for agility tests)</property>
<property name="type">GTK_WINDOW_TOPLEVEL</property>
<property name="window_position">GTK_WIN_POS_CENTER_ALWAYS</property>
<property name="modal">True</property>
<property name="resizable">False</property>
<property name="resizable">True</property>
<property name="destroy_with_parent">False</property>
<property name="decorated">True</property>
<property name="skip_taskbar_hint">False</property>
......@@ -15309,7 +15325,7 @@ suitable for agility tests)</property>
<packing>
<property name="padding">0</property>
<property name="expand">True</property>
<property name="fill">False</property>
<property name="fill">True</property>
</packing>
</child>
</widget>
This diff is collapsed.
......@@ -5341,3 +5341,28 @@
05/07/09 05:45:30 - Linux x86 build completed in 00m11s.
05/07/09 05:45:30 - Installer size is 8.54 MB.
05/07/09 05:45:30 - Build completed in 00m12s.
06/17/09 12:30:19 - Configuring build for final release...
06/17/09 12:30:19 - Building message catalogs...
06/17/09 12:30:19 - Building Windows install...
06/17/09 12:30:19 - Building main.tcl...
06/17/09 12:30:19 - Refreshing file groups...
06/17/09 12:30:20 - Getting file list...
06/17/09 12:30:21 - Building file manifest...
06/17/09 12:30:21 - Saving install information...
06/17/09 12:30:22 - Building install...
06/17/09 12:30:22 - Building install executable...
06/17/09 12:30:41 - Windows build completed in 00m22s.
06/17/09 12:30:41 - Installer size is 85.42 MB.
06/17/09 12:30:41 - Build completed in 00m22s.
06/23/09 06:08:14 - Building message catalogs...
06/23/09 06:08:14 - Building Windows install...
06/23/09 06:08:14 - Building main.tcl...
06/23/09 06:08:14 - Refreshing file groups...
06/23/09 06:08:15 - Getting file list...
06/23/09 06:08:16 - Building file manifest...
06/23/09 06:08:16 - Saving install information...
06/23/09 06:08:17 - Building install...
06/23/09 06:08:17 - Building install executable...
06/23/09 06:08:37 - Windows build completed in 00m23s.
06/23/09 06:08:37 - Installer size is 85.54 MB.
06/23/09 06:08:37 - Build completed in 00m23s.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -795,7 +795,7 @@ On Windows Vista it can stand for one or two minutes, please wait until ends.
When you see "Installation process completed", close that window pressing enter, and click "Next" button.}
ChronopicDriverInstallTextDone
{Installed Chronopic driver. Please press "Next" }
{Installed Chronopic driver. Please press "Next"}
CleanupInstallText
{Cleaning up install...}
......
......@@ -3009,7 +3009,7 @@ msgstr "Auto-detecció actualment desactivada"
#: ../src/gui/helpPorts.cs:79
msgid "More information on <b>Chronojump Manual</b> at section:"
msgstr "Més informació al <B>Manual de Chronojump</b>"
msgstr "Més informació al <b>Manual de Chronojump</b>"
#: ../src/gui/helpPorts.cs:91
msgid "Click with the right button on <i>MyPC</i> icon at desktop or Start Menu."
......
This diff is collapsed.
......@@ -374,8 +374,8 @@ Console.WriteLine("--6--");
//done because if database dir is moved in a chronojump conversion (eg from before installer to installjammer) maybe it will not find this runningFileName
}
System.Console.Out.Close();
Log.End();
Log.Delete();
//Log.End();
//Log.Delete();
Application.Quit();
}
......
......@@ -83,7 +83,7 @@ public class Constants
public const string ServerEvaluatorTable = "SEvaluator";
public const string IPUnknown = "Unknown";
public static int ServerUndefinedID = -1;
public static string ServerOffline = Catalog.GetString("Sorry, server is currently offline.");
public static string ServerOffline = Catalog.GetString("Sorry, server is currently offline. Try later.");
public enum ServerSessionStates {
NOTHING, UPLOADINGSESSION, UPLOADINGDATA, DONE
}
......
......@@ -276,6 +276,7 @@ public class ExportSession
Catalog.GetString("Fall") + ":" +
weightName + ":" +
Catalog.GetString("Height") + ":" +
Catalog.GetString("Power") + ":" +
Catalog.GetString("Initial Speed") + ":" +
Catalog.GetString("Description") + ":" +
Catalog.GetString("Angle") + ":" +
......@@ -295,6 +296,12 @@ public class ExportSession
Convert.ToInt32(myStr[2]),
Convert.ToInt32(myStr[3])
)).ToString();
double tc = Convert.ToDouble(myStr[6]);
double tf = Convert.ToDouble(myStr[5]);
string djPower = "-";
if(tc > 0 && tf > 0)
djPower = Util.TrimDecimals(Util.GetDjPower(tc, tf).ToString(), dec);
myData.Add (
myStr[2] + ":" + myStr[0] + ":" + //person.UniqueID, person.Name
......@@ -303,6 +310,7 @@ public class ExportSession
Util.TrimDecimals(myStr[5], dec) + ":" + myStr[7] + ":" + //jump.tv, jump.fall
Util.TrimDecimals(myWeight, dec) + ":" +
Util.TrimDecimals(Util.GetHeightInCentimeters(myStr[5]), dec) + ":" +
djPower + ":" +
Util.TrimDecimals(Util.GetInitialSpeed(myStr[5], true), dec) + ":" + //true: m/s
Util.RemoveNewLine(myStr[9]) + ":" + //jump.description
Util.TrimDecimals(myStr[10],dec) + ":" + //jump.angle
......
......@@ -288,6 +288,7 @@ public class ChronoJumpWindow
private static string chronopicPort;
private static int prefsDigitsNumber;
private static bool showHeight;
private static bool showPower;
private static bool showInitialSpeed;
private static bool showAngle;
private static bool showQIndex;
......@@ -702,6 +703,10 @@ public class ChronoJumpWindow
else
showHeight = false;
if ( SqlitePreferences.Select("showPower") == "True" )
showPower = true;
else
showPower = false;
if ( SqlitePreferences.Select("showInitialSpeed") == "True" )
showInitialSpeed = true;
......@@ -1215,8 +1220,7 @@ public class ChronoJumpWindow
private void createTreeView_jumps (Gtk.TreeView tv) {
//myTreeViewJumps is a TreeViewJumps instance
//myTreeViewJumps = new TreeViewJumps( tv, showHeight, showInitialSpeed, showQIndex, showDjIndex, prefsDigitsNumber, metersSecondsPreferred );
myTreeViewJumps = new TreeViewJumps( tv, showHeight, showInitialSpeed, showAngle, showQIndex, showDjIndex, prefsDigitsNumber, weightPercentPreferred, metersSecondsPreferred, TreeViewEvent.ExpandStates.MINIMIZED);
myTreeViewJumps = new TreeViewJumps( tv, showHeight, showPower, showInitialSpeed, showAngle, showQIndex, showDjIndex, prefsDigitsNumber, weightPercentPreferred, metersSecondsPreferred, TreeViewEvent.ExpandStates.MINIMIZED);
//the glade cursor_changed does not work on mono 1.2.5 windows
tv.CursorChanged += on_treeview_jumps_cursor_changed;
......@@ -1242,7 +1246,7 @@ public class ChronoJumpWindow
private void treeview_jumps_storeReset() {
myTreeViewJumps.RemoveColumns();
myTreeViewJumps = new TreeViewJumps( treeview_jumps, showHeight, showInitialSpeed, showAngle, showQIndex, showDjIndex, prefsDigitsNumber, weightPercentPreferred, metersSecondsPreferred, myTreeViewJumps.ExpandState );
myTreeViewJumps = new TreeViewJumps( treeview_jumps, showHeight, showPower, showInitialSpeed, showAngle, showQIndex, showDjIndex, prefsDigitsNumber, weightPercentPreferred, metersSecondsPreferred, myTreeViewJumps.ExpandState );
}
private void on_treeview_jumps_cursor_changed (object o, EventArgs args) {
......@@ -1914,8 +1918,8 @@ public class ChronoJumpWindow
Log.WriteLine("Bye2!");
System.Console.Out.Close();
Log.End();
Log.Delete();
//Log.End();
//Log.Delete();
Log.WriteLine("Bye3!");
Application.Quit();
}
......@@ -1935,8 +1939,8 @@ public class ChronoJumpWindow
Log.WriteLine("Bye2!");
System.Console.Out.Close();
Log.End();
Log.Delete();
//Log.End();
//Log.Delete();
Log.WriteLine("Bye3!");
Application.Quit();
}
......@@ -2500,7 +2504,7 @@ public class ChronoJumpWindow
private void on_preferences_activate (object o, EventArgs args) {
PreferencesWindow myWin = PreferencesWindow.Show(
chronopicPort, prefsDigitsNumber, showHeight, showInitialSpeed, showAngle, showQIndex, showDjIndex,
chronopicPort, prefsDigitsNumber, showHeight, showPower, showInitialSpeed, showAngle, showQIndex, showDjIndex,
askDeletion, weightPercentPreferred, heightPreferred, metersSecondsPreferred,
//System.Threading.Thread.CurrentThread.CurrentUICulture.ToString(),
SqlitePreferences.Select("language"),
......@@ -2541,6 +2545,11 @@ public class ChronoJumpWindow
else
showHeight = false;
if ( SqlitePreferences.Select("showPower") == "True" )
showPower = true;
else
showPower = false;
if ( SqlitePreferences.Select("showInitialSpeed") == "True" )
showInitialSpeed = true;
......
......@@ -41,7 +41,11 @@ public class DialogMessage
UtilGtk.IconWindow(dialog_message);
//with this, user doesn't see a moving/changing creation window
dialog_message.Hide();
//if uncommented, then does weird bug in windows not showing dialog as its correct size until window is moves
//dialog_message.Hide();
label_message.Text = message;
label_message.UseMarkup = true;
switch (type) {
case Constants.MessageTypes.WARNING:
......@@ -61,9 +65,7 @@ public class DialogMessage
break;
}
label_message.Text = message;
label_message.UseMarkup = true;
label_message.Show();
dialog_message.Show();
}
......
......@@ -1738,7 +1738,7 @@ public class EventExecuteWindow
public void RunATouchPlatform() {
//new DialogMessage(Constants.MessageTypes.INFO, "Please, touch a platform now. (from gui/eventExecute.cs");
this.label_message1.Text = "<b>" + "Please, touch platform now." + "</b>";
this.label_message1.Text = "<b>" + "Always remember to touch platform at ending. If you don't do it, Chronojump will crash at next execution.\nAt this version, this message doesn't quit." + "</b>";
label_message1.UseMarkup = true;
}
public void RunANoStrides() {
......
......@@ -41,6 +41,7 @@ public class PreferencesWindow {
[Widget] Gtk.ComboBox combo_decimals;
[Widget] Gtk.CheckButton checkbutton_height;
[Widget] Gtk.CheckButton checkbutton_power;
[Widget] Gtk.CheckButton checkbutton_initial_speed;
[Widget] Gtk.CheckButton checkbutton_angle;
......@@ -108,10 +109,10 @@ public class PreferencesWindow {
//database and log files stuff
label_database.Text = Util.GetDatabaseDir() + System.IO.Path.DirectorySeparatorChar + "chronojump.db";
label_database_temp.Text = Util.GetDatabaseTempDir() + System.IO.Path.DirectorySeparatorChar + "chronojump.db";
label_logs.Text = Log.GetDir();
//label_logs.Text = Log.GetDir();
}
static public PreferencesWindow Show (string entryChronopic, int digitsNumber, bool showHeight,
static public PreferencesWindow Show (string entryChronopic, int digitsNumber, bool showHeight, bool showPower,
bool showInitialSpeed, bool showAngle, bool showQIndex, bool showDjIndex,
bool askDeletion, bool weightStatsPercent, bool heightPreferred, bool metersSecondsPreferred,
string language, bool allowFinishRjAfterTime)
......@@ -145,20 +146,22 @@ public class PreferencesWindow {
if(showHeight)
PreferencesWindowBox.checkbutton_height.Active = true;
else
PreferencesWindowBox.checkbutton_height.Active = false;
if(showPower)
PreferencesWindowBox.checkbutton_power.Active = true;
else
PreferencesWindowBox.checkbutton_power.Active = false;
if(showInitialSpeed)
PreferencesWindowBox.checkbutton_initial_speed.Active = true;
else
PreferencesWindowBox.checkbutton_initial_speed.Active = false;
if(showAngle)
PreferencesWindowBox.checkbutton_angle.Active = true;
else
PreferencesWindowBox.checkbutton_angle.Active = false;
......@@ -180,34 +183,29 @@ public class PreferencesWindow {
if(askDeletion)
PreferencesWindowBox.checkbutton_ask_deletion.Active = true;
else
PreferencesWindowBox.checkbutton_ask_deletion.Active = false;
if(weightStatsPercent)
PreferencesWindowBox.checkbutton_percent_kg_preferred.Active = true;
else
PreferencesWindowBox.checkbutton_percent_kg_preferred.Active = false;
if(heightPreferred)
PreferencesWindowBox.checkbutton_height_preferred.Active = true;
else
PreferencesWindowBox.checkbutton_height_preferred.Active = false;
if(metersSecondsPreferred)
PreferencesWindowBox.checkbutton_meters_seconds_preferred.Active = true;
else
PreferencesWindowBox.checkbutton_meters_seconds_preferred.Active = false;
PreferencesWindowBox.preferences.Show ();
return PreferencesWindowBox;
}
......@@ -354,6 +352,7 @@ public class PreferencesWindow {
SqlitePreferences.Update("digitsNumber", UtilGtk.ComboGetActive(combo_decimals), false);
SqlitePreferences.Update("showHeight", PreferencesWindowBox.checkbutton_height.Active.ToString(), false);
SqlitePreferences.Update("showPower", PreferencesWindowBox.checkbutton_power.Active.ToString(), false);
SqlitePreferences.Update("showInitialSpeed", PreferencesWindowBox.checkbutton_initial_speed.Active.ToString(), false);
SqlitePreferences.Update("showAngle", PreferencesWindowBox.checkbutton_angle.Active.ToString(), false);
SqlitePreferences.Update("allowFinishRjAfterTime", PreferencesWindowBox.checkbutton_allow_finish_rj_after_time.Active.ToString(), false);
......
......@@ -33,6 +33,7 @@ public class Log
private static string timeLog = "";
private static bool useConsole = true; //for the new method on chronojump.cs for redirecting output and error to same file also on windows (0.7.5)
/*
private static bool initializeTime(string [] args) {
if(! Directory.Exists(GetDir())) {
try {
......@@ -50,7 +51,9 @@ public class Log
return timeLogPassedOk;
}
*/
/*
public static string GetDir() {
//we are on:
//Chronojump/chronojump-x.y/data/
......@@ -68,8 +71,9 @@ public class Log
public static string GetFile() {
return Path.GetFullPath(GetDir() + Path.DirectorySeparatorChar + "" + timeLog + ".txt");
}
*/
public static bool Start(string [] args) {
// public static bool Start(string [] args) {
/* this is ok for define a time that will be the name of the log file
* if program ends ok, it will delete that file.
* The problem is that i don't know how to redirect a crash there.
......@@ -89,7 +93,8 @@ public class Log
*
* study how to do it in the bat file for windows
*/
/*
bool timeLogPassedOk = initializeTime(args);
if(useConsole)
......@@ -100,6 +105,7 @@ public class Log
return timeLogPassedOk;
}
*/
public static void Write(string text) {
if(useConsole)
......@@ -123,21 +129,24 @@ public class Log
*/
}
/*
public static void End() {
/*
try {
((IDisposable)writer).Dispose();
} catch {}
*/
}
*/
//if exit normally, then delete file
/*
public static void Delete() {
try {
File.Delete(GetFile());
} catch {}
}
*/
/*
//GetLast should NOT return the newer log: the just created and empty file,
//it should return the just before the last, that's the log of when chronojump crashed last time
public static string GetLast() {
......@@ -184,4 +193,5 @@ public class Log
else
return Path.GetFullPath(lastLogFile);
}
*/
}
......@@ -138,7 +138,6 @@ public class RunType : EventType
description = "Gesell Dynamic Balance Test";
longDescription =
"<b>" + Catalog.GetString("Note on measurement") + "</b>: \n" +
Catalog.GetString("Measured time will be the time between two platforms\n(not including time person is in contact with any platform") + "\n\n" +
Catalog.GetString("Measured time will be the time between two platforms") + "\n\n" +
"<b>" + Catalog.GetString("Short description") + "</b>: \n" +
Catalog.GetString("Subjects had to walk over the bar as fast as possible.") + "\n" +
......
......@@ -72,7 +72,7 @@ class Sqlite
* Important, change this if there's any update to database
* Important2: if database version get numbers higher than 1, check if the comparisons with currentVersion works ok
*/
static string lastChronojumpDatabaseVersion = "0.69";
static string lastChronojumpDatabaseVersion = "0.70";
public Sqlite() {
}
......@@ -428,7 +428,7 @@ class Sqlite
//Log.WriteLine("lastDB: {0}", Convert.ToDouble(lastChronojumpDatabaseVersion));
//Log.WriteLine("currentVersion: {0}", Convert.ToDouble(currentVersion));
bool returnSoftwareIsNew = true; //-1 if there's software is too old for database (moved db to other computer)
bool returnSoftwareIsNew = true; //-1 if software is too old for database (moved db to other computer)
if(Convert.ToDouble(lastChronojumpDatabaseVersion) == Convert.ToDouble(currentVersion))
Log.WriteLine("Database is already latest version");
else if(Convert.ToDouble(lastChronojumpDatabaseVersion) < Convert.ToDouble(currentVersion)) {
......@@ -891,6 +891,15 @@ class Sqlite
dbcon.Close();
currentVersion = "0.69";
}
if(currentVersion == "0.69") {
dbcon.Open();
SqlitePreferences.Insert ("showPower", "True");
SqlitePreferences.Update ("databaseVersion", "0.70", true);
Log.WriteLine("Converted DB to 0.70 (added showPower)");
dbcon.Close();
currentVersion = "0.70";
}
}
......@@ -1014,6 +1023,7 @@ class Sqlite
SqliteCountry.initialize();
//changes [from - to - desc]
//0.68 - 0.69 added showPower to preferences
//0.68 - 0.69 added Gesell-DBT test
//0.67 - 0.68 added multiChronopic tests table
//0.66 - 0.67 added TakeOff jumps
......
......@@ -46,6 +46,7 @@ class SqlitePreferences : Sqlite
Insert ("digitsNumber", "3");
Insert ("showHeight", "True");
Insert ("showPower", "True");
Insert ("showInitialSpeed", "True");
Insert ("showAngle", "False"); //for treeviewjumps
Insert ("showQIndex", "False"); //for treeviewJumps
......
......@@ -28,6 +28,7 @@ using Mono.Unix;
public class TreeViewJumps : TreeViewEvent
{
protected bool showHeight;
protected bool showPower;
protected bool showInitialSpeed;
protected bool showAngle;
protected bool showQIndex;
......@@ -37,6 +38,7 @@ public class TreeViewJumps : TreeViewEvent
protected string weightName = Catalog.GetString("Weight");
protected string fallName = Catalog.GetString("Fall") + "\n(cm)";
protected string heightName = Catalog.GetString("Height") + "\n(cm)";
protected string powerName = Catalog.GetString("Power") + "\n(W/Kg)";
protected string initialSpeedName = Catalog.GetString("Initial Speed");
protected string angleName = Catalog.GetString("Angle");
......@@ -51,13 +53,15 @@ public class TreeViewJumps : TreeViewEvent
{
}
public TreeViewJumps (Gtk.TreeView treeview, bool showHeight, bool showInitialSpeed, bool showAngle,
public TreeViewJumps (Gtk.TreeView treeview,
bool showHeight, bool showPower, bool showInitialSpeed, bool showAngle,
bool showQIndex, bool showDjIndex, int newPrefsDigitsNumber,
bool weightPercentPreferred, bool metersSecondsPreferred,
ExpandStates expandState)
{
this.treeview = treeview;
this.showHeight = showHeight;
this.showPower = showPower;
this.showInitialSpeed = showInitialSpeed;
this.showAngle = showAngle;
this.showQIndex = showQIndex;
......@@ -96,6 +100,8 @@ public class TreeViewJumps : TreeViewEvent
int i = columnsString.Length;
if (showHeight)
i ++;
if (showPower)
i ++;
if (showInitialSpeed)
i ++;
if (showAngle)
......@@ -108,9 +114,11 @@ public class TreeViewJumps : TreeViewEvent
protected string [] obtainColumnsString(string [] columnsStringPre)
{
//check long of new array
int i = 6;
int i = 6; //columnsStringPre + uniqueID (at last)
if (showHeight)
i ++;
if (showPower)
i ++;
if (showInitialSpeed)
i ++;
if (showAngle)
......@@ -120,7 +128,7 @@ public class TreeViewJumps : TreeViewEvent
//create new array
string [] columnsString = new String[i];
Array.Copy(columnsStringPre, columnsString, 5);
Array.Copy(columnsStringPre, columnsString, 5); //copy columnsStringPre
if(metersSecondsPreferred)
......@@ -130,9 +138,11 @@ public class TreeViewJumps : TreeViewEvent
//fill names
i = 5;
i = 5; //start at pos five end of columnsStringPre
if (showHeight)
columnsString[i++] = heightName;
if (showPower)
columnsString[i++] = powerName;
if (showInitialSpeed)
columnsString[i++] = initialSpeedName;
if (showAngle)
......@@ -190,6 +200,13 @@ public class TreeViewJumps : TreeViewEvent
myData[count++] = newJump.Fall.ToString();
if (showHeight)
myData[count++] = Util.TrimDecimals(Util.GetHeightInCentimeters(newJump.Tv.ToString()), pDN);
if (showPower) {
//if is Dj (has tc, but is not a takeoff (only has tc))
if(newJump.Tc > 0 && newJump.Tv > 0)
myData[count++] = Util.TrimDecimals(Util.GetDjPower(newJump.Tc, newJump.Tv).ToString(), pDN);
else
myData[count++] = "-";
}
if (showInitialSpeed)
myData[count++] = Util.TrimDecimals(Util.GetInitialSpeed(newJump.Tv.ToString(), metersSecondsPreferred), pDN);
if (showAngle)
......
......@@ -510,6 +510,19 @@ public class Util
return initialSpeed.ToString();
}
public static double GetDjPower (double tc, double tf)
{
//relative potency in Watts/Kg
//Bosco. Pendent to find if published
//P = 24.6 * (TotalTime + FlightTime) / ContactTime
double tt = tc + tf; //totalTime
return 24.06 * ( tt * tf ) / (Double)tc;
}
public static double GetQIndex (double tv, double tc)
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment