From 49c5c7a3d86727edba96e1d5fbda3463949b1e60 Mon Sep 17 00:00:00 2001 From: Stefan Karlsson Date: Fri, 15 Aug 2014 20:03:08 +0200 Subject: [PATCH 01/50] OP-1447 Use smaller steps for the output calibration wizard page slider --- .../src/plugins/setupwizard/pages/outputcalibrationpage.ui | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ground/openpilotgcs/src/plugins/setupwizard/pages/outputcalibrationpage.ui b/ground/openpilotgcs/src/plugins/setupwizard/pages/outputcalibrationpage.ui index 0f0dd1707..94edc6b26 100644 --- a/ground/openpilotgcs/src/plugins/setupwizard/pages/outputcalibrationpage.ui +++ b/ground/openpilotgcs/src/plugins/setupwizard/pages/outputcalibrationpage.ui @@ -88,10 +88,10 @@ p, li { white-space: pre-wrap; } 1300 - 10 + 1 - 20 + 10 Qt::Horizontal From 22e981ea8784f7c952e2c9edb742b735e0f671a4 Mon Sep 17 00:00:00 2001 From: Stefan Karlsson Date: Sat, 16 Aug 2014 08:34:45 +0200 Subject: [PATCH 02/50] OP-922 Mark PIOS_DEBUG_Panic with attribute noreturn --- flight/pios/inc/pios_debug.h | 2 +- flight/pios/osx/inc/pios_debug.h | 2 +- flight/pios/osx/osx/pios_debug.c | 5 +++++ flight/pios/posix/pios_debug.c | 5 +++++ 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/flight/pios/inc/pios_debug.h b/flight/pios/inc/pios_debug.h index 8fd7016a9..4d481dfbd 100644 --- a/flight/pios/inc/pios_debug.h +++ b/flight/pios/inc/pios_debug.h @@ -58,7 +58,7 @@ void PIOS_DEBUG_PinHigh(uint8_t pin); void PIOS_DEBUG_PinLow(uint8_t pin); void PIOS_DEBUG_PinValue8Bit(uint8_t value); void PIOS_DEBUG_PinValue4BitL(uint8_t value); -void PIOS_DEBUG_Panic(const char *msg); +void PIOS_DEBUG_Panic(const char *msg) __attribute__((noreturn)); #ifdef DEBUG #define PIOS_DEBUG_Assert(test) if (!(test)) { PIOS_DEBUG_Panic(PIOS_DEBUG_AssertMsg); } diff --git a/flight/pios/osx/inc/pios_debug.h b/flight/pios/osx/inc/pios_debug.h index 1d4b88595..460bf7d0a 100644 --- a/flight/pios/osx/inc/pios_debug.h +++ b/flight/pios/osx/inc/pios_debug.h @@ -38,7 +38,7 @@ void PIOS_DEBUG_PinHigh(uint8_t pin); void PIOS_DEBUG_PinLow(uint8_t pin); void PIOS_DEBUG_PinValue8Bit(uint8_t value); void PIOS_DEBUG_PinValue4BitL(uint8_t value); -void PIOS_DEBUG_Panic(const char *msg); +void PIOS_DEBUG_Panic(const char *msg) __attribute__((noreturn)); #ifdef DEBUG #define PIOS_DEBUG_Assert(test) if (!(test)) { PIOS_DEBUG_Panic(PIOS_DEBUG_AssertMsg); } diff --git a/flight/pios/osx/osx/pios_debug.c b/flight/pios/osx/osx/pios_debug.c index 71120a39d..bb6cd0d9e 100644 --- a/flight/pios/osx/osx/pios_debug.c +++ b/flight/pios/osx/osx/pios_debug.c @@ -82,6 +82,11 @@ void PIOS_DEBUG_Panic(const char *msg) int b = 0; int a = (2 / b); b = a; + + // Stay put + while (1) { + ; + } } /** diff --git a/flight/pios/posix/pios_debug.c b/flight/pios/posix/pios_debug.c index ac67e89a0..1f79c4722 100644 --- a/flight/pios/posix/pios_debug.c +++ b/flight/pios/posix/pios_debug.c @@ -81,6 +81,11 @@ void PIOS_DEBUG_Panic(const char *msg) int b = 0; int a = (2 / b); b = a; + + // Stay put + while (1) { + ; + } } /** From 34983a2d2887b05088b90bf72fe41611f3644ec3 Mon Sep 17 00:00:00 2001 From: Stefan Karlsson Date: Sat, 16 Aug 2014 08:40:37 +0200 Subject: [PATCH 03/50] OP-922 Fix typo in pios_tim.c --- flight/pios/stm32f4xx/pios_tim.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flight/pios/stm32f4xx/pios_tim.c b/flight/pios/stm32f4xx/pios_tim.c index ec72a9c6f..a5b114b0a 100644 --- a/flight/pios/stm32f4xx/pios_tim.c +++ b/flight/pios/stm32f4xx/pios_tim.c @@ -171,7 +171,7 @@ int32_t PIOS_TIM_InitChannels(uint32_t *tim_id, const struct pios_tim_channel *c */ // commented out for now as f4 starts all clocks GPIO_Init(chan->pin.gpio, &chan->pin.init); - PIOS_DEBUG_Assert(chan->remaP); + PIOS_DEBUG_Assert(chan->remap); // Second parameter should technically be PinSource but they are numerically the same GPIO_PinAFConfig(chan->pin.gpio, chan->pin.pin_source, chan->remap); From 232d9c10b2f4308864ae0b0b6f774a27f99cd0c9 Mon Sep 17 00:00:00 2001 From: Stefan Karlsson Date: Sat, 16 Aug 2014 08:47:04 +0200 Subject: [PATCH 04/50] OP-922 Make it explict that matrix_mult_3x3f should be static inline --- flight/libraries/inc/CoordinateConversions.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flight/libraries/inc/CoordinateConversions.h b/flight/libraries/inc/CoordinateConversions.h index f64823a43..c8a391f43 100644 --- a/flight/libraries/inc/CoordinateConversions.h +++ b/flight/libraries/inc/CoordinateConversions.h @@ -97,7 +97,7 @@ void rot_mult(float R[3][3], const float vec[3], float vec_out[3]); * @param b * @param result */ -inline void matrix_mult_3x3f(float a[3][3], float b[3][3], float result[3][3]) +static inline void matrix_mult_3x3f(float a[3][3], float b[3][3], float result[3][3]) { result[0][0] = a[0][0] * b[0][0] + a[1][0] * b[0][1] + a[2][0] * b[0][2]; result[0][1] = a[0][1] * b[0][0] + a[1][1] * b[0][1] + a[2][1] * b[0][2]; From 4ba9208727b6bea00e7cf0a7b6e6d8fdd13ec2af Mon Sep 17 00:00:00 2001 From: Stefan Karlsson Date: Sat, 16 Aug 2014 08:47:55 +0200 Subject: [PATCH 05/50] OP-922 Comment out the unused DEBUG variable in rscode --- flight/libraries/rscode/ecc.h | 2 +- flight/libraries/rscode/rs.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/flight/libraries/rscode/ecc.h b/flight/libraries/rscode/ecc.h index bf56a0b9a..0a6316d8a 100644 --- a/flight/libraries/rscode/ecc.h +++ b/flight/libraries/rscode/ecc.h @@ -66,7 +66,7 @@ extern int pBytes[MAXDEG]; extern int synBytes[MAXDEG]; /* print debugging info */ -extern int DEBUG; +//extern int DEBUG; /* Reed Solomon encode/decode routines */ void initialize_ecc (void); diff --git a/flight/libraries/rscode/rs.c b/flight/libraries/rscode/rs.c index 39c014720..62fd02386 100644 --- a/flight/libraries/rscode/rs.c +++ b/flight/libraries/rscode/rs.c @@ -38,7 +38,7 @@ int synBytes[MAXDEG]; /* generator polynomial */ int genPoly[MAXDEG*2]; -int DEBUG = FALSE; +//int DEBUG = FALSE; static void compute_genpoly (int nbytes, int genpoly[]); From 3d8d803c337b9277017e54ebfaa373fb581b5d82 Mon Sep 17 00:00:00 2001 From: Stefan Karlsson Date: Sat, 16 Aug 2014 08:59:10 +0200 Subject: [PATCH 06/50] OP-922 Fix missing ppm_id to ppm_out_id rename --- flight/pios/stm32f10x/pios_ppm_out.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flight/pios/stm32f10x/pios_ppm_out.c b/flight/pios/stm32f10x/pios_ppm_out.c index efb6a6a6a..d47934177 100644 --- a/flight/pios/stm32f10x/pios_ppm_out.c +++ b/flight/pios/stm32f10x/pios_ppm_out.c @@ -107,7 +107,7 @@ static const struct pios_tim_callbacks tim_out_callbacks = { int32_t PIOS_PPM_Out_Init(uint32_t *ppm_out_id, const struct pios_ppm_out_cfg *cfg) { - PIOS_DEBUG_Assert(ppm_id); + PIOS_DEBUG_Assert(ppm_out_id); PIOS_DEBUG_Assert(cfg); // Allocate the device structure From dc191f7523b4efa59fb5af0a448ba00b6856d138 Mon Sep 17 00:00:00 2001 From: James Duley Date: Sun, 17 Aug 2014 20:33:39 +1200 Subject: [PATCH 07/50] changed udev from plugdev to uacces/udev-acl --- package/linux/45-openpilot-permissions.rules | 63 +++++++++++++------- 1 file changed, 41 insertions(+), 22 deletions(-) diff --git a/package/linux/45-openpilot-permissions.rules b/package/linux/45-openpilot-permissions.rules index 9015612a6..fdca37665 100644 --- a/package/linux/45-openpilot-permissions.rules +++ b/package/linux/45-openpilot-permissions.rules @@ -1,22 +1,41 @@ - # OpenPilot openpilot flight control board - SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="4117", MODE="0664", GROUP="plugdev" - SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415a", MODE="0664", GROUP="plugdev" - # OpenPilot coptercontrol flight control board - SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415b", MODE="0664", GROUP="plugdev" - # OpenPilot OPLink Mini radio modem board - SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415c", MODE="0664", GROUP="plugdev" - # OpenPilot Revolution board - SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415e", MODE="0664", GROUP="plugdev" - - # Other OpenPilot reserved pids - SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415d", MODE="0664", GROUP="plugdev" - SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="4194", MODE="0664", GROUP="plugdev" - SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="4195", MODE="0664", GROUP="plugdev" - - - # unprogrammed openpilot flight control board - SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="5750", MODE="0664", GROUP="plugdev" - # FTDI FT2232C Dual USB-UART/FIFO IC - SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", MODE="0664", GROUP="plugdev" - # Olimex Ltd. OpenOCD JTAG TINY - SUBSYSTEM=="usb", ATTRS{idVendor}=="15ba", ATTRS{idProduct}=="0004", MODE="0664", GROUP="plugdev" +# Skip this section below if this device is not connected by USB +SUBSYSTEM!="usb", GOTO="op_rules_end" + +# OpenPilot openpilot flight control board +SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="4117", GOTO="op_rules" +SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415a", GOTO="op_rules" + +# OpenPilot coptercontrol flight control board +SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415b", GOTO="op_rules" + +# OpenPilot OPLink Mini radio modem board +SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415c", GOTO="op_rules" + +# OpenPilot Revolution board +SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415e", GOTO="op_rules" + +# Other OpenPilot reserved pids +SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415d", GOTO="op_rules" +SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="4194", GOTO="op_rules" +SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="4195", GOTO="op_rules" + + +# unprogrammed openpilot flight control board +SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="5750", GOTO="op_rules" +# FTDI FT2232C Dual USB-UART/FIFO IC +SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", GOTO="op_rules" +# Olimex Ltd. OpenOCD JTAG TINY +SUBSYSTEM=="usb", ATTRS{idVendor}=="15ba", ATTRS{idProduct}=="0004", GOTO="op_rules" + +GOTO="op_rules_end" + +LABEL="op_rules" +# Allow any seated user to access the board. +# uaccess: modern ACL-enabled udev +# udev-acl: for Ubuntu 12.10 and older +TAG+="uaccess", TAG+="udev-acl" + +# Grant members of the "plugdev" group access to receiver (useful for SSH users) +#MODE="0664", GROUP="plugdev" + +LABEL="op_rules_end" From a365c5c6dfdc97ec6cc0cad92736c00770581ccd Mon Sep 17 00:00:00 2001 From: Laurent Lalanne Date: Tue, 19 Aug 2014 03:14:11 +0200 Subject: [PATCH 08/50] OP-1438 VSI_Arc_PFD+Status : First commit, modified Vsi with arc, added foreground layer with gradient --- .../openpilotgcs/pfd/default/VsiScale.qml | 105 +- .../share/openpilotgcs/pfd/default/pfd.svg | 995 ++++++++++-------- 2 files changed, 625 insertions(+), 475 deletions(-) diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/VsiScale.qml b/ground/openpilotgcs/share/openpilotgcs/pfd/default/VsiScale.qml index c40591424..3f0f901a2 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/VsiScale.qml +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/VsiScale.qml @@ -13,82 +13,69 @@ Item { x: Math.floor(scaledBounds.x * sceneItem.width) y: Math.floor(scaledBounds.y * sceneItem.height) - property double scaleSteps : 8 - property double scaleStepValue : 1000 - property double scaleStepHeight : height/scaleSteps + } - SvgElementImage { - id: vsi_bar + SvgElementImage { + id: vsi_waypoint + elementName: "vsi-waypoint" + sceneSize: sceneItem.sceneSize - elementName: "vsi-bar" - sceneSize: sceneItem.sceneSize + width: scaledBounds.width * sceneItem.width + height: scaledBounds.height * sceneItem.height - //the scale in 1000 ft/min, convert from VelocityState.Down value in m/s - height: (-VelocityState.Down*3.28*60/vsi_window.scaleStepValue)*vsi_window.scaleStepHeight + x: scaledBounds.x * sceneItem.width + y: scaledBounds.y * sceneItem.height - anchors.bottom: parent.verticalCenter - anchors.left: parent.left - } + smooth: true + visible: VelocityDesired.Down !== 0.0 - SvgElementImage { - id: vsi_scale - - elementName: "vsi-scale" - sceneSize: sceneItem.sceneSize - - anchors.verticalCenter: parent.verticalCenter - anchors.left: parent.left - - //Text labels - Column { - anchors.verticalCenter: parent.verticalCenter - anchors.left: parent.right - - Repeater { - model: [3, 2, 1, 0, 1, 2, 3] - Item { - height: vsi_window.scaleStepHeight - width: vsi_window.width - vsi_scale.width //fill area right to scale - - Text { - text: modelData - visible: modelData !== 0 //hide "0" label - color: "white" - font.pixelSize: parent.height * 0.5 - font.family: "Arial" - - anchors.centerIn: parent - } - } - } - } + //rotate it around the center + transform: Rotation { + angle: -VelocityDesired.Down*5 + origin.y : vsi_waypoint.height/2 + origin.x : vsi_waypoint.width*33 } } - SvgElementImage { - id: vsi_centerline - clip: true - smooth: true + id: vsi_scale - elementName: "vsi-centerline" + elementName: "vsi-scale" sceneSize: sceneItem.sceneSize x: Math.floor(scaledBounds.x * sceneItem.width) y: Math.floor(scaledBounds.y * sceneItem.height) + } - Text { - id: vsi_unit_text - text: "ft / m" + SvgElementImage { + id: vsi_arrow + elementName: "vsi-arrow" + sceneSize: sceneItem.sceneSize - color: "white" - font { - family: "Arial" - pixelSize: sceneSize.height * 0.02 + width: scaledBounds.width * sceneItem.width + height: scaledBounds.height * sceneItem.height + + x: scaledBounds.x * sceneItem.width + y: scaledBounds.y * sceneItem.height + + smooth: true + + //rotate it around the center + transform: Rotation { + angle: -VelocityState.Down*5 + origin.y : vsi_arrow.height/2 + origin.x : vsi_arrow.width*3.15 } - anchors.top: vsi_window.bottom - anchors.left: vsi_window.left - anchors.margins: font.pixelSize * 0.5 + } + + SvgElementImage { + id: foreground + elementName: "foreground" + sceneSize: sceneItem.sceneSize + + x: Math.floor(scaledBounds.x * sceneItem.width) + y: Math.floor(scaledBounds.y * sceneItem.height) + } } diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg b/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg index eddbc6a21..999e32c03 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg @@ -7,19 +7,42 @@ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="640" height="480" id="svg2" version="1.1" - inkscape:version="0.48.4 r9939" + inkscape:version="0.48.5 r10040" sodipodi:docname="pfd.svg" inkscape:export-filename="/Users/muralha/Desktop/new PFD ideas/pfd/test2.png" inkscape:export-xdpi="72" inkscape:export-ydpi="72"> + + + + + + + + @@ -42,6 +65,17 @@ offset="1" id="stop5010" /> + + inkscape:snap-object-midpoints="true" + inkscape:snap-center="false"> image/svg+xml - + @@ -149,12 +184,12 @@ sodipodi:nodetypes="cc" inkscape:connector-curvature="0" id="center-line" - d="m -179.5,169.08132 997,0" + d="m -179.5,169.08132 l 997,0" style="fill:none;stroke:#ffffff;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /> @@ -1137,7 +1172,8 @@ id="layer3" inkscape:label="info" style="display:inline" - transform="translate(0,-4)"> + transform="translate(0,-4)" + sodipodi:insensitive="true"> @@ -1204,22 +1240,22 @@ id="gps-sats-label" transform="translate(0,6.488519)"> @@ -1229,12 +1265,12 @@ id="telemetry-tx-label" transform="translate(0,-3.08992)"> @@ -1244,12 +1280,12 @@ id="telemetry-rx-label" transform="translate(0,-2.08992)"> @@ -1259,42 +1295,42 @@ id="throttle-label" transform="translate(0,-3.203204)"> @@ -1307,14 +1343,14 @@ inkscape:connector-curvature="0" id="path4614" style="font-size:8px;fill:#ffffff" - d="m 632.01025,27.035233 -1.07031,2.902343 2.14453,0 -1.07422,-2.902343 m -0.44531,-0.777344 0.89453,0 2.22266,5.832031 -0.82031,0 -0.53125,-1.496094 -2.62891,0 -0.53125,1.496094 -0.83203,0 2.22656,-5.832031" /> + d="m 632.01025,27.035233 l -1.07031,2.902343 l 2.14453,0 l -1.07422,-2.902343 m -0.44531,-0.777344 l 0.89453,0 l 2.22266,5.832031 l -0.82031,0 l -0.53125,-1.496094 l -2.62891,0 l -0.53125,1.496094 l -0.83203,0 l 2.22656,-5.832031" /> @@ -1324,17 +1360,17 @@ id="waypoint-label" transform="matrix(1.0375459,0,0,1.0375459,-7.161678,-3.5667345)"> @@ -1344,17 +1380,17 @@ id="waypoint-heading-label" transform="translate(0,-3.00017)"> @@ -1364,17 +1400,17 @@ id="waypoint-distance-label" transform="translate(0,-3.00017)"> @@ -1382,31 +1418,31 @@ inkscape:connector-curvature="0" id="path3906" style="font-size:8px;fill:#ffffff" - d="m 290.04935,24.257889 4.93359,0 0,0.664062 -2.07031,0 0,5.167969 -0.79297,0 0,-5.167969 -2.07031,0 0,-0.664062" /> + d="m 290.04935,24.257889 l 4.93359,0 l 0,0.664062 l -2.07031,0 l 0,5.167969 l -0.79297,0 l 0,-5.167969 l -2.07031,0 l 0,-0.664062" /> + d="m 278.05325,24.906326 l 0,4.535157 l 0.95313,0 c 0.80468,0 1.39322,-0.182291 1.76562,-0.546875 c 0.375,-0.364582 0.5625,-0.940102 0.5625,-1.726563 c 0,-0.781246 -0.1875,-1.35286 -0.5625,-1.714844 c -0.3724,-0.364578 -0.96094,-0.54687 -1.76562,-0.546875 l -0.95313,0 m -0.78906,-0.648437 l 1.62109,0 c 1.13021,6e-6 1.95964,0.235682 2.48829,0.707031 c 0.52864,0.468755 0.79296,1.203129 0.79296,2.203125 c 0,1.00521 -0.26563,1.743491 -0.79687,2.214844 c -0.53125,0.471354 -1.35938,0.707031 -2.48438,0.707031 l -1.62109,0 l 0,-5.832031" /> @@ -1414,34 +1450,34 @@ inkscape:connector-curvature="0" id="path3902" style="font-size:8px;fill:#ffffff" - d="m 283.42044,24.257889 0.78906,0 0,5.832031 -0.78906,0 0,-5.832031" /> + d="m 283.42044,24.257889 l 0.78906,0 l 0,5.832031 l -0.78906,0 l 0,-5.832031" /> + d="m 289.27591,24.449295 l 0,0.769531 c -0.29948,-0.143224 -0.58204,-0.249995 -0.84766,-0.320312 c -0.26562,-0.07031 -0.52214,-0.105464 -0.76953,-0.105469 c -0.42969,5e-6 -0.76172,0.08334 -0.99609,0.25 c -0.23177,0.166672 -0.34766,0.403651 -0.34766,0.710938 c 0,0.257816 0.0768,0.453128 0.23047,0.585937 c 0.15625,0.130212 0.45052,0.235681 0.88281,0.316406 l 0.47657,0.09766 c 0.58853,0.111982 1.02213,0.309898 1.30078,0.59375 c 0.28124,0.281252 0.42187,0.658856 0.42187,1.132812 c 0,0.565105 -0.19011,0.99349 -0.57031,1.285156 c -0.37761,0.291667 -0.9323,0.4375 -1.66406,0.4375 c -0.27605,0 -0.57032,-0.03125 -0.88282,-0.09375 c -0.30989,-0.0625 -0.63151,-0.154947 -0.96484,-0.277343 l 0,-0.8125 c 0.32031,0.179688 0.63411,0.315104 0.94141,0.40625 c 0.30729,0.09115 0.60937,0.136719 0.90625,0.136718 c 0.45051,1e-6 0.79817,-0.08854 1.04297,-0.265625 c 0.24478,-0.177082 0.36718,-0.429686 0.36718,-0.757812 c 0,-0.286457 -0.0885,-0.510415 -0.26562,-0.671875 c -0.17448,-0.161456 -0.46224,-0.28255 -0.86328,-0.363281 l -0.48047,-0.09375 c -0.58855,-0.117185 -1.01433,-0.300779 -1.27735,-0.550782 C 285.65351,26.609458 285.522,26.261802 285.522,25.816486 c 0,-0.515621 0.18099,-0.92187 0.54297,-1.21875 c 0.36458,-0.29687 0.86589,-0.445307 1.50391,-0.445313 c 0.27343,6e-6 0.55208,0.02475 0.83594,0.07422 c 0.28385,0.04949 0.57421,0.123703 0.87109,0.222656" /> @@ -1451,17 +1487,17 @@ id="waypoint-eta-label" transform="matrix(1.0375459,0,0,1.0375459,-14.202279,-4.0166731)"> @@ -1484,27 +1520,27 @@ id="battery-milliamp-text" transform="translate(0,16.75)"> @@ -1524,27 +1560,27 @@ inkscape:connector-curvature="0" id="path4599" style="fill:#ffffff" - d="m 575.65771,9.449295 c -0.50781,6.7e-6 -0.8903,0.2506575 -1.14746,0.751953 -0.2539,0.498052 -0.38086,1.248377 -0.38086,2.250977 0,0.999351 0.12696,1.749676 0.38086,2.250976 0.25716,0.498048 0.63965,0.747071 1.14746,0.747071 0.51107,0 0.89356,-0.249023 1.14747,-0.747071 0.25715,-0.5013 0.38573,-1.251625 0.38574,-2.250976 -10e-6,-1.0026 -0.12859,-1.752925 -0.38574,-2.250977 -0.25391,-0.5012955 -0.6364,-0.7519463 -1.14747,-0.751953 m 0,-0.78125 c 0.81706,7.5e-6 1.44043,0.3239004 1.87012,0.9716797 0.43294,0.6445373 0.64941,1.5820363 0.64942,2.8125003 -10e-6,1.227216 -0.21648,2.164715 -0.64942,2.8125 -0.42969,0.644531 -1.05306,0.966796 -1.87012,0.966797 -0.81705,-10e-7 -1.44205,-0.322266 -1.875,-0.966797 -0.42968,-0.647785 -0.64453,-1.585284 -0.64453,-2.8125 0,-1.230464 0.21485,-2.167963 0.64453,-2.8125003 0.43295,-0.6477793 1.05795,-0.9716722 1.875,-0.9716797" /> + d="m 575.65771,9.449295 c -0.50781,6.7e-6 -0.8903,0.2506575 -1.14746,0.751953 c -0.2539,0.498052 -0.38086,1.248377 -0.38086,2.250977 c 0,0.999351 0.12696,1.749676 0.38086,2.250976 c 0.25716,0.498048 0.63965,0.747071 1.14746,0.747071 c 0.51107,0 0.89356,-0.249023 1.14747,-0.747071 c 0.25715,-0.5013 0.38573,-1.251625 0.38574,-2.250976 c -10e-6,-1.0026 -0.12859,-1.752925 -0.38574,-2.250977 c -0.25391,-0.5012955 -0.6364,-0.7519463 -1.14747,-0.751953 m 0,-0.78125 c 0.81706,7.5e-6 1.44043,0.3239004 1.87012,0.9716797 c 0.43294,0.6445373 0.64941,1.5820363 0.64942,2.8125003 c -10e-6,1.227216 -0.21648,2.164715 -0.64942,2.8125 c -0.42969,0.644531 -1.05306,0.966796 -1.87012,0.966797 c -0.81705,-10e-7 -1.44205,-0.322266 -1.875,-0.966797 c -0.42968,-0.647785 -0.64453,-1.585284 -0.64453,-2.8125 c 0,-1.230464 0.21485,-2.167963 0.64453,-2.8125003 c 0.43295,-0.6477793 1.05795,-0.9716722 1.875,-0.9716797" /> + d="m 582.0249,9.449295 c -0.50781,6.7e-6 -0.8903,0.2506575 -1.14746,0.751953 c -0.25391,0.498052 -0.38086,1.248377 -0.38086,2.250977 c 0,0.999351 0.12695,1.749676 0.38086,2.250976 c 0.25716,0.498048 0.63965,0.747071 1.14746,0.747071 c 0.51107,0 0.89355,-0.249023 1.14746,-0.747071 c 0.25716,-0.5013 0.38574,-1.251625 0.38575,-2.250976 c -1e-5,-1.0026 -0.12859,-1.752925 -0.38575,-2.250977 C 582.91845,9.6999525 582.53597,9.4493017 582.0249,9.449295 m 0,-0.78125 c 0.81706,7.5e-6 1.44043,0.3239004 1.87012,0.9716797 c 0.43294,0.6445373 0.64941,1.5820363 0.64941,2.8125003 c 0,1.227216 -0.21647,2.164715 -0.64941,2.8125 c -0.42969,0.644531 -1.05306,0.966796 -1.87012,0.966797 c -0.81706,-10e-7 -1.44206,-0.322266 -1.875,-0.966797 c -0.42969,-0.647785 -0.64453,-1.585284 -0.64453,-2.8125 c 0,-1.230464 0.21484,-2.167963 0.64453,-2.8125003 c 0.43294,-0.6477793 1.05794,-0.9716722 1.875,-0.9716797" /> + d="m 586.28271,14.849686 l 1.03028,0 l 0,1.240234 l -1.03028,0 l 0,-1.240234" /> + d="m 591.57568,9.449295 c -0.50781,6.7e-6 -0.8903,0.2506575 -1.14746,0.751953 c -0.25391,0.498052 -0.38086,1.248377 -0.38086,2.250977 c 0,0.999351 0.12695,1.749676 0.38086,2.250976 c 0.25716,0.498048 0.63965,0.747071 1.14746,0.747071 c 0.51107,0 0.89355,-0.249023 1.14746,-0.747071 c 0.25716,-0.5013 0.38574,-1.251625 0.38575,-2.250976 c -10e-6,-1.0026 -0.12859,-1.752925 -0.38575,-2.250977 c -0.25391,-0.5012955 -0.63639,-0.7519463 -1.14746,-0.751953 m 0,-0.78125 c 0.81706,7.5e-6 1.44043,0.3239004 1.87012,0.9716797 c 0.43294,0.6445373 0.64941,1.5820363 0.64941,2.8125003 c 0,1.227216 -0.21647,2.164715 -0.64941,2.8125 c -0.42969,0.644531 -1.05306,0.966796 -1.87012,0.966797 c -0.81706,-10e-7 -1.44206,-0.322266 -1.875,-0.966797 c -0.42968,-0.647785 -0.64453,-1.585284 -0.64453,-2.8125 c 0,-1.230464 0.21485,-2.167963 0.64453,-2.8125003 c 0.43294,-0.6477793 1.05794,-0.9716722 1.875,-0.9716797" /> + d="m 597.94287,9.449295 c -0.50781,6.7e-6 -0.8903,0.2506575 -1.14746,0.751953 c -0.25391,0.498052 -0.38086,1.248377 -0.38086,2.250977 c 0,0.999351 0.12695,1.749676 0.38086,2.250976 c 0.25716,0.498048 0.63965,0.747071 1.14746,0.747071 c 0.51107,0 0.89355,-0.249023 1.14746,-0.747071 c 0.25716,-0.5013 0.38574,-1.251625 0.38574,-2.250976 c 0,-1.0026 -0.12858,-1.752925 -0.38574,-2.250977 c -0.25391,-0.5012955 -0.63639,-0.7519463 -1.14746,-0.751953 m 0,-0.78125 c 0.81705,7.5e-6 1.44043,0.3239004 1.87012,0.9716797 c 0.43294,0.6445373 0.64941,1.5820363 0.64941,2.8125003 c 0,1.227216 -0.21647,2.164715 -0.64941,2.8125 c -0.42969,0.644531 -1.05307,0.966796 -1.87012,0.966797 c -0.81706,-10e-7 -1.44206,-0.322266 -1.875,-0.966797 c -0.42969,-0.647785 -0.64453,-1.585284 -0.64453,-2.8125 c 0,-1.230464 0.21484,-2.167963 0.64453,-2.8125003 c 0.43294,-0.6477793 1.05794,-0.9716722 1.875,-0.9716797" /> @@ -1593,7 +1629,7 @@ @@ -1601,13 +1637,13 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="eng1" - d="m 469.86993,48.85 0,-2.5" + d="m 469.86993,48.85 l 0,-2.5" style="fill:#008080;stroke:#008000;stroke-width:8.30000019;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" sodipodi:nodetypes="cc" /> @@ -1615,13 +1651,13 @@ inkscape:label="#path10213" inkscape:connector-curvature="0" id="eng3" - d="m 484.90956,48.85 0,-7.500001" + d="m 484.90956,48.85 l 0,-7.500001" style="fill:none;stroke:#008000;stroke-width:8.30000019;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" sodipodi:nodetypes="cc" /> @@ -1629,13 +1665,13 @@ inkscape:label="#path10217" inkscape:connector-curvature="0" id="eng5" - d="m 499.94918,48.85 0,-12.500001" + d="m 499.94918,48.85 l 0,-12.500001" style="fill:none;stroke:#008000;stroke-width:8.30000019;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" sodipodi:nodetypes="cc" /> @@ -1643,13 +1679,13 @@ inkscape:label="#path10221" inkscape:connector-curvature="0" id="eng7" - d="m 514.98879,48.85 0,-17.500001" + d="m 514.98879,48.85 l 0,-17.500001" style="fill:none;stroke:#008000;stroke-width:8.30000019;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" sodipodi:nodetypes="cc" /> @@ -1657,13 +1693,13 @@ inkscape:label="#path10225" inkscape:connector-curvature="0" id="eng9" - d="m 530.02841,48.85 0,-22.500001" + d="m 530.02841,48.85 l 0,-22.500001" style="fill:none;stroke:#008000;stroke-width:8.30000019;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" sodipodi:nodetypes="cc" /> @@ -1682,42 +1718,42 @@ id="waypoint-eta-text" transform="translate(0,0.595158)"> @@ -1732,42 +1768,42 @@ id="waypoint-distance-text" transform="translate(0,0.595158)"> @@ -1782,17 +1818,17 @@ id="waypoint-heading-text" transform="translate(2,0.595158)"> @@ -1807,82 +1843,82 @@ id="waypoint-mode-text" transform="translate(0,0.595158)"> @@ -1898,57 +1934,57 @@ id="waypoint-description-text" transform="translate(30,0.595158)"> @@ -1961,7 +1997,7 @@ inkscape:connector-curvature="0" id="path3957" style="font-size:12px;fill:#ff00ff" - d="m 309.28568,10.810623 -1.70508,0 -0.49219,1.957031 1.7168,0 0.48047,-1.957031 m -0.87891,-3.3339842 -0.60938,2.4316406 1.71094,0 0.61524,-2.4316406 0.9375,0 -0.60352,2.4316406 1.82813,0 0,0.9023436 -2.05665,0 -0.48046,1.957031 1.86328,0 0,0.896485 -2.0918,0 -0.60937,2.425781 -0.9375,0 0.60351,-2.425781 -1.7168,0 -0.60351,2.425781 -0.94336,0 0.60937,-2.425781 -1.8457,0 0,-0.896485 2.0625,0 0.49219,-1.957031 -1.88672,0 0,-0.9023436 2.11523,0 0.59766,-2.4316406 0.94922,0" /> + d="m 309.28568,10.810623 l -1.70508,0 l -0.49219,1.957031 l 1.7168,0 l 0.48047,-1.957031 m -0.87891,-3.3339842 l -0.60938,2.4316406 l 1.71094,0 l 0.61524,-2.4316406 l 0.9375,0 l -0.60352,2.4316406 l 1.82813,0 l 0,0.9023436 l -2.05665,0 l -0.48046,1.957031 l 1.86328,0 l 0,0.896485 l -2.0918,0 l -0.60937,2.425781 l -0.9375,0 l 0.60351,-2.425781 l -1.7168,0 l -0.60351,2.425781 l -0.94336,0 l 0.60937,-2.425781 l -1.8457,0 l 0,-0.896485 l 2.0625,0 l 0.49219,-1.957031 l -1.88672,0 l 0,-0.9023436 l 2.11523,0 l 0.59766,-2.4316406 l 0.94922,0" /> + d="m 303.29349,23.12117 c -0.60938,8e-6 -1.06836,0.300789 -1.37696,0.902344 c -0.30469,0.597663 -0.45703,1.498052 -0.45703,2.701172 c 0,1.199222 0.15234,2.099611 0.45703,2.701172 c 0.3086,0.597657 0.76758,0.896485 1.37696,0.896484 c 0.61327,1e-6 1.07226,-0.298827 1.37695,-0.896484 c 0.30859,-0.601561 0.46289,-1.50195 0.46289,-2.701172 c 0,-1.20312 -0.1543,-2.103509 -0.46289,-2.701172 c -0.30469,-0.601555 -0.76368,-0.902336 -1.37695,-0.902344 m 0,-0.9375 c 0.98046,9e-6 1.72851,0.38868 2.24414,1.166016 c 0.51952,0.773444 0.77929,1.898443 0.7793,3.375 c -1e-5,1.472659 -0.25978,2.597658 -0.7793,3.375 c -0.51563,0.773437 -1.26368,1.160156 -2.24414,1.160156 c -0.98047,0 -1.73047,-0.386719 -2.25,-1.160156 c -0.51563,-0.777342 -0.77344,-1.902341 -0.77344,-3.375 c 0,-1.476557 0.25781,-2.601556 0.77344,-3.375 c 0.51953,-0.777336 1.26953,-1.166007 2.25,-1.166016" /> + d="m 310.93411,23.12117 c -0.60938,8e-6 -1.06836,0.300789 -1.37695,0.902344 c -0.30469,0.597663 -0.45703,1.498052 -0.45703,2.701172 c 0,1.199222 0.15234,2.099611 0.45703,2.701172 c 0.30859,0.597657 0.76757,0.896485 1.37695,0.896484 c 0.61328,1e-6 1.07226,-0.298827 1.37696,-0.896484 c 0.30858,-0.601561 0.46288,-1.50195 0.46289,-2.701172 c -10e-6,-1.20312 -0.15431,-2.103509 -0.46289,-2.701172 c -0.3047,-0.601555 -0.76368,-0.902336 -1.37696,-0.902344 m 0,-0.9375 c 0.98047,9e-6 1.72851,0.38868 2.24414,1.166016 c 0.51953,0.773444 0.77929,1.898443 0.7793,3.375 c -1e-5,1.472659 -0.25977,2.597658 -0.7793,3.375 c -0.51563,0.773437 -1.26367,1.160156 -2.24414,1.160156 c -0.98047,0 -1.73047,-0.386719 -2.25,-1.160156 c -0.51562,-0.777342 -0.77344,-1.902341 -0.77343,-3.375 c -1e-5,-1.476557 0.25781,-2.601556 0.77343,-3.375 c 0.51953,-0.777336 1.26953,-1.166007 2.25,-1.166016" /> + d="m 318.57474,23.12117 c -0.60938,8e-6 -1.06836,0.300789 -1.37696,0.902344 c -0.30469,0.597663 -0.45703,1.498052 -0.45703,2.701172 c 0,1.199222 0.15234,2.099611 0.45703,2.701172 c 0.3086,0.597657 0.76758,0.896485 1.37696,0.896484 c 0.61327,1e-6 1.07226,-0.298827 1.37695,-0.896484 c 0.30859,-0.601561 0.46289,-1.50195 0.46289,-2.701172 c 0,-1.20312 -0.1543,-2.103509 -0.46289,-2.701172 c -0.30469,-0.601555 -0.76368,-0.902336 -1.37695,-0.902344 m 0,-0.9375 c 0.98046,9e-6 1.72851,0.38868 2.24414,1.166016 c 0.51952,0.773444 0.77929,1.898443 0.7793,3.375 c -1e-5,1.472659 -0.25978,2.597658 -0.7793,3.375 c -0.51563,0.773437 -1.26368,1.160156 -2.24414,1.160156 c -0.98047,0 -1.73047,-0.386719 -2.25,-1.160156 c -0.51563,-0.777342 -0.77344,-1.902341 -0.77344,-3.375 c 0,-1.476557 0.25781,-2.601556 0.77344,-3.375 c 0.51953,-0.777336 1.26953,-1.166007 2.25,-1.166016" /> + d="m 326.21536,23.12117 c -0.60938,8e-6 -1.06836,0.300789 -1.37695,0.902344 c -0.30469,0.597663 -0.45703,1.498052 -0.45703,2.701172 c 0,1.199222 0.15234,2.099611 0.45703,2.701172 c 0.30859,0.597657 0.76757,0.896485 1.37695,0.896484 c 0.61328,1e-6 1.07226,-0.298827 1.37696,-0.896484 c 0.30858,-0.601561 0.46288,-1.50195 0.46289,-2.701172 c -10e-6,-1.20312 -0.15431,-2.103509 -0.46289,-2.701172 c -0.3047,-0.601555 -0.76368,-0.902336 -1.37696,-0.902344 m 0,-0.9375 c 0.98047,9e-6 1.72851,0.38868 2.24414,1.166016 c 0.51953,0.773444 0.77929,1.898443 0.7793,3.375 c -1e-5,1.472659 -0.25977,2.597658 -0.7793,3.375 c -0.51563,0.773437 -1.26367,1.160156 -2.24414,1.160156 c -0.98047,0 -1.73047,-0.386719 -2.25,-1.160156 c -0.51562,-0.777342 -0.77344,-1.902341 -0.77343,-3.375 c -1e-5,-1.476557 0.25781,-2.601556 0.77343,-3.375 c 0.51953,-0.777336 1.26953,-1.166007 2.25,-1.166016" /> + d="m 333.85599,23.12117 c -0.60938,8e-6 -1.06836,0.300789 -1.37696,0.902344 c -0.30469,0.597663 -0.45703,1.498052 -0.45703,2.701172 c 0,1.199222 0.15234,2.099611 0.45703,2.701172 c 0.3086,0.597657 0.76758,0.896485 1.37696,0.896484 c 0.61327,1e-6 1.07226,-0.298827 1.37695,-0.896484 c 0.30859,-0.601561 0.46289,-1.50195 0.46289,-2.701172 c 0,-1.20312 -0.1543,-2.103509 -0.46289,-2.701172 c -0.30469,-0.601555 -0.76368,-0.902336 -1.37695,-0.902344 m 0,-0.9375 c 0.98046,9e-6 1.72851,0.38868 2.24414,1.166016 c 0.51952,0.773444 0.77929,1.898443 0.7793,3.375 c -1e-5,1.472659 -0.25978,2.597658 -0.7793,3.375 c -0.51563,0.773437 -1.26368,1.160156 -2.24414,1.160156 c -0.98047,0 -1.73047,-0.386719 -2.25,-1.160156 c -0.51563,-0.777342 -0.77344,-1.902341 -0.77344,-3.375 c 0,-1.476557 0.25781,-2.601556 0.77344,-3.375 c 0.51953,-0.777336 1.26953,-1.166007 2.25,-1.166016" /> + d="m 341.49661,23.12117 c -0.60938,8e-6 -1.06836,0.300789 -1.37695,0.902344 c -0.30469,0.597663 -0.45703,1.498052 -0.45703,2.701172 c 0,1.199222 0.15234,2.099611 0.45703,2.701172 c 0.30859,0.597657 0.76757,0.896485 1.37695,0.896484 c 0.61328,1e-6 1.07226,-0.298827 1.37696,-0.896484 c 0.30858,-0.601561 0.46288,-1.50195 0.46289,-2.701172 c -10e-6,-1.20312 -0.15431,-2.103509 -0.46289,-2.701172 c -0.3047,-0.601555 -0.76368,-0.902336 -1.37696,-0.902344 m 0,-0.9375 c 0.98047,9e-6 1.72851,0.38868 2.24414,1.166016 c 0.51953,0.773444 0.77929,1.898443 0.7793,3.375 c -1e-5,1.472659 -0.25977,2.597658 -0.7793,3.375 c -0.51563,0.773437 -1.26367,1.160156 -2.24414,1.160156 c -0.98047,0 -1.73047,-0.386719 -2.25,-1.160156 c -0.51562,-0.777342 -0.77344,-1.902341 -0.77343,-3.375 c -1e-5,-1.476557 0.25781,-2.601556 0.77343,-3.375 c 0.51953,-0.777336 1.26953,-1.166007 2.25,-1.166016" /> + d="m 349.13724,23.12117 c -0.60938,8e-6 -1.06836,0.300789 -1.37696,0.902344 c -0.30469,0.597663 -0.45703,1.498052 -0.45703,2.701172 c 0,1.199222 0.15234,2.099611 0.45703,2.701172 c 0.3086,0.597657 0.76758,0.896485 1.37696,0.896484 c 0.61327,1e-6 1.07226,-0.298827 1.37695,-0.896484 c 0.30859,-0.601561 0.46289,-1.50195 0.46289,-2.701172 c 0,-1.20312 -0.1543,-2.103509 -0.46289,-2.701172 c -0.30469,-0.601555 -0.76368,-0.902336 -1.37695,-0.902344 m 0,-0.9375 c 0.98046,9e-6 1.72851,0.38868 2.24414,1.166016 c 0.51952,0.773444 0.77929,1.898443 0.7793,3.375 c -1e-5,1.472659 -0.25978,2.597658 -0.7793,3.375 c -0.51563,0.773437 -1.26368,1.160156 -2.24414,1.160156 c -0.98047,0 -1.73047,-0.386719 -2.25,-1.160156 c -0.51563,-0.777342 -0.77344,-1.902341 -0.77344,-3.375 c 0,-1.476557 0.25781,-2.601556 0.77344,-3.375 c 0.51953,-0.777336 1.26953,-1.166007 2.25,-1.166016" /> + d="m 356.77786,23.12117 c -0.60938,8e-6 -1.06836,0.300789 -1.37695,0.902344 c -0.30469,0.597663 -0.45703,1.498052 -0.45703,2.701172 c 0,1.199222 0.15234,2.099611 0.45703,2.701172 c 0.30859,0.597657 0.76757,0.896485 1.37695,0.896484 c 0.61328,1e-6 1.07226,-0.298827 1.37696,-0.896484 c 0.30858,-0.601561 0.46288,-1.50195 0.46289,-2.701172 c -10e-6,-1.20312 -0.15431,-2.103509 -0.46289,-2.701172 c -0.3047,-0.601555 -0.76368,-0.902336 -1.37696,-0.902344 m 0,-0.9375 c 0.98047,9e-6 1.72851,0.38868 2.24414,1.166016 c 0.51953,0.773444 0.77929,1.898443 0.7793,3.375 c -1e-5,1.472659 -0.25977,2.597658 -0.7793,3.375 c -0.51563,0.773437 -1.26367,1.160156 -2.24414,1.160156 c -0.98047,0 -1.73047,-0.386719 -2.25,-1.160156 c -0.51562,-0.777342 -0.77344,-1.902341 -0.77343,-3.375 c -1e-5,-1.476557 0.25781,-2.601556 0.77343,-3.375 c 0.51953,-0.777336 1.26953,-1.166007 2.25,-1.166016" /> @@ -2034,35 +2070,35 @@ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial" id="telemetry-status"> @@ -2077,77 +2113,77 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="rx0" - d="m 110,36.5 0,-11.082914" + d="m 110,36.5 l 0,-11.082914" style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2155,11 +2191,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="rx13" - d="m 144,36.5 0,-11.082914" + d="m 144,36.5 l 0,-11.082914" style="fill:none;stroke:#008000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2167,11 +2203,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="rx15" - d="m 149,36.5 0,-11.082914" + d="m 149,36.5 l 0,-11.082914" style="fill:none;stroke:#ff8000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2179,11 +2215,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="rx17" - d="m 154,36.5 0,-11.082914" + d="m 154,36.5 l 0,-11.082914" style="fill:none;stroke:#ff8000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2191,11 +2227,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="rx19" - d="m 159,36.5 0,-11.082914" + d="m 159,36.5 l 0,-11.082914" style="fill:none;stroke:#ff8000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2203,11 +2239,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="rx21" - d="m 164,36.5 0,-11.082914" + d="m 164,36.5 l 0,-11.082914" style="fill:none;stroke:#ff8000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2215,11 +2251,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="rx23" - d="m 169,36.5 0,-11.082914" + d="m 169,36.5 l 0,-11.082914" style="fill:none;stroke:#ff1400;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2227,7 +2263,7 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="rx25" - d="m 174,36.5 0,-11.082914" + d="m 174,36.5 l 0,-11.082914" style="fill:none;stroke:#ff1400;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2246,65 +2282,65 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="tx1" - d="M 114,18.095328 114,7.012414" + d="M 114,18.095328 L 114,7.012414" style="fill:none;stroke:#008000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2312,11 +2348,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="tx12" - d="m 141.5,18.095328 0,-11.082914" + d="m 141.5,18.095328 l 0,-11.082914" style="fill:none;stroke:#008000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2324,11 +2360,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="tx14" - d="m 146.5,18.095328 0,-11.082914" + d="m 146.5,18.095328 l 0,-11.082914" style="fill:none;stroke:#008000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2336,11 +2372,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="tx16" - d="m 151.5,18.095328 0,-11.082914" + d="m 151.5,18.095328 l 0,-11.082914" style="fill:none;stroke:#ff8000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2348,11 +2384,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="tx18" - d="m 156.5,18.095328 0,-11.082914" + d="m 156.5,18.095328 l 0,-11.082914" style="fill:none;stroke:#ff8000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2360,11 +2396,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="tx20" - d="m 161.5,18.095328 0,-11.082914" + d="m 161.5,18.095328 l 0,-11.082914" style="fill:none;stroke:#ff8000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2372,11 +2408,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="tx22" - d="m 166.5,18.095328 0,-11.082914" + d="m 166.5,18.095328 l 0,-11.082914" style="fill:none;stroke:#ff1400;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2384,11 +2420,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="tx24" - d="m 171.5,18.095328 0,-11.082914" + d="m 171.5,18.095328 l 0,-11.082914" style="fill:none;stroke:#ff1400;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" /> @@ -2409,11 +2445,11 @@ inkscape:label="#path10180" inkscape:connector-curvature="0" id="gps0" - d="m 28,51.5 0,-5" + d="m 28,51.5 l 0,-5" style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> @@ -2493,12 +2529,12 @@ id="gps-mode-text" transform="translate(0,1.5)"> @@ -2517,68 +2553,68 @@ id="battery-milliamp-label" transform="matrix(1,0,0,1.0375514,-2,-2.6776728)"> @@ -2591,7 +2627,7 @@ style="display:inline"> + inkscape:groupmode="layer"> @@ -4372,10 +4407,9 @@ inkscape:groupmode="layer" id="layer32" inkscape:label="altitude-window" - style="display:inline" - sodipodi:insensitive="true"> + style="display:inline"> @@ -4543,7 +4577,7 @@ inkscape:connector-curvature="0" id="path10043" transform="translate(0,4)" - d="m 506.5,144.4375 0,12.75 -9.525,6.5625 0,2.5 9.525,6.5625 0,12.75 43,0 0,-20.5625 0,-20.5625 z" + d="m 506.5,144.4375 l 0,12.75 l -9.525,6.5625 l 0,2.5 l 9.525,6.5625 l 0,12.75 l 43,0 L 549.5,165 l 0,-20.5625 z" style="fill:#000000;stroke:#ffffff" /> + style="display:inline"> @@ -4610,164 +4643,295 @@ inkscape:groupmode="layer" id="layer38" inkscape:label="vsi" - style="display:inline" - sodipodi:insensitive="true"> - - - - - - - - + style="display:inline"> - + - - - - - - - - - - - - - - - - - - - - - + inkscape:connector-curvature="0" + sodipodi:nodetypes="zczzz" /> + style="display:inline" /> + + + + + + + + + + + sodipodi:nodetypes="ccccc" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Date: Tue, 19 Aug 2014 14:16:48 +0200 Subject: [PATCH 09/50] OP-1438 VSI_Arc_PFD+Status : Added FlightTime, ArmStatus, Stab info --- .../openpilotgcs/pfd/default/Warnings.qml | 114 ++++++++- .../share/openpilotgcs/pfd/default/pfd.svg | 240 +++++++++++++----- .../src/plugins/pfdqml/pfdqmlgadgetwidget.cpp | 4 +- 3 files changed, 293 insertions(+), 65 deletions(-) diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/Warnings.qml b/ground/openpilotgcs/share/openpilotgcs/pfd/default/Warnings.qml index 82030e16b..701183d19 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/Warnings.qml +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/Warnings.qml @@ -6,6 +6,30 @@ Item { // Uninitialised, OK, Warning, Error, Critical property variant statusColors : ["gray", "green", "red", "red", "red"] + // DisArmed , Arming, Armed + property variant armColors : ["gray", "orange", "green"] + + // All 'manual modes' are green, 'assisted' modes in cyan + // "MANUAL","STAB 1","STAB 2", "STAB 3", "STAB 4", "STAB 5", "STAB 6", "AUTOTUNE", + // "POS HOLD", "POS VFPV", "POS VLOS", "POS VNSEW", "RTB", "LAND", "PATHPLANNER", "POI", "AUTOCRUISE" + + property variant flightmodeColors : ["gray", "green", "green", "green", "green", "green", "green", "red", + "cyan", "cyan", "cyan", "cyan", "cyan", "cyan", "cyan", "cyan", "cyan"] + + property real flight_time: Math.round(SystemStats.FlightTime / 1000) + property real time_h: (flight_time > 0 ? Math.floor(flight_time / 3600) : 0 ) + property real time_m: (flight_time > 0 ? Math.floor((flight_time - time_h*3600)/60) : 0) + property real time_s: (flight_time > 0 ? Math.floor(flight_time - time_h*3600 - time_m*60) : 0) + + function formatTime(time) { + if (time === 0) + return "00" + if (time < 10) + return "0" + time; + else + return time.toString(); + } + SvgElementImage { id: warning_bg elementName: "warnings-bg" @@ -14,10 +38,64 @@ Item { anchors.bottom: parent.bottom } + SvgElementPositionItem { + id: warning_time + sceneSize: parent.sceneSize + elementName: "warning-time" + width: scaledBounds.width * sceneItem.width + height: scaledBounds.height * sceneItem.height + x: scaledBounds.x * sceneItem.width + y: scaledBounds.y * sceneItem.height + + Rectangle { + anchors.fill: parent + color: (SystemStats.FlightTime > 0 ? "green" : "grey") + + Text { + anchors.centerIn: parent + text: formatTime(time_h) + ":" + formatTime(time_m) + ":" + formatTime(time_s) + font { + family: "Arial" + pixelSize: Math.floor(parent.height * 0.8) + weight: Font.DemiBold + } + } + } + } + + SvgElementPositionItem { + id: warning_arm + sceneSize: parent.sceneSize + elementName: "warning-arm" + width: scaledBounds.width * sceneItem.width + height: scaledBounds.height * sceneItem.height + x: scaledBounds.x * sceneItem.width + y: scaledBounds.y * sceneItem.height + + Rectangle { + anchors.fill: parent + color: warnings.armColors[FlightStatus.Armed] + + Text { + anchors.centerIn: parent + text: ["DISARMED","ARMING","ARMED"][FlightStatus.Armed] + font { + family: "Arial" + pixelSize: Math.floor(parent.height * 0.8) + weight: Font.DemiBold + } + } + } + } + SvgElementPositionItem { id: warning_rc_input sceneSize: parent.sceneSize elementName: "warning-rc-input" + width: scaledBounds.width * sceneItem.width + height: scaledBounds.height * sceneItem.height + x: scaledBounds.x * sceneItem.width + y: scaledBounds.y * sceneItem.height Rectangle { anchors.fill: parent @@ -39,6 +117,10 @@ Item { id: warning_master_caution sceneSize: parent.sceneSize elementName: "warning-master-caution" + width: scaledBounds.width * sceneItem.width + height: scaledBounds.height * sceneItem.height + x: scaledBounds.x * sceneItem.width + y: scaledBounds.y * sceneItem.height property bool warningActive: (SystemAlarms.Alarm_BootFault > 1 || SystemAlarms.Alarm_OutOfMemory > 1 || @@ -48,7 +130,7 @@ Item { Rectangle { anchors.fill: parent color: parent.warningActive ? "red" : "red" - opacity: parent.warningActive ? 1.0 : 0.15 + opacity: parent.warningActive ? 1.0 : 0.4 Text { anchors.centerIn: parent @@ -66,6 +148,10 @@ Item { id: warning_autopilot sceneSize: parent.sceneSize elementName: "warning-autopilot" + width: scaledBounds.width * sceneItem.width + height: scaledBounds.height * sceneItem.height + x: scaledBounds.x * sceneItem.width + y: scaledBounds.y * sceneItem.height Rectangle { anchors.fill: parent @@ -83,6 +169,32 @@ Item { } } + SvgElementPositionItem { + id: warning_flightmode + sceneSize: parent.sceneSize + elementName: "warning-flightmode" + width: scaledBounds.width * sceneItem.width + height: scaledBounds.height * sceneItem.height + x: scaledBounds.x * sceneItem.width + y: scaledBounds.y * sceneItem.height + + Rectangle { + anchors.fill: parent + color: warnings.flightmodeColors[FlightStatus.FlightMode] + + Text { + anchors.centerIn: parent + text: ["MANUAL","STAB 1","STAB 2", "STAB 3", "STAB 4", "STAB 5", "STAB 6", "AUTOTUNE", "POS HOLD", "POS VFPV", + "POS VLOS", "POS VNSEW", "RTB", "LAND", "PATHPLAN", "POI", "AUTOCRUISE"][FlightStatus.FlightMode] + font { + family: "Arial" + pixelSize: Math.floor(parent.height * 0.8) + weight: Font.DemiBold + } + } + } + } + SvgElementImage { id: warning_gps elementName: "warning-gps" diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg b/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg index 999e32c03..d8b2dd653 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg @@ -85,10 +85,10 @@ inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="1" - inkscape:cx="321.52993" - inkscape:cy="103.08754" + inkscape:cx="313.78803" + inkscape:cy="164.34379" inkscape:document-units="px" - inkscape:current-layer="layer69" + inkscape:current-layer="layer29" showgrid="true" fit-margin-top="0" fit-margin-left="0" @@ -4643,12 +4643,14 @@ inkscape:groupmode="layer" id="layer38" inkscape:label="vsi" - style="display:inline"> + style="display:inline" + sodipodi:insensitive="true"> + style="display:inline" + sodipodi:insensitive="true"> + style="display:inline" + sodipodi:insensitive="true" /> + style="display:inline" + sodipodi:insensitive="true" /> @@ -4696,12 +4700,14 @@ inkscape:groupmode="layer" id="layer40" inkscape:label="vsi-bar" - style="display:inline" /> + style="display:inline" + sodipodi:insensitive="true" /> + style="display:inline" + sodipodi:insensitive="true"> + style="display:inline" + sodipodi:insensitive="true"> @@ -4938,8 +4945,7 @@ inkscape:groupmode="layer" id="layer67" inkscape:label="warnings" - style="display:inline" - sodipodi:insensitive="true"> + style="display:inline"> @@ -4965,11 +4971,11 @@ inkscape:groupmode="layer" id="layer51" inkscape:label="warning-autopilot" - style="display:inline" - sodipodi:insensitive="true"> + style="display:inline"> + inkscape:label="#g4860" + transform="translate(1,0)"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + 00.00.00 + + + style="display:inline"> @@ -5052,67 +5165,67 @@ inkscape:label="#warning-master-caution-label" transform="translate(-0.37041,0.11598)"> @@ -5123,11 +5236,11 @@ inkscape:groupmode="layer" id="layer33" inkscape:label="warning-rc-input" - style="display:inline" - sodipodi:insensitive="true"> + style="display:inline"> + inkscape:label="#g4855" + transform="translate(-0.5,0)"> @@ -5200,11 +5313,11 @@ sodipodi:nodetypes="cc" inkscape:connector-curvature="0" id="path4819" - d="M 263.58049,88.871256 374.85741,260.61166" + d="M 263.58049,88.871256 L 374.85741,260.61166" style="fill:none;stroke:#ff0000;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" /> @@ -5243,11 +5356,11 @@ sodipodi:nodetypes="cc" inkscape:connector-curvature="0" id="path4404" - d="M 2.1088442,2.592752 86.716324,34.298858" + d="M 2.1088442,2.592752 L 86.716324,34.298858" style="fill:none;stroke:#ff0000;stroke-width:3.00662947;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" /> @@ -5273,7 +5386,7 @@ y="1.2" /> @@ -5281,7 +5394,7 @@ sodipodi:nodetypes="cc" inkscape:connector-curvature="0" id="path4611" - d="M 85.494821,2.8500377 2.2773164,34.130511" + d="M 85.494821,2.8500377 L 2.2773164,34.130511" style="fill:none;stroke:#ff0000;stroke-width:3.00662947;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" /> @@ -5307,11 +5420,11 @@ sodipodi:nodetypes="cc" inkscape:connector-curvature="0" id="path4309" - d="M 2.3796722,2.8075235 86.665165,34.123438" + d="M 2.3796722,2.8075235 L 86.665165,34.123438" style="fill:none;stroke:#ff0000;stroke-width:3.00634193;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /> @@ -5322,9 +5435,10 @@ inkscape:groupmode="layer" id="layer69" inkscape:label="foreground_layer" - style="display:inline"> + style="display:inline" + sodipodi:insensitive="true"> getObject(); From 47aadd25cd2d0f4a8acf3d44d4ec5c2ff8a96ba3 Mon Sep 17 00:00:00 2001 From: Laurent Lalanne Date: Tue, 19 Aug 2014 16:26:05 +0200 Subject: [PATCH 10/50] OP-1438 VSI_Arc_PFD+Status : Vertical velocity display looks ugly due to telemetry updates, add some filtering. --- .../openpilotgcs/pfd/default/VsiScale.qml | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/VsiScale.qml b/ground/openpilotgcs/share/openpilotgcs/pfd/default/VsiScale.qml index 3f0f901a2..3855ef765 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/VsiScale.qml +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/VsiScale.qml @@ -3,6 +3,14 @@ import QtQuick 2.0 Item { id: sceneItem property variant sceneSize + property real vert_velocity + + Timer { + interval: 100; running: true; repeat: true + onTriggered: vert_velocity = (0.9 * vert_velocity) + (0.1 * VelocityState.Down) + } + + SvgElementImage { id: vsi_window @@ -31,9 +39,9 @@ Item { //rotate it around the center transform: Rotation { - angle: -VelocityDesired.Down*5 - origin.y : vsi_waypoint.height/2 - origin.x : vsi_waypoint.width*33 + angle: -VelocityDesired.Down * 5 + origin.y : vsi_waypoint.height / 2 + origin.x : vsi_waypoint.width * 33 } } @@ -63,9 +71,9 @@ Item { //rotate it around the center transform: Rotation { - angle: -VelocityState.Down*5 - origin.y : vsi_arrow.height/2 - origin.x : vsi_arrow.width*3.15 + angle: -vert_velocity * 5 + origin.y : vsi_arrow.height / 2 + origin.x : vsi_arrow.width * 3.15 } } From 2c25d2d875e8491c919ebd22ab35c3f1234b1861 Mon Sep 17 00:00:00 2001 From: Laurent Lalanne Date: Tue, 19 Aug 2014 20:47:21 +0200 Subject: [PATCH 11/50] OP-1438 VSI_Arc_PFD+Status : Added Thrust mode info close to Flightmode --- .../openpilotgcs/pfd/default/Warnings.qml | 42 ++ .../share/openpilotgcs/pfd/default/pfd.svg | 573 ++++++++++-------- .../src/plugins/pfdqml/pfdqmlgadgetwidget.cpp | 5 +- 3 files changed, 362 insertions(+), 258 deletions(-) diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/Warnings.qml b/ground/openpilotgcs/share/openpilotgcs/pfd/default/Warnings.qml index 701183d19..b852fe1a4 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/Warnings.qml +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/Warnings.qml @@ -16,6 +16,19 @@ Item { property variant flightmodeColors : ["gray", "green", "green", "green", "green", "green", "green", "red", "cyan", "cyan", "cyan", "cyan", "cyan", "cyan", "cyan", "cyan", "cyan"] + // Manual,Rate,Attitude,AxisLock,WeakLeveling,VirtualBar,Rattitude,RelayRate,RelayAttitude, + // AltitudeHold,AltitudeVario,CruiseControl + Auto mode (VTOL/Wing pathfollower) + // grey : 'disabled' modes + + property variant thrustmodeColors : ["green", "grey", "grey", "grey", "grey", "grey", "grey", "grey", "grey", + "green", "green", "green", "cyan"] + + property var thrust_mode: FlightStatus.FlightMode < 7 ? StabilizationDesired.StabilizationMode_Thrust : + FlightStatus.FlightMode > 7 && HwSettings.OptionalModules_VtolPathFollower == 1 + && VtolPathFollowerSettings.ThrustControl == 1 ? 12 : + FlightStatus.FlightMode > 7 && HwSettings.OptionalModules_FixedWingPathFollower == 1 ? 12: 0 + + property real flight_time: Math.round(SystemStats.FlightTime / 1000) property real time_h: (flight_time > 0 ? Math.floor(flight_time / 3600) : 0 ) property real time_m: (flight_time > 0 ? Math.floor((flight_time - time_h*3600)/60) : 0) @@ -195,6 +208,35 @@ Item { } } + SvgElementPositionItem { + id: warning_thrustmode + sceneSize: parent.sceneSize + elementName: "warning-thrustmode" + width: scaledBounds.width * sceneItem.width + height: scaledBounds.height * sceneItem.height + x: scaledBounds.x * sceneItem.width + y: scaledBounds.y * sceneItem.height + + Rectangle { + anchors.fill: parent + color: warnings.thrustmodeColors[thrust_mode.toString()] + + // Manual,Rate,Attitude,AxisLock,WeakLeveling,VirtualBar,Rattitude,RelayRate,RelayAttitude, + // AltitudeHold,AltitudeVario,CruiseControl + // grey : 'disabled' modes + Text { + anchors.centerIn: parent + text: ["MANUAL"," "," ", " ", " ", " ", " ", " ", " ", + "ALT HOLD", "ALT VARIO", "CRUIZECTRL", "AUTO"][thrust_mode.toString()] + font { + family: "Arial" + pixelSize: Math.floor(parent.height * 0.8) + weight: Font.DemiBold + } + } + } + } + SvgElementImage { id: warning_gps elementName: "warning-gps" diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg b/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg index d8b2dd653..2b83893a0 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg @@ -84,11 +84,11 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="1" - inkscape:cx="313.78803" - inkscape:cy="164.34379" + inkscape:zoom="9.3372094" + inkscape:cx="596.49986" + inkscape:cy="8" inkscape:document-units="px" - inkscape:current-layer="layer29" + inkscape:current-layer="g3935" showgrid="true" fit-margin-top="0" fit-margin-left="0" @@ -150,7 +150,7 @@ image/svg+xml - + @@ -193,6 +193,20 @@ style="fill:none;stroke:#ffffff;stroke-width:6;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1;display:inline" /> + + + @@ -254,37 +268,37 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label10R"> @@ -293,36 +307,36 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label20R"> @@ -331,12 +345,12 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label-20R"> @@ -344,23 +358,23 @@ @@ -369,37 +383,37 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label-10R"> @@ -408,12 +422,12 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label30R"> @@ -421,11 +435,11 @@ @@ -447,12 +461,12 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label40R"> @@ -460,11 +474,11 @@ @@ -486,37 +500,37 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label50R"> @@ -525,37 +539,37 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label60R"> @@ -564,12 +578,12 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label70R"> @@ -577,23 +591,23 @@ @@ -602,25 +616,25 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label80R"> @@ -642,12 +656,12 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label90R"> @@ -655,23 +669,23 @@ @@ -680,36 +694,36 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label-40R"> @@ -718,36 +732,36 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label-30R"> @@ -756,12 +770,12 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label-60R"> @@ -769,23 +783,23 @@ @@ -794,12 +808,12 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label-50R"> @@ -807,23 +821,23 @@ @@ -832,36 +846,36 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label-80R"> @@ -870,24 +884,24 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label-70R"> @@ -895,12 +909,12 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label-90L"> @@ -909,12 +923,12 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" id="pitch_label-90R"> @@ -2678,7 +2692,7 @@ transform="translate(0,4)" inkscape:transform-center-x="31.416405" style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - d="M 290.26594,60.402428 286.90125,47.845226" + d="M 290.26594,60.402428 L 286.90125,47.845226" id="path3442" inkscape:connector-curvature="0" inkscape:transform-center-y="-117.24761" /> @@ -2687,14 +2701,14 @@ inkscape:transform-center-y="-105.12133" inkscape:connector-curvature="0" id="path3444" - d="m 262.55821,71.879346 -6.50008,-11.25848" + d="m 262.55821,71.879346 l -6.50008,-11.25848" style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:transform-center-x="60.69183" /> @@ -2713,7 +2727,7 @@ sodipodi:nodetypes="cc" inkscape:transform-center-x="20.198055" style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - d="M 300.02868,57.474202 298.9979,52.82864" + d="M 300.02868,57.474202 L 298.9979,52.82864" id="path3464" inkscape:connector-curvature="0" inkscape:transform-center-y="-109.4812" /> @@ -2723,7 +2737,7 @@ inkscape:transform-center-y="-104.31057" inkscape:connector-curvature="0" id="path3466" - d="m 281.77925,62.464332 -1.94063,-4.28458" + d="m 281.77925,62.464332 l -1.94063,-4.28458" style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:transform-center-x="38.90241" /> @@ -2740,14 +2754,14 @@ inkscape:transform-center-y="-117.24761" inkscape:connector-curvature="0" id="path3491" - d="m 349.73406,60.402428 3.36469,-12.557202" + d="m 349.73406,60.402428 l 3.36469,-12.557202" style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:transform-center-x="31.416405" /> @@ -2756,7 +2770,7 @@ inkscape:transform-center-y="-85.831206" inkscape:connector-curvature="0" id="path3495" - d="m 399.82423,91.345686 11.40936,-9.763523" + d="m 399.82423,91.345686 l 11.40936,-9.763523" style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:transform-center-x="85.83121" sodipodi:nodetypes="cc" /> @@ -2765,7 +2779,7 @@ inkscape:transform-center-y="-51.353944" inkscape:connector-curvature="0" id="path3497" - d="m 330.38014,56.242757 0.76566,-4.817725" + d="m 330.38014,56.242757 l 0.76566,-4.817725" style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:transform-center-x="10.57928" sodipodi:nodetypes="cc" /> @@ -2774,7 +2788,7 @@ inkscape:transform-center-y="-109.4812" inkscape:connector-curvature="0" id="path3499" - d="M 339.97132,57.474202 341.0021,52.82864" + d="M 339.97132,57.474202 L 341.0021,52.82864" style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:transform-center-x="20.198055" sodipodi:nodetypes="cc" /> @@ -2782,7 +2796,7 @@ transform="translate(0,4)" inkscape:transform-center-x="38.90241" style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - d="m 358.22075,62.464332 1.94063,-4.28458" + d="m 358.22075,62.464332 l 1.94063,-4.28458" id="path3501" inkscape:connector-curvature="0" inkscape:transform-center-y="-104.31057" @@ -2792,7 +2806,7 @@ inkscape:transform-center-y="-100.52307" inkscape:connector-curvature="0" id="path3503" - d="m 367.00252,66.39497 2.31603,-4.30844" + d="m 367.00252,66.39497 l 2.31603,-4.30844" style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" inkscape:transform-center-x="47.84564" sodipodi:nodetypes="cc" /> @@ -2801,7 +2815,7 @@ sodipodi:open="true" sodipodi:end="5.5477076" sodipodi:start="3.8773293" - d="M 238.84479,91.530033 C 279.42114,46.70925 348.64918,43.268451 393.46997,83.844794 c 2.69442,2.439265 5.26569,5.011203 7.70426,7.706256" + d="m 238.84479,91.530033 a 109.47147,109.47147 0 0 1 162.32944,0.02102" sodipodi:ry="109.47147" sodipodi:rx="109.47147" sodipodi:cy="165" @@ -2811,7 +2825,7 @@ sodipodi:type="arc" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00.00.00 - - + + + + + + + + + + + + + + 00.00.00 + + - - - getObject(); From 8d0f4e71ea7c8f64d83eeb97a074327255633889 Mon Sep 17 00:00:00 2001 From: Laurent Lalanne Date: Wed, 20 Aug 2014 02:10:31 +0200 Subject: [PATCH 12/50] OP-1438 VSI_Arc_PFD+Status : Added RcInput panel, work in progress --- .../share/openpilotgcs/pfd/default/Info.qml | 102 ++++ .../share/openpilotgcs/pfd/default/pfd.svg | 483 ++++++++++++++---- .../src/plugins/pfdqml/pfdqmlgadgetwidget.cpp | 3 +- 3 files changed, 501 insertions(+), 87 deletions(-) diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/Info.qml b/ground/openpilotgcs/share/openpilotgcs/pfd/default/Info.qml index 449389ca1..9f5a3ce2a 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/Info.qml +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/Info.qml @@ -36,6 +36,8 @@ Item { property real total_distance property bool init_dist: false + property bool hide_display_rc: false + function reset_distance(){ total_distance = 0; } @@ -59,6 +61,14 @@ Item { else return time.toString(); } + + function hide_display_rcinput(){ + console.log("module: "+hide_display_rc); + if (hide_display_rc == false) + hide_display_rc = true; + else + hide_display_rc = false; + } SvgElementImage { id: info_bg @@ -462,6 +472,98 @@ Item { } + SvgElementImage { + id: rc_input_bg + elementName: "rc-input-bg" + sceneSize: info.sceneSize + y: Math.floor(scaledBounds.y * sceneItem.height) + + states: State { + name: "fading" + when: hide_display_rc !== true + PropertyChanges { target: rc_input_bg; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } + } + + transitions: Transition { + SequentialAnimation { + PropertyAnimation { property: "x"; duration: 800 } + } + } + } + + SvgElementImage { + id: rc_input_labels + elementName: "rc-input-labels" + sceneSize: info.sceneSize + y: Math.floor(scaledBounds.y * sceneItem.height) + + states: State { + name: "fading" + when: hide_display_rc !== true + PropertyChanges { target: rc_input_labels; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } + } + + transitions: Transition { + SequentialAnimation { + PropertyAnimation { property: "x"; duration: 800 } + } + } + } + + SvgElementImage { + id: rc_input_icon + elementName: "rc-input-icon" + sceneSize: info.sceneSize + y: Math.floor(scaledBounds.y * sceneItem.height) + + MouseArea { id: hidedisp_rcinput; anchors.fill: parent; onClicked: hide_display_rcinput()} + + states: State { + name: "fading" + when: hide_display_rc !== true + PropertyChanges { target: rc_input_icon; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } + } + + transitions: Transition { + SequentialAnimation { + PropertyAnimation { property: "x"; duration: 800 } + } + } + } + + SvgElementImage { + id: rc_stick + elementName: "rc-stick" + sceneSize: info.sceneSize + + width: scaledBounds.width * sceneItem.width + height: scaledBounds.height * sceneItem.height + + x: (scaledBounds.x * sceneItem.width) + (ManualControlCommand.Roll * rc_stick.width *2.5) + y: (scaledBounds.y * sceneItem.height) + (ManualControlCommand.Pitch * rc_stick.width * 2.5) + + smooth: true + + //rotate it around the center of horizon + transform: Rotation { + angle: ManualControlCommand.Yaw * 90 + origin.y : rc_stick.height / 2 + origin.x : rc_stick.width / 2 + } + + states: State { + name: "fading" + when: hide_display_rc !== true + PropertyChanges { target: rc_stick; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } + } + + transitions: Transition { + SequentialAnimation { + PropertyAnimation { property: "x"; duration: 800 } + } + } + } + SvgElementImage { id: info_border elementName: "info-border" diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg b/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg index 2b83893a0..c59921c0a 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg @@ -2,6 +2,7 @@ + + + + + + + + + + + + + + + + + @@ -963,17 +1057,17 @@ id="home-eta-label" transform="matrix(1,0,0,1.0973877,0,-46.442937)"> @@ -983,22 +1077,22 @@ id="home-distance-label" transform="matrix(1,0,0,1.0577142,0,-27.456636)"> @@ -1007,29 +1101,29 @@ style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans" id="home-label"> @@ -1065,42 +1159,42 @@ id="home-eta-text" transform="matrix(1,0,0,0.99160769,0,2.0646588)"> @@ -1117,37 +1211,37 @@ id="home-distance-text" transform="matrix(1,0,0,0.99160769,0,2.0975587)"> @@ -1164,23 +1258,229 @@ id="home-heading-text" transform="matrix(1,0,0,0.99160769,15.28151,1.9884587)"> + + + + + + + + + + + + + + + + + + + + + + PITCH + ROLL + + + + + + + + style="display:inline" + sodipodi:insensitive="true"> @@ -4203,104 +4504,104 @@ @@ -4308,12 +4609,12 @@ inkscape:label="#path3532" inkscape:connector-curvature="0" id="speed5" - d="M 65.000001,-31 52,-31" + d="M 65.000001,-31 L 52,-31" style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> @@ -4332,7 +4633,7 @@ sodipodi:nodetypes="cccccccccc" inkscape:connector-curvature="0" id="path10059" - d="m 91,148.5 0,20.5 0,20.5 44,0 0,-9.78125 8.5,-9.46875 0,-2.5 -8.5,-9.46875 0,-9.78125 z" + d="m 91,148.5 l 0,20.5 l 0,20.5 l 44,0 l 0,-9.78125 l 8.5,-9.46875 l 0,-2.5 L 135,158.28125 L 135,148.5 z" style="fill:#000000;stroke:#ffffff" /> @@ -4367,27 +4668,27 @@ id="speed-text" transform="translate(0,42)"> @@ -4399,7 +4700,8 @@ style="display:inline" inkscape:label="altitude" id="g9762" - inkscape:groupmode="layer"> + inkscape:groupmode="layer" + sodipodi:insensitive="true"> + style="display:inline" + sodipodi:insensitive="true"> + style="display:inline" + sodipodi:insensitive="true"> + style="display:inline" + sodipodi:insensitive="true"> + inkscape:label="warning-thrustmode" + sodipodi:insensitive="true"> + inkscape:label="warning-flightmode" + sodipodi:insensitive="true"> @@ -5090,7 +5397,8 @@ inkscape:groupmode="layer" id="layer51" inkscape:label="warning-autopilot" - style="display:inline"> + style="display:inline" + sodipodi:insensitive="true"> + style="display:inline" + sodipodi:insensitive="true"> @@ -5247,7 +5556,8 @@ inkscape:groupmode="layer" id="layer33" inkscape:label="warning-rc-input" - style="display:inline"> + style="display:inline" + sodipodi:insensitive="true"> + inkscape:label="warning-arm" + sodipodi:insensitive="true"> diff --git a/ground/openpilotgcs/src/plugins/pfdqml/pfdqmlgadgetwidget.cpp b/ground/openpilotgcs/src/plugins/pfdqml/pfdqmlgadgetwidget.cpp index 1055a71c8..ad8cb4a27 100644 --- a/ground/openpilotgcs/src/plugins/pfdqml/pfdqmlgadgetwidget.cpp +++ b/ground/openpilotgcs/src/plugins/pfdqml/pfdqmlgadgetwidget.cpp @@ -72,7 +72,8 @@ PfdQmlGadgetWidget::PfdQmlGadgetWidget(QWindow *parent) : "SystemStats" << "StabilizationDesired" << "VtolPathFollowerSettings" << - "HwSettings"; + "HwSettings" << + "ManualControlCommand"; ExtensionSystem::PluginManager *pm = ExtensionSystem::PluginManager::instance(); UAVObjectManager *objManager = pm->getObject(); From 8447f474fd666d6eab3843cf23531481db2e9cf7 Mon Sep 17 00:00:00 2001 From: Laurent Lalanne Date: Wed, 20 Aug 2014 13:32:19 +0200 Subject: [PATCH 13/50] OP-1438 VSI_Arc_PFD+Status : Typo (CruiseCtrl), little cleanup --- .../share/openpilotgcs/pfd/default/Info.qml | 30 +++++++++---------- .../openpilotgcs/pfd/default/Warnings.qml | 2 +- 2 files changed, 15 insertions(+), 17 deletions(-) diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/Info.qml b/ground/openpilotgcs/share/openpilotgcs/pfd/default/Info.qml index 9f5a3ce2a..7f8270a98 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/Info.qml +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/Info.qml @@ -63,11 +63,10 @@ Item { } function hide_display_rcinput(){ - console.log("module: "+hide_display_rc); - if (hide_display_rc == false) - hide_display_rc = true; - else - hide_display_rc = false; + if (hide_display_rc == false) + hide_display_rc = true; + else + hide_display_rc = false; } SvgElementImage { @@ -92,7 +91,6 @@ Item { } } - Repeater { id: satNumberBar @@ -369,7 +367,7 @@ Item { states: State { name: "fading" when: TakeOffLocation.Status !== 0 - PropertyChanges { target: home_bg; x: Math.floor(scaledBounds.x * sceneItem.width) + home_bg.width; } + PropertyChanges { target: home_bg; x: Math.floor(scaledBounds.x * sceneItem.width) + home_bg.width; } } transitions: Transition { @@ -390,7 +388,7 @@ Item { states: State { name: "fading_heading" when: TakeOffLocation.Status !== 0 - PropertyChanges { target: home_heading_text; x: Math.floor(scaledBounds.x * sceneItem.width) + home_bg.width } + PropertyChanges { target: home_heading_text; x: Math.floor(scaledBounds.x * sceneItem.width) + home_bg.width; } } transitions: Transition { @@ -420,7 +418,7 @@ Item { states: State { name: "fading_distance" when: TakeOffLocation.Status !== 0 - PropertyChanges { target: home_distance_text; x: Math.floor(scaledBounds.x * sceneItem.width) + home_bg.width; } + PropertyChanges { target: home_distance_text; x: Math.floor(scaledBounds.x * sceneItem.width) + home_bg.width; } } transitions: Transition { @@ -451,7 +449,7 @@ Item { states: State { name: "fading_distance" when: TakeOffLocation.Status !== 0 - PropertyChanges { target: home_eta_text; x: Math.floor(scaledBounds.x * sceneItem.width) + home_bg.width; } + PropertyChanges { target: home_eta_text; x: Math.floor(scaledBounds.x * sceneItem.width) + home_bg.width; } } transitions: Transition { @@ -481,7 +479,7 @@ Item { states: State { name: "fading" when: hide_display_rc !== true - PropertyChanges { target: rc_input_bg; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } + PropertyChanges { target: rc_input_bg; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } } transitions: Transition { @@ -500,7 +498,7 @@ Item { states: State { name: "fading" when: hide_display_rc !== true - PropertyChanges { target: rc_input_labels; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } + PropertyChanges { target: rc_input_labels; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } } transitions: Transition { @@ -521,7 +519,7 @@ Item { states: State { name: "fading" when: hide_display_rc !== true - PropertyChanges { target: rc_input_icon; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } + PropertyChanges { target: rc_input_icon; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } } transitions: Transition { @@ -539,12 +537,12 @@ Item { width: scaledBounds.width * sceneItem.width height: scaledBounds.height * sceneItem.height - x: (scaledBounds.x * sceneItem.width) + (ManualControlCommand.Roll * rc_stick.width *2.5) + x: (scaledBounds.x * sceneItem.width) + (ManualControlCommand.Roll * rc_stick.width * 2.5) y: (scaledBounds.y * sceneItem.height) + (ManualControlCommand.Pitch * rc_stick.width * 2.5) smooth: true - //rotate it around the center of horizon + //rotate it around his center transform: Rotation { angle: ManualControlCommand.Yaw * 90 origin.y : rc_stick.height / 2 @@ -554,7 +552,7 @@ Item { states: State { name: "fading" when: hide_display_rc !== true - PropertyChanges { target: rc_stick; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } + PropertyChanges { target: rc_stick; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } } transitions: Transition { diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/Warnings.qml b/ground/openpilotgcs/share/openpilotgcs/pfd/default/Warnings.qml index b852fe1a4..8d1ef4a36 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/Warnings.qml +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/Warnings.qml @@ -227,7 +227,7 @@ Item { Text { anchors.centerIn: parent text: ["MANUAL"," "," ", " ", " ", " ", " ", " ", " ", - "ALT HOLD", "ALT VARIO", "CRUIZECTRL", "AUTO"][thrust_mode.toString()] + "ALT HOLD", "ALT VARIO", "CRUISECTRL", "AUTO"][thrust_mode.toString()] font { family: "Arial" pixelSize: Math.floor(parent.height * 0.8) From a00de4aaaecaae4d6ac98cfcd67014bec3a9429d Mon Sep 17 00:00:00 2001 From: Laurent Lalanne Date: Wed, 20 Aug 2014 13:36:05 +0200 Subject: [PATCH 14/50] OP-1438 VSI_Arc_PFD+Status : Bigger Rcinput panel for best viewing --- .../share/openpilotgcs/pfd/default/Info.qml | 8 +- .../share/openpilotgcs/pfd/default/pfd.svg | 191 +++++++++++------- 2 files changed, 117 insertions(+), 82 deletions(-) diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/Info.qml b/ground/openpilotgcs/share/openpilotgcs/pfd/default/Info.qml index 7f8270a98..c6cc2fa5f 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/Info.qml +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/Info.qml @@ -479,7 +479,7 @@ Item { states: State { name: "fading" when: hide_display_rc !== true - PropertyChanges { target: rc_input_bg; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } + PropertyChanges { target: rc_input_bg; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.85); } } transitions: Transition { @@ -498,7 +498,7 @@ Item { states: State { name: "fading" when: hide_display_rc !== true - PropertyChanges { target: rc_input_labels; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } + PropertyChanges { target: rc_input_labels; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.85); } } transitions: Transition { @@ -519,7 +519,7 @@ Item { states: State { name: "fading" when: hide_display_rc !== true - PropertyChanges { target: rc_input_icon; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } + PropertyChanges { target: rc_input_icon; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.85); } } transitions: Transition { @@ -552,7 +552,7 @@ Item { states: State { name: "fading" when: hide_display_rc !== true - PropertyChanges { target: rc_stick; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.91); } + PropertyChanges { target: rc_stick; x: Math.floor(scaledBounds.x * sceneItem.width) - (rc_input_bg.width * 0.85); } } transitions: Transition { diff --git a/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg b/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg index c59921c0a..2fb698ff8 100644 --- a/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg +++ b/ground/openpilotgcs/share/openpilotgcs/pfd/default/pfd.svg @@ -22,6 +22,17 @@ inkscape:export-ydpi="72"> + + + + @@ -139,13 +150,13 @@ id="linearGradient5006-2" xlink:href="#linearGradient4983-7" inkscape:collect="always" - gradientTransform="matrix(1.0909091,0,0,1,-7.2727273,0)" /> + gradientTransform="matrix(1.2653937,0,0,1.1601679,-8.5036667,-73.769595)" /> + + id="rc-input-bg" + transform="matrix(1.1599442,0,0,1.1601679,-0.06770889,-73.769595)"> + d="m -1.8968835,311 c -2.77,0 -5,2.23 -5,5 l 0,140 c 0,2.77 2.23,5 5,5 L 145,461 l 19,0 c 2.77,0 5,-2.23 5,-5 l 0,-30 c 0,-2.77 -2.23,-5 -5,-5 l -14,0 l 0,-105 c 0,-2.77 -2.23,-5 -5,-5 z" + style="fill:#2c2929;fill-opacity:1;stroke:#ffffff;stroke-width:0.86202729;stroke-opacity:1" + sodipodi:nodetypes="sssscsssscsss" /> + style="fill:none;stroke:#ffffff;stroke-width:0.86202729;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /> + transform="matrix(1.7211673,0,0,1.526957,-84.861643,-237.54055)"> + style="fill:#464646;fill-opacity:1;stroke:#ffffff;stroke-width:0.43179047;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /> + transform="matrix(0.25,0,0,0.25,114.18623,329.53888)" /> + transform="matrix(-0.625,0,0,-0.625,253.625,715.23272)" /> + width="4.352685" + height="2.0068226" + x="152.5251" + y="442.32941" + rx="0.29050052" + ry="0.32744864" /> + d="m 154.54064,436.85572 l 0,-1.69713 l 5,-3" + style="fill:none;stroke:#ffffff;stroke-width:0.80189669;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:none" /> + + d="m 140,385 a 65,65 0 1 1 -130,0 a 65,65 0 1 1 130,0 z" + transform="matrix(1.1599442,0,0,1.1601679,-0.06770889,-73.769595)" /> + width="69.610069" + height="11.599442" + x="-367.09421" + y="81.12838" /> PITCH ROLL + width="69.596649" + height="11.601679" + x="-81.12838" + y="-378.69589" /> @@ -1447,31 +1480,33 @@ sodipodi:cy="385" sodipodi:cx="75" id="path5029" - style="fill:#1e1e1e;fill-opacity:1;stroke:#5555e6;stroke-width:4;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;fill-rule:nonzero" - sodipodi:type="arc" /> + style="fill:#1e1e1e;fill-opacity:1;fill-rule:nonzero;stroke:#5555e6;stroke-width:3.44810915;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" + sodipodi:type="arc" + transform="matrix(1.1599442,0,0,1.1601679,-0.06770889,-73.769595)" />