mirror of
https://bitbucket.org/librepilot/librepilot.git
synced 2025-01-19 04:52:12 +01:00
Merge branch 'rel-15.02' into samguns/zh_CN_GCS
This commit is contained in:
commit
45f589627e
63
WHATSNEW.txt
63
WHATSNEW.txt
@ -1,3 +1,66 @@
|
||||
--- RELEASE-15.02 RC2
|
||||
This release introduces major flight performance improvements, enhancements as well as bug fixes. Many enhancements have been made to reducing dead-time of the communication between the flight controller and ESCs. In our testing, we have found this to be not only the best flight performance so far in the OpenPilot project but the best flight performance of any project we have tested against. This is a recommended upgrade for everyone and the more skilled of a pilot you are, the more you will love this release.
|
||||
|
||||
A key improvement that helped achieve this was the addition of the PWMSync code path, this is now enabled by default. Some restrictions applies to CC3D/CC as it needs a compatible input method to enable PWMSync. Compatible input methods are PPM, S.Bus, DSM and OPLink. This release also introduces support for OneShot125 capable ESCs, such as the KISS ESCs and all ESCs supported in BLHeli V13 and above. Note that OneShot125 support has the same restrictions as PWMSync for CC and CC3D.
|
||||
|
||||
Note for CC3D/CC: To support PWMSync/OneShot125 PPM input pin has changed from earlier releases to the last pin on the input IO port, please refer to the connection diagram in the setup wizard to see the required new pin layout for PPM.
|
||||
|
||||
Other enhancements include key parts of the GCS translated to Chinese and further OPLink reliability additions allowing us to confidently say it can be used as a primary control link as well as for telemetry.
|
||||
|
||||
The full list of features, improvements and bugfixes in this release is accessible here:
|
||||
https://progress.openpilot.org/issues/?filter=12161
|
||||
|
||||
|
||||
Release Notes - OpenPilot - Version RELEASE-15.02
|
||||
|
||||
** Bug
|
||||
* [OP-969] - Input Configuration Wizard has scrollbars showing up and next/previous buttons are pushed down out of sight
|
||||
* [OP-1466] - Gcs crashes on Helicopter config tab
|
||||
* [OP-1522] - Improve Robustness of OPLink radio
|
||||
* [OP-1601] - Still not enough ram on CC for gps to be usable
|
||||
* [OP-1644] - Radio Setup Wiz problem with 6 flight modes
|
||||
* [OP-1670] - cruise control conflict with flight modes (rate & acro +)
|
||||
* [OP-1680] - OPLink control limited to 1000-1896
|
||||
* [OP-1682] - Overflow issue with pwm rx and CC3D
|
||||
* [OP-1686] - Slave OPLM should receive PPM in PPM_only mode
|
||||
* [OP-1706] - Output Reverse checkboxes tick them selves when min equals max
|
||||
* [OP-1718] - FW vehicle setup wizard may strip servo gears
|
||||
* [OP-1722] - libusb include is incorrect.
|
||||
* [OP-1728] - FW servos ignore set neutral
|
||||
* [OP-1733] - version-info.py should check for version-info.json not git repo.
|
||||
* [OP-1735] - Build fails with a tilde (~) in path.
|
||||
* [OP-1737] - Min/max will be greyed even if motor output test is canceled
|
||||
* [OP-1741] - Repo path is incorrect in version_info.pro
|
||||
* [OP-1743] - cc3d fails to connect once "next " is loaded 2-23-15
|
||||
* [OP-1744] - Vehicle config wizard produces a bad configuration
|
||||
* [OP-1754] - Vehicle Wizard bad config when setting PPM in and RapidESC out
|
||||
|
||||
|
||||
** Improvement
|
||||
* [OP-1576] - Remove tx resent accounting from OPlink
|
||||
* [OP-1635] - Remove Quad H from wizard to avoid confusion with Quad X
|
||||
* [OP-1650] - Reduce telemetry to improve OPLink
|
||||
* [OP-1658] - Sensor driver API and overhaul of sensor module
|
||||
* [OP-1683] - Support synchronous (OneShot) and OneShot125 output mode
|
||||
* [OP-1685] - Support OneShot/OneShot125 for CC* targets
|
||||
* [OP-1694] - Make package make rule non-nested
|
||||
* [OP-1698] - Add easy to set channel passtrough GCS functionality
|
||||
* [OP-1704] - Add support for sanity check custom hooks
|
||||
* [OP-1755] - Add additional path for cloudconfigs
|
||||
|
||||
** New Feature
|
||||
* [OP-1723] - RCCar Forward/reverse support
|
||||
|
||||
|
||||
** Task
|
||||
* [OP-1721] - C++ enable flight controller and upgrade ARM tools
|
||||
* [OP-1738] - change default flight modes and thrust settings
|
||||
|
||||
** Sub task
|
||||
* [OP-1748] - Chinese translation for 15.02
|
||||
* [OP-1752] - Add Alarm sub status to SystemHealth
|
||||
|
||||
|
||||
--- RELEASE-15.01 --- Look Ma, No hands ---
|
||||
This release mainly focuses on a new feature, GPSAssist which is a new form of assisted control for multirotors.
|
||||
Assisted Control provides assistance functions on top of existing flight modes. GPSAssist is the
|
||||
|
@ -14,7 +14,7 @@
|
||||
height="79.57505"
|
||||
id="svg3604"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.4 r9939"
|
||||
inkscape:version="0.48.5 r10040"
|
||||
sodipodi:docname="system-health.svg"
|
||||
inkscape:export-filename="C:\NoBackup\OpenPilot\mainboard-health.png"
|
||||
inkscape:export-xdpi="269.53"
|
||||
@ -27,10 +27,10 @@
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="7.4934872"
|
||||
inkscape:cx="56.515743"
|
||||
inkscape:cy="39.787525"
|
||||
inkscape:current-layer="background"
|
||||
inkscape:zoom="6.5977991"
|
||||
inkscape:cx="55.083588"
|
||||
inkscape:cy="24.071773"
|
||||
inkscape:current-layer="layer45"
|
||||
id="namedview3608"
|
||||
showgrid="true"
|
||||
inkscape:window-width="1280"
|
||||
@ -40,8 +40,12 @@
|
||||
inkscape:window-maximized="1"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true"
|
||||
inkscape:snap-global="false"
|
||||
units="mm">
|
||||
inkscape:snap-global="true"
|
||||
units="mm"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:snap-nodes="false"
|
||||
inkscape:snap-grids="false">
|
||||
<sodipodi:guide
|
||||
id="guide3857"
|
||||
position="68.372091,-63.708224"
|
||||
@ -687,7 +691,7 @@
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
@ -696,7 +700,8 @@
|
||||
transform="translate(-497.66563,-344.28037)"
|
||||
id="background"
|
||||
inkscape:groupmode="layer"
|
||||
inkscape:label="Background">
|
||||
inkscape:label="Background"
|
||||
sodipodi:insensitive="true">
|
||||
<rect
|
||||
ry="1.6"
|
||||
y="344.58401"
|
||||
@ -754,14 +759,6 @@
|
||||
x="499.66107"
|
||||
y="360.58862"
|
||||
ry="0" />
|
||||
<rect
|
||||
style="fill:#241c1c;fill-opacity:1;stroke:#ffffff;stroke-width:0.45410183;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
id="rect4550-8-7-82"
|
||||
width="10.470912"
|
||||
height="8.5405388"
|
||||
x="547.97754"
|
||||
y="411.27975"
|
||||
ry="1" />
|
||||
<rect
|
||||
style="fill:#333333;fill-opacity:1;stroke:none"
|
||||
id="rect1234"
|
||||
@ -770,25 +767,16 @@
|
||||
x="499.72488"
|
||||
y="408.94675"
|
||||
ry="0" />
|
||||
<rect
|
||||
style="fill:#28170b;fill-opacity:1;stroke:none;display:inline"
|
||||
id="CPUOverload"
|
||||
width="19.142458"
|
||||
height="9.4961557"
|
||||
x="588.72668"
|
||||
y="410.80194"
|
||||
ry="1.111892"
|
||||
inkscape:label="#rect4550-8" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans;-inkscape-font-specification:Sans Bold"
|
||||
x="529.24725"
|
||||
x="527.35309"
|
||||
y="379.43469"
|
||||
id="text5334"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4263"
|
||||
x="529.24725"
|
||||
x="527.35309"
|
||||
y="379.43469">SYSTEM HEALTH</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
@ -918,8 +906,8 @@
|
||||
id="Airspeed"
|
||||
width="23.751532"
|
||||
height="10.102088"
|
||||
x="557.14178"
|
||||
y="362.48087"
|
||||
x="557.61102"
|
||||
y="362.46414"
|
||||
ry="0.99014992"
|
||||
inkscape:label="#rect4550-8-1-4-21-5-13" />
|
||||
<rect
|
||||
@ -1005,6 +993,15 @@
|
||||
y="410.80194"
|
||||
ry="1.111892"
|
||||
inkscape:label="#rect4550-8" />
|
||||
<rect
|
||||
style="fill:#28170b;fill-opacity:1;stroke:none;display:inline"
|
||||
id="CPUOverload"
|
||||
width="19.142458"
|
||||
height="9.4961557"
|
||||
x="588.72668"
|
||||
y="410.80194"
|
||||
ry="1.111892"
|
||||
inkscape:label="#rect4550-8" />
|
||||
<rect
|
||||
style="fill:#28170b;fill-opacity:1;stroke:none;display:inline"
|
||||
id="EventSystem"
|
||||
@ -1674,6 +1671,50 @@
|
||||
inkscape:label="#rect4550"
|
||||
rx="1.2054718" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer45"
|
||||
inkscape:label="BootFault-RebootRequired">
|
||||
<rect
|
||||
style="fill:#d40000;fill-opacity:1;stroke:none;display:inline"
|
||||
id="BootFault-RebootRequired"
|
||||
width="13.110236"
|
||||
height="10.107105"
|
||||
x="80.806435"
|
||||
y="51.972187"
|
||||
ry="0.98050147"
|
||||
inkscape:label="#rect4550-8-1-4-21-1" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer43"
|
||||
inkscape:label="SystemConfiguration-FlightMode"
|
||||
style="display:inline">
|
||||
<rect
|
||||
style="fill:#d40000;fill-opacity:1;stroke:none;display:inline"
|
||||
id="SystemConfiguration-FlightMode"
|
||||
width="13.110236"
|
||||
height="10.107105"
|
||||
x="80.806435"
|
||||
y="51.972187"
|
||||
ry="0.98050147"
|
||||
inkscape:label="#rect4550-8-1-4-21-1" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer44"
|
||||
inkscape:label="SystemConfiguration-UnsupportedConfig_OneShot"
|
||||
style="display:none">
|
||||
<rect
|
||||
style="fill:#d40000;fill-opacity:1;stroke:none;display:inline"
|
||||
id="SystemConfiguration-UnsupportedConfig_OneShot"
|
||||
width="13.110236"
|
||||
height="10.107105"
|
||||
x="80.775131"
|
||||
y="51.938683"
|
||||
ry="0.98050147"
|
||||
inkscape:label="#rect4550-8-1-4-21-1" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="g5417"
|
||||
@ -1798,7 +1839,8 @@
|
||||
inkscape:groupmode="layer"
|
||||
id="g5438"
|
||||
inkscape:label="SystemConfiguration-Critical"
|
||||
style="display:none">
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<rect
|
||||
style="fill:#d40000;fill-opacity:1;stroke:none;display:inline"
|
||||
id="SystemConfiguration-Critical"
|
||||
@ -1813,7 +1855,8 @@
|
||||
inkscape:groupmode="layer"
|
||||
id="g5441"
|
||||
inkscape:label="BootFault-Critical"
|
||||
style="display:none">
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<rect
|
||||
style="fill:#d40000;fill-opacity:1;stroke:none;display:inline"
|
||||
id="BootFault-Critical"
|
||||
@ -1827,7 +1870,8 @@
|
||||
inkscape:groupmode="layer"
|
||||
id="g5445"
|
||||
inkscape:label="Battery-Critical"
|
||||
style="display:none">
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<rect
|
||||
style="fill:#d40000;fill-opacity:1;stroke:none;display:inline"
|
||||
id="Battery-Critical"
|
||||
@ -1842,7 +1886,8 @@
|
||||
inkscape:groupmode="layer"
|
||||
id="g5448"
|
||||
inkscape:label="Telemetry-Critical"
|
||||
style="display:none">
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<rect
|
||||
style="fill:#d40000;fill-opacity:1;stroke:none;display:inline"
|
||||
id="Telemetry-Critical"
|
||||
@ -1857,7 +1902,8 @@
|
||||
inkscape:groupmode="layer"
|
||||
id="g5451"
|
||||
inkscape:label="FlightTime-Critical"
|
||||
style="display:none">
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<rect
|
||||
style="fill:#d40000;fill-opacity:1;stroke:none;display:inline"
|
||||
id="FlightTime-Critical"
|
||||
@ -1872,7 +1918,8 @@
|
||||
inkscape:groupmode="layer"
|
||||
id="g5454"
|
||||
inkscape:label="I2C-Critical"
|
||||
style="display:none">
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<rect
|
||||
style="fill:#d40000;fill-opacity:1;stroke:none;display:inline"
|
||||
id="I2C-Critical"
|
||||
@ -1887,7 +1934,8 @@
|
||||
inkscape:groupmode="layer"
|
||||
id="g5457"
|
||||
inkscape:label="EventSystem-Critical"
|
||||
style="display:none">
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<rect
|
||||
style="fill:#d40000;fill-opacity:1;stroke:none;display:inline"
|
||||
id="EventSystem-Critical"
|
||||
@ -2282,13 +2330,13 @@
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6233-9-9-86-6"
|
||||
d="m 55.345762,52.390536 22.271395,9.258692"
|
||||
d="M 55.345762,52.390536 L 77.617157,61.649228"
|
||||
style="fill:#ff0000;stroke:#ff0000;stroke-width:1.36421418;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:none;display:inline"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6233-9-9-4-5-1"
|
||||
d="M 55.34692,61.535992 77.626653,52.32014"
|
||||
d="M 55.34692,61.535992 L 77.626653,52.32014"
|
||||
style="fill:#ff0000;stroke:#ff0000;stroke-width:1.36357629;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:none;display:inline"
|
||||
sodipodi:nodetypes="cc" />
|
||||
</g>
|
||||
@ -2439,7 +2487,8 @@
|
||||
style="display:inline"
|
||||
inkscape:label="Foreground"
|
||||
id="foreground"
|
||||
inkscape:groupmode="layer">
|
||||
inkscape:groupmode="layer"
|
||||
sodipodi:insensitive="true">
|
||||
<rect
|
||||
inkscape:label="#rect3054"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.09511685;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
@ -2479,19 +2528,19 @@
|
||||
style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;font-family:Arial;-inkscape-font-specification:Arial Bold"
|
||||
id="text5330-7-7">
|
||||
<path
|
||||
d="m 20.933331,9.2802429 -0.94336,0 -0.375,-0.9755859 -1.716797,0 -0.354492,0.9755859 -0.919922,0 1.672852,-4.2949219 0.916992,0 1.719727,4.2949219 m -1.59668,-1.6992187 -0.591797,-1.59375 -0.580078,1.59375 1.171875,0"
|
||||
d="M 20.933331,9.2802429 L 19.989971,9.2802429 L 19.614971,8.304657 L 17.898174,8.304657 L 17.543682,9.2802429 L 16.62376,9.2802429 L 18.296612,4.985321 L 19.213604,4.985321 L 20.933331,9.2802429 M 19.336651,7.5810242 L 18.744854,5.9872742 L 18.164776,7.5810242 L 19.336651,7.5810242"
|
||||
id="path4659"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="m 21.929424,9.2802429 0,-3.5683594 -1.274414,0 0,-0.7265625 3.413086,0 0,0.7265625 -1.271484,0 0,3.5683594 -0.867188,0"
|
||||
d="M 21.929424,9.2802429 L 21.929424,5.7118835 L 20.65501,5.7118835 L 20.65501,4.985321 L 24.068096,4.985321 L 24.068096,5.7118835 L 22.796612,5.7118835 L 22.796612,9.2802429 L 21.929424,9.2802429"
|
||||
id="path4661"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="m 25.585674,9.2802429 0,-3.5683594 -1.274414,0 0,-0.7265625 3.413086,0 0,0.7265625 -1.271484,0 0,3.5683594 -0.867188,0"
|
||||
d="M 25.585674,9.2802429 L 25.585674,5.7118835 L 24.31126,5.7118835 L 24.31126,4.985321 L 27.724346,4.985321 L 27.724346,5.7118835 L 26.452862,5.7118835 L 26.452862,9.2802429 L 25.585674,9.2802429"
|
||||
id="path4663"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="m 28.24876,9.2802429 0,-4.2949219 0.867188,0 0,4.2949219 -0.867188,0"
|
||||
d="M 28.24876,9.2802429 L 28.24876,4.985321 L 29.115948,4.985321 L 29.115948,9.2802429 L 28.24876,9.2802429"
|
||||
id="path4665"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
@ -2903,6 +2952,17 @@
|
||||
width="13.522519"
|
||||
id="rect4796-2-7-4-0"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.70866144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:7.38898897px;font-style:normal;font-variant:normal;font-weight:bold;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:Sans Bold"
|
||||
x="85.050056"
|
||||
y="59.663887"
|
||||
id="text3468"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3470"
|
||||
x="85.050056"
|
||||
y="59.663887">?</tspan></text>
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
@ -2948,12 +3008,12 @@
|
||||
id="g4267">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.29055119;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 10,34.57505 3,-5 3,5 z"
|
||||
d="M 10,34.57505 L 13,29.57505 L 16,34.57505 z"
|
||||
id="path4256"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#feff4e;fill-opacity:1;stroke:none"
|
||||
d="m 10.290063,34.407528 c 0.0054,-0.0098 0.6154,-1.028176 1.355653,-2.263122 1.065577,-1.777675 1.351802,-2.238983 1.374175,-2.214756 0.034,0.03682 2.687605,4.461874 2.687605,4.481753 0,0.0076 -1.221113,0.01389 -2.713585,0.01389 -1.492472,0 -2.709203,-0.008 -2.703848,-0.01777 z"
|
||||
d="M 10.290063,34.407528 C 10.295463,34.397728 10.905463,33.379352 11.645716,32.144406 C 12.711293,30.366731 12.997518,29.905423 13.019891,29.92965 C 13.053891,29.96647 15.707496,34.391524 15.707496,34.411403 C 15.707496,34.419003 14.486383,34.425293 12.993911,34.425293 C 11.501439,34.425293 10.284708,34.417293 10.290063,34.407523 z"
|
||||
id="path4258"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
@ -2964,14 +3024,14 @@
|
||||
sodipodi:cy="35.07505"
|
||||
sodipodi:rx="0.5"
|
||||
sodipodi:ry="0.5"
|
||||
d="m 14,35.07505 a 0.5,0.5 0 1 1 -2.75e-4,-0.01658"
|
||||
d="M 14,35.07505 A 0.5,0.5 0 1 1 13.999725,35.058469"
|
||||
sodipodi:start="0"
|
||||
sodipodi:end="6.2500167"
|
||||
sodipodi:open="true"
|
||||
transform="matrix(0.85787666,0,0,0.89340749,1.4093898,2.5721417)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.78661418;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 13,30.727043 0,2.607972"
|
||||
d="M 13,30.727043 L 13,33.335015"
|
||||
id="path4265"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
@ -2981,12 +3041,12 @@
|
||||
style="display:inline">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.29024163;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 10,34.57505 3,-5 3,5 z"
|
||||
d="M 10,34.57505 L 13,29.57505 L 16,34.57505 z"
|
||||
id="path4256-0"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#feff4e;fill-opacity:1;stroke:none"
|
||||
d="m 10.290063,34.407528 c 0.0054,-0.0098 0.6154,-1.028176 1.355653,-2.263122 1.065577,-1.777675 1.351802,-2.238983 1.374175,-2.214756 0.034,0.03682 2.687605,4.461874 2.687605,4.481753 0,0.0076 -1.221113,0.01389 -2.713585,0.01389 -1.492472,0 -2.709203,-0.008 -2.703848,-0.01777 z"
|
||||
d="M 10.290063,34.407528 C 10.295463,34.397728 10.905463,33.379352 11.645716,32.144406 C 12.711293,30.366731 12.997518,29.905423 13.019891,29.92965 C 13.053891,29.96647 15.707496,34.391524 15.707496,34.411403 C 15.707496,34.419003 14.486383,34.425293 12.993911,34.425293 C 11.501439,34.425293 10.284708,34.417293 10.290063,34.407523 z"
|
||||
id="path4258-9"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
@ -2997,14 +3057,14 @@
|
||||
sodipodi:cy="35.07505"
|
||||
sodipodi:rx="0.5"
|
||||
sodipodi:ry="0.5"
|
||||
d="m 14,35.07505 a 0.5,0.5 0 1 1 -2.75e-4,-0.01658"
|
||||
d="M 14,35.07505 A 0.5,0.5 0 1 1 13.999725,35.058469"
|
||||
sodipodi:start="0"
|
||||
sodipodi:end="6.2500167"
|
||||
sodipodi:open="true"
|
||||
transform="matrix(0.85787666,0,0,0.89340749,1.4093898,2.5721417)" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:0.78661418;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 13,30.727043 0,2.607972"
|
||||
d="M 13,30.727043 L 13,33.335015"
|
||||
id="path4265-8"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
|
Before Width: | Height: | Size: 106 KiB After Width: | Height: | Size: 109 KiB |
@ -7,7 +7,7 @@
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>850</width>
|
||||
<height>572</height>
|
||||
<height>694</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
@ -29,7 +29,16 @@
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_17">
|
||||
<property name="margin">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
@ -92,7 +101,7 @@
|
||||
<string notr="true">#SwashplateBox,#SwashplateBox_2,#SwashplateBox_3,#SwashplateBox_4,#ccpmSwashImageBox,#SwashLvlInstructionsBox,#SwashLvlccpmSwashImageBox,#SwashLvlccpmSliderBox,#SwashLvlStatusBox,#ThrottleCurveBox,#PitchCurveBox{
|
||||
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0 rgba(243, 243, 243, 255), stop:1 rgba(250, 250, 250, 255));
|
||||
border: 1px outset #999;
|
||||
border-radius: 3;
|
||||
border-radius: 6;
|
||||
font:bold;
|
||||
}
|
||||
|
||||
@ -100,16 +109,14 @@ QGroupBox::title {
|
||||
subcontrol-origin: margin;
|
||||
subcontrol-position: top center; /* position at the top center */
|
||||
padding: 0 3px;
|
||||
background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
|
||||
stop: 0 #FFOECE, stop: 1 #FFFFFF);
|
||||
top: 5px;
|
||||
top: 5px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="tabShape">
|
||||
<enum>QTabWidget::Rounded</enum>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
<number>1</number>
|
||||
</property>
|
||||
<property name="documentMode">
|
||||
<bool>false</bool>
|
||||
@ -119,42 +126,969 @@ QGroupBox::title {
|
||||
<string>Basic settings</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout_6">
|
||||
<property name="margin">
|
||||
<property name="leftMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<layout class="QVBoxLayout" name="ccpmSettingsBox" stretch="0,1,1,0,0">
|
||||
<item row="0" column="4">
|
||||
<widget class="QGroupBox" name="ccpmSwashImageBox">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
|
||||
<horstretch>1</horstretch>
|
||||
<verstretch>1</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="sizeIncrement">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>10</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<italic>false</italic>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Swashplate Layout</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignHCenter|Qt::AlignTop</set>
|
||||
</property>
|
||||
<property name="flat">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_10">
|
||||
<property name="leftMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>30</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="horizontalSpacing">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QSplitter" name="splitter_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<widget class="QGraphicsView" name="SwashplateImage">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>1</horstretch>
|
||||
<verstretch>1</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>100</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>1000</width>
|
||||
<height>1000</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="sizeIncrement">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>10</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::Box</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Plain</enum>
|
||||
</property>
|
||||
<property name="lineWidth">
|
||||
<number>1</number>
|
||||
</property>
|
||||
<property name="verticalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="backgroundBrush">
|
||||
<brush brushstyle="DiagCrossPattern">
|
||||
<color alpha="50">
|
||||
<red>112</red>
|
||||
<green>184</green>
|
||||
<blue>138</blue>
|
||||
</color>
|
||||
</brush>
|
||||
</property>
|
||||
<property name="foregroundBrush">
|
||||
<brush brushstyle="SolidPattern">
|
||||
<color alpha="0">
|
||||
<red>127</red>
|
||||
<green>127</green>
|
||||
<blue>127</blue>
|
||||
</color>
|
||||
</brush>
|
||||
</property>
|
||||
<property name="sceneRect">
|
||||
<rectf>
|
||||
<x>0.000000000000000</x>
|
||||
<y>0.000000000000000</y>
|
||||
<width>400.000000000000000</width>
|
||||
<height>400.000000000000000</height>
|
||||
</rectf>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
<property name="resizeAnchor">
|
||||
<enum>QGraphicsView::AnchorViewCenter</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="3">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_10">
|
||||
<property name="sizeConstraint">
|
||||
<enum>QLayout::SetMaximumSize</enum>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="SwashplateBox_2">
|
||||
<widget class="QGroupBox" name="ccpmRevoMixingBox">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Maximum">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>70</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>190</width>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QGroupBox::title {
|
||||
background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
|
||||
color: rgb(255, 255, 255);
|
||||
border-radius: 5;
|
||||
margin:1px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>REVO</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
||||
<property name="spacing">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>10</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_14">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>7</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>100%</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<item>
|
||||
<widget class="QSlider" name="ccpmRevoSlider">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_13">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>7</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>0%</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="ccpmREVOspinBox"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="ccpmPitchMixingBox">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>70</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QGroupBox::title {
|
||||
background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
|
||||
color: rgb(255, 255, 255);
|
||||
border-radius: 5;
|
||||
margin:1px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>CCPM</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignBottom|Qt::AlignHCenter</set>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_4">
|
||||
<property name="spacing">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>10</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_15">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>7</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Collective</string>
|
||||
</property>
|
||||
<property name="scaledContents">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QSlider" name="ccpmCollectiveSlider">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_16">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>7</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Cyclic</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="ccpmCollectivespinBox">
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="ccpmCollectiveScalingBox">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>70</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QGroupBox::title {
|
||||
background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
|
||||
color: rgb(255, 255, 255);
|
||||
border-radius: 5;
|
||||
margin:1px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Collective</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_12">
|
||||
<property name="spacing">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>20</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_11">
|
||||
<item>
|
||||
<widget class="QSlider" name="ccpmCollectiveScale">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="ccpmCollectiveScaleBox">
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="ccpmCyclicScalingBox">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>70</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QGroupBox::title {
|
||||
background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
|
||||
color: rgb(255, 255, 255);
|
||||
border-radius: 5;
|
||||
margin:1px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Cyclic</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_7">
|
||||
<property name="spacing">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>20</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_7">
|
||||
<item>
|
||||
<widget class="QSlider" name="ccpmCyclicScale">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="ccpmCyclicScaleBox">
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="ccpmPitchScalingBox">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>70</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QGroupBox::title {
|
||||
background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
|
||||
color: rgb(255, 255, 255);
|
||||
border-radius: 5;
|
||||
margin:1px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Pitch</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_13">
|
||||
<property name="spacing">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>20</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_12">
|
||||
<item>
|
||||
<widget class="QSlider" name="ccpmPitchScale">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="ccpmPitchScaleBox">
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="ccpmRollScalingBox">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>70</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QGroupBox::title {
|
||||
background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
|
||||
color: rgb(255, 255, 255);
|
||||
border-radius: 5;
|
||||
margin:1px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Roll</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_10">
|
||||
<property name="spacing">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>20</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_8">
|
||||
<item>
|
||||
<widget class="QSlider" name="ccpmRollScale">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="ccpmRollScaleBox">
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<layout class="QVBoxLayout" name="ccpmSettingsBox" stretch="0,1,1,0">
|
||||
<item>
|
||||
<widget class="QGroupBox" name="SwashplateBox_2">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Motor outputs</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="flat">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_18">
|
||||
<property name="horizontalSpacing">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>2</number>
|
||||
<property name="topMargin">
|
||||
<number>30</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="2" column="1">
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="1" column="1">
|
||||
<widget class="QComboBox" name="ccpmTailChannel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
|
||||
@ -171,12 +1105,12 @@ QGroupBox::title {
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>100</width>
|
||||
<height>16777215</height>
|
||||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<item row="0" column="1">
|
||||
<widget class="QComboBox" name="ccpmEngineChannel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
|
||||
@ -193,12 +1127,12 @@ QGroupBox::title {
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>100</width>
|
||||
<height>16777215</height>
|
||||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="ccpmTailLabel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
|
||||
@ -223,7 +1157,7 @@ QGroupBox::title {
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="ccpmEngineLabel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
|
||||
@ -248,36 +1182,26 @@ QGroupBox::title {
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<spacer name="verticalSpacer_5">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="SwashplateBox">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Maximum">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
<verstretch>12</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>190</width>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
@ -285,16 +1209,22 @@ QGroupBox::title {
|
||||
<string>Swashplate outputs</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_19">
|
||||
<property name="horizontalSpacing">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>2</number>
|
||||
<property name="topMargin">
|
||||
<number>30</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="1" column="0">
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="ccpmServoWLabel">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
@ -322,7 +1252,7 @@ QGroupBox::title {
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<item row="0" column="1">
|
||||
<widget class="QComboBox" name="ccpmServoWChannel">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
@ -342,12 +1272,12 @@ QGroupBox::title {
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>100</width>
|
||||
<height>16777215</height>
|
||||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<item row="1" column="1">
|
||||
<widget class="QComboBox" name="ccpmServoXChannel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
@ -364,12 +1294,12 @@ QGroupBox::title {
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>100</width>
|
||||
<height>16777215</height>
|
||||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<item row="3" column="1">
|
||||
<widget class="QComboBox" name="ccpmServoYChannel">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
@ -389,12 +1319,12 @@ QGroupBox::title {
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>100</width>
|
||||
<height>16777215</height>
|
||||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="ccpmServoXLabel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
|
||||
@ -419,7 +1349,7 @@ QGroupBox::title {
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="1">
|
||||
<item row="5" column="1">
|
||||
<widget class="QComboBox" name="ccpmSingleServo">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
|
||||
@ -461,7 +1391,7 @@ QGroupBox::title {
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="0">
|
||||
<item row="5" column="0">
|
||||
<widget class="QLabel" name="ccpmServoZLabel_3">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
|
||||
@ -486,7 +1416,7 @@ QGroupBox::title {
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="1">
|
||||
<item row="4" column="1">
|
||||
<widget class="QComboBox" name="ccpmServoZChannel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
@ -503,12 +1433,12 @@ QGroupBox::title {
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>100</width>
|
||||
<height>16777215</height>
|
||||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="0">
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="ccpmServoZLabel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
|
||||
@ -533,7 +1463,7 @@ QGroupBox::title {
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="ccpmServoYLabel">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
@ -561,117 +1491,51 @@ QGroupBox::title {
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<spacer name="verticalSpacer_6">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="SwashplateBox_3">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Maximum">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>70</width>
|
||||
<width>200</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>190</width>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Swashplate Servo Angles</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_20">
|
||||
<property name="horizontalSpacing">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>2</number>
|
||||
<property name="topMargin">
|
||||
<number>30</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="1" column="1">
|
||||
<widget class="QDoubleSpinBox" name="ccpmAngleW">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="decimals">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>360.000000000000000</double>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<double>15.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="ccpmServoWLabel_2">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>80</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>80</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Angle W</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="ccpmServoXLabel_2">
|
||||
<property name="sizePolicy">
|
||||
@ -798,7 +1662,7 @@ QGroupBox::title {
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>16777215</height>
|
||||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="decimals">
|
||||
@ -832,7 +1696,7 @@ QGroupBox::title {
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>16777215</height>
|
||||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="decimals">
|
||||
@ -863,7 +1727,7 @@ QGroupBox::title {
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>16777215</height>
|
||||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="decimals">
|
||||
@ -894,7 +1758,7 @@ QGroupBox::title {
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>16777215</height>
|
||||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="decimals">
|
||||
@ -908,21 +1772,64 @@ QGroupBox::title {
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<spacer name="verticalSpacer_7">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="ccpmServoWLabel_2">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
<width>80</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>80</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Angle W</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QDoubleSpinBox" name="ccpmAngleW">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>25</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="decimals">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<double>360.000000000000000</double>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<double>15.000000000000000</double>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
@ -930,14 +1837,20 @@ QGroupBox::title {
|
||||
<item>
|
||||
<widget class="QGroupBox" name="SwashplateBox_4">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Maximum">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>190</width>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
@ -945,23 +1858,29 @@ QGroupBox::title {
|
||||
<string>CCPM Options</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_21">
|
||||
<property name="horizontalSpacing">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>2</number>
|
||||
<property name="topMargin">
|
||||
<number>30</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="2" column="0">
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="1" column="0">
|
||||
<widget class="QCheckBox" name="ccpmCollectivePassthrough">
|
||||
<property name="text">
|
||||
<string>Collective Pass through</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<item row="3" column="0">
|
||||
<widget class="QCheckBox" name="ccpmLinkRoll">
|
||||
<property name="text">
|
||||
<string>Link Roll/Pitch</string>
|
||||
@ -971,7 +1890,7 @@ QGroupBox::title {
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<item row="2" column="0">
|
||||
<widget class="QCheckBox" name="ccpmLinkCyclic">
|
||||
<property name="text">
|
||||
<string>Link Cyclic/Collective</string>
|
||||
@ -981,895 +1900,6 @@ QGroupBox::title {
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<spacer name="verticalSpacer_8">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="0" column="10">
|
||||
<layout class="QVBoxLayout" name="ccpmSwashImageBox_2">
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="ccpmSwashImageBox">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<horstretch>1</horstretch>
|
||||
<verstretch>1</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>600</width>
|
||||
<height>600</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="sizeIncrement">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>10</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<italic>false</italic>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Swashplate Layout</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignHCenter|Qt::AlignTop</set>
|
||||
</property>
|
||||
<property name="flat">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_10">
|
||||
<property name="horizontalSpacing">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="1" column="0">
|
||||
<widget class="QSplitter" name="splitter_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<widget class="QGraphicsView" name="SwashplateImage">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>1</horstretch>
|
||||
<verstretch>1</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>10</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>1000</width>
|
||||
<height>1000</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="sizeIncrement">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>10</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::Box</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Plain</enum>
|
||||
</property>
|
||||
<property name="lineWidth">
|
||||
<number>1</number>
|
||||
</property>
|
||||
<property name="verticalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="backgroundBrush">
|
||||
<brush brushstyle="DiagCrossPattern">
|
||||
<color alpha="50">
|
||||
<red>112</red>
|
||||
<green>184</green>
|
||||
<blue>138</blue>
|
||||
</color>
|
||||
</brush>
|
||||
</property>
|
||||
<property name="foregroundBrush">
|
||||
<brush brushstyle="SolidPattern">
|
||||
<color alpha="0">
|
||||
<red>127</red>
|
||||
<green>127</green>
|
||||
<blue>127</blue>
|
||||
</color>
|
||||
</brush>
|
||||
</property>
|
||||
<property name="sceneRect">
|
||||
<rectf>
|
||||
<x>0.000000000000000</x>
|
||||
<y>0.000000000000000</y>
|
||||
<width>400.000000000000000</width>
|
||||
<height>400.000000000000000</height>
|
||||
</rectf>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
<property name="resizeAnchor">
|
||||
<enum>QGraphicsView::AnchorViewCenter</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<spacer name="verticalSpacer_9">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="0" column="3">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_10">
|
||||
<property name="sizeConstraint">
|
||||
<enum>QLayout::SetNoConstraint</enum>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="ccpmRevoMixingBox">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>50</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>50</width>
|
||||
<height>600</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QGroupBox::title {
|
||||
background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
|
||||
color: rgb(255, 255, 255);
|
||||
border-radius: 5;
|
||||
margin:1px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>REVO</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_14">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>7</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>100%</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<item>
|
||||
<widget class="QSlider" name="ccpmRevoSlider">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_13">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>7</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>0%</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="ccpmREVOspinBox"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="ccpmPitchMixingBox">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>50</width>
|
||||
<height>600</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QGroupBox::title {
|
||||
background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
|
||||
color: rgb(255, 255, 255);
|
||||
border-radius: 5;
|
||||
margin:1px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>CCPM</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_4">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_15">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>7</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Collective</string>
|
||||
</property>
|
||||
<property name="scaledContents">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QSlider" name="ccpmCollectiveSlider">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_16">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>7</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Cyclic</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="ccpmCollectivespinBox">
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="ccpmCollectiveScalingBox">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>70</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>50</width>
|
||||
<height>600</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QGroupBox::title {
|
||||
background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
|
||||
color: rgb(255, 255, 255);
|
||||
border-radius: 5;
|
||||
margin:1px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Collective</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_12">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_11">
|
||||
<item>
|
||||
<widget class="QSlider" name="ccpmCollectiveScale">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="ccpmCollectiveScaleBox">
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="ccpmCyclicScalingBox">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>50</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>50</width>
|
||||
<height>600</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QGroupBox::title {
|
||||
background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
|
||||
color: rgb(255, 255, 255);
|
||||
border-radius: 5;
|
||||
margin:1px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Cyclic</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_7">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_7">
|
||||
<item>
|
||||
<widget class="QSlider" name="ccpmCyclicScale">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="ccpmCyclicScaleBox">
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="ccpmPitchScalingBox">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>50</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>50</width>
|
||||
<height>600</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QGroupBox::title {
|
||||
background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
|
||||
color: rgb(255, 255, 255);
|
||||
border-radius: 5;
|
||||
margin:1px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Pitch</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_13">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_12">
|
||||
<item>
|
||||
<widget class="QSlider" name="ccpmPitchScale">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="ccpmPitchScaleBox">
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="ccpmRollScalingBox">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>50</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>50</width>
|
||||
<height>600</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>9</pointsize>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QGroupBox::title {
|
||||
background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
|
||||
color: rgb(255, 255, 255);
|
||||
border-radius: 5;
|
||||
margin:1px;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Roll</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_10">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_8">
|
||||
<item>
|
||||
<widget class="QSlider" name="ccpmRollScale">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="ccpmRollScaleBox">
|
||||
<property name="maximum">
|
||||
<number>100</number>
|
||||
</property>
|
||||
<property name="singleStep">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>50</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
@ -1882,7 +1912,16 @@ margin:1px;
|
||||
<string>Swashplate Levelling</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout_8">
|
||||
<property name="margin">
|
||||
<property name="leftMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
@ -1890,13 +1929,16 @@ margin:1px;
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_8">
|
||||
<property name="spacing">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="SwashLvlInstructionsBox">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Maximum">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
@ -1904,43 +1946,70 @@ margin:1px;
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>228</width>
|
||||
<height>0</height>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Commands</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<property name="margin">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_16">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_9">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>30</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QPushButton" name="SwashLvlPrevButton">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Prev</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="SwashLvlStartButton">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>0</height>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
@ -1962,7 +2031,7 @@ margin:1px;
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>0</height>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
@ -1980,18 +2049,27 @@ margin:1px;
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTextEdit" name="SwashLvlStepInstruction">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>150</height>
|
||||
<width>250</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>220</width>
|
||||
<height>450</height>
|
||||
<width>500</width>
|
||||
<height>800</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QTextEdit { padding-left:4; padding-top:4; padding-bottom:4; padding-right:4}</string>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
@ -2002,37 +2080,21 @@ margin:1px;
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout_3">
|
||||
<item row="0" column="0">
|
||||
<widget class="QPushButton" name="SwashLvlCancelButton">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>170</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>170</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Cancel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<property name="topMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="2" column="0">
|
||||
<widget class="QPushButton" name="SwashLvlFinishButton">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>170</width>
|
||||
<height>0</height>
|
||||
<width>85</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
@ -2046,6 +2108,28 @@ margin:1px;
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QPushButton" name="SwashLvlCancelButton">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>85</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>170</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Cancel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
@ -2054,7 +2138,7 @@ margin:1px;
|
||||
<item>
|
||||
<widget class="QGroupBox" name="SwashLvlStatusBox">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Maximum">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
@ -2062,36 +2146,78 @@ margin:1px;
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>0</height>
|
||||
<height>130</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Status</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_22">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>30</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="horizontalSpacing">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="1" column="0">
|
||||
<item row="0" column="0">
|
||||
<widget class="QListWidget" name="SwashLvlStepList">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>220</width>
|
||||
<width>100</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>190</width>
|
||||
<height>125</height>
|
||||
<width>100</width>
|
||||
<height>92</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="cursor" stdset="0">
|
||||
<cursorShape>ArrowCursor</cursorShape>
|
||||
</property>
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Sunken</enum>
|
||||
</property>
|
||||
<property name="lineWidth">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="midLineWidth">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="verticalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
||||
</property>
|
||||
<property name="autoScrollMargin">
|
||||
<number>16</number>
|
||||
</property>
|
||||
<property name="editTriggers">
|
||||
<set>QAbstractItemView::NoEditTriggers</set>
|
||||
</property>
|
||||
@ -2104,6 +2230,9 @@ margin:1px;
|
||||
<property name="selectionBehavior">
|
||||
<enum>QAbstractItemView::SelectRows</enum>
|
||||
</property>
|
||||
<property name="viewMode">
|
||||
<enum>QListView::ListMode</enum>
|
||||
</property>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Neutral</string>
|
||||
@ -2152,41 +2281,9 @@ margin:1px;
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<spacer name="verticalSpacer_19">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::MinimumExpanding</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
@ -2195,7 +2292,7 @@ margin:1px;
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
@ -2203,13 +2300,13 @@ margin:1px;
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>70</width>
|
||||
<height>100</height>
|
||||
<height>250</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>50</width>
|
||||
<height>600</height>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="title">
|
||||
@ -2220,27 +2317,20 @@ margin:1px;
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_5">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_18">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>30</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_17">
|
||||
<property name="enabled">
|
||||
@ -2338,7 +2428,7 @@ margin:1px;</string>
|
||||
<item row="0" column="2">
|
||||
<widget class="QGroupBox" name="SwashLvlccpmSwashImageBox">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
|
||||
<horstretch>1</horstretch>
|
||||
<verstretch>1</verstretch>
|
||||
</sizepolicy>
|
||||
@ -2346,13 +2436,13 @@ margin:1px;</string>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
<height>300</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>600</width>
|
||||
<height>600</height>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="sizeIncrement">
|
||||
@ -2380,13 +2470,22 @@ margin:1px;</string>
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_11">
|
||||
<property name="leftMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>30</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="horizontalSpacing">
|
||||
<number>3</number>
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="margin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="1" column="0">
|
||||
<item row="0" column="0">
|
||||
<widget class="QSplitter" name="splitter_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
@ -2400,8 +2499,8 @@ margin:1px;</string>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>10</width>
|
||||
<height>10</height>
|
||||
<width>250</width>
|
||||
<height>300</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
@ -2475,22 +2574,6 @@ margin:1px;</string>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<spacer name="verticalSpacer_17">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Fixed</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
@ -2501,7 +2584,16 @@ margin:1px;</string>
|
||||
<string>Curve settings</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout_7">
|
||||
<property name="margin">
|
||||
<property name="leftMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
@ -2554,7 +2646,16 @@ margin:1px;</string>
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<property name="margin">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
@ -2627,7 +2728,16 @@ margin:1px;</string>
|
||||
<string/>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_5">
|
||||
<property name="margin">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
@ -2695,7 +2805,16 @@ margin:1px;</string>
|
||||
<string>Advanced settings</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<property name="margin">
|
||||
<property name="leftMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
@ -3140,7 +3259,6 @@ margin:1px;</string>
|
||||
<tabstop>ccpmServoYChannel</tabstop>
|
||||
<tabstop>ccpmServoZChannel</tabstop>
|
||||
<tabstop>ccpmSingleServo</tabstop>
|
||||
<tabstop>ccpmAngleW</tabstop>
|
||||
<tabstop>ccpmAngleX</tabstop>
|
||||
<tabstop>ccpmAngleY</tabstop>
|
||||
<tabstop>ccpmAngleZ</tabstop>
|
||||
@ -3150,9 +3268,7 @@ margin:1px;</string>
|
||||
<tabstop>ccpmCollectiveSlider</tabstop>
|
||||
<tabstop>ccpmCollectivespinBox</tabstop>
|
||||
<tabstop>SwashplateImage</tabstop>
|
||||
<tabstop>SwashLvlStartButton</tabstop>
|
||||
<tabstop>SwashLvlNextButton</tabstop>
|
||||
<tabstop>SwashLvlStepInstruction</tabstop>
|
||||
<tabstop>SwashLvlCancelButton</tabstop>
|
||||
<tabstop>SwashLvlFinishButton</tabstop>
|
||||
<tabstop>SwashLvlStepList</tabstop>
|
||||
|
@ -40,8 +40,6 @@
|
||||
|
||||
#include <math.h>
|
||||
|
||||
#define Pi 3.14159265358979323846
|
||||
|
||||
QStringList ConfigCcpmWidget::getChannelDescriptions()
|
||||
{
|
||||
// init a channel_numelem list of channel desc defaults
|
||||
@ -181,16 +179,19 @@ ConfigCcpmWidget::ConfigCcpmWidget(QWidget *parent) :
|
||||
Servos[i] = new QGraphicsSvgItem();
|
||||
Servos[i]->setSharedRenderer(renderer);
|
||||
Servos[i]->setElementId(ServoNames.at(i));
|
||||
Servos[i]->setZValue(20);
|
||||
m_aircraft->SwashplateImage->scene()->addItem(Servos[i]);
|
||||
|
||||
ServosText[i] = new QGraphicsTextItem();
|
||||
ServosText[i]->setDefaultTextColor(Qt::yellow);
|
||||
ServosText[i]->setPlainText(QString("-"));
|
||||
ServosText[i]->setFont(serifFont);
|
||||
ServosText[i]->setZValue(31);
|
||||
|
||||
ServosTextCircles[i] = new QGraphicsEllipseItem(1, 1, 30, 30);
|
||||
ServosTextCircles[i]->setBrush(brush);
|
||||
ServosTextCircles[i]->setPen(pen2);
|
||||
ServosTextCircles[i]->setZValue(30);
|
||||
m_aircraft->SwashplateImage->scene()->addItem(ServosTextCircles[i]);
|
||||
m_aircraft->SwashplateImage->scene()->addItem(ServosText[i]);
|
||||
|
||||
@ -257,6 +258,7 @@ ConfigCcpmWidget::ConfigCcpmWidget(QWidget *parent) :
|
||||
|
||||
connect(m_aircraft->SwashLvlStartButton, SIGNAL(clicked()), this, SLOT(SwashLvlStartButtonPressed()));
|
||||
connect(m_aircraft->SwashLvlNextButton, SIGNAL(clicked()), this, SLOT(SwashLvlNextButtonPressed()));
|
||||
connect(m_aircraft->SwashLvlPrevButton, SIGNAL(clicked()), this, SLOT(SwashLvlPrevButtonPressed()));
|
||||
connect(m_aircraft->SwashLvlCancelButton, SIGNAL(clicked()), this, SLOT(SwashLvlCancelButtonPressed()));
|
||||
connect(m_aircraft->SwashLvlFinishButton, SIGNAL(clicked()), this, SLOT(SwashLvlFinishButtonPressed()));
|
||||
|
||||
@ -391,9 +393,13 @@ void ConfigCcpmWidget::UpdateType()
|
||||
TypeText = m_aircraft->ccpmType->currentText();
|
||||
SingleServoIndex = m_aircraft->ccpmSingleServo->currentIndex();
|
||||
|
||||
// set visibility of user settings
|
||||
// set visibility of user settings (When Custom)
|
||||
m_aircraft->ccpmAdvancedSettingsTable->setEnabled(TypeInt == 0);
|
||||
m_aircraft->ccpmAdvancedSettingsTable->clearFocus();
|
||||
|
||||
// Clear advanced settings table if not Custom selected (Keep previous settings)
|
||||
if (TypeText.compare(QString::fromUtf8("Custom - Advanced Settings"), Qt::CaseInsensitive) != 0) {
|
||||
m_aircraft->ccpmAdvancedSettingsTable->clearFocus();
|
||||
}
|
||||
|
||||
m_aircraft->ccpmAngleW->setEnabled(TypeInt == 1);
|
||||
m_aircraft->ccpmAngleX->setEnabled(TypeInt == 1);
|
||||
@ -552,15 +558,19 @@ void ConfigCcpmWidget::ccpmSwashplateRedraw()
|
||||
QRect size;
|
||||
double scale, xscale, yscale;
|
||||
|
||||
size = m_aircraft->SwashplateImage->rect();
|
||||
// If size = default, get size from other Img/tab
|
||||
if (size.width() == 100) {
|
||||
size = m_aircraft->SwashLvlSwashplateImage->rect();
|
||||
}
|
||||
|
||||
size = m_aircraft->SwashplateImage->rect();
|
||||
xscale = size.width();
|
||||
yscale = size.height();
|
||||
scale = xscale;
|
||||
if (yscale < scale) {
|
||||
scale = yscale;
|
||||
}
|
||||
scale /= 460.00;
|
||||
scale /= 540.00;
|
||||
m_aircraft->SwashplateImage->resetTransform();
|
||||
m_aircraft->SwashplateImage->scale(scale, scale);
|
||||
|
||||
@ -592,10 +602,10 @@ void ConfigCcpmWidget::ccpmSwashplateRedraw()
|
||||
used[1] = ((m_aircraft->ccpmServoXChannel->currentIndex() > 0) && (m_aircraft->ccpmServoXChannel->isEnabled()));
|
||||
used[2] = ((m_aircraft->ccpmServoYChannel->currentIndex() > 0) && (m_aircraft->ccpmServoYChannel->isEnabled()));
|
||||
used[3] = ((m_aircraft->ccpmServoZChannel->currentIndex() > 0) && (m_aircraft->ccpmServoZChannel->isEnabled()));
|
||||
angle[0] = (CorrectionAngle + 180 + m_aircraft->ccpmAngleW->value()) * Pi / 180.00;
|
||||
angle[1] = (CorrectionAngle + 180 + m_aircraft->ccpmAngleX->value()) * Pi / 180.00;
|
||||
angle[2] = (CorrectionAngle + 180 + m_aircraft->ccpmAngleY->value()) * Pi / 180.00;
|
||||
angle[3] = (CorrectionAngle + 180 + m_aircraft->ccpmAngleZ->value()) * Pi / 180.00;
|
||||
angle[0] = (CorrectionAngle + 180 + m_aircraft->ccpmAngleW->value()) * M_PI / 180.00;
|
||||
angle[1] = (CorrectionAngle + 180 + m_aircraft->ccpmAngleX->value()) * M_PI / 180.00;
|
||||
angle[2] = (CorrectionAngle + 180 + m_aircraft->ccpmAngleY->value()) * M_PI / 180.00;
|
||||
angle[3] = (CorrectionAngle + 180 + m_aircraft->ccpmAngleZ->value()) * M_PI / 180.00;
|
||||
|
||||
|
||||
for (i = 0; i < CCPM_MAX_SWASH_SERVOS; i++) {
|
||||
@ -640,16 +650,16 @@ void ConfigCcpmWidget::ccpmSwashplateRedraw()
|
||||
ServoLines[i]->setVisible(defined[i] != 0);
|
||||
}
|
||||
|
||||
// m_aircraft->SwashplateImage->centerOn (CenterX, CenterY);
|
||||
// m_aircraft->SwashplateImage->centerOn(CenterX, CenterY);
|
||||
|
||||
// m_aircraft->SwashplateImage->fitInView(SwashplateImg, Qt::KeepAspectRatio);
|
||||
}
|
||||
|
||||
void ConfigCcpmWidget::ccpmSwashplateUpdate()
|
||||
{
|
||||
ccpmSwashplateRedraw();
|
||||
SetUIComponentVisibilities();
|
||||
UpdateMixer();
|
||||
SetUIComponentVisibilities();
|
||||
ccpmSwashplateRedraw();
|
||||
}
|
||||
|
||||
void ConfigCcpmWidget::UpdateMixer()
|
||||
@ -685,8 +695,8 @@ void ConfigCcpmWidget::UpdateMixer()
|
||||
;
|
||||
}
|
||||
}
|
||||
|
||||
if (config.heli.SwashplateType > 0) { // not advanced settings
|
||||
int TypeInt = m_aircraft->ccpmType->count() - m_aircraft->ccpmType->currentIndex() - 1;
|
||||
if (TypeInt != 0) { // not advanced settings
|
||||
// get the channel data from the ui
|
||||
MixerChannelData[0] = m_aircraft->ccpmEngineChannel->currentIndex();
|
||||
MixerChannelData[1] = m_aircraft->ccpmTailChannel->currentIndex();
|
||||
@ -762,11 +772,11 @@ void ConfigCcpmWidget::UpdateMixer()
|
||||
table->item(i, 3)->setText(
|
||||
QString("%1").arg(
|
||||
(int)(127.0 * (RollConstant)
|
||||
* sin((180 + config.heli.CorrectionAngle + ThisAngle[i]) * Pi / 180.00)))); // Roll
|
||||
* sin((180 + config.heli.CorrectionAngle + ThisAngle[i]) * M_PI / 180.00)))); // Roll
|
||||
table->item(i, 4)->setText(
|
||||
QString("%1").arg(
|
||||
(int)(127.0 * (PitchConstant)
|
||||
* cos((config.heli.CorrectionAngle + ThisAngle[i]) * Pi / 180.00)))); // Pitch
|
||||
* cos((config.heli.CorrectionAngle + ThisAngle[i]) * M_PI / 180.00)))); // Pitch
|
||||
// Yaw
|
||||
table->item(i, 5)->setText(QString("%1").arg(0));
|
||||
}
|
||||
@ -779,10 +789,11 @@ void ConfigCcpmWidget::UpdateMixer()
|
||||
} else {
|
||||
// advanced settings
|
||||
QTableWidget *table = m_aircraft->ccpmAdvancedSettingsTable;
|
||||
|
||||
for (int i = 0; i < 6; i++) {
|
||||
Channel = table->item(i, 0)->text();
|
||||
if (Channel == "-") {
|
||||
Channel = QString("9");
|
||||
Channel = QString((int)ConfigCcpmWidget::CHANNEL_NUMELEM + 1);
|
||||
}
|
||||
MixerChannelData[i] = Channel.toInt();
|
||||
}
|
||||
@ -874,6 +885,15 @@ void ConfigCcpmWidget::SetUIComponentVisibilities()
|
||||
m_aircraft->ccpmRollScalingBox->setVisible(!m_aircraft->ccpmLinkRoll->isChecked());
|
||||
m_aircraft->ccpmLinkRoll->setVisible(1);
|
||||
}
|
||||
// clear status check boxes
|
||||
m_aircraft->SwashLvlStepList->item(0)->setCheckState(Qt::Unchecked);
|
||||
m_aircraft->SwashLvlStepList->item(1)->setCheckState(Qt::Unchecked);
|
||||
m_aircraft->SwashLvlStepList->item(2)->setCheckState(Qt::Unchecked);
|
||||
m_aircraft->SwashLvlStepList->item(3)->setCheckState(Qt::Unchecked);
|
||||
m_aircraft->SwashLvlStepList->item(0)->setBackground(Qt::transparent);
|
||||
m_aircraft->SwashLvlStepList->item(1)->setBackground(Qt::transparent);
|
||||
m_aircraft->SwashLvlStepList->item(2)->setBackground(Qt::transparent);
|
||||
m_aircraft->SwashLvlStepList->item(3)->setBackground(Qt::transparent);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -939,16 +959,20 @@ void ConfigCcpmWidget::setMixer()
|
||||
UpdateMixer();
|
||||
|
||||
// Set up some helper pointers
|
||||
qint8 *mixers[8] = { mixerSettingsData.Mixer1Vector,
|
||||
mixerSettingsData.Mixer2Vector,
|
||||
mixerSettingsData.Mixer3Vector,
|
||||
mixerSettingsData.Mixer4Vector,
|
||||
mixerSettingsData.Mixer5Vector,
|
||||
mixerSettingsData.Mixer6Vector,
|
||||
mixerSettingsData.Mixer7Vector,
|
||||
mixerSettingsData.Mixer8Vector };
|
||||
qint8 *mixers[12] = { mixerSettingsData.Mixer1Vector,
|
||||
mixerSettingsData.Mixer2Vector,
|
||||
mixerSettingsData.Mixer3Vector,
|
||||
mixerSettingsData.Mixer4Vector,
|
||||
mixerSettingsData.Mixer5Vector,
|
||||
mixerSettingsData.Mixer6Vector,
|
||||
mixerSettingsData.Mixer7Vector,
|
||||
mixerSettingsData.Mixer8Vector,
|
||||
mixerSettingsData.Mixer9Vector,
|
||||
mixerSettingsData.Mixer10Vector,
|
||||
mixerSettingsData.Mixer11Vector,
|
||||
mixerSettingsData.Mixer12Vector };
|
||||
|
||||
quint8 *mixerTypes[8] = {
|
||||
quint8 *mixerTypes[12] = {
|
||||
&mixerSettingsData.Mixer1Type,
|
||||
&mixerSettingsData.Mixer2Type,
|
||||
&mixerSettingsData.Mixer3Type,
|
||||
@ -956,17 +980,20 @@ void ConfigCcpmWidget::setMixer()
|
||||
&mixerSettingsData.Mixer5Type,
|
||||
&mixerSettingsData.Mixer6Type,
|
||||
&mixerSettingsData.Mixer7Type,
|
||||
&mixerSettingsData.Mixer8Type
|
||||
&mixerSettingsData.Mixer8Type,
|
||||
&mixerSettingsData.Mixer9Type,
|
||||
&mixerSettingsData.Mixer10Type,
|
||||
&mixerSettingsData.Mixer11Type,
|
||||
&mixerSettingsData.Mixer12Type
|
||||
};
|
||||
|
||||
// reset all to Disabled
|
||||
for (i = 0; i < 8; i++) {
|
||||
*mixerTypes[i] = 0;
|
||||
}
|
||||
|
||||
// go through the user data and update the mixer matrix
|
||||
for (i = 0; i < 6; i++) {
|
||||
if (MixerChannelData[i] > 0) {
|
||||
if ((MixerChannelData[i] > 0) && (MixerChannelData[i] < (int)ConfigCcpmWidget::CHANNEL_NUMELEM + 1)) {
|
||||
// Set the mixer type. If Coax, then first two are motors. Otherwise, only first is motor
|
||||
if (TypeText.compare(QString::fromUtf8("Coax 2 Servo 90º"), Qt::CaseInsensitive) == 0) {
|
||||
*(mixerTypes[MixerChannelData[i] - 1]) = i > 1 ?
|
||||
@ -977,7 +1004,6 @@ void ConfigCcpmWidget::setMixer()
|
||||
MixerSettings::MIXER1TYPE_SERVO :
|
||||
MixerSettings::MIXER1TYPE_MOTOR;
|
||||
}
|
||||
|
||||
// Configure the vector
|
||||
for (j = 0; j < 5; j++) {
|
||||
mixers[MixerChannelData[i] - 1][j] = m_aircraft->ccpmAdvancedSettingsTable->item(i, j + 1)->text().toInt();
|
||||
@ -1052,8 +1078,8 @@ void ConfigCcpmWidget::SwashLvlStartButtonPressed()
|
||||
QMessageBox msgBox;
|
||||
int i;
|
||||
|
||||
msgBox.setText("<h1>Swashplate Leveling Routine</h1>");
|
||||
msgBox.setInformativeText("<b>You are about to start the Swashplate levelling routine.</b><p>This process will start by downloading the current configuration from the GCS to the OP hardware and will adjust your configuration at various stages.<p>The final state of your system should match the current configuration in the GCS config gadget.<p>Please ensure all ccpm settings in the GCS are correct before continuing.<p>If this process is interrupted, then the state of your OP board may not match the GCS configuration.<p><i>After completing this process, please check all settings before attempting to fly.</i><p><font color=red><b>Please disconnect your motor to ensure it will not spin up.</b></font><p><hr><i>Do you wish to proceed?</i>");
|
||||
msgBox.setText(tr("<h1>Swashplate Leveling Routine</h1>"));
|
||||
msgBox.setInformativeText(tr("<b>You are about to start the Swashplate levelling routine.</b><p>This process will start by downloading the current configuration from the GCS to the OP hardware and will adjust your configuration at various stages.<p>The final state of your system should match the current configuration in the GCS config gadget.</p><p>Please ensure all ccpm settings in the GCS are correct before continuing.</p><p>If this process is interrupted, then the state of your OP board may not match the GCS configuration.</p><p><i>After completing this process, please check all settings before attempting to fly.</i></p><p><font color=red><b>Please disconnect your motor to ensure it will not spin up.</b></font><p><hr><i>Do you wish to proceed?</i></p>"));
|
||||
msgBox.setStandardButtons(QMessageBox::Yes | QMessageBox::Cancel);
|
||||
msgBox.setDefaultButton(QMessageBox::Cancel);
|
||||
msgBox.setIcon(QMessageBox::Information);
|
||||
@ -1075,6 +1101,7 @@ void ConfigCcpmWidget::SwashLvlStartButtonPressed()
|
||||
|
||||
m_aircraft->SwashLvlStartButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlNextButton->setEnabled(true);
|
||||
m_aircraft->SwashLvlPrevButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlCancelButton->setEnabled(true);
|
||||
m_aircraft->SwashLvlFinishButton->setEnabled(false);
|
||||
// clear status check boxes
|
||||
@ -1136,6 +1163,7 @@ void ConfigCcpmWidget::SwashLvlStartButtonPressed()
|
||||
|
||||
m_aircraft->SwashLvlStartButton->setEnabled(true);
|
||||
m_aircraft->SwashLvlNextButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlPrevButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlCancelButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlFinishButton->setEnabled(false);
|
||||
break;
|
||||
@ -1145,15 +1173,24 @@ void ConfigCcpmWidget::SwashLvlStartButtonPressed()
|
||||
}
|
||||
}
|
||||
|
||||
void ConfigCcpmWidget::SwashLvlPrevButtonPressed()
|
||||
{
|
||||
SwashLvlState--;
|
||||
SwashLvlPrevNextButtonPressed();
|
||||
}
|
||||
|
||||
void ConfigCcpmWidget::SwashLvlNextButtonPressed()
|
||||
{
|
||||
// ShowDisclaimer(2);
|
||||
SwashLvlState++;
|
||||
|
||||
SwashLvlPrevNextButtonPressed();
|
||||
}
|
||||
void ConfigCcpmWidget::SwashLvlPrevNextButtonPressed()
|
||||
{
|
||||
switch (SwashLvlState) {
|
||||
case 0:
|
||||
break;
|
||||
case 1: // Neutral levelling
|
||||
m_aircraft->SwashLvlPrevButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlStepList->setCurrentRow(0);
|
||||
// set spin boxes and swashplate servos to Neutral values
|
||||
setSwashplateLevel(50);
|
||||
@ -1170,9 +1207,10 @@ void ConfigCcpmWidget::SwashLvlNextButtonPressed()
|
||||
}
|
||||
// issue user instructions
|
||||
m_aircraft->SwashLvlStepInstruction->setHtml(
|
||||
"<h2>Neutral levelling</h2><p>Using adjustment of:<ul><li>servo horns<li>link lengths and<li>Neutral timing spinboxes to the right</ul><br>ensure that the swashplate is in the center of desired travel range and is level.");
|
||||
tr("<h2>Neutral levelling</h2><p>Using adjustment of:<ul><li>Servo horns,</li><li>Link lengths,</li><li>Neutral triming spinboxes to the right</li></ul><br>Ensure that the swashplate is in the center of desired travel range and is level."));
|
||||
break;
|
||||
case 2: // Max levelling
|
||||
m_aircraft->SwashLvlPrevButton->setEnabled(true);
|
||||
// check Neutral status as complete
|
||||
m_aircraft->SwashLvlStepList->item(0)->setCheckState(Qt::Checked);
|
||||
m_aircraft->SwashLvlStepList->setCurrentRow(1);
|
||||
@ -1183,7 +1221,7 @@ void ConfigCcpmWidget::SwashLvlNextButtonPressed()
|
||||
m_aircraft->SwashLvlPositionSpinBox->setValue(100);
|
||||
// issue user instructions
|
||||
m_aircraft->SwashLvlStepInstruction->setText(
|
||||
"<h2>Max levelling</h2><p>Using adjustment of:<ul><li>Max timing spinboxes to the right ONLY</ul><br>ensure that the swashplate is at the top of desired travel range and is level.");
|
||||
tr("<h2>Max levelling</h2><p>Using adjustment of:<ul><li>Max triming spinboxes to the right ONLY</li></ul><br>Ensure that the swashplate is at the top of desired travel range and is level."));
|
||||
break;
|
||||
case 3: // Min levelling
|
||||
// check Max status as complete
|
||||
@ -1196,10 +1234,11 @@ void ConfigCcpmWidget::SwashLvlNextButtonPressed()
|
||||
m_aircraft->SwashLvlPositionSpinBox->setValue(0);
|
||||
// issue user instructions
|
||||
m_aircraft->SwashLvlStepInstruction->setText(
|
||||
"<h2>Min levelling</h2><p>Using adjustment of:<ul><li>Min timing spinboxes to the right ONLY</ul><br>ensure that the swashplate is at the bottom of desired travel range and is level.");
|
||||
tr("<h2>Min levelling</h2><p>Using adjustment of:<ul><li>Min triming spinboxes to the right ONLY</li></ul><br>Ensure that the swashplate is at the bottom of desired travel range and is level."));
|
||||
break;
|
||||
case 4: // levelling verification
|
||||
// check Min status as complete
|
||||
m_aircraft->SwashLvlNextButton->setEnabled(true);
|
||||
m_aircraft->SwashLvlStepList->item(2)->setCheckState(Qt::Checked);
|
||||
m_aircraft->SwashLvlStepList->setCurrentRow(3);
|
||||
// enable position slider
|
||||
@ -1214,14 +1253,14 @@ void ConfigCcpmWidget::SwashLvlNextButtonPressed()
|
||||
|
||||
// issue user instructions
|
||||
m_aircraft->SwashLvlStepInstruction->setText(
|
||||
"<h2>levelling verification</h2><p>Adjust the slider to the right over it's full range and observe the swashplate motion. It should remain level over the entire range of travel.");
|
||||
tr("<h2>Levelling verification</h2><p>Adjust the slider to the right over it's full range and observe the swashplate motion. It should remain level over the entire range of travel.</p>"));
|
||||
break;
|
||||
case 5: // levelling complete
|
||||
// check verify status as complete
|
||||
m_aircraft->SwashLvlStepList->item(3)->setCheckState(Qt::Checked);
|
||||
// issue user instructions
|
||||
m_aircraft->SwashLvlStepInstruction->setText(
|
||||
"<h2>levelling complete</h2><p>Press the Finish button to save these settings to the SD card<p>Press the cancel button to return to the pre-levelling settings");
|
||||
tr("<h2>Levelling complete</h2><p>Press the Finish button to save these settings to the SD card</p><p>Press the cancel button to return to the pre-levelling settings</p>"));
|
||||
// disable position slider
|
||||
m_aircraft->SwashLvlPositionSlider->setEnabled(false);
|
||||
m_aircraft->SwashLvlPositionSpinBox->setEnabled(false);
|
||||
@ -1233,6 +1272,7 @@ void ConfigCcpmWidget::SwashLvlNextButtonPressed()
|
||||
|
||||
m_aircraft->SwashLvlStartButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlNextButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlPrevButton->setEnabled(true);
|
||||
m_aircraft->SwashLvlCancelButton->setEnabled(true);
|
||||
m_aircraft->SwashLvlFinishButton->setEnabled(true);
|
||||
|
||||
@ -1256,6 +1296,7 @@ void ConfigCcpmWidget::SwashLvlCancelButtonPressed()
|
||||
|
||||
m_aircraft->SwashLvlStartButton->setEnabled(true);
|
||||
m_aircraft->SwashLvlNextButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlPrevButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlCancelButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlFinishButton->setEnabled(false);
|
||||
|
||||
@ -1287,7 +1328,9 @@ void ConfigCcpmWidget::SwashLvlCancelButtonPressed()
|
||||
enableSwashplateLevellingControl(false);
|
||||
|
||||
m_aircraft->SwashLvlStepInstruction->setText(
|
||||
"<h2>Levelling Cancelled</h2><p>Previous settings have been restored.");
|
||||
tr("<h2>Levelling Cancelled</h2><p>Previous settings have been restored."));
|
||||
|
||||
ccpmSwashplateUpdate();
|
||||
}
|
||||
|
||||
|
||||
@ -1299,6 +1342,7 @@ void ConfigCcpmWidget::SwashLvlFinishButtonPressed()
|
||||
|
||||
m_aircraft->SwashLvlStartButton->setEnabled(true);
|
||||
m_aircraft->SwashLvlNextButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlPrevButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlCancelButton->setEnabled(false);
|
||||
m_aircraft->SwashLvlFinishButton->setEnabled(false);
|
||||
|
||||
@ -1327,23 +1371,25 @@ void ConfigCcpmWidget::SwashLvlFinishButtonPressed()
|
||||
enableSwashplateLevellingControl(false);
|
||||
|
||||
m_aircraft->SwashLvlStepInstruction->setText(
|
||||
"<h2>Levelling Completed</h2><p>New settings have been saved to the SD card");
|
||||
tr("<h2>Levelling Completed</h2><p>New settings have been saved to the SD card"));
|
||||
|
||||
ShowDisclaimer(0);
|
||||
// ShowDisclaimer(2);
|
||||
|
||||
ccpmSwashplateUpdate();
|
||||
}
|
||||
|
||||
int ConfigCcpmWidget::ShowDisclaimer(int messageID)
|
||||
{
|
||||
QMessageBox msgBox;
|
||||
|
||||
msgBox.setText("<font color=red><h1>Warning!!!</h2></font>");
|
||||
msgBox.setText(tr("<font color=red><h1>Warning!!!</h2></font>"));
|
||||
int ret;
|
||||
switch (messageID) {
|
||||
case 0:
|
||||
// Basic disclaimer
|
||||
msgBox.setInformativeText(
|
||||
"<h2>This code has many configurations.</h2><p>Please double check all settings before attempting flight!");
|
||||
tr("<h2>This code has many configurations.</h2><p>Please double check all settings before attempting flight!"));
|
||||
msgBox.setStandardButtons(QMessageBox::Ok);
|
||||
msgBox.setDefaultButton(QMessageBox::Ok);
|
||||
msgBox.setIcon(QMessageBox::Information);
|
||||
@ -1354,7 +1400,7 @@ int ConfigCcpmWidget::ShowDisclaimer(int messageID)
|
||||
case 1:
|
||||
// Not Tested disclaimer
|
||||
msgBox.setInformativeText(
|
||||
"<h2>The CCPM mixer code needs more testing!</h2><p><font color=red>Use it at your own risk!</font><p>Do you wish to continue?");
|
||||
tr("<h2>The CCPM mixer code needs more testing!</h2><p><font color=red>Use it at your own risk!</font><p>Do you wish to continue?"));
|
||||
msgBox.setStandardButtons(QMessageBox::Yes | QMessageBox::Cancel);
|
||||
msgBox.setDefaultButton(QMessageBox::Cancel);
|
||||
msgBox.setIcon(QMessageBox::Warning);
|
||||
@ -1370,7 +1416,7 @@ int ConfigCcpmWidget::ShowDisclaimer(int messageID)
|
||||
case 2:
|
||||
// DO NOT use
|
||||
msgBox.setInformativeText(
|
||||
"<h2>The CCPM swashplate levelling code is NOT complete!</h2><p><font color=red>DO NOT use it for flight!</font>");
|
||||
tr("<h2>The CCPM swashplate levelling code is NOT complete!</h2><p><font color=red>DO NOT use it for flight!</font>"));
|
||||
msgBox.setStandardButtons(QMessageBox::Ok);
|
||||
msgBox.setDefaultButton(QMessageBox::Ok);
|
||||
msgBox.setIcon(QMessageBox::Critical);
|
||||
|
@ -120,7 +120,9 @@ private slots:
|
||||
void UpdateType();
|
||||
|
||||
void SwashLvlStartButtonPressed();
|
||||
void SwashLvlPrevButtonPressed();
|
||||
void SwashLvlNextButtonPressed();
|
||||
void SwashLvlPrevNextButtonPressed();
|
||||
void SwashLvlCancelButtonPressed();
|
||||
void SwashLvlFinishButtonPressed();
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
||||
height="400"
|
||||
id="svg2816"
|
||||
version="1.1"
|
||||
inkscape:version="0.47 r22583"
|
||||
inkscape:version="0.48.5 r10040"
|
||||
sodipodi:docname="ccpm_setup.svg">
|
||||
<defs
|
||||
id="defs2818">
|
||||
@ -24,28 +24,55 @@
|
||||
inkscape:vp_z="400 : 200 : 1"
|
||||
inkscape:persp3d-origin="200 : 133.33333 : 1"
|
||||
id="perspective2854" />
|
||||
<filter
|
||||
inkscape:collect="always"
|
||||
id="filter4111">
|
||||
<feGaussianBlur
|
||||
inkscape:collect="always"
|
||||
stdDeviation="2.4480407"
|
||||
id="feGaussianBlur4113" />
|
||||
</filter>
|
||||
<filter
|
||||
inkscape:collect="always"
|
||||
id="filter4149">
|
||||
<feGaussianBlur
|
||||
inkscape:collect="always"
|
||||
stdDeviation="1.990099"
|
||||
id="feGaussianBlur4151" />
|
||||
</filter>
|
||||
<filter
|
||||
color-interpolation-filters="sRGB"
|
||||
inkscape:collect="always"
|
||||
id="filter4149-5">
|
||||
<feGaussianBlur
|
||||
inkscape:collect="always"
|
||||
stdDeviation="1.990099"
|
||||
id="feGaussianBlur4151-9" />
|
||||
</filter>
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#000000"
|
||||
pagecolor="#edebe7"
|
||||
bordercolor="#000000"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="1.0"
|
||||
inkscape:pageopacity="1"
|
||||
inkscape:pageshadow="0"
|
||||
inkscape:zoom="1.8725"
|
||||
inkscape:cx="121.49533"
|
||||
inkscape:cy="328.17089"
|
||||
inkscape:zoom="0.93625"
|
||||
inkscape:cx="329.50243"
|
||||
inkscape:cy="22.483153"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer3"
|
||||
inkscape:current-layer="g4008"
|
||||
id="namedview2820"
|
||||
showgrid="false"
|
||||
showguides="true"
|
||||
showguides="false"
|
||||
inkscape:snap-global="true"
|
||||
inkscape:window-width="1680"
|
||||
inkscape:window-height="994"
|
||||
inkscape:window-x="-4"
|
||||
inkscape:window-y="-4"
|
||||
inkscape:window-width="1280"
|
||||
inkscape:window-height="928"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="27"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:guide-bbox="true">
|
||||
inkscape:guide-bbox="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:snap-bbox-midpoints="true">
|
||||
<sodipodi:guide
|
||||
position="0,0"
|
||||
orientation="0,744.09448"
|
||||
@ -94,7 +121,7 @@
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
@ -115,28 +142,31 @@
|
||||
<g
|
||||
id="g4008">
|
||||
<path
|
||||
transform="matrix(0.99009901,0,0,0.99009901,-198.0198,201.9802)"
|
||||
sodipodi:type="arc"
|
||||
style="fill:#00003d;fill-opacity:1;stroke:#0000ff;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
id="Ring"
|
||||
sodipodi:cx="200"
|
||||
sodipodi:cy="200"
|
||||
sodipodi:rx="200"
|
||||
sodipodi:ry="200"
|
||||
d="m 400,200 a 200,200 0 1 1 -400,0 200,200 0 1 1 400,0 z"
|
||||
inkscape:label="#path2847" />
|
||||
id="path4127"
|
||||
d="M 199.0099,400 C 199.0099,509.91014 109.91014,599.0099 4e-6,599.0099 C -109.91013,599.0099 -199.0099,509.91014 -199.0099,400 C -199.0099,290.08987 -109.91013,200.9901 4e-6,200.9901 C 109.91014,200.9901 199.0099,290.08987 199.0099,400 z"
|
||||
style="fill:#515455;fill-opacity:1;stroke:#515455;stroke-width:3.98019790999999978;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.58823532;display:inline;filter:url(#filter4149-5)"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(1.0083769,0,0,1.0083769,2.0000001e-6,-3.35076)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="color:#000000;fill:#9796ab;fill-opacity:0.80813958;fill-rule:evenodd;stroke:#b5b5bb;stroke-width:2.37170815;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
style="fill:#2f82f4;fill-opacity:1;stroke:#0000ff;stroke-width:3.96039605;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;display:inline"
|
||||
d="M 198.01981,400 C 198.01981,509.36332 109.36332,598.0198 0,598.0198 C -109.36332,598.0198 -198.0198,509.36332 -198.0198,400 C -198.0198,290.63669 -109.36332,201.9802 0,201.9802 C 109.36332,201.9802 198.01981,290.63669 198.01981,400 z"
|
||||
id="Ring"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4089"
|
||||
d="M 40.80068,400 C 40.80068,422.53358 22.533588,440.80068 3.7923656e-6,440.80068 C -22.533599,440.80068 -40.800676,422.53358 -40.800676,400 C -40.800676,377.4664 -22.533599,359.19932 3.7923656e-6,359.19932 C 22.533588,359.19932 40.80068,377.4664 40.80068,400 z"
|
||||
style="color:#000000;fill:#515455;fill-opacity:1;fill-rule:nonzero;stroke:#515455;stroke-width:5.37709665;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4111);enable-background:accumulate"
|
||||
transform="matrix(1.0128731,0,0,1.0128731,-2.5746203e-8,-5.149238)" />
|
||||
<path
|
||||
style="color:#000000;fill:#9796ab;fill-opacity:0.80784314;fill-rule:nonzero;stroke:#b5b5bb;stroke-width:5.37709665;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 40.800678,400 C 40.800678,422.53358 22.53359,440.80068 6e-6,440.80068 C -22.533597,440.80068 -40.800674,422.53358 -40.800674,400 C -40.800674,377.4664 -22.533597,359.19932 6e-6,359.19932 C 22.53359,359.19932 40.800678,377.4664 40.800678,400 z"
|
||||
id="Rotor"
|
||||
sodipodi:cx="220"
|
||||
sodipodi:cy="207.5"
|
||||
sodipodi:rx="45"
|
||||
sodipodi:ry="12.5"
|
||||
d="m 265,207.5 a 45,12.5 0 1 1 -90,0 45,12.5 0 1 1 90,0 z"
|
||||
transform="matrix(0.52910053,0,0,1.9047619,-116.40212,4.7619059)"
|
||||
inkscape:label="#path3622" />
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
id="g4119"
|
||||
transform="translate(366.35514,38.451268)" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
@ -255,12 +285,15 @@
|
||||
x="158"
|
||||
sodipodi:role="line" /></text>
|
||||
<path
|
||||
style="fill:#ff6e00;stroke:#ff6e00;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1"
|
||||
d="M 185.60761,186.1126 150.1962,151.94369"
|
||||
style="fill:#ff6e00;fill-opacity:1;stroke:#ff6e00;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 185.60761,186.1126 L 150.1962,151.94369"
|
||||
id="RadialZ"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#path3622"
|
||||
inkscape:connection-end="#path3957"
|
||||
inkscape:label="#path3981" />
|
||||
inkscape:label="#path3981"
|
||||
inkscape:connection-start-point="d4"
|
||||
inkscape:connection-end-point="d4"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 12 KiB |
@ -167,7 +167,8 @@ void ConnectionDiagram::setupGraphicsScene()
|
||||
case VehicleConfigurationSource::CONTROLLER_CC:
|
||||
case VehicleConfigurationSource::CONTROLLER_CC3D:
|
||||
prefix = "cc-";
|
||||
if (m_configSource->getEscType() == VehicleConfigurationSource::ESC_ONESHOT) {
|
||||
if (m_configSource->getEscType() == VehicleConfigurationSource::ESC_ONESHOT ||
|
||||
m_configSource->getEscType() == VehicleConfigurationSource::ESC_RAPID) {
|
||||
suffix = "-oneshot";
|
||||
}
|
||||
break;
|
||||
|
@ -169,15 +169,11 @@ bool AirframeInitialTuningPage::airframeIsCompatible(int vehicleType, int vehicl
|
||||
}
|
||||
}
|
||||
|
||||
void AirframeInitialTuningPage::loadValidFiles()
|
||||
void AirframeInitialTuningPage::loadFilesInDir(QString templateBasePath)
|
||||
{
|
||||
ui->templateList->clear();
|
||||
foreach(QJsonObject * templ, m_templates.values()) {
|
||||
delete templ;
|
||||
}
|
||||
m_templates.clear();
|
||||
QDir templateDir(templateBasePath);
|
||||
|
||||
QDir templateDir(QString("%1/%2/").arg(Utils::PathUtils().InsertDataPath("%%DATAPATH%%cloudconfig")).arg(m_dir));
|
||||
qDebug() << "Loading templates from base path:" << templateBasePath;
|
||||
QStringList names;
|
||||
names << "*.optmpl";
|
||||
templateDir.setNameFilters(names);
|
||||
@ -207,6 +203,18 @@ void AirframeInitialTuningPage::loadValidFiles()
|
||||
}
|
||||
}
|
||||
|
||||
void AirframeInitialTuningPage::loadValidFiles()
|
||||
{
|
||||
ui->templateList->clear();
|
||||
foreach(QJsonObject * templ, m_templates.values()) {
|
||||
delete templ;
|
||||
}
|
||||
m_templates.clear();
|
||||
|
||||
loadFilesInDir(QString("%1/%2/").arg(Utils::PathUtils().InsertDataPath("%%DATAPATH%%cloudconfig")).arg(m_dir));
|
||||
loadFilesInDir(QString("%1/%2/").arg(Utils::PathUtils().InsertStoragePath("%%STOREPATH%%cloudconfig")).arg(m_dir));
|
||||
}
|
||||
|
||||
void AirframeInitialTuningPage::setupTemplateList()
|
||||
{
|
||||
QListWidgetItem *item;
|
||||
|
@ -44,7 +44,6 @@ public:
|
||||
void initializePage();
|
||||
bool validatePage();
|
||||
bool isComplete() const;
|
||||
|
||||
public slots:
|
||||
void templateSelectionChanged();
|
||||
|
||||
@ -59,6 +58,7 @@ private:
|
||||
QGraphicsPixmapItem *m_photoItem;
|
||||
|
||||
void loadValidFiles();
|
||||
void loadFilesInDir(QString templateBasePath);
|
||||
void setupTemplateList();
|
||||
QString getTemplateKey(QJsonObject *templ);
|
||||
void updatePhoto(QJsonObject *templ);
|
||||
|
@ -80,6 +80,10 @@ void SavePage::writeToController()
|
||||
enableButtons(true);
|
||||
|
||||
emit completeChanged();
|
||||
|
||||
if (m_successfulWrite) {
|
||||
getWizard()->next();
|
||||
}
|
||||
}
|
||||
|
||||
void SavePage::enableButtons(bool enable)
|
||||
|
@ -30,13 +30,13 @@
|
||||
inkscape:window-height="928"
|
||||
id="namedview4616"
|
||||
showgrid="false"
|
||||
inkscape:zoom="1.9844144"
|
||||
inkscape:cx="236.10597"
|
||||
inkscape:cy="505.93946"
|
||||
inkscape:zoom="0.70159644"
|
||||
inkscape:cx="305.10274"
|
||||
inkscape:cy="632.28327"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="27"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer12"
|
||||
inkscape:current-layer="layer17"
|
||||
fit-margin-top="15"
|
||||
fit-margin-left="15"
|
||||
fit-margin-right="15"
|
||||
@ -18146,7 +18146,7 @@
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
style="display:inline"
|
||||
id="sbus"
|
||||
id="revo-sbus"
|
||||
transform="matrix(0.4,0,0,0.4,53.475,-98.70912)">
|
||||
<path
|
||||
id="path9857-8-5-2"
|
||||
@ -18221,47 +18221,46 @@
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
sodipodi:insensitive="true"
|
||||
style="display:none"
|
||||
inkscape:label="revo-satellite"
|
||||
id="g11310"
|
||||
inkscape:groupmode="layer">
|
||||
<g
|
||||
transform="matrix(0.4,0,0,0.4,-131.04473,-97.93132)"
|
||||
id="g11312">
|
||||
id="revo-satellite">
|
||||
<path
|
||||
style="fill:none;stroke:#777777;stroke-width:14.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
inkscape:connector-curvature="0"
|
||||
stroke-miterlimit="4"
|
||||
d="m 1250,1530 c -64.9,-5.97 -121,14.3 -171,40.7"
|
||||
d="M 1250,1530 C 1185.1,1524.03 1129,1544.3 1079,1570.7"
|
||||
id="path11315" />
|
||||
<path
|
||||
style="fill:none;stroke:#777777;stroke-width:14.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
inkscape:connector-curvature="0"
|
||||
stroke-miterlimit="4"
|
||||
d="m 1490,1530 c 50.3,-1.09 115,5.3 155,36.6"
|
||||
d="M 1490,1530 C 1540.3,1528.91 1605,1535.3 1645,1566.6"
|
||||
id="path11317" />
|
||||
<path
|
||||
id="path11319"
|
||||
d="m 1371.2889,1318.8556 0,-124.7594 225,0 0,-141.368"
|
||||
d="M 1371.2889,1318.8556 L 1371.2889,1194.0962 L 1596.2889,1194.0962 L 1596.2889,1052.7282"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#1f4697;stroke-width:15.29999924;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
<path
|
||||
id="path11321"
|
||||
d="m 1356.2889,1318.8556 0,-139.7594 225,0 0,-126.368"
|
||||
d="M 1356.2889,1318.8556 L 1356.2889,1179.0962 L 1581.2889,1179.0962 L 1581.2889,1052.7282"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#d81900;stroke-width:15.29999924;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
<path
|
||||
id="path11323"
|
||||
d="m 1386.2889,1318.8556 0,-109.7594 225.5,10e-5 0,-156.3681"
|
||||
d="M 1386.2889,1318.8556 L 1386.2889,1209.0962 L 1611.7889,1209.0963 L 1611.7889,1052.7282"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#ec6004;stroke-width:15.29999924;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
<path
|
||||
id="path11325"
|
||||
d="m 1342.571,1318.8556 0,-154.7594 223.7179,0 0,-111.368"
|
||||
d="M 1342.571,1318.8556 L 1342.571,1164.0962 L 1566.2889,1164.0962 L 1566.2889,1052.7282"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#000000;stroke-width:15.30000019;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
@ -18861,7 +18860,7 @@
|
||||
inkscape:groupmode="layer">
|
||||
<g
|
||||
transform="matrix(0.4,0,0,0.4,53.475,-98.70912)"
|
||||
id="g11325"
|
||||
id="cc-sbus"
|
||||
style="display:inline">
|
||||
<path
|
||||
style="fill:none;stroke:#777777;stroke-width:14.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
@ -18942,17 +18941,17 @@
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
id="satellite"
|
||||
id="cc-satellite"
|
||||
transform="matrix(0.4,0,0,0.4,-131.04473,-97.93132)">
|
||||
<path
|
||||
id="path9857-8"
|
||||
d="m 1250,1530 c -64.9,-5.97 -121,14.3 -171,40.7"
|
||||
d="M 1250,1530 C 1185.1,1524.03 1129,1544.3 1079,1570.7"
|
||||
stroke-miterlimit="4"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#777777;stroke-width:14.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
id="path9857-8-5"
|
||||
d="m 1490,1530 c 50.3,-1.09 115,5.3 155,36.6"
|
||||
d="M 1490,1530 C 1540.3,1528.91 1605,1535.3 1645,1566.6"
|
||||
stroke-miterlimit="4"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#777777;stroke-width:14.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
@ -18960,25 +18959,25 @@
|
||||
sodipodi:nodetypes="cccc"
|
||||
style="fill:none;stroke:#1f4697;stroke-width:15.29999924;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1371.2889,1318.8556 0,-124.7594 225,0 0,-141.368"
|
||||
d="M 1371.2889,1318.8556 L 1371.2889,1194.0962 L 1596.2889,1194.0962 L 1596.2889,1052.7282"
|
||||
id="path8856-5-6" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccc"
|
||||
style="fill:none;stroke:#d81900;stroke-width:15.29999924;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1356.2889,1318.8556 0,-139.7594 225,0 0,-126.368"
|
||||
d="M 1356.2889,1318.8556 L 1356.2889,1179.0962 L 1581.2889,1179.0962 L 1581.2889,1052.7282"
|
||||
id="path8856-1-2" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccc"
|
||||
style="fill:none;stroke:#ec6004;stroke-width:15.29999924;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1386.2889,1318.8556 0,-109.7594 225.5,10e-5 0,-156.3681"
|
||||
d="M 1386.2889,1318.8556 L 1386.2889,1209.0962 L 1611.7889,1209.0963 L 1611.7889,1052.7282"
|
||||
id="path8856-5-1-7-1-9" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccc"
|
||||
style="fill:none;stroke:#000000;stroke-width:15.30000019;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 1342.571,1318.8556 0,-154.7594 223.7179,0 0,-111.368"
|
||||
d="M 1342.571,1318.8556 L 1342.571,1164.0962 L 1566.2889,1164.0962 L 1566.2889,1052.7282"
|
||||
id="path8856-1-5-7" />
|
||||
<rect
|
||||
rx="11.5"
|
||||
@ -19544,11 +19543,11 @@
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer23"
|
||||
inkscape:label="generic-nmea"
|
||||
inkscape:label="revo-generic-nmea"
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
id="generic-nmea">
|
||||
id="revo-generic-nmea">
|
||||
<g
|
||||
id="g14377"
|
||||
transform="matrix(0,0.77129601,-0.77129601,0,1404.0461,377.01359)">
|
||||
@ -20431,11 +20430,11 @@
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer28"
|
||||
inkscape:label="OPGPS-v8-ublox"
|
||||
inkscape:label="revo-OPGPS-v8-ublox"
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
id="OPGPS-v8-ublox">
|
||||
id="revo-OPGPS-v8-ublox">
|
||||
<path
|
||||
sodipodi:nodetypes="ccccc"
|
||||
style="fill:none;stroke:#1f4697;stroke-width:6.11999989;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
@ -20578,7 +20577,7 @@
|
||||
</g>
|
||||
<path
|
||||
transform="matrix(0,0.40146247,-0.40146247,0,1015.7912,553.33859)"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
sodipodi:ry="23.877298"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:cy="572.3067"
|
||||
@ -20594,7 +20593,7 @@
|
||||
sodipodi:cy="572.3067"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:ry="23.877298"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
transform="matrix(0,0.40146247,-0.40146247,0,819.07458,553.33859)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
@ -20604,11 +20603,11 @@
|
||||
sodipodi:cy="572.3067"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:ry="23.877298"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
transform="matrix(0,0.40146247,-0.40146247,0,1015.7912,750.0552)" />
|
||||
<path
|
||||
transform="matrix(0,0.40146247,-0.40146247,0,819.07458,750.0552)"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
sodipodi:ry="23.877298"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:cy="572.3067"
|
||||
@ -20732,11 +20731,11 @@
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer36"
|
||||
inkscape:label="OPGPS-v9"
|
||||
style="display:none"
|
||||
inkscape:label="revo-OPGPS-v9"
|
||||
style="display:inline"
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
id="OPGPS-v9">
|
||||
id="revo-OPGPS-v9">
|
||||
<rect
|
||||
id="rect14138-8-9-5"
|
||||
x="620.07581"
|
||||
@ -20757,11 +20756,11 @@
|
||||
sodipodi:cy="572.3067"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:ry="23.877298"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
transform="matrix(0,-0.40146247,0.40146247,0,260.05873,720.82148)" />
|
||||
<path
|
||||
transform="matrix(0,-0.40146247,0.40146247,0,260.05873,524.10489)"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
sodipodi:ry="23.877298"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:cy="572.3067"
|
||||
@ -20885,7 +20884,7 @@
|
||||
</g>
|
||||
<path
|
||||
transform="matrix(0,-0.40146247,0.40146247,0,456.77534,720.82148)"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
sodipodi:ry="23.877298"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:cy="572.3067"
|
||||
@ -20901,7 +20900,7 @@
|
||||
sodipodi:cy="572.3067"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:ry="23.877298"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
transform="matrix(0,-0.40146247,0.40146247,0,456.77534,524.10489)" />
|
||||
<rect
|
||||
id="rect7428"
|
||||
@ -22804,13 +22803,13 @@
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer5"
|
||||
inkscape:label="flexi-generic-nmea"
|
||||
style="display:inline"
|
||||
inkscape:label="flexi-revo-generic-nmea"
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
transform="translate(-248,4.5990295e-6)"
|
||||
style="display:inline"
|
||||
id="flexi-generic-nmea">
|
||||
id="flexi-revo-generic-nmea">
|
||||
<g
|
||||
id="g14377-12"
|
||||
transform="matrix(0,0.77129601,-0.77129601,0,1404.0461,377.01359)">
|
||||
@ -23699,7 +23698,7 @@
|
||||
<g
|
||||
transform="translate(-340,4.6e-6)"
|
||||
style="display:inline"
|
||||
id="flexi-OPGPS-v8-ublox">
|
||||
id="flexi-revo-OPGPS-v8-ublox">
|
||||
<path
|
||||
sodipodi:nodetypes="cccc"
|
||||
style="fill:none;stroke:#000000;stroke-width:6.11999989;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
@ -23842,7 +23841,7 @@
|
||||
</g>
|
||||
<path
|
||||
transform="matrix(0,0.40146247,-0.40146247,0,1015.7912,553.33859)"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
sodipodi:ry="23.877298"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:cy="572.3067"
|
||||
@ -23858,7 +23857,7 @@
|
||||
sodipodi:cy="572.3067"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:ry="23.877298"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
transform="matrix(0,0.40146247,-0.40146247,0,819.07458,553.33859)" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
@ -23868,11 +23867,11 @@
|
||||
sodipodi:cy="572.3067"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:ry="23.877298"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
transform="matrix(0,0.40146247,-0.40146247,0,1015.7912,750.0552)" />
|
||||
<path
|
||||
transform="matrix(0,0.40146247,-0.40146247,0,819.07458,750.0552)"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
sodipodi:ry="23.877298"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:cy="572.3067"
|
||||
@ -23996,13 +23995,13 @@
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer9"
|
||||
inkscape:label="flexi-OPGPS-v9"
|
||||
inkscape:label="flexi-revo-OPGPS-v9"
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
transform="translate(-240,4.5990295e-6)"
|
||||
style="display:inline"
|
||||
id="flexi-OPGPS-v9">
|
||||
id="flexi-revo-OPGPS-v9">
|
||||
<rect
|
||||
id="rect14138-8-9-5-5"
|
||||
x="620.07581"
|
||||
@ -24023,11 +24022,11 @@
|
||||
sodipodi:cy="572.3067"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:ry="23.877298"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
transform="matrix(0,-0.40146247,0.40146247,0,260.05873,720.82148)" />
|
||||
<path
|
||||
transform="matrix(0,-0.40146247,0.40146247,0,260.05873,524.10489)"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
sodipodi:ry="23.877298"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:cy="572.3067"
|
||||
@ -24151,7 +24150,7 @@
|
||||
</g>
|
||||
<path
|
||||
transform="matrix(0,-0.40146247,0.40146247,0,456.77534,720.82148)"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
sodipodi:ry="23.877298"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:cy="572.3067"
|
||||
@ -24167,7 +24166,7 @@
|
||||
sodipodi:cy="572.3067"
|
||||
sodipodi:rx="23.877298"
|
||||
sodipodi:ry="23.877298"
|
||||
d="M -12.73456,572.3067 C -12.73456,585.49377 -23.424791,596.184 -36.611858,596.184 C -49.798926,596.184 -60.489157,585.49377 -60.489157,572.3067 C -60.489157,559.11963 -49.798926,548.4294 -36.611858,548.4294 C -23.424791,548.4294 -12.73456,559.11963 -12.73456,572.3067 z"
|
||||
d="M -12.73456,572.3067 A 23.877298,23.877298 0 1 1 -60.489157,572.3067 A 23.877298,23.877298 0 1 1 -12.73456,572.3067 z"
|
||||
transform="matrix(0,-0.40146247,0.40146247,0,456.77534,524.10489)" />
|
||||
<rect
|
||||
id="rect7428-5"
|
||||
@ -24357,9 +24356,9 @@
|
||||
<polygon
|
||||
transform="matrix(1.5711089,0,0,1.5372108,235.33403,522.2062)"
|
||||
id="polygon8706-1-0"
|
||||
points="186.194,11.031 181.129,13.319 186.083,4.74 191.036,13.319 " />
|
||||
points="186.083,4.74 191.036,13.319 186.194,11.031 181.129,13.319 " />
|
||||
<polygon
|
||||
points="191.036,13.319 186.194,11.031 181.129,13.319 186.083,4.74 "
|
||||
points="181.129,13.319 186.083,4.74 191.036,13.319 186.194,11.031 "
|
||||
id="polygon10148-4"
|
||||
transform="matrix(1.5711089,0,0,1.5372108,357.19879,522.2062)" />
|
||||
<g
|
||||
@ -26082,7 +26081,7 @@
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer40"
|
||||
inkscape:label="nano-ms4525"
|
||||
inkscape:label="nano-ms4525-speed-sensor"
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
@ -26575,7 +26574,7 @@
|
||||
<polygon
|
||||
style="fill-rule:evenodd"
|
||||
id="polygon13-5"
|
||||
points="251.619,485.734 242.74,485.734 242.74,480.095 251.619,480.095 251.619,473.728 242.74,473.728 242.74,467.777 251.619,467.777 251.619,467.777 251.619,460.783 233.13,460.783 233.13,492.937 251.619,492.937 " />
|
||||
points="242.74,485.734 242.74,480.095 251.619,480.095 251.619,473.728 242.74,473.728 242.74,467.777 251.619,467.777 251.619,467.777 251.619,460.783 233.13,460.783 233.13,492.937 251.619,492.937 251.619,485.734 " />
|
||||
<path
|
||||
style="fill-rule:evenodd"
|
||||
id="path15-2"
|
||||
@ -26589,7 +26588,7 @@
|
||||
<polygon
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="polygon19-3"
|
||||
points="253.082,364.946 253.082,454.937 220.283,454.937 220.283,364.946 220.283,364.946 " />
|
||||
points="253.082,454.937 220.283,454.937 220.283,364.946 220.283,364.946 253.082,364.946 " />
|
||||
<path
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="path21-6"
|
||||
@ -26598,7 +26597,7 @@
|
||||
<polygon
|
||||
style="fill:#c8c9ca;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="polygon23-6"
|
||||
points="225.505,449.298 247.754,449.298 247.754,370.688 225.505,370.688 225.505,370.688 " />
|
||||
points="247.754,449.298 247.754,370.688 225.505,370.688 225.505,370.688 225.505,449.298 " />
|
||||
<path
|
||||
style="fill:#c8c9ca;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="path25-2"
|
||||
@ -26615,7 +26614,7 @@
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer41"
|
||||
inkscape:label="nano-eagletree"
|
||||
inkscape:label="nano-eagletree-speed-sensor"
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
@ -26779,7 +26778,7 @@
|
||||
style="fill:#df181b;fill-opacity:1;stroke:#000000;stroke-width:0.77129602px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
transform="matrix(0.77129601,0,0,0.77129601,324.31484,-346.34006)"
|
||||
d="M 379.6109,501.66602 C 379.6109,504.54173 377.16866,506.87296 374.15601,506.87296 C 371.14335,506.87296 368.70111,504.54173 368.70111,501.66602 C 368.70111,498.7903 371.14335,496.45907 374.15601,496.45907 C 377.16866,496.45907 379.6109,498.7903 379.6109,501.66602 z"
|
||||
d="M 379.6109,501.66602 A 5.4548922,5.2069426 0 1 1 368.70111,501.66602 A 5.4548922,5.2069426 0 1 1 379.6109,501.66602 z"
|
||||
sodipodi:ry="5.2069426"
|
||||
sodipodi:rx="5.4548922"
|
||||
sodipodi:cy="501.66602"
|
||||
@ -27589,7 +27588,7 @@
|
||||
id="path8856-5-6-5-6-7-2-87-6-9" />
|
||||
<path
|
||||
transform="translate(-136.3084,-443.63428)"
|
||||
d="M 656.58418,483.271 C 656.58418,486.11211 654.281,488.4153 651.43988,488.4153 C 648.59876,488.4153 646.29558,486.11211 646.29558,483.271 C 646.29558,480.42988 648.59876,478.1267 651.43988,478.1267 C 654.281,478.1267 656.58418,480.42988 656.58418,483.271 z"
|
||||
d="M 656.58418,483.271 A 5.1442995,5.1442995 0 1 1 646.29558,483.271 A 5.1442995,5.1442995 0 1 1 656.58418,483.271 z"
|
||||
sodipodi:ry="5.1442995"
|
||||
sodipodi:rx="5.1442995"
|
||||
sodipodi:cy="483.271"
|
||||
@ -27605,11 +27604,11 @@
|
||||
sodipodi:cy="483.271"
|
||||
sodipodi:rx="5.1442995"
|
||||
sodipodi:ry="5.1442995"
|
||||
d="M 656.58418,483.271 C 656.58418,486.11211 654.281,488.4153 651.43988,488.4153 C 648.59876,488.4153 646.29558,486.11211 646.29558,483.271 C 646.29558,480.42988 648.59876,478.1267 651.43988,478.1267 C 654.281,478.1267 656.58418,480.42988 656.58418,483.271 z"
|
||||
d="M 656.58418,483.271 A 5.1442995,5.1442995 0 1 1 646.29558,483.271 A 5.1442995,5.1442995 0 1 1 656.58418,483.271 z"
|
||||
transform="translate(-136.3084,-463.68797)" />
|
||||
<path
|
||||
transform="translate(-136.3084,-481.68799)"
|
||||
d="M 656.58418,483.271 C 656.58418,486.11211 654.281,488.4153 651.43988,488.4153 C 648.59876,488.4153 646.29558,486.11211 646.29558,483.271 C 646.29558,480.42988 648.59876,478.1267 651.43988,478.1267 C 654.281,478.1267 656.58418,480.42988 656.58418,483.271 z"
|
||||
d="M 656.58418,483.271 A 5.1442995,5.1442995 0 1 1 646.29558,483.271 A 5.1442995,5.1442995 0 1 1 656.58418,483.271 z"
|
||||
sodipodi:ry="5.1442995"
|
||||
sodipodi:rx="5.1442995"
|
||||
sodipodi:cy="483.271"
|
||||
@ -27625,7 +27624,7 @@
|
||||
sodipodi:cy="483.271"
|
||||
sodipodi:rx="5.1442995"
|
||||
sodipodi:ry="5.1442995"
|
||||
d="M 656.58418,483.271 C 656.58418,486.11211 654.281,488.4153 651.43988,488.4153 C 648.59876,488.4153 646.29558,486.11211 646.29558,483.271 C 646.29558,480.42988 648.59876,478.1267 651.43988,478.1267 C 654.281,478.1267 656.58418,480.42988 656.58418,483.271 z"
|
||||
d="M 656.58418,483.271 A 5.1442995,5.1442995 0 1 1 646.29558,483.271 A 5.1442995,5.1442995 0 1 1 656.58418,483.271 z"
|
||||
transform="translate(-136.3084,-501.68802)" />
|
||||
<g
|
||||
id="g9542-2-1"
|
||||
@ -27726,7 +27725,7 @@
|
||||
<polygon
|
||||
style="fill-rule:evenodd"
|
||||
id="polygon13-5-7"
|
||||
points="251.619,485.734 242.74,485.734 242.74,480.095 251.619,480.095 251.619,473.728 242.74,473.728 242.74,467.777 251.619,467.777 251.619,467.777 251.619,460.783 233.13,460.783 233.13,492.937 251.619,492.937 " />
|
||||
points="242.74,485.734 242.74,480.095 251.619,480.095 251.619,473.728 242.74,473.728 242.74,467.777 251.619,467.777 251.619,467.777 251.619,460.783 233.13,460.783 233.13,492.937 251.619,492.937 251.619,485.734 " />
|
||||
<path
|
||||
style="fill-rule:evenodd"
|
||||
id="path15-2-6"
|
||||
@ -27740,7 +27739,7 @@
|
||||
<polygon
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="polygon19-3-9"
|
||||
points="253.082,454.937 220.283,454.937 220.283,364.946 220.283,364.946 253.082,364.946 " />
|
||||
points="220.283,454.937 220.283,364.946 220.283,364.946 253.082,364.946 253.082,454.937 " />
|
||||
<path
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="path21-6-0"
|
||||
@ -27749,7 +27748,7 @@
|
||||
<polygon
|
||||
style="fill:#c8c9ca;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="polygon23-6-4"
|
||||
points="247.754,449.298 247.754,370.688 225.505,370.688 225.505,370.688 225.505,449.298 " />
|
||||
points="247.754,370.688 225.505,370.688 225.505,370.688 225.505,449.298 247.754,449.298 " />
|
||||
<path
|
||||
style="fill:#c8c9ca;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="path25-2-1"
|
||||
@ -27766,11 +27765,11 @@
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer42"
|
||||
inkscape:label="ms4525"
|
||||
inkscape:label="revo-ms4525-speed-sensor"
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
id="ms4525-speed-sensor">
|
||||
id="revo-ms4525-speed-sensor">
|
||||
<path
|
||||
id="rect3287-1"
|
||||
d="M 279.15532,401.95962 L 446.45368,401.95962 C 447.73557,401.95962 448.76756,402.99162 448.76756,404.27351 L 448.76756,516.11183 C 448.76756,517.39373 447.73557,518.42572 446.45368,518.42572 L 279.15532,518.42572 C 277.87342,518.42572 276.84143,517.39373 276.84143,516.11183 L 276.84143,404.27351 C 276.84143,402.99162 277.87342,401.95962 279.15532,401.95962 z"
|
||||
@ -28179,7 +28178,7 @@
|
||||
<polygon
|
||||
style="fill-rule:evenodd"
|
||||
id="polygon13"
|
||||
points="242.74,480.095 251.619,480.095 251.619,473.728 242.74,473.728 242.74,467.777 251.619,467.777 251.619,467.777 251.619,460.783 233.13,460.783 233.13,492.937 251.619,492.937 251.619,485.734 242.74,485.734 " />
|
||||
points="251.619,473.728 242.74,473.728 242.74,467.777 251.619,467.777 251.619,467.777 251.619,460.783 233.13,460.783 233.13,492.937 251.619,492.937 251.619,485.734 242.74,485.734 242.74,480.095 251.619,480.095 " />
|
||||
<path
|
||||
style="fill-rule:evenodd"
|
||||
id="path15"
|
||||
@ -28193,7 +28192,7 @@
|
||||
<polygon
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="polygon19"
|
||||
points="220.283,364.946 253.082,364.946 253.082,454.937 220.283,454.937 220.283,364.946 " />
|
||||
points="253.082,454.937 220.283,454.937 220.283,364.946 220.283,364.946 253.082,364.946 " />
|
||||
<path
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="path21"
|
||||
@ -28202,7 +28201,7 @@
|
||||
<polygon
|
||||
style="fill:#c8c9ca;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="polygon23"
|
||||
points="225.505,370.688 225.505,449.298 247.754,449.298 247.754,370.688 225.505,370.688 " />
|
||||
points="247.754,449.298 247.754,370.688 225.505,370.688 225.505,370.688 225.505,449.298 " />
|
||||
<path
|
||||
style="fill:#c8c9ca;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="path25"
|
||||
@ -28296,11 +28295,11 @@
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer43"
|
||||
inkscape:label="eagletree"
|
||||
inkscape:label="revo-eagletree-speed-sensor"
|
||||
style="display:none"
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
id="eagletree-speed-sensor">
|
||||
id="revo-eagletree-speed-sensor">
|
||||
<g
|
||||
transform="matrix(0.77129601,0,0,0.77129601,-4.0324,89.181843)"
|
||||
id="g6563-8">
|
||||
@ -28460,7 +28459,7 @@
|
||||
style="fill:#df181b;fill-opacity:1;stroke:#000000;stroke-width:0.77129602px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
transform="matrix(0.77129601,0,0,0.77129601,-4.0324,147.80034)"
|
||||
d="M 379.6109,501.66602 C 379.6109,504.54173 377.16866,506.87296 374.15601,506.87296 C 371.14335,506.87296 368.70111,504.54173 368.70111,501.66602 C 368.70111,498.7903 371.14335,496.45907 374.15601,496.45907 C 377.16866,496.45907 379.6109,498.7903 379.6109,501.66602 z"
|
||||
d="M 379.6109,501.66602 A 5.4548922,5.2069426 0 1 1 368.70111,501.66602 A 5.4548922,5.2069426 0 1 1 379.6109,501.66602 z"
|
||||
sodipodi:ry="5.2069426"
|
||||
sodipodi:rx="5.4548922"
|
||||
sodipodi:cy="501.66602"
|
||||
@ -29270,7 +29269,7 @@
|
||||
id="path8856-5-6-5-6-7-2-87-6-9-8" />
|
||||
<path
|
||||
transform="translate(-465.89215,50.457722)"
|
||||
d="M 656.58418,483.271 C 656.58418,486.11211 654.281,488.4153 651.43988,488.4153 C 648.59876,488.4153 646.29558,486.11211 646.29558,483.271 C 646.29558,480.42988 648.59876,478.1267 651.43988,478.1267 C 654.281,478.1267 656.58418,480.42988 656.58418,483.271 z"
|
||||
d="M 656.58418,483.271 A 5.1442995,5.1442995 0 1 1 646.29558,483.271 A 5.1442995,5.1442995 0 1 1 656.58418,483.271 z"
|
||||
sodipodi:ry="5.1442995"
|
||||
sodipodi:rx="5.1442995"
|
||||
sodipodi:cy="483.271"
|
||||
@ -29286,11 +29285,11 @@
|
||||
sodipodi:cy="483.271"
|
||||
sodipodi:rx="5.1442995"
|
||||
sodipodi:ry="5.1442995"
|
||||
d="M 656.58418,483.271 C 656.58418,486.11211 654.281,488.4153 651.43988,488.4153 C 648.59876,488.4153 646.29558,486.11211 646.29558,483.271 C 646.29558,480.42988 648.59876,478.1267 651.43988,478.1267 C 654.281,478.1267 656.58418,480.42988 656.58418,483.271 z"
|
||||
d="M 656.58418,483.271 A 5.1442995,5.1442995 0 1 1 646.29558,483.271 A 5.1442995,5.1442995 0 1 1 656.58418,483.271 z"
|
||||
transform="translate(-465.89215,30.404033)" />
|
||||
<path
|
||||
transform="translate(-465.89215,12.404008)"
|
||||
d="M 656.58418,483.271 C 656.58418,486.11211 654.281,488.4153 651.43988,488.4153 C 648.59876,488.4153 646.29558,486.11211 646.29558,483.271 C 646.29558,480.42988 648.59876,478.1267 651.43988,478.1267 C 654.281,478.1267 656.58418,480.42988 656.58418,483.271 z"
|
||||
d="M 656.58418,483.271 A 5.1442995,5.1442995 0 1 1 646.29558,483.271 A 5.1442995,5.1442995 0 1 1 656.58418,483.271 z"
|
||||
sodipodi:ry="5.1442995"
|
||||
sodipodi:rx="5.1442995"
|
||||
sodipodi:cy="483.271"
|
||||
@ -29306,7 +29305,7 @@
|
||||
sodipodi:cy="483.271"
|
||||
sodipodi:rx="5.1442995"
|
||||
sodipodi:ry="5.1442995"
|
||||
d="M 656.58418,483.271 C 656.58418,486.11211 654.281,488.4153 651.43988,488.4153 C 648.59876,488.4153 646.29558,486.11211 646.29558,483.271 C 646.29558,480.42988 648.59876,478.1267 651.43988,478.1267 C 654.281,478.1267 656.58418,480.42988 656.58418,483.271 z"
|
||||
d="M 656.58418,483.271 A 5.1442995,5.1442995 0 1 1 646.29558,483.271 A 5.1442995,5.1442995 0 1 1 656.58418,483.271 z"
|
||||
transform="translate(-465.89215,-7.5960203)" />
|
||||
<g
|
||||
id="g9542-2-1-6"
|
||||
@ -29407,7 +29406,7 @@
|
||||
<polygon
|
||||
style="fill-rule:evenodd"
|
||||
id="polygon13-5-7-1"
|
||||
points="251.619,460.783 233.13,460.783 233.13,492.937 251.619,492.937 251.619,485.734 242.74,485.734 242.74,480.095 251.619,480.095 251.619,473.728 242.74,473.728 242.74,467.777 251.619,467.777 251.619,467.777 " />
|
||||
points="233.13,492.937 251.619,492.937 251.619,485.734 242.74,485.734 242.74,480.095 251.619,480.095 251.619,473.728 242.74,473.728 242.74,467.777 251.619,467.777 251.619,467.777 251.619,460.783 233.13,460.783 " />
|
||||
<path
|
||||
style="fill-rule:evenodd"
|
||||
id="path15-2-6-3"
|
||||
@ -29421,7 +29420,7 @@
|
||||
<polygon
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="polygon19-3-9-3"
|
||||
points="253.082,454.937 220.283,454.937 220.283,364.946 220.283,364.946 253.082,364.946 " />
|
||||
points="220.283,364.946 220.283,364.946 253.082,364.946 253.082,454.937 220.283,454.937 " />
|
||||
<path
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="path21-6-0-1"
|
||||
@ -29430,7 +29429,7 @@
|
||||
<polygon
|
||||
style="fill:#c8c9ca;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="polygon23-6-4-7"
|
||||
points="247.754,449.298 247.754,370.688 225.505,370.688 225.505,370.688 225.505,449.298 " />
|
||||
points="225.505,370.688 225.505,370.688 225.505,449.298 247.754,449.298 247.754,370.688 " />
|
||||
<path
|
||||
style="fill:#c8c9ca;fill-rule:evenodd;stroke:#000000;stroke-width:0.82230002;stroke-miterlimit:2.61310005"
|
||||
id="path25-2-1-5"
|
||||
|
Before Width: | Height: | Size: 2.7 MiB After Width: | Height: | Size: 2.7 MiB |
@ -150,7 +150,8 @@ void VehicleConfigurationHelper::applyHardwareConfiguration()
|
||||
data.CC_RcvrPort = HwSettings::CC_RCVRPORT_PWMNOONESHOT;
|
||||
break;
|
||||
case VehicleConfigurationSource::INPUT_PPM:
|
||||
if (m_configSource->getEscType() == VehicleConfigurationSource::ESC_ONESHOT) {
|
||||
if (m_configSource->getEscType() == VehicleConfigurationSource::ESC_ONESHOT ||
|
||||
m_configSource->getEscType() == VehicleConfigurationSource::ESC_RAPID) {
|
||||
data.CC_RcvrPort = HwSettings::CC_RCVRPORT_PPM_PIN8ONESHOT;
|
||||
} else {
|
||||
data.CC_RcvrPort = HwSettings::CC_RCVRPORT_PPMNOONESHOT;
|
||||
@ -376,18 +377,19 @@ void VehicleConfigurationHelper::applyActuatorConfiguration()
|
||||
bankMode = ActuatorSettings::BANKMODE_PWM;
|
||||
break;
|
||||
case VehicleConfigurationSource::ESC_RAPID:
|
||||
escFrequence = RAPID_ESC_FREQUENCY;
|
||||
if ((m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_CC ||
|
||||
m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_CC3D) &&
|
||||
m_configSource->getInputType() == VehicleConfigurationSource::INPUT_PWM) {
|
||||
bankMode = ActuatorSettings::BANKMODE_PWM;
|
||||
bankMode = ActuatorSettings::BANKMODE_PWM;
|
||||
escFrequence = RAPID_ESC_FREQUENCY;
|
||||
} else {
|
||||
bankMode = ActuatorSettings::BANKMODE_PWMSYNC;
|
||||
bankMode = ActuatorSettings::BANKMODE_PWMSYNC;
|
||||
escFrequence = PWMSYNC_ESC_FREQUENCY;
|
||||
}
|
||||
break;
|
||||
case VehicleConfigurationSource::ESC_ONESHOT:
|
||||
escFrequence = RAPID_ESC_FREQUENCY;
|
||||
bankMode = ActuatorSettings::BANKMODE_ONESHOT125;
|
||||
escFrequence = ONESHOT_ESC_FREQUENCY;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
@ -59,6 +59,8 @@ public:
|
||||
bool setupHardwareSettings(bool save = true);
|
||||
static const qint16 LEGACY_ESC_FREQUENCY = 50;
|
||||
static const qint16 RAPID_ESC_FREQUENCY = 490;
|
||||
static const qint16 PWMSYNC_ESC_FREQUENCY = 0;
|
||||
static const qint16 ONESHOT_ESC_FREQUENCY = 0;
|
||||
static const qint16 ANALOG_SERVO_FREQUENCY = 50;
|
||||
static const qint16 DIGITAL_SERVO_FREQUENCY = 333;
|
||||
static const int MIXER_TYPE_NONE = 0;
|
||||
|
@ -0,0 +1,13 @@
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta content="">
|
||||
<style></style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>System Alarm</h1>
|
||||
<p>
|
||||
Reboot is required !!!
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,18 @@
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta content="">
|
||||
<style></style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>System Configuration : FlightMode</h1>
|
||||
<p>
|
||||
There is a problem with flightmode configuration :
|
||||
<ul>
|
||||
<li>One Gps assisted mode is present and you are using a CC/CC3D.</li>
|
||||
<li>One Gps assisted mode is present and you don't use "GPS Navigation (INS13)" and GPS configured.</li>
|
||||
<li>One stabilised mode use a wrong thrust mode, like CruizeControl with Rate on Pitch/Roll.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,17 @@
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta content="">
|
||||
<style></style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>System Configuration : Unsupported Config OneShot</h1>
|
||||
<p>
|
||||
You have selected an unsupported config for PWMSync or OneShot :
|
||||
<ul>
|
||||
<li>Double check if RC Input used is compatible with this mode,</li>
|
||||
<li>Double check your Output configuration.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,13 @@
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta content="">
|
||||
<style></style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Alarme Système</h1>
|
||||
<p>
|
||||
Un redémarrage est nécessaire !!!
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
@ -10,7 +10,7 @@
|
||||
Une des conditions suivantes semble présente :
|
||||
<ul>
|
||||
<li>
|
||||
<p>Vous avez réglé un mode GPS (PosHold, RTB) l'interrupteur de mode de vol, et vous avez sélectionné "Basic (Complementary)" comme algorithme d'estimation de l'attitude.</p>
|
||||
<p>Vous avez réglé un mode GPS (PosHold, RTB) sur un mode de vol, et vous avez sélectionné "Basic (Complementary)" comme algorithme d'estimation de l'attitude.</p>
|
||||
<p>Sélectionnez "GPS Navigation (INS13)" dans l'onglet Config -> Attitude -> Paramètres -> Algorithme d'Estimation de l'Attitude.</p>
|
||||
</li>
|
||||
</ul>
|
||||
|
@ -0,0 +1,18 @@
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta content="">
|
||||
<style></style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Configuration Système : FlightMode</h1>
|
||||
<p>
|
||||
Il y a un problème avec la configuration des modes de vol :
|
||||
<ul>
|
||||
<li>Un mode assisté GPS est présent et vous utilisez une carte CC/CC3D.</li>
|
||||
<li>Un mode assisté GPS est présent mais vous n'avez pas choisi "GPS Navigation (INS13)" et configuré un GPS.</li>
|
||||
<li>Un mode de stabilisation utilise un mode de poussée incompatible, comme CruizeControl avec Rate en Pitch/Roll.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,17 @@
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta content="">
|
||||
<style></style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Configuration Système: Mauvaise Config OneShot</h1>
|
||||
<p>
|
||||
Vous avez sélectionné une configuration incompatible avec PWMSync ou OneShot :
|
||||
<ul>
|
||||
<li>Vérifiez si votre configuration d'entrée Rc est compatible avec ces modes,</li>
|
||||
<li>Vérifiez votre configuration des sorties.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
@ -31,6 +31,9 @@
|
||||
<file>html/Magnetometer-Critical.html</file>
|
||||
<file>html/Magnetometer-Warning.html</file>
|
||||
<file>html/Stabilization-Critical.html</file>
|
||||
<file>html/SystemConfiguration-UnsupportedConfig_OneShot.html</file>
|
||||
<file>html/SystemConfiguration-FlightMode.html</file>
|
||||
<file>html/BootFault-RebootRequired.html</file>
|
||||
</qresource>
|
||||
<qresource prefix="/systemhealth" lang="fr">
|
||||
<file alias="html/Actuator-Critical.html">html/fr/Actuator-Critical.html</file>
|
||||
@ -64,6 +67,9 @@
|
||||
<file alias="html/Magnetometer-Warning.html">html/fr/Magnetometer-Warning.html</file>
|
||||
<file alias="html/Magnetometer-Critical.html">html/fr/Magnetometer-Critical.html</file>
|
||||
<file alias="html/Stabilization-Critical.html">html/fr/Stabilization-Critical.html</file>
|
||||
<file alias="html/SystemConfiguration-UnsupportedConfig_OneShot.html">html/fr/SystemConfiguration-UnsupportedConfig_OneShot.html</file>
|
||||
<file alias="html/SystemConfiguration-FlightMode.html">html/fr/SystemConfiguration-FlightMode.html</file>
|
||||
<file alias="html/BootFault-RebootRequired.html">html/fr/BootFault-RebootRequired.html</file>
|
||||
</qresource>
|
||||
|
||||
</RCC>
|
||||
|
Loading…
x
Reference in New Issue
Block a user