From 897269e030f5efe15f03500520def727c680d0c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=A7=E8=80=B3=E5=88=AE=E5=AD=90?= <2433069615@qq.com> Date: Fri, 20 May 2022 00:13:44 +0800 Subject: [PATCH] rebuild --- CMakeLists.txt | 26 ++-- src/Djitellowhite/Djitellowhite.cpp | 146 ------------------ src/Djitellowhite/Djitellowhite.h | 80 ---------- src/Djitellowhite/Djitellowhite.o | Bin 15992 -> 0 bytes src/Djitellowhite/Hardwarelistener.h | 6 - src/Djitellowhite/Triplet.cpp | 45 ------ src/Djitellowhite/keyboard.cpp | 57 ------- src/Djitellowhite/libDjitellowhite.so | Bin 18152 -> 0 bytes src/Djitellowhite/makefile | 21 --- src/Djitellowhite/server.cpp | 58 ------- src/Djitellowhite/test | Bin 29608 -> 0 bytes src/include/{ => Air_Ground_CEC}/automove.h | 0 src/include/{ => Air_Ground_CEC}/dashboard.h | 0 src/include/{ => Air_Ground_CEC}/joystick.h | 0 .../Air_Ground_CEC}/mainwindow.hpp | 7 +- src/include/{ => Air_Ground_CEC}/qnode.hpp | 0 src/include/automove.cpp | 6 - src/main/automove.cpp | 6 + src/main/dashboard.cpp | 2 +- src/main/joystick.cpp | 2 +- src/main/main.cpp | 3 +- src/main/mainwindow.cpp | 2 +- src/main/qnode.cpp | 2 +- src/ui/Triplet/.gitignore | 73 --------- src/ui/Triplet/Triplet.pro | 38 ----- src/ui/Triplet/main.cpp | 11 -- src/ui/Triplet/mainwindow.cpp | 51 ------ src/ui/Triplet/mainwindow.h | 47 ------ src/ui/Triplet/mainwindow.ui | 71 --------- 29 files changed, 27 insertions(+), 733 deletions(-) delete mode 100644 src/Djitellowhite/Djitellowhite.cpp delete mode 100644 src/Djitellowhite/Djitellowhite.h delete mode 100644 src/Djitellowhite/Djitellowhite.o delete mode 100644 src/Djitellowhite/Hardwarelistener.h delete mode 100644 src/Djitellowhite/Triplet.cpp delete mode 100644 src/Djitellowhite/keyboard.cpp delete mode 100755 src/Djitellowhite/libDjitellowhite.so delete mode 100644 src/Djitellowhite/makefile delete mode 100644 src/Djitellowhite/server.cpp delete mode 100755 src/Djitellowhite/test rename src/include/{ => Air_Ground_CEC}/automove.h (100%) rename src/include/{ => Air_Ground_CEC}/dashboard.h (100%) rename src/include/{ => Air_Ground_CEC}/joystick.h (100%) rename src/{ui => include/Air_Ground_CEC}/mainwindow.hpp (93%) rename src/include/{ => Air_Ground_CEC}/qnode.hpp (100%) delete mode 100644 src/include/automove.cpp create mode 100644 src/main/automove.cpp delete mode 100644 src/ui/Triplet/.gitignore delete mode 100644 src/ui/Triplet/Triplet.pro delete mode 100644 src/ui/Triplet/main.cpp delete mode 100644 src/ui/Triplet/mainwindow.cpp delete mode 100644 src/ui/Triplet/mainwindow.h delete mode 100644 src/ui/Triplet/mainwindow.ui diff --git a/CMakeLists.txt b/CMakeLists.txt index d32a901..647f2c6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -33,21 +33,17 @@ set(CMAKE_AUTOMOC ON) set(CMAKE_AUTOUIC ON) set(CMAKE_INCLUDE_CURRENT_DIR ON) -set(SOURCES - src/include/qnode.hpp - src/include/joystick.h - src/include/dashboard.h - src/main/main.cpp - src/main/mainwindow.cpp - src/main/qnode.cpp - src/main/joystick.cpp - src/main/dashboard.cpp - src/ui/mainwindow.hpp - src/ui/mainwindow.ui +file(GLOB QT_FORMS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} src/ui/*.ui) +file(GLOB QT_RESOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} src/resources/*.qrc) +file(GLOB_RECURSE QT_MOC RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + FOLLOW_SYMLINKS src/include/Air_Ground_CEC/*.hpp *.h) +file(GLOB_RECURSE QT_SOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + FOLLOW_SYMLINKS src/*.cpp) -) +QT5_ADD_RESOURCES(QT_RESOURCES_CPP ${QT_RESOURCES}) +QT5_WRAP_UI(QT_FORMS_HPP ${QT_FORMS}) +QT5_WRAP_CPP(QT_MOC_HPP ${QT_MOC}) -QT5_add_resources(qrc_Files src/resources/images.qrc) ## Specify additional locations of header files ## Your package locations should be listed before other locations include_directories( @@ -56,7 +52,9 @@ include_directories( ${OpenCV_INCLUDE_DIRS} ) -add_executable(Air_Ground_CEC ${SOURCES} ${qrc_Files}) +add_executable(Air_Ground_CEC ${QRC_FILES} ${QT_SOURCES} + ${QT_RESOURCES_CPP} ${QT_FORMS_HPP} ${QT_MOC_HPP}) + target_link_libraries(Air_Ground_CEC Qt5::Widgets ${catkin_LIBRARIES} diff --git a/src/Djitellowhite/Djitellowhite.cpp b/src/Djitellowhite/Djitellowhite.cpp deleted file mode 100644 index c8a8f52..0000000 --- a/src/Djitellowhite/Djitellowhite.cpp +++ /dev/null @@ -1,146 +0,0 @@ -#include"Djitellowhite.h" -#include -#include - - -#include -#include -#include - -#include -#include - -using namespace cv; -using namespace std; -Tello::Tello(const char* IP) { - this->stream_on=false; - this->host = inet_addr(IP); - cout << "create successfully!" << endl; - -} -Tello::~Tello() {} -void Tello::set_conf(int socket){ - this->sock = socket; -} -void Tello::get_connect(sockaddr_in serveraddr) { - char tmp[10] = {"command"}; - send_message(tmp,serveraddr,0);// 0 -> timeout - cout << "connect successfully!" <host; -} -void Tello::takeoff(sockaddr_in serveraddr) { - char tmp[10] = {"takeoff"}; - send_message(tmp,serveraddr,0);// 0 -> timeout - cout << "takeoff successfully!" < timeout - cout << "land successfully!" <sock,buffer,strlen(buffer),0,(struct sockaddr *)&server_addr, sizeof(server_addr)); - return true; -} -void* Tello::udp_response_receiver(void* arg){ - //int m_SockServer; //创建socket对象 - //sockaddr_in serveraddr; //创建sockaddr_in对象储存自身信息(当有多个端口,可以多个绑定) - //sockaddr_in serveraddrfrom; - - //serveraddr.sin_family = AF_INET; //设置服务器地址家族 - //serveraddr.sin_port = htons(8889); //设置服务器端口号 - //serveraddr.sin_addr.s_addr = inet_addr("0.0.0.0"); - //m_SockServer = socket(AF_INET, SOCK_DGRAM, 0); //创建一个临时变量并赋值给m_SockServer - //int i = bind(m_SockServer, (sockaddr*)&serveraddr, sizeof(serveraddr)); //把名字和套接字绑定 - //std::cout << "bind:" << i << std::endl; - - int socket = *(int *)arg; - - cout << "receive start" << endl; - while(1){ - char buffer[20]; - int iret; - memset(buffer,0,sizeof(buffer)); - - iret = recv(socket, buffer,20,MSG_WAITALL); - if(iret > 0 && iret <10){ - printf("Message from tello: %s\n", buffer); - } - } -} -void Tello::forward(sockaddr_in serveraddr){ - char tmp[15] = {"forward 20"}; - send_message(tmp,serveraddr,0);// 0 -> timeout - cout << "forward successfully!" < timeout - cout << "back successfully!" < timeout - cout << "left successfully!" < timeout - cout << "right successfully!" < timeout - cout << "up successfully!" < timeout - cout << "down successfully!" < timeout - cout << "cw successfully!" < timeout - cout << "ccw successfully!" <stream_on = true; - - cout << "vid"; - VideoCapture cap("udp://@0.0.0.0:11111"); - cout << "cap"; - if(!cap.isOpened()){ - cout << "fuck off"; - return; - } - - Mat frame; - cout << "continue!"; - while(1){ - cap>>frame; - if(frame.empty()) - break; - imshow("video",frame); - waitKey(20); - - } - cap.release(); - - -} diff --git a/src/Djitellowhite/Djitellowhite.h b/src/Djitellowhite/Djitellowhite.h deleted file mode 100644 index bfaa936..0000000 --- a/src/Djitellowhite/Djitellowhite.h +++ /dev/null @@ -1,80 +0,0 @@ -#ifndef _DJITELLOWHITE_H -#define _DJITELLOWHITE_H -#include -#include -#include -#include -#include -#include -/*Library for interacting with DJI Ryze Tello drones.*/ - - -//coding = utf - 8 - -/* """C++ wrapper to interact with the Ryze Tello drone using the official Tello api. - Tello API documentation: - [1.3](https://dl-cdn.ryzerobotics.com/downloads/tello/20180910/Tello%20SDK%20Documentation%20EN_1.3.pdf) -*/ - -#define RESPONSE_TIMEOUT 7 //in seconds -#define TAKEOFF_TIMEOUT 20 //in seconds -#define FRAME_GRAB_TIMEOUT 3 -#define TIME_BTW_COMMANDS 0.1 //in seconds -#define TIME_BTW_RC_CONTROL_COMMANDS 0.001 //in seconds -#define RETRY_COUNT 3 //number of retries after a failed command - - -//Video stream, server socket -#define VS_UDP_IP "0.0.0.0" -#define VS_UDP_PORT 11111 - -#define CONTROL_UDP_PORT 8889 -#define STATE_UDP_PORT 8890 - -#define BUFFER_SIZE 1024 -//Constants for video settings -#define BITRATE_AUTO 0 -#define BITRATE_1MBPS 1 -#define BITRATE_2MBPS 2 -#define BITRATE_3MBPS 3 -#define BITRATE_4MBPS 4 -#define BITRATE_5MBPS 5 -#define RESOLUTION_480P "low" -#define RESOLUTION_720P "high" -#define FPS_5 "low" -#define FPS_15 "middle" -#define FPS_30 "high" -#define CAMERA_FORWARD 0 -#define CAMERA_DOWNWARD 1 -//日志模块暂时不写 - -class Tello { -private: - int sock; - bool stream_on; - unsigned long host; -public: - Tello(const char* IP); - ~Tello(); - void set_conf(int socket); - unsigned long gethost(); - void get_connect(sockaddr_in serveraddr); - void takeoff(sockaddr_in serveraddr); - void land(sockaddr_in serveraddr); - void forward(sockaddr_in serveraddr); - void back(sockaddr_in serveraddr); - void left(sockaddr_in serveraddr); - void right(sockaddr_in serveraddr); - void up(sockaddr_in serveraddr); - void down(sockaddr_in serveraddr); - void cw(sockaddr_in serveraddr); - void ccw(sockaddr_in serveraddr); - bool send_message(char* msg,sockaddr_in server_addr,int timeout = RESPONSE_TIMEOUT); - static void *udp_response_receiver(void* arg); - void get_video(sockaddr_in serveraddr); -}; - - - - -#endif diff --git a/src/Djitellowhite/Djitellowhite.o b/src/Djitellowhite/Djitellowhite.o deleted file mode 100644 index 12a96388bd5e770804c9fdacdd369f86edde1e40..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15992 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 Ve#So4DE%?|P`(cZieNpe{{pwkw4ML} diff --git a/src/Djitellowhite/Hardwarelistener.h b/src/Djitellowhite/Hardwarelistener.h deleted file mode 100644 index 599fa82..0000000 --- a/src/Djitellowhite/Hardwarelistener.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef _HARDWARELISTENER_H -#define _HARDWARELISTENER_H -#include "Djitellowhite.h" -int listenkeyboard(Tello T,sockaddr_in serveraddr); -int scanKeyboard(); -#endif diff --git a/src/Djitellowhite/Triplet.cpp b/src/Djitellowhite/Triplet.cpp deleted file mode 100644 index 9c0ef65..0000000 --- a/src/Djitellowhite/Triplet.cpp +++ /dev/null @@ -1,45 +0,0 @@ -#include"Djitellowhite.h" -#include"Hardwarelistener.h" -#include -using namespace std; -int main(void){ - Tello T("192.168.10.1"); - int socket_fd, err; - - if((socket_fd = socket(PF_INET,SOCK_DGRAM,IPPROTO_UDP))==-1) - { - cout << "initialized error" << endl; - cout << 0; - return -1; - } - - //cout << 1 << socket_fd; - T.set_conf(socket_fd); - - pthread_t thread_receive; - err = pthread_create(&thread_receive,nullptr,T.udp_response_receiver,&socket_fd); - sleep(3); - struct sockaddr_in serveraddr; - memset(&serveraddr,0,sizeof(serveraddr)); - serveraddr.sin_family=AF_INET; - serveraddr.sin_addr.s_addr=T.gethost(); - serveraddr.sin_port=htons(CONTROL_UDP_PORT); - - - - if(err!=0) - { - cout << err << " " << "can't create thread"; - } - - T.get_connect(serveraddr); - //sleep(1); - //T.takeoff(serveraddr); - T.get_video(serveraddr); - sleep(5); - //T.land(serveraddr); - - pthread_join(thread_receive,NULL); - listenkeyboard(T,serveraddr); - return 0; -} diff --git a/src/Djitellowhite/keyboard.cpp b/src/Djitellowhite/keyboard.cpp deleted file mode 100644 index dcf3ade..0000000 --- a/src/Djitellowhite/keyboard.cpp +++ /dev/null @@ -1,57 +0,0 @@ -#include -#include -#include "Hardwarelistener.h" -#include - -using namespace std; -int scanKeyboard() -{ - - int in; - - struct termios new_settings; - struct termios stored_settings; - //设置终端参数 - tcgetattr(0,&stored_settings); - new_settings = stored_settings; - new_settings.c_lflag &= (~ICANON); - new_settings.c_cc[VTIME] = 0; - tcgetattr(0,&stored_settings); - new_settings.c_cc[VMIN] = 1; - tcsetattr(0,TCSANOW,&new_settings); - in = getchar(); - tcsetattr(0,TCSANOW,&stored_settings); - - return in; - -} - -//测试函数 -int listenkeyboard(Tello T, sockaddr_in serveraddr){ - while(1){ - switch(scanKeyboard()) - { - case (int)'w': - cout << "forward"<< endl; - T.forward(serveraddr); - break; - case (int)'s': - cout << "back" << endl; - T.back(serveraddr); - break; - case (int)'a': - cout << "left" <N+|;A>n7Zw_KW;il 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 Y&h4@;JrftQZ@fck(En@TEG}03A3X&HVE_OC diff --git a/src/Djitellowhite/makefile b/src/Djitellowhite/makefile deleted file mode 100644 index 156373e..0000000 --- a/src/Djitellowhite/makefile +++ /dev/null @@ -1,21 +0,0 @@ -obj = Djitellowhite.o keyboard.cpp Triplet.cpp -CXXFLAGS += -c -Wall $(shell pkg-config --cflags opencv4) -LDFLAGS += $(shell pkg-config --libs --static opencv4) -test : $(obj) - $(CXX) -o test $(obj) $(LDFLAGS) - -Djitellowhite.o : Djitellowhite.h - $(CXX) -c Djitellowhite.cpp $(CXXFLAGS) - -keyboard.o : Hardwarelistener.h - $(CXX) -c keyboard.cpp $(CXXFLAGS) - -Triplet : Djitellowhite.h Hardwarelistener.h - $(CXX) -c Triplet.cpp -lpthread $(CXXFLAGS) - -.PHONY : clean -clean : - rm test $(obj) - - - diff --git a/src/Djitellowhite/server.cpp b/src/Djitellowhite/server.cpp deleted file mode 100644 index 581b3e7..0000000 --- a/src/Djitellowhite/server.cpp +++ /dev/null @@ -1,58 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#define PORT 8890 - -void udp_server(int sockfd) -{ - - socklen_t len; - char buf[1024] = {0}; - struct sockaddr_in server_addr; - int n; - int opt = 1; - len = sizeof(server_addr); - memset(&buf, 0, sizeof(buf)); - server_addr.sin_family = AF_INET; - server_addr.sin_addr.s_addr = htonl(INADDR_ANY); - server_addr.sin_port = htons(PORT); - - setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt)); //当服务器非正常断开的时候重启服务器,不会进入TIME_WAIT状态 - - if (bind(sockfd, (struct sockaddr *)&server_addr, sizeof(server_addr)) < 0) { - printf("can not bind\n"); - exit(1); - } - - while (1) { - printf("========wait for client's request========\n"); - n = recvfrom(sockfd, buf, sizeof(buf), 0, (struct sockaddr *)&server_addr, &len); - buf[n] = '\0'; - printf("receive client's data: %s\n", buf); - sendto(sockfd, buf, n, 0, (struct sockaddr *)&server_addr, len); - printf("send data to client: %s\n", buf); - } - - close(sockfd); -} - -int main(int argc, char **argv) -{ - int sockfd; - - if ((sockfd = socket(PF_INET, SOCK_DGRAM, 0)) < 0) { - printf("create socket false\n"); - exit(1); - } - - udp_server(sockfd); - - exit(0); -} - - diff --git a/src/Djitellowhite/test b/src/Djitellowhite/test deleted file mode 100755 index 5becd7560949f1b07597c4025f7a5f0dc3c41370..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29608 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 z zWjOZzYbMi!R43rnl zpEaX|d`9?1_}lwRCWFl-#u{hPlAkTcUk(07kHeR+iItYGE3LS`?A+}oyV$k!uD)W$ z;zdAt`P=B=UNzX6bzy(PEEVMg~e5dks=QN7^`Fi=b zto~-?zli)t_58wzO#QvczYTp550|p`w`9wI9{Fv^cPjrF^8W|&AJ)qk?l<+nK>E?Q z$q%M~3Xkx7JojWLkY9p6ZqW~%+FpWl@kQi4j^k|EubH}+ApdfV1E+i+@(-UOzX$o( zWBfRkzaRO>&yar*`TZDgPUVjxpJ5z2<)@MVz!~zX*#)0zZRVq3##hJj9DcqU3)JW7 zZyLt+b{fY=;7HX!eS<|s-9@IKT9IFkaZU23%%^!a_j3gKD=_|B^!&m`F5m*T7x|sY zNB!CIt)e_ZbgupzWF{bUngC@-VVVokd43W3M__{iGtGP)QrT0;n~pK!RDbz2*oS{ zwEPQ&O{EooUF0owrKWjHmwdjsv9#*G>Aups!5P<;diqQ2>PxHYOP8!Ib*(L}SX)}Y zwzPzQzxgWk3_uU2J~L%91vR@1ZeZ-4g5sYRvo97Ff2Wu|S6DeRoqeTf**B-NFH9@G ze>yujt@u^_>sg$sH%@bXBDB-0JOOnOd-rEH%o6S092CWAv%@BmqtG|>E@kLk`_sNf#mEE+y zr*w`WOx3?Y@=6Y`Ch_(`oI@W-e!p}icEowUY!1Uxob%N(A5Y9Vulyj@|8FBI&Y4|d zl}jKVNn0iDlr$pgE=l)FdO*@ck`7CHOwut)Pf4mi!Y{vs@#K=UN>Y!ct&(<18j*CD zq6oOaBvrw8$`{G{C9RUwBWbIoostUav;QsWw3bDrjH_KsIyNWz z;|bSlM8T+9=1y?VeRnl(YilaqO9gH%myavLD6dc*UlX7h8FhK_BBtWdY2vI1?+M@tI7GLo0r+IbN+eW-phHh~pweQ*`CU zOIak(`7L5)Y*${q+>G0(*HVN?Olp3#;^#5u(GhW6#6HGUTs}Rw2zRUH4LYLa=du!C zKKuf69@cYmatLvi5#Y>{-{qtF?UmyiCV;#qH{m=)T^r-8v6lXiQ ze6BzD1J7sw*SY+8ti*!@BvtQo{CGaQ$!5=s96yiE^56hT&HsPKaRDNlm3s)y>M4gp z!smE6Z0f&Q;^*1$Ya&KV=1Y6Uq(T)N3EMwy#UWx?*WH;+a2oNTW76z z7W7lSYMrL)g*kcabwR!W<9b@2@te;-m0Uh|JT`JXcl@>hXY7KU@qW9+)jCbI0*_#^ z;3}k5o=YKu-pS>2=cV1iF^lD-hk##FIFFTgiY(QCo^p_%&+&2=k>`>8Lg__`m*AxV zN_?*fvgxDDe!#p{G8%?inyEQ?62|06(v>gO_*5nwYP`k<*ej#Azvm4+vXsj zlJZ~qgb;jK%75KK{)Z0uE5H}Q6JJ^(6fBl{-j?|F62C^`7odOUvws!Gv9r5c2nMD6 zbq?~Mmh#Wr&dUyodt`^A{WVHo1x|J@koL%8>`4dxGqFI=XXj#$m$M1!XVsq@9pr-! z_&pBzxfmBNy36Y1W}82M1Nk`^kM?!uL%?08RQBMogMPX(B0t^Y`#M9k4t>3gPwax5874HDFr1N0#0_?`_E&* zT~<-f9p(Bl|H%G>)5_B**CQE?yv5};Kpvhf5Po<{`scL7&%t>q&vRZb;Q0I;`xo)~ zEm!|)etvUtpM(5u9M2uscR0x3E#(KU5_Ks5|1EH`-|puF4tid5!2jrg&%=!~^`GOH zi+cGp2^>~(Jh#2=QocsYKPp8A9OQ=_@JAi+Vc_}Zr57FK7hoeI-*{in@p5)(sW4Fa z^G1nRNc+`3Nf+>ZPlyceX%v$B8M$LT8$dZwS7zg>$t zj`L-+=UNB(HYrb^*HGfm0_Y$RjmP2%yrC6f+3>PPyw3RYCgLT4IO6Y`Pq@J$rY~L^fbpW4#8-t7|Mj}&8`su1qex=2(PThv?FM>XprM*V zv$Czh9h<}W+D$mkF6*w2;ek1#^m3VPY(q3eCo-R~h$L#PYpZYZ8s7Dd6k1rSyK&vR zb}u5y)~{{$0&ToyeSJ$)1J0@CJa$FAsQatIX(%g^eDZe~N5= zhEV2b8~563fIQQ>lN+l=ux~l5@_^UbV9Yjan{LFA?h5rAiC7Txotk-S=shNzn?wv~ zTX|zcOM{wRMF-bS!IVy8RQ1X;#(?KBps7RBWfwCqg_u?$qOFz6P}5cr7fFPSR>7k6 zz|ku3xRh6utTpI7E>Q@7ZBwbd!96PCWIISyCn7d)sSws@7Z}`T>#gf^qt54vN$&Az zA+XJJxeEU3LHKmhE864MaN}pV{J7mTwB<{Jw&w9T;Z|p;!0_T#HfvtK2}y=4r&%#O zy~)1&(Wi!-c2L}JQLPr(KkF3v!k(>JW_}%_m{ZfcMZkLdM5b&PW2}Z=L9}bK2Q|-e zh$xE%4I-Nxed6s&Z)?DEkrdJLZKo`E8iLuDi1j($N7PlFbG75~*zK0NYkKKFY3Nrg zF=?pf;>{{!JNn}O&7kq9pgrmcq2hzl2&?Q5W9f@!Y-J>h|1u&P-=RU96CwQHJb2eq zNFi?fvbcW> zE4PH@K`a&^KPt;Bx?fgEZ6rUd^6EK!2pAPn^{eNPimLYqAi@*r(9@k@ z=-Ip~ubxvXx>*Wi+l(hAr|8{4=~=(x)$>e656N<5KQ%?!FJYFFxGJxndn&5lKT!3n z@~Zt`mgUzKYL*sRHZ{vSlPUf$&r@`|ee zPfcl2@8~M}sI9zuE~}`Lb1F~%)$8B2NJuK`QI3@gls-kDw3Q!TECdyOLcKU*D=%3_ z-{9)?tLMRr&Q^kw+Wq&OEN`0Wk%E%`ij-?foj(Qr7zZSx%B$zgimLzbP08Eq|Fx~W zdJe7Vq^*Fx{?}~f)$?jaZ&DRYYHJRA7dSopmEF{QuC4xGIhQP_h^k-FA}FN2YE@o6 z|E_BmC6t^~`7)HJzOTxw=j7`D2~_=;#xEtMPxYT~0HZdk^6LGgz3WMuv52j~s=T5V z$k)rWPF@TzqzbCWxkSzS6~6$5NtdeM(2l{%fO zzNd@&Wc`Qf #include #include "ui_mainwindow.h" -#include "../include/joystick.h" -#include "../include/qnode.hpp" -#include "../include/dashboard.h" + +#include "joystick.h" +#include "qnode.hpp" +#include "dashboard.h" #include using namespace cv; diff --git a/src/include/qnode.hpp b/src/include/Air_Ground_CEC/qnode.hpp similarity index 100% rename from src/include/qnode.hpp rename to src/include/Air_Ground_CEC/qnode.hpp diff --git a/src/include/automove.cpp b/src/include/automove.cpp deleted file mode 100644 index 3238fd7..0000000 --- a/src/include/automove.cpp +++ /dev/null @@ -1,6 +0,0 @@ -#include "automove.h" - -AutoMove::AutoMove() -{ - -} diff --git a/src/main/automove.cpp b/src/main/automove.cpp new file mode 100644 index 0000000..5fd6256 --- /dev/null +++ b/src/main/automove.cpp @@ -0,0 +1,6 @@ +#include "../include/Air_Ground_CEC/automove.h" + +AutoMove::AutoMove() +{ + +} diff --git a/src/main/dashboard.cpp b/src/main/dashboard.cpp index d5a6ed3..9f28439 100644 --- a/src/main/dashboard.cpp +++ b/src/main/dashboard.cpp @@ -1,4 +1,4 @@ -#include "../include/dashboard.h" +#include "../include/Air_Ground_CEC/dashboard.h" #include #include diff --git a/src/main/joystick.cpp b/src/main/joystick.cpp index 8d6eb41..76f0e5a 100644 --- a/src/main/joystick.cpp +++ b/src/main/joystick.cpp @@ -1,4 +1,4 @@ -#include "../include/joystick.h" +#include "../include/Air_Ground_CEC/joystick.h" #include JoyStick::JoyStick(QWidget* parent) : QWidget(parent) { diff --git a/src/main/main.cpp b/src/main/main.cpp index 7e95cdf..e06e3b5 100644 --- a/src/main/main.cpp +++ b/src/main/main.cpp @@ -1,5 +1,4 @@ - -#include "../ui/mainwindow.hpp" +#include "../include/Air_Ground_CEC/mainwindow.hpp" #include diff --git a/src/main/mainwindow.cpp b/src/main/mainwindow.cpp index f3e3725..ad29714 100644 --- a/src/main/mainwindow.cpp +++ b/src/main/mainwindow.cpp @@ -1,4 +1,4 @@ -#include "../ui/mainwindow.hpp" +#include "../include/Air_Ground_CEC/mainwindow.hpp" #include diff --git a/src/main/qnode.cpp b/src/main/qnode.cpp index c0bd5f3..850a2e4 100644 --- a/src/main/qnode.cpp +++ b/src/main/qnode.cpp @@ -1,4 +1,4 @@ -#include "../include/qnode.hpp" +#include "../include/Air_Ground_CEC/qnode.hpp" #include "sensor_msgs/image_encodings.h" #include diff --git a/src/ui/Triplet/.gitignore b/src/ui/Triplet/.gitignore deleted file mode 100644 index fab7372..0000000 --- a/src/ui/Triplet/.gitignore +++ /dev/null @@ -1,73 +0,0 @@ -# This file is used to ignore files which are generated -# ---------------------------------------------------------------------------- - -*~ -*.autosave -*.a -*.core -*.moc -*.o -*.obj -*.orig -*.rej -*.so -*.so.* -*_pch.h.cpp -*_resource.rc -*.qm -.#* -*.*# -core -!core/ -tags -.DS_Store -.directory -*.debug -Makefile* -*.prl -*.app -moc_*.cpp -ui_*.h -qrc_*.cpp -Thumbs.db -*.res -*.rc -/.qmake.cache -/.qmake.stash - -# qtcreator generated files -*.pro.user* - -# xemacs temporary files -*.flc - -# Vim temporary files -.*.swp - -# Visual Studio generated files -*.ib_pdb_index -*.idb -*.ilk -*.pdb -*.sln -*.suo -*.vcproj -*vcproj.*.*.user -*.ncb -*.sdf -*.opensdf -*.vcxproj -*vcxproj.* - -# MinGW generated files -*.Debug -*.Release - -# Python byte code -*.pyc - -# Binaries -# -------- -*.dll -*.exe - diff --git a/src/ui/Triplet/Triplet.pro b/src/ui/Triplet/Triplet.pro deleted file mode 100644 index 06138d8..0000000 --- a/src/ui/Triplet/Triplet.pro +++ /dev/null @@ -1,38 +0,0 @@ -QT += core gui - -greaterThan(QT_MAJOR_VERSION, 4): QT += widgets - -CONFIG += c++11 - -# The following define makes your compiler emit warnings if you use -# any Qt feature that has been marked deprecated (the exact warnings -# depend on your compiler). Please consult the documentation of the -# deprecated API in order to know how to port your code away from it. -DEFINES += QT_DEPRECATED_WARNINGS - -# You can also make your code fail to compile if it uses deprecated APIs. -# In order to do so, uncomment the following line. -# You can also select to disable deprecated APIs only up to a certain version of Qt. -#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 - -SOURCES += \ - main.cpp \ - mainwindow.cpp - -HEADERS += \ - mainwindow.h - -FORMS += \ - mainwindow.ui - -# Default rules for deployment. -qnx: target.path = /tmp/$${TARGET}/bin -else: unix:!android: target.path = /opt/$${TARGET}/bin -!isEmpty(target.path): INSTALLS += target - -INCLUDEPATH += /usr/local/include \ -/usr/local/include/opencv2 \ -/usr/local/include/opencv4 - - -LIBS += /usr/local/lib/libopencv_world.so diff --git a/src/ui/Triplet/main.cpp b/src/ui/Triplet/main.cpp deleted file mode 100644 index fd3e533..0000000 --- a/src/ui/Triplet/main.cpp +++ /dev/null @@ -1,11 +0,0 @@ -#include "mainwindow.h" - -#include - -int main(int argc, char *argv[]) -{ - QApplication a(argc, argv); - MainWindow w; - w.show(); - return a.exec(); -} diff --git a/src/ui/Triplet/mainwindow.cpp b/src/ui/Triplet/mainwindow.cpp deleted file mode 100644 index 7365b8c..0000000 --- a/src/ui/Triplet/mainwindow.cpp +++ /dev/null @@ -1,51 +0,0 @@ -#include "mainwindow.h" -#include "ui_mainwindow.h" - -MainWindow::MainWindow(QWidget *parent) - : QMainWindow(parent) - , ui(new Ui::MainWindow) -{ - ui->setupUi(this); - timer = new QTimer(this); - connect(timer, SIGNAL(timeout()), this, SLOT(importFrame())); - - //InitVideo(); -} - -void MainWindow::importFrame() -{ - capture >> frame; - cvtColor(frame, frame, CV_BGR2RGB); - QImage srcQImage = QImage((uchar*)(frame.data), frame.cols, frame.rows, QImage::Format_RGB888); - ui->label->setPixmap(QPixmap::fromImage(srcQImage)); - ui->label->resize(srcQImage.size()); - ui->label->show(); -} - - - - -MainWindow::~MainWindow() -{ - delete ui; -} - - - -void MainWindow::on_PLAY_clicked() -{ - capture.open("udp://@0.0.0.0:11111"); - timer->start(30); -} - -void MainWindow::on_CLOSE_clicked() -{ - timer->stop(); - capture.release(); -} - - - - - - diff --git a/src/ui/Triplet/mainwindow.h b/src/ui/Triplet/mainwindow.h deleted file mode 100644 index b959c59..0000000 --- a/src/ui/Triplet/mainwindow.h +++ /dev/null @@ -1,47 +0,0 @@ -#ifndef MAINWINDOW_H -#define MAINWINDOW_H - -#include -#include -#include -#include "opencv2/opencv.hpp" -#include -#include -#include -#include - -using namespace std; -using namespace cv; - -QT_BEGIN_NAMESPACE -namespace Ui { class MainWindow; } -QT_END_NAMESPACE - -class MainWindow : public QMainWindow -{ - Q_OBJECT - -public: - MainWindow(QWidget *parent = nullptr); - ~MainWindow(); - VideoCapture cap; - void InitVideo(); - - -private slots: - - - void importFrame();//read video - - void on_PLAY_clicked();//start video - - void on_CLOSE_clicked();//finish video - -private: - Ui::MainWindow *ui; - VideoCapture capture; - QTimer *timer; - Mat frame; - bool isCamerea = 0; -}; -#endif // MAINWINDOW_H diff --git a/src/ui/Triplet/mainwindow.ui b/src/ui/Triplet/mainwindow.ui deleted file mode 100644 index 96a2ec2..0000000 --- a/src/ui/Triplet/mainwindow.ui +++ /dev/null @@ -1,71 +0,0 @@ - - - MainWindow - - - - 0 - 0 - 1280 - 768 - - - - MainWindow - - - - - - 1100 - 440 - 80 - 25 - - - - CLOSE - - - - - - 1100 - 250 - 80 - 25 - - - - PLAY - - - - - - 50 - 30 - 731 - 461 - - - - - - - - - - - 0 - 0 - 1280 - 22 - - - - - - - -