diff options
-rw-r--r-- | filter-accela/accela-settings.hpp | 7 | ||||
-rw-r--r-- | filter-accela/ftnoir_accela_filtercontrols.ui | 290 | ||||
-rw-r--r-- | filter-accela/ftnoir_filter_accela.cpp | 20 | ||||
-rw-r--r-- | filter-accela/ftnoir_filter_accela_dialog.cpp | 13 | ||||
-rw-r--r-- | filter-accela/lang/nl_NL.ts | 44 | ||||
-rw-r--r-- | filter-accela/lang/ru_RU.ts | 44 | ||||
-rw-r--r-- | filter-accela/lang/stub.ts | 44 |
7 files changed, 166 insertions, 296 deletions
diff --git a/filter-accela/accela-settings.hpp b/filter-accela/accela-settings.hpp index 073a9f3f..2fea2f33 100644 --- a/filter-accela/accela-settings.hpp +++ b/filter-accela/accela-settings.hpp @@ -47,11 +47,10 @@ struct settings_accela : opts static void make_splines(spline& rot, spline& pos); - value<slider_value> rot_sensitivity { b, "rotation-sensitivity", slider_value(1.5, .05, 2.5) }, - pos_sensitivity { b, "translation-sensitivity", slider_value(1., .05, 1.5) }, + value<slider_value> rot_smoothing { b, "rotation-sensitivity", slider_value(1.5, .05, 2.5) }, + pos_smoothing { b, "translation-sensitivity", slider_value(1., .05, 1.5) }, rot_deadzone { b, "rotation-deadzone", slider_value(.03, 0, .2) }, - pos_deadzone { b, "translation-deadzone", slider_value(.1, 0, 1) }, - ewma { b, "ewma", slider_value(0, 0, 200) }; + pos_deadzone { b, "translation-deadzone", slider_value(.1, 0, 1) }; settings_accela() : opts("accela-sliders") {} }; diff --git a/filter-accela/ftnoir_accela_filtercontrols.ui b/filter-accela/ftnoir_accela_filtercontrols.ui index dbb227ee..ce9f52a2 100644 --- a/filter-accela/ftnoir_accela_filtercontrols.ui +++ b/filter-accela/ftnoir_accela_filtercontrols.ui @@ -10,7 +10,7 @@ <x>0</x> <y>0</y> <width>550</width> - <height>345</height> + <height>275</height> </rect> </property> <property name="sizePolicy"> @@ -36,70 +36,12 @@ <property name="topMargin"> <number>5</number> </property> - <item row="3" column="0"> - <widget class="QLabel" name="label_9"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Minimum" vsizetype="Maximum"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="font"> - <font> - <pointsize>7</pointsize> - </font> - </property> - <property name="frameShape"> - <enum>QFrame::NoFrame</enum> - </property> - <property name="text"> - <string><html><head/><body><p align="right"><br/><span style=" font-size:10pt;">Accela by </span><a href="https://github.com/sthalik"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Stanisław Halik</span></a><span style=" font-size:10pt;"><br/>Thanks to </span><a href="https://github.com/dbaarda"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Donovan Baarda</span></a></p><p align="right"><span style=" font-size:10pt;">2012-2017</span></p><p align="right"><br/><span style=" font-size:8pt;">Visit </span><a href="https://github.com/opentrack/opentrack/wiki/Accela-in-opentrack-2.3"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">our wiki</span></a><span style=" font-size:8pt;"> for description of the settings.</span></p></body></html></string> - </property> - <property name="textFormat"> - <enum>Qt::RichText</enum> - </property> - <property name="scaledContents"> - <bool>false</bool> - </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - <property name="wordWrap"> - <bool>true</bool> - </property> - <property name="margin"> - <number>0</number> - </property> - <property name="indent"> - <number>0</number> - </property> - <property name="openExternalLinks"> - <bool>true</bool> - </property> - <property name="textInteractionFlags"> - <set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set> - </property> - </widget> - </item> - <item row="4" column="0"> - <widget class="QDialogButtonBox" name="buttonBox"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Maximum" vsizetype="Maximum"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="standardButtons"> - <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set> - </property> - </widget> - </item> - <item row="2" column="0"> - <widget class="QGroupBox" name="groupBox_2"> + <item row="0" column="0"> + <widget class="QGroupBox" name="groupBox44"> <property name="title"> - <string>Position filtering (X, Y, Z - translation)</string> + <string>Rotation filtering (Yaw, pitch, and roll)</string> </property> - <layout class="QGridLayout" name="gridLayout_2"> + <layout class="QGridLayout" name="gridLayout"> <property name="topMargin"> <number>4</number> </property> @@ -113,7 +55,7 @@ <number>2</number> </property> <item row="0" column="0"> - <widget class="QLabel" name="label"> + <widget class="QLabel" name="lblSensYaw_6"> <property name="sizePolicy"> <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> <horstretch>0</horstretch> @@ -121,12 +63,12 @@ </sizepolicy> </property> <property name="text"> - <string>Sensitivity</string> + <string>Smoothing</string> </property> </widget> </item> <item row="0" column="1"> - <widget class="QLabel" name="trans_gain"> + <widget class="QLabel" name="rot_gain"> <property name="minimumSize"> <size> <width>50</width> @@ -134,12 +76,12 @@ </size> </property> <property name="text"> - <string>0mm</string> + <string>0°</string> </property> </widget> </item> - <item row="1" column="2"> - <widget class="QSlider" name="trans_dz_slider"> + <item row="0" column="2"> + <widget class="QSlider" name="rotation_slider"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Maximum"> <horstretch>0</horstretch> @@ -150,7 +92,7 @@ <number>0</number> </property> <property name="maximum"> - <number>20</number> + <number>49</number> </property> <property name="pageStep"> <number>1</number> @@ -158,10 +100,23 @@ <property name="orientation"> <enum>Qt::Horizontal</enum> </property> + <property name="tickPosition"> + <enum>QSlider::TicksAbove</enum> + </property> + <property name="tickInterval"> + <number>50</number> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="label_4"> + <property name="text"> + <string>Deadzone</string> + </property> </widget> </item> <item row="1" column="1"> - <widget class="QLabel" name="trans_dz"> + <widget class="QLabel" name="rot_dz"> <property name="minimumSize"> <size> <width>50</width> @@ -169,19 +124,12 @@ </size> </property> <property name="text"> - <string>0mm</string> - </property> - </widget> - </item> - <item row="1" column="0"> - <widget class="QLabel" name="label_6"> - <property name="text"> - <string>Deadzone</string> + <string>0°</string> </property> </widget> </item> - <item row="0" column="2"> - <widget class="QSlider" name="translation_slider"> + <item row="1" column="2"> + <widget class="QSlider" name="rot_dz_slider"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Maximum"> <horstretch>0</horstretch> @@ -192,7 +140,7 @@ <number>0</number> </property> <property name="maximum"> - <number>29</number> + <number>20</number> </property> <property name="pageStep"> <number>1</number> @@ -200,29 +148,17 @@ <property name="orientation"> <enum>Qt::Horizontal</enum> </property> - <property name="tickPosition"> - <enum>QSlider::TicksAbove</enum> - </property> - <property name="tickInterval"> - <number>40</number> - </property> </widget> </item> </layout> - <zorder>trans_dz_slider</zorder> - <zorder>translation_slider</zorder> - <zorder>trans_dz</zorder> - <zorder>label_6</zorder> - <zorder>trans_gain</zorder> - <zorder>label</zorder> </widget> </item> <item row="1" column="0"> - <widget class="QGroupBox" name="groupBox44"> + <widget class="QGroupBox" name="groupBox_2"> <property name="title"> - <string>Rotation filtering (Yaw, pitch, and roll)</string> + <string>Position filtering (X, Y, Z - translation)</string> </property> - <layout class="QGridLayout" name="gridLayout"> + <layout class="QGridLayout" name="gridLayout_2"> <property name="topMargin"> <number>4</number> </property> @@ -236,7 +172,7 @@ <number>2</number> </property> <item row="0" column="0"> - <widget class="QLabel" name="lblSensYaw_6"> + <widget class="QLabel" name="label"> <property name="sizePolicy"> <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> <horstretch>0</horstretch> @@ -244,12 +180,12 @@ </sizepolicy> </property> <property name="text"> - <string>Sensitivity</string> + <string>Smoothing</string> </property> </widget> </item> <item row="0" column="1"> - <widget class="QLabel" name="rot_gain"> + <widget class="QLabel" name="trans_gain"> <property name="minimumSize"> <size> <width>50</width> @@ -257,12 +193,12 @@ </size> </property> <property name="text"> - <string>0°</string> + <string>0mm</string> </property> </widget> </item> - <item row="0" column="2"> - <widget class="QSlider" name="rotation_slider"> + <item row="1" column="2"> + <widget class="QSlider" name="trans_dz_slider"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Maximum"> <horstretch>0</horstretch> @@ -273,7 +209,7 @@ <number>0</number> </property> <property name="maximum"> - <number>49</number> + <number>20</number> </property> <property name="pageStep"> <number>1</number> @@ -281,23 +217,10 @@ <property name="orientation"> <enum>Qt::Horizontal</enum> </property> - <property name="tickPosition"> - <enum>QSlider::TicksAbove</enum> - </property> - <property name="tickInterval"> - <number>50</number> - </property> - </widget> - </item> - <item row="1" column="0"> - <widget class="QLabel" name="label_4"> - <property name="text"> - <string>Deadzone</string> - </property> </widget> </item> <item row="1" column="1"> - <widget class="QLabel" name="rot_dz"> + <widget class="QLabel" name="trans_dz"> <property name="minimumSize"> <size> <width>50</width> @@ -305,69 +228,19 @@ </size> </property> <property name="text"> - <string>0°</string> - </property> - </widget> - </item> - <item row="1" column="2"> - <widget class="QSlider" name="rot_dz_slider"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Maximum"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="minimum"> - <number>0</number> - </property> - <property name="maximum"> - <number>20</number> - </property> - <property name="pageStep"> - <number>1</number> - </property> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - </widget> - </item> - </layout> - </widget> - </item> - <item row="0" column="0"> - <widget class="QGroupBox" name="groupBox66"> - <property name="title"> - <string>General</string> - </property> - <layout class="QHBoxLayout" name="horizontalLayout"> - <property name="topMargin"> - <number>0</number> - </property> - <property name="bottomMargin"> - <number>0</number> - </property> - <item> - <widget class="QLabel" name="label_2"> - <property name="text"> - <string>Smoothing</string> + <string>0mm</string> </property> </widget> </item> - <item> - <widget class="QLabel" name="ewma_label"> - <property name="minimumSize"> - <size> - <width>50</width> - <height>0</height> - </size> - </property> + <item row="1" column="0"> + <widget class="QLabel" name="label_6"> <property name="text"> - <string>0 ms</string> + <string>Deadzone</string> </property> </widget> </item> - <item> - <widget class="QSlider" name="ewma_slider"> + <item row="0" column="2"> + <widget class="QSlider" name="translation_slider"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Maximum"> <horstretch>0</horstretch> @@ -378,7 +251,7 @@ <number>0</number> </property> <property name="maximum"> - <number>20</number> + <number>29</number> </property> <property name="pageStep"> <number>1</number> @@ -390,17 +263,80 @@ <enum>QSlider::TicksAbove</enum> </property> <property name="tickInterval"> - <number>5</number> + <number>40</number> </property> </widget> </item> </layout> + <zorder>trans_dz_slider</zorder> + <zorder>translation_slider</zorder> + <zorder>trans_dz</zorder> + <zorder>label_6</zorder> + <zorder>trans_gain</zorder> + <zorder>label</zorder> + </widget> + </item> + <item row="2" column="0"> + <widget class="QLabel" name="label_9"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Maximum"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="font"> + <font> + <pointsize>7</pointsize> + </font> + </property> + <property name="frameShape"> + <enum>QFrame::NoFrame</enum> + </property> + <property name="text"> + <string><html><head/><body><p align="right"><br/><span style=" font-size:10pt;">Accela by </span><a href="https://github.com/sthalik"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Stanisław Halik</span></a><span style=" font-size:10pt;"><br/>Thanks to </span><a href="https://github.com/dbaarda"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Donovan Baarda</span></a></p><p align="right"><span style=" font-size:10pt;">2012-2017</span></p><p align="right"><br/><span style=" font-size:8pt;">Visit </span><a href="https://github.com/opentrack/opentrack/wiki/Accela-in-opentrack-2.3"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">our wiki</span></a><span style=" font-size:8pt;"> for description of the settings.</span></p></body></html></string> + </property> + <property name="textFormat"> + <enum>Qt::RichText</enum> + </property> + <property name="scaledContents"> + <bool>false</bool> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + <property name="wordWrap"> + <bool>true</bool> + </property> + <property name="margin"> + <number>0</number> + </property> + <property name="indent"> + <number>0</number> + </property> + <property name="openExternalLinks"> + <bool>true</bool> + </property> + <property name="textInteractionFlags"> + <set>Qt::LinksAccessibleByKeyboard|Qt::LinksAccessibleByMouse|Qt::TextBrowserInteraction|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set> + </property> + </widget> + </item> + <item row="3" column="0"> + <widget class="QDialogButtonBox" name="buttonBox"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Maximum" vsizetype="Maximum"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="standardButtons"> + <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set> + </property> </widget> </item> </layout> </widget> <tabstops> - <tabstop>ewma_slider</tabstop> <tabstop>rotation_slider</tabstop> <tabstop>rot_dz_slider</tabstop> <tabstop>translation_slider</tabstop> diff --git a/filter-accela/ftnoir_filter_accela.cpp b/filter-accela/ftnoir_filter_accela.cpp index edb2912f..aa031f2c 100644 --- a/filter-accela/ftnoir_filter_accela.cpp +++ b/filter-accela/ftnoir_filter_accela.cpp @@ -24,19 +24,17 @@ accela::accela() : first_run(true) template<int N = 3, typename F> never_inline -static void do_deltas(const double* deltas, double* output, double alpha, double& smoothed, F&& fun) +static void do_deltas(const double* deltas, double* output, double& smoothed, F&& fun) { double norm[N]; - const double dist_ = progn( + const double dist = progn( double ret = 0; for (unsigned k = 0; k < N; k++) ret += deltas[k]*deltas[k]; return sqrt(ret); ); - const double dist = fmin(dist_, alpha*dist_ + (1-alpha)*smoothed); - smoothed = dist; const double value = double(fun(dist)); for (unsigned k = 0; k < N; k++) @@ -93,14 +91,12 @@ void accela::filter(const double* input, double *output) return; } - const double rot_thres = s.rot_sensitivity.to<double>(); - const double pos_thres = s.pos_sensitivity.to<double>(); + const double rot_thres = s.rot_smoothing.to<double>(); + const double pos_thres = s.pos_smoothing.to<double>(); const double dt = t.elapsed_seconds(); t.start(); - const double RC = s.ewma.to<double>() / 1000.; // seconds - const double alpha = dt/(dt+RC); const double rot_dz = s.rot_deadzone.to<double>(); const double pos_dz = s.pos_deadzone.to<double>(); @@ -118,7 +114,9 @@ void accela::filter(const double* input, double *output) deltas[i] = d / rot_thres; } - do_deltas(&deltas[Yaw], &output[Yaw], alpha, smoothed_input[0], [this](double x) { return spline_rot.get_value_no_save(x); }); + do_deltas(&deltas[Yaw], &output[Yaw], smoothed_input[0], [this](double x) { + return spline_rot.get_value_no_save(x); + }); #if defined DEBUG_ACCELA var.input(fabs(smoothed_input[0]) + fabs(smoothed_input[1]) + fabs(smoothed_input[2])); @@ -151,7 +149,9 @@ void accela::filter(const double* input, double *output) deltas[i] = d / pos_thres; } - do_deltas(&deltas[TX], &output[TX], alpha, smoothed_input[1], [this](double x) { return spline_pos.get_value_no_save(x); }); + do_deltas(&deltas[TX], &output[TX], smoothed_input[1], [this](double x) { + return spline_pos.get_value_no_save(x); + }); // end diff --git a/filter-accela/ftnoir_filter_accela_dialog.cpp b/filter-accela/ftnoir_filter_accela_dialog.cpp index ab6634c4..51c31ca4 100644 --- a/filter-accela/ftnoir_filter_accela_dialog.cpp +++ b/filter-accela/ftnoir_filter_accela_dialog.cpp @@ -20,15 +20,13 @@ dialog_accela::dialog_accela() connect(ui.buttonBox, SIGNAL(accepted()), this, SLOT(doOK())); connect(ui.buttonBox, SIGNAL(rejected()), this, SLOT(doCancel())); - tie_setting(s.rot_sensitivity, ui.rotation_slider); - tie_setting(s.pos_sensitivity, ui.translation_slider); - tie_setting(s.ewma, ui.ewma_slider); + tie_setting(s.rot_smoothing, ui.rotation_slider); + tie_setting(s.pos_smoothing, ui.translation_slider); tie_setting(s.rot_deadzone, ui.rot_dz_slider); tie_setting(s.pos_deadzone, ui.trans_dz_slider); - tie_setting(s.rot_sensitivity, ui.rot_gain, [](const slider_value& s) { return tr("%1°").arg(s, 0, 'g', 4); }); - tie_setting(s.pos_sensitivity, ui.trans_gain, [](const slider_value& s) { return tr("%1mm").arg(s, 0, 'g', 4); }); - tie_setting(s.ewma, ui.ewma_label, [](const slider_value& s) { return tr("%1ms").arg(s); }); + tie_setting(s.rot_smoothing, ui.rot_gain, [](const slider_value& s) { return tr("%1°").arg(s, 0, 'g', 4); }); + tie_setting(s.pos_smoothing, ui.trans_gain, [](const slider_value& s) { return tr("%1mm").arg(s, 0, 'g', 4); }); tie_setting(s.rot_deadzone, ui.rot_dz, [](const slider_value& s) { return tr("%1°").arg(s, 0, 'g', 4); }); tie_setting(s.pos_deadzone, ui.trans_dz, [](const slider_value& s) { return tr("%1mm").arg(s); }); @@ -78,6 +76,3 @@ void dialog_accela::save() { s.b->save(); } - - - diff --git a/filter-accela/lang/nl_NL.ts b/filter-accela/lang/nl_NL.ts index 6fb55c72..0f75d9fb 100644 --- a/filter-accela/lang/nl_NL.ts +++ b/filter-accela/lang/nl_NL.ts @@ -9,50 +9,35 @@ <translation type="unfinished">Filter-instellingen</translation> </message> <message> - <location line="+311"/> - <source>General</source> - <translation type="unfinished">Algemeen</translation> - </message> - <message> - <location line="+12"/> + <location line="+37"/> + <location line="+117"/> <source>Smoothing</source> <translation type="unfinished">Verzachten</translation> </message> <message> - <location line="+13"/> - <source>0 ms</source> - <translation type="unfinished">0 ms</translation> - </message> - <message> - <location line="-265"/> + <location line="-24"/> <source>Position filtering (X, Y, Z - translation)</source> <translation type="unfinished"></translation> </message> <message> - <location line="-44"/> + <location line="+137"/> <source><html><head/><body><p align="right"><br/><span style=" font-size:10pt;">Accela by </span><a href="https://github.com/sthalik"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Stanisław Halik</span></a><span style=" font-size:10pt;"><br/>Thanks to </span><a href="https://github.com/dbaarda"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Donovan Baarda</span></a></p><p align="right"><span style=" font-size:10pt;">2012-2017</span></p><p align="right"><br/><span style=" font-size:8pt;">Visit </span><a href="https://github.com/opentrack/opentrack/wiki/Accela-in-opentrack-2.3"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">our wiki</span></a><span style=" font-size:8pt;"> for description of the settings.</span></p></body></html></source> <translation type="unfinished"></translation> </message> <message> - <location line="+68"/> - <location line="+123"/> - <source>Sensitivity</source> - <translation type="unfinished">Gevoeligheid</translation> - </message> - <message> - <location line="-110"/> + <location line="-100"/> <location line="+35"/> <source>0mm</source> <translation type="unfinished">0mm</translation> </message> <message> - <location line="+7"/> - <location line="+116"/> + <location line="-117"/> + <location line="+124"/> <source>Deadzone</source> <translation type="unfinished">Deadzone</translation> </message> <message> - <location line="-72"/> + <location line="-196"/> <source>Rotation filtering (Yaw, pitch, and roll)</source> <translation type="unfinished"></translation> </message> @@ -66,21 +51,16 @@ <context> <name>dialog_accela</name> <message> - <location filename="../ftnoir_filter_accela_dialog.cpp" line="+29"/> - <location line="+3"/> + <location filename="../ftnoir_filter_accela_dialog.cpp" line="+28"/> + <location line="+2"/> <source>%1°</source> <translation type="unfinished"></translation> </message> <message> - <location line="-2"/> - <location line="+3"/> + <location line="-1"/> + <location line="+2"/> <source>%1mm</source> <translation type="unfinished"></translation> </message> - <message> - <location line="-2"/> - <source>%1ms</source> - <translation type="unfinished"></translation> - </message> </context> </TS> diff --git a/filter-accela/lang/ru_RU.ts b/filter-accela/lang/ru_RU.ts index 6822ee27..3a2f2004 100644 --- a/filter-accela/lang/ru_RU.ts +++ b/filter-accela/lang/ru_RU.ts @@ -9,50 +9,35 @@ <translation>Настройка фильтра</translation> </message> <message> - <location line="+311"/> - <source>General</source> - <translation>Основные настройки</translation> - </message> - <message> - <location line="+12"/> + <location line="+37"/> + <location line="+117"/> <source>Smoothing</source> <translation>Сглаживание</translation> </message> <message> - <location line="+13"/> - <source>0 ms</source> - <translation>0 мс</translation> - </message> - <message> - <location line="-265"/> + <location line="-24"/> <source>Position filtering (X, Y, Z - translation)</source> <translation>Фильтрация смещений (X, Y, Z)</translation> </message> <message> - <location line="-44"/> + <location line="+137"/> <source><html><head/><body><p align="right"><br/><span style=" font-size:10pt;">Accela by </span><a href="https://github.com/sthalik"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Stanisław Halik</span></a><span style=" font-size:10pt;"><br/>Thanks to </span><a href="https://github.com/dbaarda"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Donovan Baarda</span></a></p><p align="right"><span style=" font-size:10pt;">2012-2017</span></p><p align="right"><br/><span style=" font-size:8pt;">Visit </span><a href="https://github.com/opentrack/opentrack/wiki/Accela-in-opentrack-2.3"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">our wiki</span></a><span style=" font-size:8pt;"> for description of the settings.</span></p></body></html></source> <translation type="unfinished"><html><head/><body><p align="right"><br/><span style=" font-size:10pt;">Accela-фильтр создан </span><a href="https://github.com/sthalik"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Stanisław Halik</span></a><span style=" font-size:10pt;">'ом<br/>Спасибо за помощь </span><a href="https://github.com/dbaarda"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Donovan Baarda</span></a></p><p align="right"><span style=" font-size:10pt;">2012-2016</span></p><p align="right"><br/><span style=" font-size:8pt;">Посетите </span><a href="https://github.com/opentrack/opentrack/wiki/Accela-in-opentrack-2.3"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">нашу вики</span></a><span style=" font-size:8pt;"> для понимания процесса настройки.</span></p></body></html> {10p?} {10p?} {0057a?} {10p?} {10p?} {0057a?} {10p?} {2012-2017<?} {8p?} {2.3"?} {8p?} {0000f?} {8p?}</translation> </message> <message> - <location line="+68"/> - <location line="+123"/> - <source>Sensitivity</source> - <translation>Чувствительность</translation> - </message> - <message> - <location line="-110"/> + <location line="-100"/> <location line="+35"/> <source>0mm</source> <translation>0мм</translation> </message> <message> - <location line="+7"/> - <location line="+116"/> + <location line="-117"/> + <location line="+124"/> <source>Deadzone</source> <translation>Мертвая зона</translation> </message> <message> - <location line="-72"/> + <location line="-196"/> <source>Rotation filtering (Yaw, pitch, and roll)</source> <translation>Фильтрация поворотов (Рысканье, тангаж, крен)</translation> </message> @@ -66,21 +51,16 @@ <context> <name>dialog_accela</name> <message> - <location filename="../ftnoir_filter_accela_dialog.cpp" line="+29"/> - <location line="+3"/> + <location filename="../ftnoir_filter_accela_dialog.cpp" line="+28"/> + <location line="+2"/> <source>%1°</source> <translation type="unfinished"></translation> </message> <message> - <location line="-2"/> - <location line="+3"/> + <location line="-1"/> + <location line="+2"/> <source>%1mm</source> <translation type="unfinished"></translation> </message> - <message> - <location line="-2"/> - <source>%1ms</source> - <translation type="unfinished"></translation> - </message> </context> </TS> diff --git a/filter-accela/lang/stub.ts b/filter-accela/lang/stub.ts index 87e03816..aa45009a 100644 --- a/filter-accela/lang/stub.ts +++ b/filter-accela/lang/stub.ts @@ -9,50 +9,35 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+311"/> - <source>General</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+12"/> + <location line="+37"/> + <location line="+117"/> <source>Smoothing</source> <translation type="unfinished"></translation> </message> <message> - <location line="+13"/> - <source>0 ms</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-265"/> + <location line="-24"/> <source>Position filtering (X, Y, Z - translation)</source> <translation type="unfinished"></translation> </message> <message> - <location line="-44"/> + <location line="+137"/> <source><html><head/><body><p align="right"><br/><span style=" font-size:10pt;">Accela by </span><a href="https://github.com/sthalik"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Stanisław Halik</span></a><span style=" font-size:10pt;"><br/>Thanks to </span><a href="https://github.com/dbaarda"><span style=" font-size:10pt; text-decoration: underline; color:#0057ae;">Donovan Baarda</span></a></p><p align="right"><span style=" font-size:10pt;">2012-2017</span></p><p align="right"><br/><span style=" font-size:8pt;">Visit </span><a href="https://github.com/opentrack/opentrack/wiki/Accela-in-opentrack-2.3"><span style=" font-size:8pt; text-decoration: underline; color:#0000ff;">our wiki</span></a><span style=" font-size:8pt;"> for description of the settings.</span></p></body></html></source> <translation type="unfinished"></translation> </message> <message> - <location line="+68"/> - <location line="+123"/> - <source>Sensitivity</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-110"/> + <location line="-100"/> <location line="+35"/> <source>0mm</source> <translation type="unfinished"></translation> </message> <message> - <location line="+7"/> - <location line="+116"/> + <location line="-117"/> + <location line="+124"/> <source>Deadzone</source> <translation type="unfinished"></translation> </message> <message> - <location line="-72"/> + <location line="-196"/> <source>Rotation filtering (Yaw, pitch, and roll)</source> <translation type="unfinished"></translation> </message> @@ -66,21 +51,16 @@ <context> <name>dialog_accela</name> <message> - <location filename="../ftnoir_filter_accela_dialog.cpp" line="+29"/> - <location line="+3"/> + <location filename="../ftnoir_filter_accela_dialog.cpp" line="+28"/> + <location line="+2"/> <source>%1°</source> <translation type="unfinished"></translation> </message> <message> - <location line="-2"/> - <location line="+3"/> + <location line="-1"/> + <location line="+2"/> <source>%1mm</source> <translation type="unfinished"></translation> </message> - <message> - <location line="-2"/> - <source>%1ms</source> - <translation type="unfinished"></translation> - </message> </context> </TS> |