Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • danc/MicroCART
  • snawerdt/MicroCART_17-18
  • bbartels/MicroCART_17-18
  • jonahu/MicroCART
4 results
Show changes
Commits on Source (1869)
Showing
with 1505 additions and 41 deletions
File added
# Object files
*.o
*.ko
*.obj
*.elf
# Precompiled Headers
*.gch
*.pch
# Libraries
*.lib
*.a
*.la
*.lo
# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib
# Executables
*.exe
*.out
*.app
*.i*86
*.x86_64
*.hex
# Debug files
*.dSYM/
*.su
# vrpn/build files
src/vrpn/build*
src/vrpn/pc_linux64/*
#Exacutables
./BlueTooth
test.log
groundStation/gui/build*
.gdb_history
.vscode
/crazyflie_hardware/sd_test_stand/sd_test_stand-backups/*
/crazyflie_hardware/sd_test_stand_nano/sd_test_stand_nano-backups/*
##---------------------------------------------------
## Remove autosaves generated by the Matlab editor
## We have git for backups!
##---------------------------------------------------
# Windows default autosave extension
*.asv
# OSX / *nix default autosave extension
*.m~
# Compiled MEX binaries (all platforms)
*.mex*
# Simulink Code Generation
slprj/
# Session info
octave-workspace
# Simulink autosave extension
.autosave
controls/Sim-nonlinear-quad-example/Sim-nonlinear-quad-example/slprj/
*/.idea/
*.pyc
cflib_groundstation/logs/*.txt
cflib_groundstation/cache/*
image: bitcraze/builder
stages:
- build
- unit_tests
build:
stage: build
script:
- pwd
- ls
- git submodule sync
- git submodule update --init --recursive
- cd crazyflie_software/crazyflie-firmware-2021.06/
- make PLATFORM=cf2
artifacts:
paths:
- crazyflie_software/crazyflie-firmware-2021.06/cf2.bin
expire_in: 2 year
unit_tests:
stage: unit_tests
script:
- pwd
- ls
- git submodule sync
- git submodule update --init --recursive
- cd crazyflie_software/crazyflie-firmware-2021.06/
- ./tools/build/build PLATFORM=cf2 UNIT_TEST_STYLE=min
\ No newline at end of file
## Bug Description
*Describe the bug*
### Steps to reproduce
1.
## Proposed Fix
*Describe the proposed fix for the bug*
## Problem Description
*Describe the area needing improvement or clean up*
## Proposed Solution
*Describe the proposed solution*
## Problem Description
*Describe the problem or idea*
## Proposed Solution
*Describe the proposed solution to the problem*
## Bug Description
*Describe the bug*
## Fix Description
*Describe your implemented fix*
## Impacted Areas
*Remove inapplicable items*
- Quad Software
- Controls
- Ground Station
- Testing
## Problem Description
*Describe the problem you addressed with the clean up*
## Refactor Description
*Describe your clean up efforts*
## Clean up areas
*Remove inapplicable items*
- Code refactor
- Code comments added
- Documentation added
## Feature Description
*Describe the feature*
## Implementation Details
*Describe your implementation*
## Impacted Areas
*Remove inapplicable items*
- Quad Software
- Controls
- Ground Station
- Testing
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
<component name="PackageRequirementsSettings">
<option name="removeUnused" value="true" />
</component>
<component name="PyDocumentationSettings">
<option name="format" value="PLAIN" />
<option name="myDocStringFormat" value="Plain" />
</component>
<component name="TemplatesService">
<option name="TEMPLATE_CONFIGURATION" value="Jinja2" />
<option name="TEMPLATE_FOLDERS">
<list>
<option value="$MODULE_DIR$/website/themes/notmyidea/templates" />
</list>
</option>
</component>
</module>
\ No newline at end of file
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="DuplicatedCode" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<Languages>
<language minSize="67" name="Python" />
</Languages>
</inspection_tool>
<inspection_tool class="HttpUrlsUsage" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoredUrls">
<list>
<option value="http://localhost" />
<option value="http://127.0.0.1" />
<option value="http://0.0.0.0" />
<option value="http://www.w3.org/" />
<option value="http://json-schema.org/draft" />
<option value="http://java.sun.com/" />
<option value="http://xmlns.jcp.org/" />
<option value="http://javafx.com/javafx/" />
<option value="http://javafx.com/fxml" />
<option value="http://maven.apache.org/xsd/" />
<option value="http://maven.apache.org/POM/" />
<option value="http://www.springframework.org/schema/" />
<option value="http://www.springframework.org/tags" />
<option value="http://www.springframework.org/security/tags" />
<option value="http://www.thymeleaf.org" />
<option value="http://www.jboss.org/j2ee/schema/" />
<option value="http://www.jboss.com/xml/ns/" />
<option value="http://www.ibm.com/webservices/xsd" />
<option value="http://activemq.apache.org/schema/" />
<option value="http://schema.cloudfoundry.org/spring/" />
<option value="http://schemas.xmlsoap.org/" />
<option value="http://cxf.apache.org/schemas/" />
<option value="http://primefaces.org/ui" />
<option value="http://tiles.apache.org/" />
<option value="http://api.velocityweather.com" />
</list>
</option>
</inspection_tool>
<inspection_tool class="PyChainedComparisonsInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoreConstantInTheMiddle" value="true" />
</inspection_tool>
<inspection_tool class="PyPackageRequirementsInspection" enabled="true" level="WARNING" enabled_by_default="true">
<option name="ignoredPackages">
<value>
<list size="6">
<item index="0" class="java.lang.String" itemvalue="terminado" />
<item index="1" class="java.lang.String" itemvalue="srtm4" />
<item index="2" class="java.lang.String" itemvalue="matplotlib" />
<item index="3" class="java.lang.String" itemvalue="numpy" />
<item index="4" class="java.lang.String" itemvalue="scipy" />
<item index="5" class="java.lang.String" itemvalue="numba" />
</list>
</value>
</option>
</inspection_tool>
<inspection_tool class="PyPep8Inspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoredErrors">
<list>
<option value="E127" />
<option value="E266" />
</list>
</option>
</inspection_tool>
<inspection_tool class="PyPep8NamingInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoredErrors">
<list>
<option value="N802" />
<option value="N803" />
<option value="N806" />
<option value="N801" />
<option value="N813" />
</list>
</option>
</inspection_tool>
<inspection_tool class="PyUnresolvedReferencesInspection" enabled="true" level="WARNING" enabled_by_default="true">
<option name="ignoredIdentifiers">
<list>
<option value="tuple.twinx" />
<option value="super.configureMainData" />
<option value="list.tkraise" />
<option value="list.cont" />
<option value="list.grid" />
<option value="parent_dir" />
<option value="loop_filepaths" />
<option value="list.__getitem__" />
<option value="int.value" />
</list>
</option>
</inspection_tool>
</profile>
</component>
\ No newline at end of file
<component name="InspectionProjectProfileManager">
<settings>
<option name="USE_PROJECT_PROFILE" value="false" />
<version value="1.0" />
</settings>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.8" project-jdk-type="Python SDK" />
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/MicroCART.iml" filepath="$PROJECT_DIR$/.idea/MicroCART.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>
\ No newline at end of file
# -*- coding: utf-8 -*-
# Resource object code
#
# Created by: The Resource Compiler for PyQt5 (Qt v5.15.2)
#
# WARNING! All changes made in this file will be lost!
from PyQt5 import QtCore
qt_resource_data = b"\
\x00\x00\x0e\x24\
\x89\
\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
\x00\x00\x32\x00\x00\x00\x32\x08\x06\x00\x00\x00\x1e\x3f\x88\xb1\
\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\
\xa7\x93\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x0b\x13\x00\x00\
\x0b\x13\x01\x00\x9a\x9c\x18\x00\x00\x00\x07\x74\x49\x4d\x45\x07\
\xe1\x04\x13\x00\x27\x21\x30\x4c\x9e\x0d\x00\x00\x0d\xb1\x49\x44\
\x41\x54\x68\xde\xcd\x9a\x5b\x50\xdb\x65\xfa\xc7\x3f\x39\x92\x33\
\x39\x10\x20\x1c\x2c\xe7\xd2\x13\x92\x72\xb0\x15\xa4\xd4\xc3\x6c\
\x2d\xba\xee\x88\x53\x0f\x33\xdb\x19\x1c\x3b\xeb\x6c\xeb\x78\xe5\
\x78\xe1\x4d\xbd\xf0\xce\xbb\xea\xd5\xce\x2a\xee\x6a\xd9\x1e\xad\
\x6e\x2d\x6d\xb7\x8e\xb5\xc0\xb8\xca\xb1\xb6\x15\x68\x81\x84\x63\
\x20\x90\x03\x24\x21\x90\x90\xe4\x7f\x41\x1b\x4b\x49\x5a\x42\x75\
\xfe\xfb\x5c\xfe\xde\xdf\x93\xf7\xfd\xbe\xbf\xe7\x7d\x9e\xef\xf3\
\x7d\x23\x88\x44\x22\x11\xe2\x58\x30\x18\xc4\xeb\xf5\xb2\xb8\xb8\
\x08\x40\x52\x52\x12\x4a\xa5\x12\xa9\x54\xca\xef\x69\xc1\x60\x10\
\x9f\xcf\x47\x20\x10\x58\x31\xaf\x58\x2c\x8e\xeb\x13\x73\xc4\xe5\
\x72\xd1\xd7\xd7\xc7\xd0\xd0\x10\x76\xbb\x3d\xfa\x83\x52\xa9\x94\
\x94\x94\x14\xf2\xf2\xf2\x28\x2e\x2e\xc6\x60\x30\xfc\xa6\x00\xdc\
\x6e\x37\xfd\xfd\xfd\x58\x2c\x96\x15\xf3\x26\x25\x25\x61\x32\x99\
\xc8\xcf\xcf\x67\xe3\xc6\x8d\x28\x14\x8a\x55\xbe\x82\x7b\xbf\x48\
\x4f\x4f\x0f\x1d\x1d\x1d\x4c\x4e\x4e\x92\x95\x95\x85\xc9\x64\x42\
\xab\xd5\x02\x30\x3b\x3b\x8b\xcd\x66\x63\x6c\x6c\x0c\xa3\xd1\x48\
\x59\x59\x19\x65\x65\x65\xbf\x09\x88\xeb\xd7\xaf\xd3\xde\xde\xce\
\xf8\xf8\x38\x99\x99\x99\x98\x4c\x26\xd4\x6a\x35\x91\x48\x84\xd9\
\xd9\x59\xc6\xc7\xc7\xb1\xdb\xed\xe4\xe5\xe5\x51\x5e\x5e\x4e\x51\
\x51\x51\x7c\x20\x57\xae\x5c\xa1\xad\xad\x8d\xac\xac\x2c\x4a\x4b\
\x4b\x29\x2c\x2c\x44\x26\x93\xad\x70\x58\x5c\x5c\x64\x70\x70\x90\
\x9e\x9e\x1e\x06\x07\x07\xa9\xae\xae\x66\xf7\xee\xdd\x0f\x05\xa2\
\xb3\xb3\x93\xef\xbf\xff\x1e\xbd\x5e\xcf\xf6\xed\xdb\x29\x2c\x2c\
\x44\x2e\x97\x47\xc7\x23\x91\x08\x3e\x9f\x8f\xde\xde\x5e\xba\xba\
\xba\x58\x5c\x5c\xa4\xa6\xa6\x86\xd2\xd2\xd2\xd5\x40\x7a\x7a\x7a\
\x68\x6e\x6e\xa6\xb8\xb8\x98\x9a\x9a\x9a\x07\x86\x8d\xcb\xe5\xe2\
\xf2\xe5\xcb\x5c\xbb\x76\x8d\x67\x9f\x7d\x96\x8a\x8a\x8a\x75\x81\
\xb8\x71\xe3\x06\x17\x2e\x5c\x20\x27\x27\x87\xea\xea\x6a\x52\x53\
\x53\xef\xfb\xbe\xd5\x6a\xe5\xf2\xe5\xcb\xf8\x7c\x3e\xf6\xee\xdd\
\x4b\x6e\x6e\x2e\x00\xc2\x3b\x8b\xea\xe8\xe8\x20\x3b\x3b\x7b\x4d\
\x20\x00\x74\x3a\x1d\xb5\xb5\xb5\x14\x16\x16\xd2\xd9\xd9\xc9\xf4\
\xf4\x74\xc2\x20\x3c\x1e\x0f\x9d\x9d\x9d\x68\xb5\x5a\x1e\x7f\xfc\
\xf1\x07\x82\x00\xc8\xc9\xc9\xa1\xa6\xa6\x06\x80\xae\xae\xae\xe8\
\x39\x12\x02\xf4\xf6\xf6\x32\x39\x39\x49\x69\x69\x69\x42\x07\x58\
\xa7\xd3\x61\x36\x9b\x71\x3a\x9d\xf4\xf5\xf5\x25\x0c\xe4\xe6\xcd\
\x9b\x8c\x8c\x8c\x60\x36\x9b\x49\x4f\x4f\x5f\xb3\x5f\x5e\x5e\x1e\
\x25\x25\x25\xf4\xf5\xf5\x61\xb1\x58\x96\x81\x04\x83\x41\x2c\x16\
\x0b\x99\x99\x99\x14\x14\x14\x24\xbc\x98\xfc\xfc\x7c\x1e\x79\xe4\
\x11\x06\x07\x07\x59\x58\x58\x58\xb3\x5f\x28\x14\xc2\x62\xb1\x90\
\x9a\x9a\xba\xea\xe0\xae\xc5\x36\x6d\xda\x84\x4a\xa5\xc2\x6a\xb5\
\x2e\x03\xf1\x7a\xbd\xd8\xed\x76\x32\x32\x32\x56\x1d\xec\xbb\xe3\
\xf2\x8e\xc3\xbd\x26\x91\x48\x30\x99\x4c\x38\x1c\x0e\xe6\xe7\xe7\
\xd7\xbc\x90\xf9\xf9\x79\xa6\xa6\xa6\x30\x99\x4c\x31\xd3\x29\xc0\
\xd8\xd8\x18\xa3\xa3\xa3\x31\xc7\xb4\x5a\x2d\x29\x29\x29\x4c\x4e\
\x4e\x12\x08\x04\x10\x07\x83\x41\x82\xc1\x20\x2a\x95\x2a\x2e\x88\
\x0f\x3e\xf8\x80\x85\x85\x05\x5e\x7a\xe9\x25\x5e\x78\xe1\x85\x55\
\xef\x24\x27\x27\x13\x0c\x06\xf1\xfb\xfd\x6b\x06\x12\x08\x04\x58\
\x58\x58\x40\xa3\xd1\x20\x10\x08\x56\x8d\x9f\x3f\x7f\x9e\x13\x27\
\x4e\x20\x97\xcb\x79\xef\xbd\xf7\x30\x99\x4c\x2b\xc6\x45\x22\x11\
\x6a\xb5\x9a\xb1\xb1\xb1\x65\x20\x42\xa1\x10\x81\x40\x40\x38\x1c\
\x8e\x39\xa1\x54\x2a\x45\x24\x12\x31\x3c\x3c\xcc\x91\x23\x47\x70\
\x38\x1c\xbc\xf2\xca\x2b\x2b\x76\x31\x14\x0a\x21\x10\x08\x10\x89\
\x44\x09\x87\xc8\xbd\x20\xc2\xe1\x30\x4d\x4d\x4d\x9c\x38\x71\x02\
\xa7\xd3\x49\x41\x41\x01\xf1\xc8\x87\x40\x20\x88\x8e\x89\x25\x12\
\x09\x32\x99\x0c\xb7\xdb\x4d\x24\x12\x59\xf5\xc3\x19\x19\x19\xd4\
\xd7\xd7\x33\x33\x33\x83\xdd\x6e\xa7\xb1\xb1\x91\x99\x99\x19\x5e\
\x7b\xed\x35\xb2\xb2\xb2\x00\x70\x3a\x9d\xc8\x64\xb2\xb8\xa1\x19\
\x6f\x83\x64\x32\x19\xb3\xb3\xb3\xd1\x79\xa7\xa7\xa7\x39\x7e\xfc\
\x38\xc7\x8e\x1d\x03\x40\xa3\xd1\x50\x5f\x5f\x4f\x46\x46\x46\xcc\
\x33\xe6\xf1\x78\xa2\x94\x49\xac\x52\xa9\xc8\xc8\xc8\x60\x7c\x7c\
\x1c\xaf\xd7\x8b\x5a\xad\x5e\xe5\xf4\xcc\x33\xcf\xe0\x76\xbb\xf9\
\xf8\xe3\x8f\x09\x87\xc3\x9c\x3d\x7b\x16\xa7\xd3\xc9\xcb\x2f\xbf\
\xcc\xa6\x4d\x9b\x70\x38\x1c\x98\x4c\xa6\xb8\xe1\x19\xcb\xe4\x72\
\x39\x69\x69\x69\xd8\xed\x76\x16\x16\x16\xb0\x5a\xad\x9c\x38\x71\
\x82\x4b\x97\x2e\x45\xdf\xd9\xb7\x6f\x1f\x75\x75\x75\x31\xfd\x67\
\x67\x67\x99\x99\x99\xa1\xa8\xa8\x68\x39\x6a\xde\x7f\xff\xfd\xc3\
\x81\x40\x80\xae\xae\x2e\x34\x1a\x4d\x74\x97\xef\xb5\xcd\x9b\x37\
\x13\x08\x04\xb8\x76\xed\x1a\x00\xa3\xa3\xa3\x0c\x0e\x0e\xa2\x52\
\xa9\xd8\xb6\x6d\x1b\xb9\xb9\xb9\xe8\x74\xba\x35\x03\x11\x0a\x85\
\xc8\xe5\x72\x0c\x06\x03\x43\x43\x43\x34\x36\x36\xf2\xc3\x0f\x3f\
\x44\xc7\x5f\x7c\xf1\x45\x5e\x7f\xfd\xf5\xb8\xe1\xda\xdd\xdd\x4d\
\x7f\x7f\x3f\x3b\x77\xee\xc4\x68\x34\x22\x3a\x7c\xf8\xf0\x61\xad\
\x56\xcb\xf4\xf4\x34\x43\x43\x43\x18\x0c\x86\x98\x0b\x12\x08\x04\
\xe4\xe7\xe7\xe3\x76\xbb\x19\x18\x18\x88\x86\xd4\xd5\xab\x57\xd1\
\x68\x34\x98\xcd\x66\x92\x92\x92\x12\x3a\x1f\x4a\xa5\x92\xd6\xd6\
\x56\x1a\x1b\x1b\x19\x1a\x1a\x8a\x3e\xaf\xad\xad\xa5\xa1\xa1\x81\
\xe4\xe4\xe4\xb8\x09\xa8\xad\xad\x8d\xec\xec\x6c\x76\xee\xdc\x89\
\x58\x2c\x5e\x06\x22\x16\x8b\x51\x28\x14\x0c\x0e\x0e\x32\x3e\x3e\
\x8e\x52\xa9\x8c\x59\x18\xe5\x72\x39\x26\x93\x89\xd1\xd1\x51\x6c\
\x36\x5b\x94\x7b\x75\x77\x77\x63\xb7\xdb\x31\x18\x0c\x6b\xaa\xce\
\x00\x03\x03\x03\x7c\xf6\xd9\x67\x7c\xfe\xf9\xe7\xf8\x7c\xbe\xe8\
\xf3\x2d\x5b\xb6\xd0\xd0\xd0\x40\x5e\x5e\x5e\x4c\xbf\xd1\xd1\x51\
\x5a\x5a\x5a\x98\x9f\x9f\xa7\xa6\xa6\x26\x3a\x9f\xe8\xf0\xe1\xc3\
\x87\xef\x54\x69\xa5\x52\xc9\xf0\xf0\x30\xd7\xae\x5d\xc3\xef\xf7\
\x23\x93\xc9\x90\x4a\xa5\xd1\x04\x10\x08\x04\x10\x8b\xc5\xe8\x74\
\x3a\x6e\xde\xbc\x89\xc7\xe3\x89\x4e\x30\x34\x34\x44\x6f\x6f\x2f\
\x81\x40\x80\xcc\xcc\xcc\xb8\x07\xdf\xe7\xf3\xd1\xdc\xdc\x4c\x63\
\x63\x23\x6d\x6d\x6d\x2b\xc6\x52\x52\x52\x68\x68\x68\xc0\x6c\x36\
\xaf\x0a\x29\xbf\xdf\xcf\xf5\xeb\xd7\x69\x69\x69\xc1\xed\x76\xb3\
\x6b\xd7\x2e\x36\x6f\xde\x1c\x9f\xc6\x8f\x8d\x8d\xd1\xd9\xd9\xc9\
\x2f\xbf\xfc\x82\x58\x2c\xc6\x60\x30\xa0\x54\x2a\xa3\x8b\x70\xb9\
\x5c\xd4\xd6\xd6\x62\xb5\x5a\x39\x72\xe4\x48\xcc\xb4\x5d\x5e\x5e\
\x4e\x55\x55\x15\x65\x65\x65\xa4\xa4\xa4\x20\x10\x08\x70\xb9\x5c\
\x74\x77\x77\xd3\xd6\xd6\xc6\x8f\x3f\xfe\x48\x28\x14\x5a\xe5\xf7\
\xe6\x9b\x6f\x52\x58\x58\x48\x7f\x7f\x3f\xe9\xe9\xe9\xd1\xd0\x72\
\x3a\x9d\x4c\x4c\x4c\x30\x3e\x3e\xce\x86\x0d\x1b\x28\x2b\x2b\x5b\
\x01\x22\x26\x90\x3b\xa9\x6d\x64\x64\x84\xe1\xe1\x61\x6c\x36\x5b\
\xf4\xd3\x2b\x14\x0a\x4c\x26\x13\x5b\xb7\x6e\x45\xa7\xd3\xf1\xd1\
\x47\x1f\x71\xfa\xf4\xe9\xb8\x39\xde\x68\x34\xa2\xd7\xeb\x11\x0a\
\x85\x38\x1c\x0e\x66\x66\x66\x62\x02\x00\xa8\xab\xab\xe3\xed\xb7\
\xdf\x8e\xb6\x08\xf7\x36\x56\x69\x69\x69\xe4\xe7\xe7\x53\x5c\x5c\
\x8c\x46\xa3\x79\x70\x63\x75\xaf\x2d\x2d\x2d\x45\x27\x17\x89\x44\
\x2b\xda\x4d\x8b\xc5\xc2\x87\x1f\x7e\x18\xcd\x64\xeb\xb5\x8d\x1b\
\x37\xf2\xce\x3b\xef\x44\x39\x57\x20\x10\xc0\xe7\xf3\x45\xb9\x9b\
\x5c\x2e\x47\xa9\x54\x22\x91\x48\x12\x6b\x75\x57\xbc\x20\x16\xc7\
\xed\x95\x73\x73\x73\xd9\xbb\x77\x2f\x7d\x7d\x7d\x04\x83\xc1\x75\
\x81\x10\x89\x44\xd4\xd5\xd5\xad\x20\x8e\x52\xa9\x34\x61\x5d\x40\
\xf8\xb0\x2d\xea\x93\x4f\x3e\xc9\x8e\x1d\x3b\xd6\xed\x5f\x59\x59\
\xc9\xd3\x4f\x3f\xfd\xd0\xad\xf2\x43\x03\x91\xcb\xe5\x54\x55\x55\
\xad\x8b\x67\x89\x44\x22\x9e\x78\xe2\x89\x84\x18\xc1\xef\x06\x04\
\xa0\xb4\xb4\x74\xcd\xf5\xe3\x6e\x4b\x4b\x4b\x63\xfb\xf6\xed\xbf\
\x89\x78\xf1\x9b\x00\xd1\x6a\xb5\x09\xd1\x93\x3b\x66\x34\x1a\xd7\
\xe5\xf7\xbb\x01\x09\x85\x42\x71\xd3\xea\x83\xf8\x56\xac\x5e\xe4\
\xff\x0d\xc8\xcc\xcc\x0c\x4e\xa7\x33\x61\xbf\xe9\xe9\x69\x66\x67\
\x67\xff\x77\x80\x74\x74\x74\xac\x4b\x45\x99\x9c\x9c\xe4\xe7\x9f\
\x7f\xfe\xdf\x00\xe2\x70\x38\x68\x6d\x6d\x5d\x97\xef\xd2\xd2\x12\
\xad\xad\xad\x09\x89\x16\xbf\x1b\x90\x8b\x17\x2f\xd2\xdd\xdd\xbd\
\x6e\xff\xb6\xb6\x36\xbe\xfb\xee\xbb\x87\x06\x72\xdf\xca\xbe\x34\
\x3f\x4f\xd0\xed\x26\xe8\xf1\x20\x10\x89\x10\xab\x54\x48\xf5\x7a\
\x44\xb7\xab\x6e\x4f\x4f\x0f\xe7\xce\x9d\x7b\xa8\x05\x04\x02\x01\
\xce\x9d\x3b\xc7\xe6\xcd\x9b\xd9\xb0\x61\xc3\xb2\x44\x1a\x0e\xb3\
\xe4\xf5\x12\xf2\xfb\x89\x44\x22\x88\x64\x32\xc4\x2a\x15\xc2\x44\
\xd5\xf8\xf9\xb1\x31\xa6\x5b\x5a\x70\x75\x76\xe2\x1b\x19\x21\xe4\
\xf7\x23\x10\x0a\x11\xc9\xe5\xa8\x0b\x0b\xc9\xaa\xaf\x47\x90\x93\
\xc3\xe9\xd3\xa7\x19\x1e\x1e\x8e\x4b\x6d\xd2\xd3\xd3\x31\x1a\x8d\
\x84\xc3\x61\xa6\xa7\xa7\x99\x9a\x9a\x8a\x99\xdd\xae\x5e\xbd\xca\
\x99\x33\x67\x38\x74\xe8\x10\xfe\xe1\x61\xc6\xbf\xfa\x8a\xb9\xfe\
\x7e\x82\xb3\xb3\x10\x89\x20\x56\xa9\x50\xe5\xe6\xa2\x35\x9b\x31\
\x3c\xf6\x18\x49\x31\x7a\xa5\x55\x40\x6c\xcd\xcd\x8c\x7f\xfd\x35\
\x3e\xab\x95\xe4\xad\x5b\x49\x7f\xe6\x19\x64\x69\x69\x44\x42\x21\
\xfc\x36\x1b\x3e\x8b\x85\xe0\xdc\x1c\x5f\x9f\x3c\xc9\xe5\xcb\x97\
\x63\x8a\x0a\x55\x55\x55\x54\x57\x57\x53\x52\x52\x42\x72\x72\x32\
\x91\x48\x04\x97\xcb\x45\x57\x57\x17\x2d\x2d\x2d\xfc\xf4\xd3\x4f\
\xab\x00\x9d\x39\x73\x86\xec\xec\x6c\x9e\x48\x4d\x65\xae\xb7\x17\
\x79\x56\x16\x3a\xb3\x19\x81\x40\xc0\xa2\xc3\x81\x77\x68\x08\xfb\
\x95\x2b\x24\x6f\xd9\x42\xc6\x73\xcf\x91\xf6\xe4\x93\xf1\xd9\xaf\
\xf5\x8b\x2f\x18\x3e\x7a\x14\x6d\x49\x09\xa6\x3d\x7b\x30\x54\x56\
\x22\xba\x4b\x15\x07\x58\xf2\x7a\xb9\xf0\xfd\xf7\x1c\x39\x72\x64\
\x95\x20\x57\x52\x52\x42\x5d\x5d\x1d\xbb\x77\xef\x8e\xdb\x58\x79\
\xbd\x5e\x2e\x5d\xba\xc4\x37\xdf\x7c\x43\x7f\x7f\xff\x8a\xb1\xac\
\xac\x2c\xde\x7a\xeb\x2d\xca\x36\x6d\x5a\x11\x4a\x91\x50\x88\xe0\
\xdc\x1c\x8e\xff\xfe\x17\xdb\xf9\xf3\xcc\x8f\x8c\xf0\xc8\x2b\xaf\
\xf0\xc8\xcb\x2f\xff\x4a\x77\xee\x74\x88\x93\xff\xf9\x0f\x43\x7f\
\xff\x3b\xc6\xea\x6a\xf2\x0f\x1c\x40\xbb\x6d\x1b\xc2\x18\xb4\xb9\
\xf3\xea\x55\x3e\xfd\xf4\xd3\x15\xe9\x56\x24\x12\x45\xc5\x82\x8a\
\x8a\x8a\xfb\xde\x2c\x49\xa5\x52\x8a\x8b\x8b\x29\x2e\x2e\x26\x14\
\x0a\x71\xeb\xd6\xad\xe8\xd8\xdc\xdc\x1c\x2e\x97\x8b\xe2\x6d\xdb\
\x30\xa4\xa4\xfc\xba\xdb\x77\x85\xb5\x66\xd3\x26\x02\x2e\x17\x13\
\x67\xcf\x22\xd1\x6a\x51\x17\x16\xfe\x0a\x64\x61\x6a\x8a\xc1\xbf\
\xfd\x0d\x59\x5a\x1a\x05\x07\x0e\xa0\x88\xa3\xa4\x58\x2c\x16\x3e\
\xf9\xe4\x13\x6e\xdc\xb8\xb1\x62\x17\x1b\x1a\x1a\xd8\xbf\x7f\x3f\
\x7a\xbd\x7e\xcd\x87\xdc\x60\x30\x50\x5e\x5e\x8e\x52\xa9\xc4\x6a\
\xb5\x46\xbf\xae\xcd\x66\x63\x71\x71\x91\x6d\xdb\xb6\xc5\xfc\xaa\
\x52\xad\x16\x55\x5e\x1e\xbe\xe1\x61\xdc\x3d\x3d\x68\x1f\x7d\x14\
\x69\x72\xf2\x72\xfa\x9d\x69\x6b\xc3\x73\xf3\x26\xa6\x3f\xfc\x01\
\x45\x76\x76\x5c\x1d\xa9\xa9\xa9\x89\xf6\xf6\xf6\xe8\xb3\xb2\xb2\
\x32\x0e\xfe\xe5\x2f\xec\x90\xcb\x99\xbf\xad\x8a\x27\x62\xf3\x37\
\x6e\xb0\x4b\xad\xe6\xe0\x5f\xff\xca\x96\x2d\x5b\x56\xc8\xa5\xc7\
\x8f\x1f\x8f\xab\x30\xca\x33\x33\xc9\xd8\xbb\x77\x39\x29\x5d\xb9\
\xb2\x5c\x47\x42\x81\x00\xae\x9e\x1e\xd4\x85\x85\x18\x1e\x7b\x2c\
\xa6\x63\x24\x12\xe1\xd8\xb1\x63\x9c\x3f\x7f\x3e\xfa\x6c\xcf\x9e\
\x3d\x1c\x3a\x74\x88\xed\x45\x45\x58\xff\xf1\x0f\xa6\x2e\x5d\xe2\
\x01\xcd\xe6\x4a\x69\x74\x69\x89\xc9\x8b\x17\x99\xf8\xf7\xbf\x79\
\xa2\xac\x8c\x83\x07\x0f\x52\x5b\x5b\x1b\x1d\x6f\x6a\x6a\x8a\xdb\
\x46\x03\xe8\x2b\x2b\xd1\x95\x96\xe2\x6c\x6f\x27\xe8\xf1\x20\x0e\
\xba\xdd\xf8\x2c\x16\xf4\xe5\xe5\x48\x62\xf4\xc2\x00\x27\x4f\x9e\
\xe4\xe8\xd1\xa3\xd1\xf3\xf0\xea\xab\xaf\xb2\x6f\xdf\x3e\xb4\x5a\
\x2d\xa1\x40\x00\x45\x56\x16\xde\x81\x01\xc2\x8b\x8b\x88\xd6\x28\
\x9b\x2e\x79\x3c\x78\x06\x06\xd0\x14\x15\x21\x49\x4e\x66\xab\x4e\
\x47\x4a\x4a\x0a\x7a\xbd\x9e\xd3\xa7\x4f\x13\x0a\x85\x68\x6a\x6a\
\x42\xab\xd5\xf2\xd4\x53\x4f\xad\xee\x65\x92\x92\x50\x17\x17\x33\
\xfe\xe5\x97\x04\x1c\x0e\x84\x21\xbf\x9f\x25\x9f\x0f\xe9\x5d\x87\
\xeb\xde\x73\xf1\xe5\x97\x5f\x12\x0e\x87\x49\x4d\x4d\xe5\xd0\xa1\
\x43\x1c\x38\x70\x20\x7a\x41\x2a\x94\x48\x48\x4a\x49\x61\xd1\xe9\
\x24\x94\x80\x1a\x1f\x9a\x9f\x67\x69\x6e\x8e\xa4\xd4\x54\x04\xc2\
\x65\x82\x91\x9e\x9e\xce\xc1\x83\x07\x79\xe3\x8d\x37\xd0\x68\x34\
\xd8\xed\x76\x4e\x9d\x3a\xc5\xd4\xd4\x54\xec\x10\x33\x99\x08\x07\
\x02\x04\x3c\x1e\xc4\x0f\xa2\xd1\x77\x14\x0c\xad\x56\x4b\x7d\x7d\
\xfd\xea\xdd\xb9\x1d\x4e\x02\x81\x00\x12\xa0\xe4\x91\x38\x6a\xbc\
\x44\x22\x61\xff\xfe\xfd\x18\x0c\x06\x4e\x9d\x3a\x85\x4c\x26\x8b\
\x1f\xb2\x77\x3d\x17\x0b\x6f\x97\xff\x45\xbb\x3d\xe6\xbb\x19\x19\
\x19\xbc\xfb\xee\xbb\x08\x04\x02\xd2\xd2\xd2\x56\xc7\x7a\x30\xc8\
\xe2\xf4\xf4\x32\x75\x49\x40\x8d\x17\x2b\x14\x48\x34\x1a\xfc\x93\
\x93\x44\x42\x21\x04\xf7\xb4\xca\x75\x75\x75\x98\xcd\x66\x84\x42\
\x61\xdc\x6b\x39\xff\xc4\x04\xc2\xa4\x24\xa4\x1a\x0d\x42\x89\x4e\
\x87\x2a\x3f\x1f\xcf\xad\x5b\xcb\x94\x20\x86\xa5\xa7\xa7\xc7\x04\
\x01\xb0\x60\xb3\xe1\x1b\x1d\x45\x55\x50\x90\x18\x10\xb5\x1a\x55\
\x41\x01\xde\x5b\xb7\x08\xb8\x5c\x71\x37\x31\x1e\x88\xd0\xc2\x02\
\x73\xbd\xbd\x28\xb2\xb3\x49\x32\x18\x10\x8a\x24\x12\x74\x66\x33\
\xde\x81\x01\x66\xee\x52\xc3\xd7\xdc\x1c\xb5\xb6\xb2\xe4\xf1\xa0\
\xbb\xeb\xce\x7b\x4d\xb4\x5b\x2c\x46\x5f\x5e\xce\xfc\xe8\x28\xf6\
\xdb\x29\x34\xa1\xf6\xe1\xc7\x1f\x71\xff\xfc\x33\xfa\x8a\x8a\x65\
\x16\x00\x60\xd8\xb9\x93\xe4\x2d\x5b\xb0\x35\x37\xe3\x4d\xa0\x1e\
\x38\xdb\xdb\x99\xbc\x70\x81\x94\xaa\x2a\xb4\x09\x02\x01\x30\xec\
\xd8\x81\xbe\xb2\x12\x5b\x73\x33\xae\x9e\x9e\xb5\xd7\x9f\xd1\x51\
\x26\xbe\xf9\x06\x65\x4e\x0e\xa9\xbb\x76\xfd\xda\x8f\xc8\x8c\x46\
\x32\xfe\xf8\x47\xfc\xe3\xe3\x8c\xfc\xeb\x5f\xf8\xe2\x5c\x7c\xde\
\x6d\xae\xee\x6e\xac\x5f\x7c\x81\x40\x22\x21\xf3\xb9\xe7\x10\x25\
\x78\xa5\x00\x20\x51\xab\xc9\x7c\xfe\x79\x42\x7e\x3f\x96\xc6\x46\
\x5c\x5d\x5d\x0f\xf4\xf1\x0c\x0c\x60\xfd\xe7\x3f\xf1\x0e\x0c\x90\
\xf5\xa7\x3f\x45\x59\x48\x94\x6b\xa9\x72\x73\x11\x4a\xa5\xd8\xce\
\x9f\xc7\xd3\xd7\x87\x40\x24\x22\x29\x35\x75\xc5\x02\x23\x91\x08\
\x41\xb7\x1b\xdb\x85\x0b\x8c\x1c\x3d\x4a\x70\x6e\x8e\x0d\xaf\xbd\
\x86\xb1\xaa\x6a\xdd\xfd\x88\x22\x2b\x0b\xb1\x42\x81\xb3\xbd\x1d\
\x67\x7b\x3b\x21\xbf\x7f\x39\x71\x28\x14\xd1\xb4\x1c\x09\x85\x08\
\x38\x9d\x4c\x7d\xfb\x2d\xd6\xcf\x3f\xc7\x3b\x34\x44\xce\x9f\xff\
\x4c\xc6\x5d\xb7\x59\xab\xb4\xdf\xa9\x6f\xbf\x65\xec\xab\xaf\xf0\
\xf4\xf7\xa3\x29\x2e\x46\x5d\x54\x84\xd4\x60\x80\x70\x98\x05\xbb\
\x9d\xb9\xde\xde\xe5\x02\x5a\x51\x41\xc6\xf3\xcf\x93\xf2\x10\x2a\
\xe3\x8a\x30\xed\xec\x64\xe2\xec\x59\x66\xda\xda\x90\xa5\xa5\xa1\
\xcc\xcd\x25\xc9\x68\x44\x20\x14\xb2\xe8\x70\xe0\xb3\x58\xf0\x4f\
\x4c\xa0\x7d\xf4\x51\x32\xea\xea\xa2\x21\x75\x5f\x11\xdb\x3f\x39\
\xc9\x4c\x6b\x2b\xae\xee\x6e\x7c\x16\xcb\x72\xa1\x13\x08\x10\x2b\
\x95\xa8\x0a\x0b\xd1\x57\x54\x60\xac\xaa\x8a\xcb\x04\xd6\x6b\x4b\
\xf3\xf3\x38\x3b\x3a\x70\x77\x77\x33\x77\xf3\xe6\xaf\x8d\x95\x5a\
\x8d\x2a\x2f\x0f\x9d\xd9\x8c\xbe\xb2\x12\x69\x8c\x9b\xac\xfb\xaa\
\xf1\xa1\x85\x05\x02\x6e\x37\xe1\xdb\x7f\x3c\x13\xca\xe5\x48\x75\
\x3a\x44\xf7\x51\xc5\x7f\x0b\x0b\x87\xc3\x84\xfd\x7e\x96\xfc\x7e\
\x22\xe1\x30\x62\xb9\x1c\x91\x42\x81\xf0\x3e\xb2\xec\xff\x01\x95\
\x50\xe6\x01\x1e\x0b\xf9\xe2\x00\x00\x00\x00\x49\x45\x4e\x44\xae\
\x42\x60\x82\
"
qt_resource_name = b"\
\x00\x06\
\x07\x03\x7d\xc3\
\x00\x69\
\x00\x6d\x00\x61\x00\x67\x00\x65\x00\x73\
\x00\x04\
\x00\x07\x8b\x74\
\x00\x71\
\x00\x75\x00\x61\x00\x64\
\x00\x08\
\x0b\x77\x58\x47\
\x00\x71\
\x00\x75\x00\x61\x00\x64\x00\x2e\x00\x70\x00\x6e\x00\x67\
"
qt_resource_struct_v1 = b"\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\
\x00\x00\x00\x12\x00\x02\x00\x00\x00\x01\x00\x00\x00\x03\
\x00\x00\x00\x20\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
"
qt_resource_struct_v2 = b"\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\
\x00\x00\x00\x00\x00\x00\x00\x00\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\
\x00\x00\x00\x00\x00\x00\x00\x00\
\x00\x00\x00\x12\x00\x02\x00\x00\x00\x01\x00\x00\x00\x03\
\x00\x00\x00\x00\x00\x00\x00\x00\
\x00\x00\x00\x20\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
\x00\x00\x01\x7f\xbe\x01\xc4\x19\
"
qt_version = [int(v) for v in QtCore.qVersion().split('.')]
if qt_version < [5, 8, 0]:
rcc_version = 1
qt_resource_struct = qt_resource_struct_v1
else:
rcc_version = 2
qt_resource_struct = qt_resource_struct_v2
def qInitResources():
QtCore.qRegisterResourceData(rcc_version, qt_resource_struct, qt_resource_name, qt_resource_data)
def qCleanupResources():
QtCore.qUnregisterResourceData(rcc_version, qt_resource_struct, qt_resource_name, qt_resource_data)
qInitResources()
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file '/home/bitcraze/MicroCART/groundStation/src/vrpn/vrpn_Qt_GUI_server/vrpn_Qt_AppExample/MainWindow.ui'
#
# Created by: PyQt5 UI code generator 5.15.4
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(295, 281)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget)
self.horizontalLayout.setObjectName("horizontalLayout")
self.groupBox = QtWidgets.QGroupBox(self.centralwidget)
self.groupBox.setObjectName("groupBox")
self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.groupBox)
self.verticalLayout_3.setObjectName("verticalLayout_3")
self.pushButton = QtWidgets.QPushButton(self.groupBox)
self.pushButton.setObjectName("pushButton")
self.verticalLayout_3.addWidget(self.pushButton)
self.line_2 = QtWidgets.QFrame(self.groupBox)
self.line_2.setFrameShape(QtWidgets.QFrame.HLine)
self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken)
self.line_2.setObjectName("line_2")
self.verticalLayout_3.addWidget(self.line_2)
self.radioButton = QtWidgets.QRadioButton(self.groupBox)
self.radioButton.setChecked(True)
self.radioButton.setObjectName("radioButton")
self.verticalLayout_3.addWidget(self.radioButton)
self.radioButton_2 = QtWidgets.QRadioButton(self.groupBox)
self.radioButton_2.setObjectName("radioButton_2")
self.verticalLayout_3.addWidget(self.radioButton_2)
self.radioButton_3 = QtWidgets.QRadioButton(self.groupBox)
self.radioButton_3.setObjectName("radioButton_3")
self.verticalLayout_3.addWidget(self.radioButton_3)
self.line = QtWidgets.QFrame(self.groupBox)
self.line.setFrameShape(QtWidgets.QFrame.HLine)
self.line.setFrameShadow(QtWidgets.QFrame.Sunken)
self.line.setObjectName("line")
self.verticalLayout_3.addWidget(self.line)
self.checkBox = QtWidgets.QCheckBox(self.groupBox)
self.checkBox.setChecked(True)
self.checkBox.setObjectName("checkBox")
self.verticalLayout_3.addWidget(self.checkBox)
spacerItem = QtWidgets.QSpacerItem(20, 7, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.verticalLayout_3.addItem(spacerItem)
spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.verticalLayout_3.addItem(spacerItem1)
self.horizontalLayout.addWidget(self.groupBox)
self.line_5 = QtWidgets.QFrame(self.centralwidget)
self.line_5.setFrameShape(QtWidgets.QFrame.VLine)
self.line_5.setFrameShadow(QtWidgets.QFrame.Sunken)
self.line_5.setObjectName("line_5")
self.horizontalLayout.addWidget(self.line_5)
self.groupBox_2 = QtWidgets.QGroupBox(self.centralwidget)
self.groupBox_2.setObjectName("groupBox_2")
self.verticalLayout = QtWidgets.QVBoxLayout(self.groupBox_2)
self.verticalLayout.setObjectName("verticalLayout")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.label_3 = QtWidgets.QLabel(self.groupBox_2)
self.label_3.setObjectName("label_3")
self.horizontalLayout_2.addWidget(self.label_3)
self.spinBox = QtWidgets.QSpinBox(self.groupBox_2)
self.spinBox.setSingleStep(5)
self.spinBox.setProperty("value", 10)
self.spinBox.setObjectName("spinBox")
self.horizontalLayout_2.addWidget(self.spinBox)
self.verticalLayout.addLayout(self.horizontalLayout_2)
self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
self.label_4 = QtWidgets.QLabel(self.groupBox_2)
self.label_4.setObjectName("label_4")
self.horizontalLayout_3.addWidget(self.label_4)
self.doubleSpinBox = QtWidgets.QDoubleSpinBox(self.groupBox_2)
self.doubleSpinBox.setMaximum(6.28)
self.doubleSpinBox.setSingleStep(0.01)
self.doubleSpinBox.setProperty("value", 3.14)
self.doubleSpinBox.setObjectName("doubleSpinBox")
self.horizontalLayout_3.addWidget(self.doubleSpinBox)
self.verticalLayout.addLayout(self.horizontalLayout_3)
self.line_3 = QtWidgets.QFrame(self.groupBox_2)
self.line_3.setFrameShape(QtWidgets.QFrame.HLine)
self.line_3.setFrameShadow(QtWidgets.QFrame.Sunken)
self.line_3.setObjectName("line_3")
self.verticalLayout.addWidget(self.line_3)
self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
self.horizontalLayout_4.setObjectName("horizontalLayout_4")
self.label_5 = QtWidgets.QLabel(self.groupBox_2)
self.label_5.setObjectName("label_5")
self.horizontalLayout_4.addWidget(self.label_5)
self.dial = QtWidgets.QDial(self.groupBox_2)
self.dial.setProperty("value", 25)
self.dial.setWrapping(False)
self.dial.setNotchesVisible(True)
self.dial.setObjectName("dial")
self.horizontalLayout_4.addWidget(self.dial)
self.verticalLayout.addLayout(self.horizontalLayout_4)
self.line_4 = QtWidgets.QFrame(self.groupBox_2)
self.line_4.setFrameShape(QtWidgets.QFrame.HLine)
self.line_4.setFrameShadow(QtWidgets.QFrame.Sunken)
self.line_4.setObjectName("line_4")
self.verticalLayout.addWidget(self.line_4)
self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
self.horizontalLayout_6.setObjectName("horizontalLayout_6")
self.label_7 = QtWidgets.QLabel(self.groupBox_2)
self.label_7.setObjectName("label_7")
self.horizontalLayout_6.addWidget(self.label_7)
self.horizontalScrollBar = QtWidgets.QScrollBar(self.groupBox_2)
self.horizontalScrollBar.setProperty("value", 50)
self.horizontalScrollBar.setOrientation(QtCore.Qt.Horizontal)
self.horizontalScrollBar.setObjectName("horizontalScrollBar")
self.horizontalLayout_6.addWidget(self.horizontalScrollBar)
self.verticalLayout.addLayout(self.horizontalLayout_6)
self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
self.horizontalLayout_5.setObjectName("horizontalLayout_5")
self.label_6 = QtWidgets.QLabel(self.groupBox_2)
self.label_6.setObjectName("label_6")
self.horizontalLayout_5.addWidget(self.label_6)
self.horizontalSlider = QtWidgets.QSlider(self.groupBox_2)
self.horizontalSlider.setProperty("value", 75)
self.horizontalSlider.setOrientation(QtCore.Qt.Horizontal)
self.horizontalSlider.setTickPosition(QtWidgets.QSlider.TicksBelow)
self.horizontalSlider.setObjectName("horizontalSlider")
self.horizontalLayout_5.addWidget(self.horizontalSlider)
self.verticalLayout.addLayout(self.horizontalLayout_5)
spacerItem2 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.verticalLayout.addItem(spacerItem2)
self.horizontalLayout.addWidget(self.groupBox_2)
MainWindow.setCentralWidget(self.centralwidget)
self.menubar = QtWidgets.QMenuBar(MainWindow)
self.menubar.setGeometry(QtCore.QRect(0, 0, 295, 21))
self.menubar.setObjectName("menubar")
MainWindow.setMenuBar(self.menubar)
self.statusbar = QtWidgets.QStatusBar(MainWindow)
self.statusbar.setObjectName("statusbar")
MainWindow.setStatusBar(self.statusbar)
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
self.groupBox.setTitle(_translate("MainWindow", "Buttons"))
self.pushButton.setText(_translate("MainWindow", "Push Button"))
self.radioButton.setText(_translate("MainWindow", "Radio Button 1"))
self.radioButton_2.setText(_translate("MainWindow", "Radio Button 2"))
self.radioButton_3.setText(_translate("MainWindow", "Radio Button 3"))
self.checkBox.setText(_translate("MainWindow", "Check Box"))
self.groupBox_2.setTitle(_translate("MainWindow", "Analogs"))
self.label_3.setText(_translate("MainWindow", "Spin Box"))
self.label_4.setText(_translate("MainWindow", "Double Spin Box"))
self.label_5.setText(_translate("MainWindow", "Dial"))
self.label_7.setText(_translate("MainWindow", "Scroll Bar"))
self.label_6.setText(_translate("MainWindow", "Slider"))
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file '/home/bitcraze/MicroCART/groundStation/gui/MicroCART/mainwindow.ui'
#
# Created by: PyQt5 UI code generator 5.15.4
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.setEnabled(True)
MainWindow.resize(1186, 1034)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth())
MainWindow.setSizePolicy(sizePolicy)
self.centralWidget = QtWidgets.QWidget(MainWindow)
self.centralWidget.setObjectName("centralWidget")
self.verticalLayout_1 = QtWidgets.QVBoxLayout(self.centralWidget)
self.verticalLayout_1.setContentsMargins(11, 11, 11, 11)
self.verticalLayout_1.setSpacing(6)
self.verticalLayout_1.setObjectName("verticalLayout_1")
self.tabWidget = QtWidgets.QTabWidget(self.centralWidget)
self.tabWidget.setEnabled(True)
self.tabWidget.setMaximumSize(QtCore.QSize(16777215, 1677))
self.tabWidget.setObjectName("tabWidget")
self.backend = QtWidgets.QWidget()
self.backend.setObjectName("backend")
self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.backend)
self.verticalLayout_2.setContentsMargins(11, 11, 11, 11)
self.verticalLayout_2.setSpacing(6)
self.verticalLayout_2.setObjectName("verticalLayout_2")
self.horizontalLayout_1 = QtWidgets.QHBoxLayout()
self.horizontalLayout_1.setSpacing(6)
self.horizontalLayout_1.setObjectName("horizontalLayout_1")
self.backendPath = QtWidgets.QLineEdit(self.backend)
self.backendPath.setEnabled(True)
self.backendPath.setObjectName("backendPath")
self.horizontalLayout_1.addWidget(self.backendPath)
self.chooseBackend = QtWidgets.QPushButton(self.backend)
self.chooseBackend.setEnabled(True)
self.chooseBackend.setObjectName("chooseBackend")
self.horizontalLayout_1.addWidget(self.chooseBackend)
self.verticalLayout_2.addLayout(self.horizontalLayout_1)
self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
self.horizontalLayout_2.setSpacing(6)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.pbConnect = QtWidgets.QPushButton(self.backend)
self.pbConnect.setEnabled(False)
self.pbConnect.setProperty("disabled", True)
self.pbConnect.setObjectName("pbConnect")
self.horizontalLayout_2.addWidget(self.pbConnect)
self.pb_connectTS = QtWidgets.QPushButton(self.backend)
self.pb_connectTS.setObjectName("pb_connectTS")
self.horizontalLayout_2.addWidget(self.pb_connectTS)
self.pb_disconnectTS = QtWidgets.QPushButton(self.backend)
self.pb_disconnectTS.setObjectName("pb_disconnectTS")
self.horizontalLayout_2.addWidget(self.pb_disconnectTS)
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_2.addItem(spacerItem)
self.pbStop = QtWidgets.QPushButton(self.backend)
self.pbStop.setEnabled(False)
self.pbStop.setObjectName("pbStop")
self.horizontalLayout_2.addWidget(self.pbStop)
self.verticalLayout_2.addLayout(self.horizontalLayout_2)
self.line_7 = QtWidgets.QFrame(self.backend)
self.line_7.setFrameShape(QtWidgets.QFrame.HLine)
self.line_7.setFrameShadow(QtWidgets.QFrame.Sunken)
self.line_7.setObjectName("line_7")
self.verticalLayout_2.addWidget(self.line_7)
self.vConsole = QtWidgets.QTextEdit(self.backend)
self.vConsole.setEnabled(True)
self.vConsole.setReadOnly(True)
self.vConsole.setObjectName("vConsole")
self.verticalLayout_2.addWidget(self.vConsole)
self.tabWidget.addTab(self.backend, "")
self.param = QtWidgets.QWidget()
self.param.setObjectName("param")
self.paramGroupComboBox = QtWidgets.QComboBox(self.param)
self.paramGroupComboBox.setGeometry(QtCore.QRect(480, 100, 201, 25))
self.paramGroupComboBox.setObjectName("paramGroupComboBox")
self.paramEntriesComboBox = QtWidgets.QComboBox(self.param)
self.paramEntriesComboBox.setGeometry(QtCore.QRect(480, 150, 201, 25))
self.paramEntriesComboBox.setObjectName("paramEntriesComboBox")
self.groupLabel = QtWidgets.QLabel(self.param)
self.groupLabel.setGeometry(QtCore.QRect(410, 100, 54, 31))
self.groupLabel.setObjectName("groupLabel")
self.getParamLabel = QtWidgets.QLabel(self.param)
self.getParamLabel.setGeometry(QtCore.QRect(540, 40, 71, 17))
self.getParamLabel.setObjectName("getParamLabel")
self.label = QtWidgets.QLabel(self.param)
self.label.setGeometry(QtCore.QRect(410, 150, 54, 17))
self.label.setObjectName("label")
self.line = QtWidgets.QFrame(self.param)
self.line.setGeometry(QtCore.QRect(0, 279, 1111, 31))
self.line.setFrameShape(QtWidgets.QFrame.HLine)
self.line.setFrameShadow(QtWidgets.QFrame.Sunken)
self.line.setObjectName("line")
self.setParamLabel = QtWidgets.QLabel(self.param)
self.setParamLabel.setGeometry(QtCore.QRect(530, 320, 71, 17))
self.setParamLabel.setObjectName("setParamLabel")
self.valueLabel = QtWidgets.QLabel(self.param)
self.valueLabel.setGeometry(QtCore.QRect(410, 240, 54, 17))
self.valueLabel.setObjectName("valueLabel")
self.valueVallabel = QtWidgets.QLabel(self.param)
self.valueVallabel.setGeometry(QtCore.QRect(480, 240, 201, 20))
self.valueVallabel.setText("")
self.valueVallabel.setObjectName("valueVallabel")
self.groupLabel_set = QtWidgets.QLabel(self.param)
self.groupLabel_set.setGeometry(QtCore.QRect(400, 370, 54, 31))
self.groupLabel_set.setObjectName("groupLabel_set")
self.label_5 = QtWidgets.QLabel(self.param)
self.label_5.setGeometry(QtCore.QRect(400, 410, 54, 17))
self.label_5.setObjectName("label_5")
self.valueLabel_2 = QtWidgets.QLabel(self.param)
self.valueLabel_2.setGeometry(QtCore.QRect(400, 460, 54, 17))
self.valueLabel_2.setObjectName("valueLabel_2")
self.paramGroupComboBox_2 = QtWidgets.QComboBox(self.param)
self.paramGroupComboBox_2.setGeometry(QtCore.QRect(470, 370, 201, 25))
self.paramGroupComboBox_2.setObjectName("paramGroupComboBox_2")
self.paramEntriesComboBox_2 = QtWidgets.QComboBox(self.param)
self.paramEntriesComboBox_2.setGeometry(QtCore.QRect(470, 410, 201, 25))
self.paramEntriesComboBox_2.setObjectName("paramEntriesComboBox_2")
self.pb_getParam = QtWidgets.QPushButton(self.param)
self.pb_getParam.setGeometry(QtCore.QRect(540, 200, 80, 25))
self.pb_getParam.setObjectName("pb_getParam")
self.pb_setParam = QtWidgets.QPushButton(self.param)
self.pb_setParam.setGeometry(QtCore.QRect(530, 510, 80, 25))
self.pb_setParam.setObjectName("pb_setParam")
self.setValueSpin = QtWidgets.QDoubleSpinBox(self.param)
self.setValueSpin.setGeometry(QtCore.QRect(520, 460, 111, 26))
self.setValueSpin.setDecimals(3)
self.setValueSpin.setObjectName("setValueSpin")
self.YawAngleKpParam = QtWidgets.QLabel(self.param)
self.YawAngleKpParam.setGeometry(QtCore.QRect(420, 70, 54, 17))
self.YawAngleKpParam.setText("")
self.YawAngleKpParam.setObjectName("YawAngleKpParam")
self.YawAngleKdParam = QtWidgets.QLabel(self.param)
self.YawAngleKdParam.setGeometry(QtCore.QRect(500, 70, 54, 17))
self.YawAngleKdParam.setText("")
self.YawAngleKdParam.setObjectName("YawAngleKdParam")
self.YawAngleKiParam = QtWidgets.QLabel(self.param)
self.YawAngleKiParam.setGeometry(QtCore.QRect(570, 70, 54, 17))
self.YawAngleKiParam.setText("")
self.YawAngleKiParam.setObjectName("YawAngleKiParam")
self.PitchAngleKiParam = QtWidgets.QLabel(self.param)
self.PitchAngleKiParam.setGeometry(QtCore.QRect(810, 70, 54, 17))
self.PitchAngleKiParam.setText("")
self.PitchAngleKiParam.setObjectName("PitchAngleKiParam")
self.PitchAngleKdParam = QtWidgets.QLabel(self.param)
self.PitchAngleKdParam.setGeometry(QtCore.QRect(740, 70, 54, 17))
self.PitchAngleKdParam.setText("")
self.PitchAngleKdParam.setObjectName("PitchAngleKdParam")
self.PitchAngleKpParam = QtWidgets.QLabel(self.param)
self.PitchAngleKpParam.setGeometry(QtCore.QRect(660, 70, 54, 17))
self.PitchAngleKpParam.setText("")
self.PitchAngleKpParam.setObjectName("PitchAngleKpParam")
self.RollAngleKiParam = QtWidgets.QLabel(self.param)
self.RollAngleKiParam.setGeometry(QtCore.QRect(1060, 70, 54, 17))
self.RollAngleKiParam.setText("")
self.RollAngleKiParam.setObjectName("RollAngleKiParam")
self.RollAngleKdParam = QtWidgets.QLabel(self.param)
self.RollAngleKdParam.setGeometry(QtCore.QRect(990, 70, 54, 17))
self.RollAngleKdParam.setText("")
self.RollAngleKdParam.setObjectName("RollAngleKdParam")
self.RollAngleKpParam = QtWidgets.QLabel(self.param)
self.RollAngleKpParam.setGeometry(QtCore.QRect(910, 70, 54, 17))
self.RollAngleKpParam.setText("")
self.RollAngleKpParam.setObjectName("RollAngleKpParam")
self.RollRateKdParam = QtWidgets.QLabel(self.param)
self.RollRateKdParam.setGeometry(QtCore.QRect(990, 210, 54, 17))
self.RollRateKdParam.setText("")
self.RollRateKdParam.setObjectName("RollRateKdParam")
self.YawRateKiParam = QtWidgets.QLabel(self.param)
self.YawRateKiParam.setGeometry(QtCore.QRect(570, 210, 54, 17))
self.YawRateKiParam.setText("")
self.YawRateKiParam.setObjectName("YawRateKiParam")
self.RollRateKpParam = QtWidgets.QLabel(self.param)
self.RollRateKpParam.setGeometry(QtCore.QRect(910, 210, 54, 17))
self.RollRateKpParam.setText("")
self.RollRateKpParam.setObjectName("RollRateKpParam")
self.PitchRateKiParam = QtWidgets.QLabel(self.param)
self.PitchRateKiParam.setGeometry(QtCore.QRect(810, 210, 54, 17))
self.PitchRateKiParam.setText("")
self.PitchRateKiParam.setObjectName("PitchRateKiParam")
self.YawRateKdParam = QtWidgets.QLabel(self.param)
self.YawRateKdParam.setGeometry(QtCore.QRect(500, 210, 54, 17))
self.YawRateKdParam.setText("")
self.YawRateKdParam.setObjectName("YawRateKdParam")
self.YawRateKpParam = QtWidgets.QLabel(self.param)
self.YawRateKpParam.setGeometry(QtCore.QRect(420, 210, 54, 17))
self.YawRateKpParam.setText("")
self.YawRateKpParam.setObjectName("YawRateKpParam")
self.RollRateKiParam = QtWidgets.QLabel(self.param)
self.RollRateKiParam.setGeometry(QtCore.QRect(1060, 210, 54, 17))
self.RollRateKiParam.setText("")
self.RollRateKiParam.setObjectName("RollRateKiParam")
self.PitchRateKdParam = QtWidgets.QLabel(self.param)
self.PitchRateKdParam.setGeometry(QtCore.QRect(740, 210, 54, 17))
self.PitchRateKdParam.setText("")
self.PitchRateKdParam.setObjectName("PitchRateKdParam")
self.PitchRateKpParam = QtWidgets.QLabel(self.param)
self.PitchRateKpParam.setGeometry(QtCore.QRect(660, 210, 54, 17))
self.PitchRateKpParam.setText("")
self.PitchRateKpParam.setObjectName("PitchRateKpParam")
self.pb_setParam_JSON = QtWidgets.QPushButton(self.param)
self.pb_setParam_JSON.setGeometry(QtCore.QRect(470, 550, 201, 25))
self.pb_setParam_JSON.setObjectName("pb_setParam_JSON")
self.json_note = QtWidgets.QLabel(self.param)
self.json_note.setGeometry(QtCore.QRect(470, 580, 211, 16))
self.json_note.setObjectName("json_note")
self.JsonParamComplete = QtWidgets.QLabel(self.param)
self.JsonParamComplete.setEnabled(False)
self.JsonParamComplete.setGeometry(QtCore.QRect(540, 600, 91, 21))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.JsonParamComplete.sizePolicy().hasHeightForWidth())
self.JsonParamComplete.setSizePolicy(sizePolicy)
self.JsonParamComplete.setLineWidth(3)
self.JsonParamComplete.setObjectName("JsonParamComplete")
self.pb_editJSONFile = QtWidgets.QPushButton(self.param)
self.pb_editJSONFile.setGeometry(QtCore.QRect(680, 550, 31, 21))
self.pb_editJSONFile.setObjectName("pb_editJSONFile")
self.progressBar = QtWidgets.QProgressBar(self.param)
self.progressBar.setGeometry(QtCore.QRect(510, 630, 118, 23))
self.progressBar.setProperty("value", 24)
self.progressBar.setObjectName("progressBar")
self.tabWidget.addTab(self.param, "")
self.Gamepad = QtWidgets.QWidget()
self.Gamepad.setObjectName("Gamepad")
self.pb_configRoll = QtWidgets.QPushButton(self.Gamepad)
self.pb_configRoll.setGeometry(QtCore.QRect(720, 130, 141, 25))
self.pb_configRoll.setObjectName("pb_configRoll")
self.rollVizBar = QtWidgets.QSlider(self.Gamepad)
self.rollVizBar.setEnabled(False)
self.rollVizBar.setGeometry(QtCore.QRect(710, 160, 160, 16))
self.rollVizBar.setMinimum(-30)
self.rollVizBar.setMaximum(30)
self.rollVizBar.setProperty("value", 0)
self.rollVizBar.setOrientation(QtCore.Qt.Horizontal)
self.rollVizBar.setObjectName("rollVizBar")
self.pb_resetConfig = QtWidgets.QPushButton(self.Gamepad)
self.pb_resetConfig.setGeometry(QtCore.QRect(440, 90, 191, 25))
self.pb_resetConfig.setObjectName("pb_resetConfig")
self.pb_configYaw = QtWidgets.QPushButton(self.Gamepad)
self.pb_configYaw.setGeometry(QtCore.QRect(160, 140, 141, 25))
self.pb_configYaw.setObjectName("pb_configYaw")
self.yawVizBar = QtWidgets.QSlider(self.Gamepad)
self.yawVizBar.setEnabled(False)
self.yawVizBar.setGeometry(QtCore.QRect(150, 170, 160, 16))
self.yawVizBar.setMinimum(-45)
self.yawVizBar.setMaximum(45)
self.yawVizBar.setProperty("value", 0)
self.yawVizBar.setOrientation(QtCore.Qt.Horizontal)
self.yawVizBar.setTickPosition(QtWidgets.QSlider.NoTicks)
self.yawVizBar.setObjectName("yawVizBar")
self.thrustVizBar = QtWidgets.QSlider(self.Gamepad)
self.thrustVizBar.setEnabled(False)
self.thrustVizBar.setGeometry(QtCore.QRect(223, 190, 16, 160))
self.thrustVizBar.setMaximum(60000)
self.thrustVizBar.setProperty("value", 50)
self.thrustVizBar.setOrientation(QtCore.Qt.Vertical)
self.thrustVizBar.setObjectName("thrustVizBar")
self.pitchVizBar = QtWidgets.QSlider(self.Gamepad)
self.pitchVizBar.setEnabled(False)
self.pitchVizBar.setGeometry(QtCore.QRect(783, 180, 16, 160))
self.pitchVizBar.setMinimum(-30)
self.pitchVizBar.setMaximum(30)
self.pitchVizBar.setProperty("value", 0)
self.pitchVizBar.setOrientation(QtCore.Qt.Vertical)
self.pitchVizBar.setObjectName("pitchVizBar")
self.pb_configThrust = QtWidgets.QPushButton(self.Gamepad)
self.pb_configThrust.setGeometry(QtCore.QRect(246, 280, 141, 25))
self.pb_configThrust.setObjectName("pb_configThrust")
self.pb_configPitch = QtWidgets.QPushButton(self.Gamepad)
self.pb_configPitch.setGeometry(QtCore.QRect(810, 270, 141, 25))
self.pb_configPitch.setObjectName("pb_configPitch")
self.noGamepadWarning = QtWidgets.QLabel(self.Gamepad)
self.noGamepadWarning.setGeometry(QtCore.QRect(381, 10, 311, 61))
font = QtGui.QFont()
font.setPointSize(20)
font.setUnderline(True)
font.setKerning(True)
self.noGamepadWarning.setFont(font)
self.noGamepadWarning.setScaledContents(False)
self.noGamepadWarning.setAlignment(QtCore.Qt.AlignCenter)
self.noGamepadWarning.setObjectName("noGamepadWarning")
self.yawScaleLabel = QtWidgets.QLabel(self.Gamepad)
self.yawScaleLabel.setGeometry(QtCore.QRect(162, 113, 71, 20))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.yawScaleLabel.sizePolicy().hasHeightForWidth())
self.yawScaleLabel.setSizePolicy(sizePolicy)
self.yawScaleLabel.setObjectName("yawScaleLabel")
self.gamepadYawScale = QtWidgets.QSpinBox(self.Gamepad)
self.gamepadYawScale.setGeometry(QtCore.QRect(240, 110, 51, 26))
self.gamepadYawScale.setMinimum(-999)
self.gamepadYawScale.setMaximum(999)
self.gamepadYawScale.setProperty("value", 45)
self.gamepadYawScale.setObjectName("gamepadYawScale")
self.horizontalLayoutWidget = QtWidgets.QWidget(self.Gamepad)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(160, 390, 791, 151))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(11, 11, 11, 11)
self.horizontalLayout.setSpacing(6)
self.horizontalLayout.setObjectName("horizontalLayout")
self.label_6 = QtWidgets.QLabel(self.horizontalLayoutWidget)
self.label_6.setAlignment(QtCore.Qt.AlignCenter)
self.label_6.setWordWrap(True)
self.label_6.setObjectName("label_6")
self.horizontalLayout.addWidget(self.label_6)
self.line_2 = QtWidgets.QFrame(self.horizontalLayoutWidget)
self.line_2.setFrameShape(QtWidgets.QFrame.VLine)
self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken)
self.line_2.setObjectName("line_2")
self.horizontalLayout.addWidget(self.line_2)
spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout.addItem(spacerItem1)
self.label_7 = QtWidgets.QLabel(self.horizontalLayoutWidget)
self.label_7.setAlignment(QtCore.Qt.AlignCenter)
self.label_7.setWordWrap(True)
self.label_7.setObjectName("label_7")
self.horizontalLayout.addWidget(self.label_7)
self.line_3 = QtWidgets.QFrame(self.horizontalLayoutWidget)
self.line_3.setFrameShape(QtWidgets.QFrame.VLine)
self.line_3.setFrameShadow(QtWidgets.QFrame.Sunken)
self.line_3.setObjectName("line_3")
self.horizontalLayout.addWidget(self.line_3)
spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout.addItem(spacerItem2)
self.label_8 = QtWidgets.QLabel(self.horizontalLayoutWidget)
self.label_8.setAlignment(QtCore.Qt.AlignCenter)
self.label_8.setWordWrap(True)
self.label_8.setObjectName("label_8")
self.horizontalLayout.addWidget(self.label_8)
self.gamepadThrustScale = QtWidgets.QSpinBox(self.Gamepad)
self.gamepadThrustScale.setGeometry(QtCore.QRect(342, 228, 71, 26))
self.gamepadThrustScale.setMinimum(-60000)
self.gamepadThrustScale.setMaximum(60000)
self.gamepadThrustScale.setProperty("value", 60000)
self.gamepadThrustScale.setObjectName("gamepadThrustScale")
self.thrustScaleLabel = QtWidgets.QLabel(self.Gamepad)
self.thrustScaleLabel.setGeometry(QtCore.QRect(247, 230, 191, 20))
self.thrustScaleLabel.setObjectName("thrustScaleLabel")
self.thrustScaleNote = QtWidgets.QLabel(self.Gamepad)
self.thrustScaleNote.setGeometry(QtCore.QRect(248, 256, 221, 17))
self.thrustScaleNote.setObjectName("thrustScaleNote")
self.gamepadRollScale = QtWidgets.QSpinBox(self.Gamepad)
self.gamepadRollScale.setGeometry(QtCore.QRect(798, 100, 51, 26))
self.gamepadRollScale.setMinimum(-999)
self.gamepadRollScale.setMaximum(999)
self.gamepadRollScale.setProperty("value", 30)
self.gamepadRollScale.setObjectName("gamepadRollScale")
self.rollScaleLabel = QtWidgets.QLabel(self.Gamepad)
self.rollScaleLabel.setEnabled(True)
self.rollScaleLabel.setGeometry(QtCore.QRect(720, 103, 71, 20))
self.rollScaleLabel.setObjectName("rollScaleLabel")
self.gamepadPitchScale = QtWidgets.QSpinBox(self.Gamepad)
self.gamepadPitchScale.setGeometry(QtCore.QRect(895, 239, 51, 26))
self.gamepadPitchScale.setMinimum(-999)
self.gamepadPitchScale.setMaximum(999)
self.gamepadPitchScale.setProperty("value", 30)
self.gamepadPitchScale.setObjectName("gamepadPitchScale")
self.pitchScaleLabel = QtWidgets.QLabel(self.Gamepad)
self.pitchScaleLabel.setGeometry(QtCore.QRect(812, 242, 211, 20))
self.pitchScaleLabel.setObjectName("pitchScaleLabel")
self.degPerSecLabel = QtWidgets.QLabel(self.Gamepad)
self.degPerSecLabel.setGeometry(QtCore.QRect(294, 114, 54, 17))
self.degPerSecLabel.setObjectName("degPerSecLabel")
self.degLabel = QtWidgets.QLabel(self.Gamepad)
self.degLabel.setGeometry(QtCore.QRect(852, 104, 54, 17))
self.degLabel.setObjectName("degLabel")
self.pitchScaleLabel.raise_()
self.rollScaleLabel.raise_()
self.thrustScaleLabel.raise_()
self.yawScaleLabel.raise_()
self.pb_configRoll.raise_()
self.rollVizBar.raise_()
self.pb_resetConfig.raise_()
self.pb_configYaw.raise_()
self.yawVizBar.raise_()
self.thrustVizBar.raise_()
self.pitchVizBar.raise_()
self.pb_configThrust.raise_()
self.pb_configPitch.raise_()
self.noGamepadWarning.raise_()
self.gamepadYawScale.raise_()
self.horizontalLayoutWidget.raise_()
self.gamepadThrustScale.raise_()
self.thrustScaleNote.raise_()
self.gamepadRollScale.raise_()
self.gamepadPitchScale.raise_()
self.degPerSecLabel.raise_()
self.degLabel.raise_()
self.tabWidget.addTab(self.Gamepad, "")
self.plots = QtWidgets.QWidget()
self.plots.setObjectName("plots")
self.comboBox_logBlocks = QtWidgets.QComboBox(self.plots)
self.comboBox_logBlocks.setGeometry(QtCore.QRect(740, 370, 201, 25))
self.comboBox_logBlocks.setObjectName("comboBox_logBlocks")
self.comboBox_logBlocks.addItem("")
self.pb_logBlockResume = QtWidgets.QPushButton(self.plots)
self.pb_logBlockResume.setGeometry(QtCore.QRect(740, 470, 80, 25))
self.pb_logBlockResume.setObjectName("pb_logBlockResume")
self.pb_logBlockPause = QtWidgets.QPushButton(self.plots)
self.pb_logBlockPause.setGeometry(QtCore.QRect(860, 470, 80, 25))
self.pb_logBlockPause.setObjectName("pb_logBlockPause")
self.pb_logBlockFile = QtWidgets.QPushButton(self.plots)
self.pb_logBlockFile.setGeometry(QtCore.QRect(650, 110, 401, 25))
self.pb_logBlockFile.setObjectName("pb_logBlockFile")
self.pb_logBlockRefresh = QtWidgets.QPushButton(self.plots)
self.pb_logBlockRefresh.setGeometry(QtCore.QRect(650, 250, 141, 25))
self.pb_logBlockRefresh.setObjectName("pb_logBlockRefresh")
self.pb_logBlockStop = QtWidgets.QPushButton(self.plots)
self.pb_logBlockStop.setGeometry(QtCore.QRect(910, 250, 141, 25))
self.pb_logBlockStop.setObjectName("pb_logBlockStop")
self.label_2 = QtWidgets.QLabel(self.plots)
self.label_2.setGeometry(QtCore.QRect(780, 60, 141, 20))
self.label_2.setObjectName("label_2")
self.logVariableList = QtWidgets.QListWidget(self.plots)
self.logVariableList.setGeometry(QtCore.QRect(0, 40, 511, 721))
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.logVariableList.sizePolicy().hasHeightForWidth())
self.logVariableList.setSizePolicy(sizePolicy)
self.logVariableList.setObjectName("logVariableList")
self.label_3 = QtWidgets.QLabel(self.plots)
self.label_3.setGeometry(QtCore.QRect(180, 10, 131, 17))
self.label_3.setObjectName("label_3")
self.tabWidget.addTab(self.plots, "")
self.navigation = QtWidgets.QWidget()
self.navigation.setObjectName("navigation")
self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.navigation)
self.verticalLayout_3.setContentsMargins(11, 11, 11, 11)
self.verticalLayout_3.setSpacing(6)
self.verticalLayout_3.setObjectName("verticalLayout_3")
self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
self.horizontalLayout_3.setSpacing(6)
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
self.verticalLayout_4 = QtWidgets.QVBoxLayout()
self.verticalLayout_4.setSpacing(6)
self.verticalLayout_4.setObjectName("verticalLayout_4")
self.label_1 = QtWidgets.QLabel(self.navigation)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.label_1.sizePolicy().hasHeightForWidth())
self.label_1.setSizePolicy(sizePolicy)
font = QtGui.QFont()
font.setBold(True)
font.setWeight(75)
self.label_1.setFont(font)
self.label_1.setAlignment(QtCore.Qt.AlignCenter)
self.label_1.setObjectName("label_1")
self.verticalLayout_4.addWidget(self.label_1)
self.rbManualSetpoint = QtWidgets.QRadioButton(self.navigation)
self.rbManualSetpoint.setCheckable(True)
self.rbManualSetpoint.setChecked(True)
self.rbManualSetpoint.setObjectName("rbManualSetpoint")
self.buttonGroup_2 = QtWidgets.QButtonGroup(MainWindow)
self.buttonGroup_2.setObjectName("buttonGroup_2")
self.buttonGroup_2.addButton(self.rbManualSetpoint)
self.verticalLayout_4.addWidget(self.rbManualSetpoint)
self.rbGamepadControl = QtWidgets.QRadioButton(self.navigation)
self.rbGamepadControl.setEnabled(True)
self.rbGamepadControl.setObjectName("rbGamepadControl")
self.buttonGroup_2.addButton(self.rbGamepadControl)
self.verticalLayout_4.addWidget(self.rbGamepadControl)
self.formLayout = QtWidgets.QFormLayout()
self.formLayout.setFieldGrowthPolicy(QtWidgets.QFormLayout.ExpandingFieldsGrow)
self.formLayout.setSpacing(6)
self.formLayout.setObjectName("formLayout")
self.pitchLabel = QtWidgets.QLabel(self.navigation)
self.pitchLabel.setObjectName("pitchLabel")
self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.pitchLabel)
self.pitchSetpointBox = QtWidgets.QLineEdit(self.navigation)
self.pitchSetpointBox.setEnabled(True)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.pitchSetpointBox.sizePolicy().hasHeightForWidth())
self.pitchSetpointBox.setSizePolicy(sizePolicy)
self.pitchSetpointBox.setObjectName("pitchSetpointBox")
self.formLayout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.pitchSetpointBox)
self.rollLabel = QtWidgets.QLabel(self.navigation)
self.rollLabel.setObjectName("rollLabel")
self.formLayout.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.rollLabel)
self.rollSetpointBox = QtWidgets.QLineEdit(self.navigation)
self.rollSetpointBox.setEnabled(True)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.rollSetpointBox.sizePolicy().hasHeightForWidth())
self.rollSetpointBox.setSizePolicy(sizePolicy)
self.rollSetpointBox.setObjectName("rollSetpointBox")
self.formLayout.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.rollSetpointBox)
self.yawLabel = QtWidgets.QLabel(self.navigation)
self.yawLabel.setObjectName("yawLabel")
self.formLayout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.yawLabel)
self.yawSetpointBox = QtWidgets.QLineEdit(self.navigation)
self.yawSetpointBox.setEnabled(True)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.yawSetpointBox.sizePolicy().hasHeightForWidth())
self.yawSetpointBox.setSizePolicy(sizePolicy)
self.yawSetpointBox.setObjectName("yawSetpointBox")
self.formLayout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.yawSetpointBox)
self.tLabel = QtWidgets.QLabel(self.navigation)
self.tLabel.setObjectName("tLabel")
self.formLayout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.tLabel)
self.tActual = QtWidgets.QSlider(self.navigation)
self.tActual.setEnabled(True)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.tActual.sizePolicy().hasHeightForWidth())
self.tActual.setSizePolicy(sizePolicy)
self.tActual.setMinimumSize(QtCore.QSize(140, 0))
self.tActual.setToolTipDuration(-1)
self.tActual.setMaximum(60000)
self.tActual.setOrientation(QtCore.Qt.Horizontal)
self.tActual.setTickPosition(QtWidgets.QSlider.TicksBelow)
self.tActual.setTickInterval(30000)
self.tActual.setObjectName("tActual")
self.formLayout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.tActual)
self.angleRadioButton = QtWidgets.QRadioButton(self.navigation)
self.angleRadioButton.setChecked(True)
self.angleRadioButton.setObjectName("angleRadioButton")
self.AngleRateButtonGroup = QtWidgets.QButtonGroup(MainWindow)
self.AngleRateButtonGroup.setObjectName("AngleRateButtonGroup")
self.AngleRateButtonGroup.addButton(self.angleRadioButton)
self.formLayout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.angleRadioButton)
self.rateRadioButton = QtWidgets.QRadioButton(self.navigation)
self.rateRadioButton.setObjectName("rateRadioButton")
self.AngleRateButtonGroup.addButton(self.rateRadioButton)
self.formLayout.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.rateRadioButton)
self.verticalLayout_4.addLayout(self.formLayout)
self.applySetpointButton = QtWidgets.QPushButton(self.navigation)
self.applySetpointButton.setObjectName("applySetpointButton")
self.verticalLayout_4.addWidget(self.applySetpointButton)
self.stopSetpointButton = QtWidgets.QPushButton(self.navigation)
self.stopSetpointButton.setObjectName("stopSetpointButton")
self.verticalLayout_4.addWidget(self.stopSetpointButton)
spacerItem3 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.MinimumExpanding)
self.verticalLayout_4.addItem(spacerItem3)
self.logging_label = QtWidgets.QLabel(self.navigation)
font = QtGui.QFont()
font.setBold(True)
font.setWeight(75)
self.logging_label.setFont(font)
self.logging_label.setAlignment(QtCore.Qt.AlignCenter)
self.logging_label.setObjectName("logging_label")
self.verticalLayout_4.addWidget(self.logging_label)
self.logEntriesComboBox1 = QtWidgets.QComboBox(self.navigation)
self.logEntriesComboBox1.setObjectName("logEntriesComboBox1")
self.logEntriesComboBox1.addItem("")
self.verticalLayout_4.addWidget(self.logEntriesComboBox1)
self.logEntriesComboBox2 = QtWidgets.QComboBox(self.navigation)
self.logEntriesComboBox2.setObjectName("logEntriesComboBox2")
self.logEntriesComboBox2.addItem("")
self.verticalLayout_4.addWidget(self.logEntriesComboBox2)
self.logEntriesComboBox3 = QtWidgets.QComboBox(self.navigation)
self.logEntriesComboBox3.setObjectName("logEntriesComboBox3")
self.logEntriesComboBox3.addItem("")
self.verticalLayout_4.addWidget(self.logEntriesComboBox3)
self.logEntriesComboBox4 = QtWidgets.QComboBox(self.navigation)
self.logEntriesComboBox4.setObjectName("logEntriesComboBox4")
self.logEntriesComboBox4.addItem("")
self.verticalLayout_4.addWidget(self.logEntriesComboBox4)
self.logEntriesComboBox5 = QtWidgets.QComboBox(self.navigation)
self.logEntriesComboBox5.setObjectName("logEntriesComboBox5")
self.logEntriesComboBox5.addItem("")
self.verticalLayout_4.addWidget(self.logEntriesComboBox5)
self.pb_startLog = QtWidgets.QPushButton(self.navigation)
self.pb_startLog.setObjectName("pb_startLog")
self.verticalLayout_4.addWidget(self.pb_startLog)
self.pb_stopLog = QtWidgets.QPushButton(self.navigation)
self.pb_stopLog.setObjectName("pb_stopLog")
self.verticalLayout_4.addWidget(self.pb_stopLog)
self.formLayout1 = QtWidgets.QFormLayout()
self.formLayout1.setFieldGrowthPolicy(QtWidgets.QFormLayout.ExpandingFieldsGrow)
self.formLayout1.setSpacing(6)
self.formLayout1.setObjectName("formLayout1")
self.cb_autoscale = QtWidgets.QCheckBox(self.navigation)
self.cb_autoscale.setChecked(True)
self.cb_autoscale.setObjectName("cb_autoscale")
self.formLayout1.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.cb_autoscale)
self.label_4 = QtWidgets.QLabel(self.navigation)
self.label_4.setText("")
self.label_4.setObjectName("label_4")
self.formLayout1.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.label_4)
self.plot_max_label = QtWidgets.QLabel(self.navigation)
self.plot_max_label.setEnabled(False)
self.plot_max_label.setObjectName("plot_max_label")
self.formLayout1.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.plot_max_label)
self.plot_min_label = QtWidgets.QLabel(self.navigation)
self.plot_min_label.setEnabled(False)
self.plot_min_label.setObjectName("plot_min_label")
self.formLayout1.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.plot_min_label)
self.plot_max = QtWidgets.QSpinBox(self.navigation)
self.plot_max.setEnabled(False)
self.plot_max.setMinimum(-9999)
self.plot_max.setMaximum(9999)
self.plot_max.setObjectName("plot_max")
self.formLayout1.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.plot_max)
self.plot_min = QtWidgets.QSpinBox(self.navigation)
self.plot_min.setEnabled(False)
self.plot_min.setMinimum(-9999)
self.plot_min.setMaximum(9999)
self.plot_min.setObjectName("plot_min")
self.formLayout1.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.plot_min)
self.verticalLayout_4.addLayout(self.formLayout1)
self.horizontalLayout_3.addLayout(self.verticalLayout_4)
self.verticalLayout_5 = QtWidgets.QVBoxLayout()
self.verticalLayout_5.setSpacing(6)
self.verticalLayout_5.setObjectName("verticalLayout_5")
self.dataPlot = QCustomPlot(self.navigation)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.dataPlot.sizePolicy().hasHeightForWidth())
self.dataPlot.setSizePolicy(sizePolicy)
self.dataPlot.setObjectName("dataPlot")
self.verticalLayout_5.addWidget(self.dataPlot)
self.horizontalLayout_3.addLayout(self.verticalLayout_5)
self.verticalLayout_3.addLayout(self.horizontalLayout_3)
self.tabWidget.addTab(self.navigation, "")
self.verticalLayout_1.addWidget(self.tabWidget)
MainWindow.setCentralWidget(self.centralWidget)
self.menuBar = QtWidgets.QMenuBar(MainWindow)
self.menuBar.setGeometry(QtCore.QRect(0, 0, 1186, 22))
self.menuBar.setObjectName("menuBar")
self.menuScripts = QtWidgets.QMenu(self.menuBar)
self.menuScripts.setObjectName("menuScripts")
MainWindow.setMenuBar(self.menuBar)
self.mainToolBar = QtWidgets.QToolBar(MainWindow)
self.mainToolBar.setObjectName("mainToolBar")
MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.mainToolBar)
self.statusBar = QtWidgets.QStatusBar(MainWindow)
self.statusBar.setObjectName("statusBar")
MainWindow.setStatusBar(self.statusBar)
self.menuBar.addAction(self.menuScripts.menuAction())
self.retranslateUi(MainWindow)
self.tabWidget.setCurrentIndex(0)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
self.backendPath.setText(_translate("MainWindow", "./BackEnd"))
self.chooseBackend.setText(_translate("MainWindow", "Choose..."))
self.pbConnect.setText(_translate("MainWindow", "Connect"))
self.pb_connectTS.setText(_translate("MainWindow", "Connect Test Stand"))
self.pb_disconnectTS.setText(_translate("MainWindow", "Disconnect Test Stand"))
self.pbStop.setText(_translate("MainWindow", "Stop/Disconnect"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.backend), _translate("MainWindow", "Backend"))
self.groupLabel.setText(_translate("MainWindow", "Group:"))
self.getParamLabel.setText(_translate("MainWindow", "Get Param"))
self.label.setText(_translate("MainWindow", "Entry:"))
self.setParamLabel.setText(_translate("MainWindow", "Set Param"))
self.valueLabel.setText(_translate("MainWindow", "Value:"))
self.groupLabel_set.setText(_translate("MainWindow", "Group:"))
self.label_5.setText(_translate("MainWindow", "Entry:"))
self.valueLabel_2.setText(_translate("MainWindow", "Value:"))
self.pb_getParam.setText(_translate("MainWindow", "Get Param"))
self.pb_setParam.setText(_translate("MainWindow", "Set Param"))
self.pb_setParam_JSON.setText(_translate("MainWindow", "Set Param from JSON file"))
self.json_note.setText(_translate("MainWindow", "Note: This may take a few seconds"))
self.JsonParamComplete.setText(_translate("MainWindow", "Complete ✓"))
self.pb_editJSONFile.setText(_translate("MainWindow", "Edit"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.param), _translate("MainWindow", "Parameters"))
self.pb_configRoll.setText(_translate("MainWindow", "Bind Roll"))
self.pb_resetConfig.setText(_translate("MainWindow", "Reset Configuration"))
self.pb_configYaw.setText(_translate("MainWindow", "Bind Yaw"))
self.pb_configThrust.setText(_translate("MainWindow", "Bind Thrust"))
self.pb_configPitch.setText(_translate("MainWindow", "Bind Pitch"))
self.noGamepadWarning.setText(_translate("MainWindow", "No Gamepad Detected"))
self.yawScaleLabel.setText(_translate("MainWindow", "Yaw Scale:"))
self.label_6.setText(_translate("MainWindow", "Select the input to bind then move the joystick that will control that input to its maximum values."))
self.label_7.setText(_translate("MainWindow", "The scale of each input controls the maximum values sent to the Crazyflie with max joystick deflection. "))
self.label_8.setText(_translate("MainWindow", "Negative scale values can be used to invert a joystick if needed."))
self.thrustScaleLabel.setText(_translate("MainWindow", "Thrust Scale: "))
self.thrustScaleNote.setText(_translate("MainWindow", "Note: max thrust is 60,000"))
self.rollScaleLabel.setText(_translate("MainWindow", "Roll Scale:"))
self.pitchScaleLabel.setText(_translate("MainWindow", "Pitch Scale: Deg"))
self.degPerSecLabel.setText(_translate("MainWindow", "deg/s"))
self.degLabel.setText(_translate("MainWindow", "deg"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.Gamepad), _translate("MainWindow", "Gamepad"))
self.comboBox_logBlocks.setItemText(0, _translate("MainWindow", "Logging Block"))
self.pb_logBlockResume.setText(_translate("MainWindow", "Resume"))
self.pb_logBlockPause.setText(_translate("MainWindow", "Pause"))
self.pb_logBlockFile.setText(_translate("MainWindow", "Open Logging Block Setup File"))
self.pb_logBlockRefresh.setText(_translate("MainWindow", "Refresh Log Blocks"))
self.pb_logBlockStop.setText(_translate("MainWindow", "Stop All Log Blocks"))
self.label_2.setText(_translate("MainWindow", "Log Block Commands"))
self.label_3.setText(_translate("MainWindow", "Logging Variables"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.plots), _translate("MainWindow", "Log Blocks"))
self.label_1.setText(_translate("MainWindow", "Send Setpoint"))
self.rbManualSetpoint.setText(_translate("MainWindow", "Manual Setpoint"))
self.rbGamepadControl.setText(_translate("MainWindow", "Gamepad Control"))
self.pitchLabel.setText(_translate("MainWindow", "Pitch"))
self.pitchSetpointBox.setText(_translate("MainWindow", "0"))
self.rollLabel.setText(_translate("MainWindow", "Roll"))
self.rollSetpointBox.setText(_translate("MainWindow", "0"))
self.yawLabel.setText(_translate("MainWindow", "Yaw"))
self.yawSetpointBox.setText(_translate("MainWindow", "0"))
self.tLabel.setText(_translate("MainWindow", "Thrust"))
self.angleRadioButton.setText(_translate("MainWindow", "Angle"))
self.rateRadioButton.setText(_translate("MainWindow", "Rate"))
self.applySetpointButton.setText(_translate("MainWindow", "Apply"))
self.stopSetpointButton.setText(_translate("MainWindow", "Stop"))
self.logging_label.setText(_translate("MainWindow", "Logging Variables"))
self.logEntriesComboBox1.setCurrentText(_translate("MainWindow", "Logging Variable 1"))
self.logEntriesComboBox1.setItemText(0, _translate("MainWindow", "Logging Variable 1"))
self.logEntriesComboBox2.setItemText(0, _translate("MainWindow", "Logging Variable 2"))
self.logEntriesComboBox3.setItemText(0, _translate("MainWindow", "Logging Variable 3"))
self.logEntriesComboBox4.setItemText(0, _translate("MainWindow", "Logging Variable 4"))
self.logEntriesComboBox5.setItemText(0, _translate("MainWindow", "Logging Variable 5"))
self.pb_startLog.setText(_translate("MainWindow", "Start Logging"))
self.pb_stopLog.setText(_translate("MainWindow", "Stop Logging"))
self.cb_autoscale.setText(_translate("MainWindow", "Autoscale Y"))
self.plot_max_label.setText(_translate("MainWindow", "Max Y:"))
self.plot_min_label.setText(_translate("MainWindow", "Min Y:"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.navigation), _translate("MainWindow", "Control"))
self.menuScripts.setTitle(_translate("MainWindow", "Scripts"))
from qcustomplot import QCustomPlot
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file '/home/bitcraze/MicroCART/groundStation/src/vrpn/hid_gui/plot.ui'
#
# Created by: PyQt5 UI code generator 5.15.4
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Plot(object):
def setupUi(self, Plot):
Plot.setObjectName("Plot")
Plot.resize(633, 116)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(Plot.sizePolicy().hasHeightForWidth())
Plot.setSizePolicy(sizePolicy)
Plot.setFrameShape(QtWidgets.QFrame.StyledPanel)
Plot.setFrameShadow(QtWidgets.QFrame.Raised)
self.horizontalLayout = QtWidgets.QHBoxLayout(Plot)
self.horizontalLayout.setObjectName("horizontalLayout")
self.verticalLayout = QtWidgets.QVBoxLayout()
self.verticalLayout.setObjectName("verticalLayout")
self.label = QtWidgets.QLabel(Plot)
self.label.setObjectName("label")
self.verticalLayout.addWidget(self.label)
self.lastValue = QtWidgets.QLabel(Plot)
self.lastValue.setText("")
self.lastValue.setObjectName("lastValue")
self.verticalLayout.addWidget(self.lastValue)
self.horizontalLayout.addLayout(self.verticalLayout)
self.graphicsView = QtWidgets.QGraphicsView(Plot)
self.graphicsView.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
self.graphicsView.setRenderHints(QtGui.QPainter.Antialiasing|QtGui.QPainter.TextAntialiasing)
self.graphicsView.setObjectName("graphicsView")
self.horizontalLayout.addWidget(self.graphicsView)
self.retranslateUi(Plot)
QtCore.QMetaObject.connectSlotsByName(Plot)
def retranslateUi(self, Plot):
_translate = QtCore.QCoreApplication.translate
Plot.setWindowTitle(_translate("Plot", "Frame"))
self.label.setText(_translate("Plot", "TextLabel"))