diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d3c90c6fe899b6eba554eece8283f2829cd9faaf..7fc12e8b051d76854027631531e37eaf69db0fee 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,19 +2,23 @@ stages: - build - test -cache: - paths: - - ./petrack.exe - key: ${CI_COMMIT_REF_SLUG} # Cache for each branch - +before_script: + - $env:Path += ";C:\Program Files\CMake\bin" build_windows: stage: build tags: - windows script: - - C:\Qt\5.14.1\mingw73_64\bin\qmake.exe C:\Users\Deniz\Documents\petrack\petrack.pro -spec win32-g++ "CONFIG+=debug" "CONFIG+=qml_debug" - - mingw32-make.exe -j6 + - mkdir -Force build + - cd build + - cmake -G"MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release -DBUILD_UNIT_TESTS=TRUE .. + - cmake --build . -- -j6 + artifacts: + paths: + - "./build/petrack.exe" + - "./build/tests/unit_test/petrack_tests.exe" + expire_in: 2 hrs # Ggf. muss man nicht in den Ordner der Testskripte verzweigen, da PyTest auch rekusrsiv in Unterorndern nach tests sucht regression test windows: @@ -31,3 +35,18 @@ regression test windows: reports: junit: "tests/regression_test/tests/pytest_report.xml" needs: ["build_windows"] + +unit test windows: + stage: test + tags: + - windows + script: + - cd build/tests/unit_test + - ./petrack_tests.exe -r junit -o unit_test_report.xml + artifacts: + when: always + paths: + - build/tests/unit_test/unit_test_report.xml + reports: + junit: "build/tests/unit_test/unit_test_report.xml" + needs: ["build_windows"] diff --git a/3rdparty b/3rdparty index b5c79279add9dba7f7fa17a81811bbe6214baa9d..9a2f13a0dd5400628d8b8432988d1506a83d07e9 160000 --- a/3rdparty +++ b/3rdparty @@ -1 +1 @@ -Subproject commit b5c79279add9dba7f7fa17a81811bbe6214baa9d +Subproject commit 9a2f13a0dd5400628d8b8432988d1506a83d07e9 diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..5a50000405a6b0349631c3bf64a176bc1b342413 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,307 @@ +cmake_minimum_required(VERSION 3.16) + +project(petrack LANGUAGES CXX) +include(CMakeDependentOption) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +#********************************************************** +# Qt and Misc Stuff * +#********************************************************** +set(CMAKE_AUTOUIC ON) +list(APPEND CMAKE_AUTOUIC_SEARCH_PATHS "${CMAKE_SOURCE_DIR}/ui" "./src") +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) + +set(CMAKE_CXX_STANDARD 14) +set(CMAKE_CXX_STANDARD_REQUIRED ON) + +find_package( + Qt5 + COMPONENTS Widgets OpenGL Xml Core PrintSupport + REQUIRED) + +add_library(petrack_core STATIC) +add_executable(petrack src/main.cpp) +target_link_libraries(petrack PRIVATE petrack_core) +target_link_libraries(petrack_core PUBLIC Qt5::Widgets Qt5::OpenGL Qt5::Xml Qt5::Core Qt5::PrintSupport) + + +source_group(TREE .) + +#********************************************************** +# Cache Variables * +#********************************************************** + +set(STEREO + FALSE + CACHE BOOL "Use Point Grey's Triclops SDK? (currently not supported)") + +set(AVI + FALSE + CACHE BOOL "Use Avi File from Point Grey (currently not supported)") + +set(QWT + TRUE + CACHE BOOL "Use Qwt (currently critical)") + +set(LIBELAS + TRUE + CACHE BOOL "Use Libelas") + +set(DISABLE_STEREO + TRUE + CACHE BOOL "Disable Stereo features (currently must be taken)") + +set(CVPATH + "../petrack/3rdparty/windows/opencv-4.2.0_64bit" + CACHE + PATH + "Path to OpenCV installation (should usually not be needed to be changed)") + +set(QWTPATH + "../petrack/3rdparty/windows/Qwt-6.1.4_64bit" + CACHE PATH "Path to Qwt installation. Ususally shouln't be altered.") + +set(BUILD_UNIT_TESTS + OFF + CACHE BOOL "Whether to build or not to build Catch2 Unit Tests") + +cmake_dependent_option(BUILD_UNIT_TESTS_WITH_LLD + "Use -fuse-ld=lld flag for linking unit-tests (need lld to be installed)" + OFF + "BUILD_UNIT_TESTS" OFF) + +#***************************************************************** +# APPLIES ALWAYS * +#***************************************************************** +target_compile_options(petrack_core PRIVATE "-fpermissive") +target_compile_definitions(petrack_core PUBLIC STEREO_DISABLED) + +set(OpenCV_DIR "${CVPATH}") +find_package(OpenCV REQUIRED) +message("Building with OpenCV${OpenCV_VERSION_MAJOR}(${OpenCV_VERSION})") + +add_library(opencv INTERFACE IMPORTED) +# Debug Version of slows our debug down to a unusable degree +set_target_properties(${OpenCV_LIBS} PROPERTIES + MAP_IMPORTED_CONFIG_DEBUG RELEASE + MAP_IMPORTED_CONFIG_RELWITHDEBINFO RELEASE) + +target_link_libraries(petrack_core PUBLIC ${OpenCV_LIBS}) + +target_include_directories(petrack_core PRIVATE "../ui") +#************************************************************* +# Handling of Options * +#************************************************************* + + +if(BUILD_UNIT_TESTS) + enable_testing() + find_package(Qt5Test REQUIRED) + find_package(trompeloeil REQUIRED HINTS "./3rdparty/trompeloeil/lib/cmake/trompeloeil") + add_subdirectory(./tests/unit_test) + target_link_libraries(petrack_tests PRIVATE petrack_core) + add_subdirectory(./3rdparty/Catch2) + target_link_libraries(petrack_tests PRIVATE Catch2::Catch2 Qt5::Test trompeloeil) + target_include_directories(petrack_tests PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/petrack_core_autogen/include") + + if(BUILD_UNIT_TESTS_WITH_LLD) + target_compile_options(petrack_tests PRIVATE "-fuse-ld=lld") + target_link_options(petrack_tests PRIVATE "-fuse-ld=lld") + endif(BUILD_UNIT_TESTS_WITH_LLD) +endif(BUILD_UNIT_TESTS) + +if(LIBELAS) + message("LIBELAS enabled!") + target_compile_definitions(petrack_core PRIVATE LIBELAS) + target_sources(petrack_core PRIVATE + src/libelas/elasDescriptor.cpp + src/libelas/elas.cpp + src/libelas/elasFilter.cpp + src/libelas/elasMatrix.cpp + src/libelas/elasTriangle.cpp + ) +endif(LIBELAS) + + +if(QWT) + message("Qwt (analysis) enabled!") + # in qwt.../install steht, dass QWT_DLL gesetzt werden muss - insbesondere + # wegen debug/release mischungs problem + target_compile_definitions( + petrack_core PRIVATE + "QWT" + "QWT_DLL") + target_include_directories(petrack_core PUBLIC "${QWTPATH}/include") + target_link_directories(petrack_core PUBLIC "${QWTPATH}/lib") + target_link_libraries(petrack_core PUBLIC qwt$<$<CONFIG:Debug>:d>) + target_sources(petrack_core PRIVATE src/analysePlot.cpp) +else() + message("Qwt disabled!") +endif(QWT) + + +if(AVI) + message("AVI enabled!") + target_compile_definitions(petrack_core PRIVATE AVI) + target_sources(petrack_core "src/aviFile.cpp") +else() + target_sources(petrack_core PRIVATE "src/aviFileWriter.cpp") +endif(AVI) + + +# WIN32 steht für Windows allgemein, nicht nur 32Bit +if(WIN32) + target_link_libraries(petrack_core PUBLIC psapi) +endif(WIN32) + +#************************************************************** +# SOURCES * +#************************************************************** + +# An sich wäre nur target_include_diretories notwendig, aber AUTOUIC +# sucht nur in target source nach, ob ein ui header included wurde. +# Aus bequemlichkeit dann einfach alle aus der alten .pro rüberkopiert +target_include_directories(petrack_core PUBLIC "./include") +target_sources(petrack_core PRIVATE + include/petrack.h + include/helper.h + include/control.h + include/stereoWidget.h + include/colorRangeWidget.h + include/colorMarkerWidget.h + include/codeMarkerWidget.h + include/multiColorMarkerWidget.h + include/recognitionRoiItem.h + include/imageItem.h + include/logoItem.h + include/gridItem.h + include/coordItem.h + include/trackerItem.h + include/view.h + include/animation.h + include/player.h + include/vector.h + include/ellipse.h + include/markerCasern.h + include/markerJapan.h + include/markerHermes.h + include/markerColor.h + include/tracker.h + include/trackerReal.h + include/recognition.h + include/autoCalib.h + include/filter.h + include/brightContrastFilter.h + include/brightFilter.h + include/contrastFilter.h + include/blurFilter.h + include/borderFilter.h + include/backgroundFilter.h + include/calibFilter.h + include/calibStereoFilter.h + include/colorPlot.h + include/stereoItem.h + include/stereoContext.h + include/colorMarkerItem.h + include/codeMarkerItem.h + include/multiColorMarkerItem.h + include/backgroundItem.h + include/whitebalance.h + include/person.h + include/qtColorTriangle.h + include/swapFilter.h + include/extrCalibration.h + include/trackingRoiItem.h + include/analysePlot.h + ) + + +target_sources(petrack_core PRIVATE + src/helper.cpp + src/control.cpp + src/petrack.cpp + src/stereoWidget.cpp + src/colorRangeWidget.cpp + src/colorMarkerWidget.cpp + src/codeMarkerWidget.cpp + src/multiColorMarkerWidget.cpp + src/recognitionRoiItem.cpp + src/imageItem.cpp + src/logoItem.cpp + src/gridItem.cpp + src/coordItem.cpp + src/trackerItem.cpp + src/view.cpp + src/animation.cpp + src/player.cpp + src/vector.cpp + src/ellipse.cpp + src/markerCasern.cpp + src/markerHermes.cpp + src/markerJapan.cpp + src/markerColor.cpp + src/tracker.cpp + src/trackerReal.cpp + src/recognition.cpp + src/autoCalib.cpp + src/filter.cpp + src/brightContrastFilter.cpp + src/brightFilter.cpp + src/contrastFilter.cpp + src/blurFilter.cpp + src/borderFilter.cpp + src/backgroundFilter.cpp + src/calibFilter.cpp + src/calibStereoFilter.cpp + src/stereoContext.cpp + src/colorPlot.cpp + src/stereoItem.cpp + src/colorMarkerItem.cpp + src/codeMarkerItem.cpp + src/multiColorMarkerItem.cpp + src/backgroundItem.cpp + src/whitebalance.cpp + src/person.cpp + src/qtColorTriangle.cpp + src/swapFilter.cpp + src/extrCalibration.cpp + src/trackingRoiItem.cpp + ui/codeMarker.ui + ui/colorMarker.ui + ui/colorRange.ui + ui/multiColorMarker.ui + ui/stereo.ui + ui/control.ui +) + +target_sources(petrack PRIVATE + petrack.rc + icons/icons.qrc) + + +#***************************************************************************** +# CODE AUS DER ALTEN .PRO DATEI, DER NOCH NICHT IN DIE CMAKE EINGEBAUT WURDE * +#***************************************************************************** + +if(${STEREO}) + # Should not happen at the moment Code below was at this point in .pro + # $$STEREO { !build_pass:message(Stereo enabled!) DEFINES += STEREO + + # # fuer pgr stereo INCLUDEPATH += $${PGRPATH}/include QMAKE_LIBDIR += + # $${PGRPATH}/bin LIBS += -L$${PGRPATH}/lib #LIBS += -ldl LIBS += + # -ltriclops_v100 #LIBS += -lpnmutils } else { !build_pass:message(Stereo + # disabled!) } + + # Auch das spielt hier eine Rolle: + + # $$STEREO{ SOURCES += src/pgrAviFile.cpp HEADERS += include/pgrAviFile.h + # message("Include pgrAviFile") }else{ SOURCES += src/stereoAviFile.cpp + # HEADERS += include/stereoAviFile.h message("Include stereoAviFile") } +endif(${STEREO}) + +# Sollte das nicht eigentlich nur aktiv sein, wenn Stereo gesetzt wurde? + +# # fuer pgrAviFile win32:LIBS += -lavifil32 win32:LIBS += -lmsvfw32 win64:LIBS +# += -lavifil32 win64:LIBS += -lmsvfw32 diff --git a/include/animation.h b/include/animation.h index 7116a9aea295be26b867fcfbec7720f695b3c364..87a68a2052db2b9e3fcbd0249be2650a8ade21da 100644 --- a/include/animation.h +++ b/include/animation.h @@ -24,7 +24,7 @@ they can be represented in QT. #include <QTime> -#include "opencv.hpp" +#include "opencv2/opencv.hpp" #include "filter.h" #include "helper.h" diff --git a/include/blurFilter.h b/include/blurFilter.h index 05688b8f7a600f0e8851a0aab095184eb120aa68..65ffceca2e53be3702cf435e9c530aa419dcc01c 100644 --- a/include/blurFilter.h +++ b/include/blurFilter.h @@ -2,7 +2,7 @@ #define BLURFILTER_H #include "filter.h" -#include "opencv.hpp" +#include "opencv2/opencv.hpp" class BlurFilter : public Filter { diff --git a/include/calibFilter.h b/include/calibFilter.h index 2aacde73e6413527adfdbb30afb84a0f7ae120d1..97c76f0754cbb4ef4af1ac3e2c3126e9bb7f4595 100644 --- a/include/calibFilter.h +++ b/include/calibFilter.h @@ -19,6 +19,8 @@ private: Parameter mK4; Parameter mK5; Parameter mK6; + cv::Mat map1; + cv::Mat map2; public: CalibFilter(); diff --git a/include/codeMarkerItem.h b/include/codeMarkerItem.h index 0b3de32a522e1e2076b369d025cf3e3b6b3b9baa..350054f723760e965f478b4959a52b76fccd4714 100644 --- a/include/codeMarkerItem.h +++ b/include/codeMarkerItem.h @@ -15,8 +15,8 @@ private: Petrack *mMainWindow; // QImage *mImage; - vector<int> mIds; - vector<vector<cv::Point2f> > mCorners, mRejected; + std::vector<int> mIds; + std::vector<std::vector<cv::Point2f> > mCorners, mRejected; Vec2F mUlc; // upper left corner to draw public: @@ -24,8 +24,8 @@ public: QRectF boundingRect() const; void setRect(Vec2F& v); void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); - void setDetectedMarkers(vector<vector<cv::Point2f> > corners, vector<int> ids); - void setRejectedMarkers(vector<vector<cv::Point2f> > rejected); + void setDetectedMarkers(std::vector<std::vector<cv::Point2f> > corners, std::vector<int> ids); + void setRejectedMarkers(std::vector<std::vector<cv::Point2f> > rejected); }; #endif diff --git a/include/codeMarkerWidget.h b/include/codeMarkerWidget.h index accaf91c734644d475976f35f1b1aaf0d88feb53..fded7a1e8b15c3a77f4b6e1ea0c3365215614f2f 100644 --- a/include/codeMarkerWidget.h +++ b/include/codeMarkerWidget.h @@ -2,7 +2,7 @@ #define CODEMARKERWIDGET_H #include <QtWidgets> -#include <aruco.hpp> +#include "opencv2/aruco.hpp" #include "ui_codeMarker.h" diff --git a/include/colorPlot.h b/include/colorPlot.h index e3209e238bc4d2caf8d134be7b3bb39424c1fc84..b59fac8439fc44339c8f9c925d1351aec58e7955 100644 --- a/include/colorPlot.h +++ b/include/colorPlot.h @@ -48,27 +48,27 @@ public: : mColored(true), mMapHeight(DEFAULT_HEIGHT), mInversHue(false) { setRect(0., 0., 0., 0.); - mFromCol.convertTo(QColor::Hsv); - mToCol.convertTo(QColor::Hsv); + mFromCol = mFromCol.toHsv(); + mToCol = mToCol.toHsv(); } RectMap(QRectF r) : QRectF(r), mInversHue(false) { setRect(0., 0., 0., 0.); - mFromCol.convertTo(QColor::Hsv); - mToCol.convertTo(QColor::Hsv); + mFromCol = mFromCol.toHsv(); + mToCol = mToCol.toHsv(); } RectMap(double x, double y, double w, double h, bool colored, double mapHeight) : QRectF(x, y, w, h), mColored(colored), mMapHeight(mapHeight), mInversHue(false) { - mFromCol.convertTo(QColor::Hsv); - mToCol.convertTo(QColor::Hsv); + mFromCol = mFromCol.toHsv(); + mToCol =mToCol.toHsv(); } RectMap(QRectF r, bool colored, double mapHeight) : QRectF(r), mColored(colored), mMapHeight(mapHeight), mInversHue(false) { - mFromCol.convertTo(QColor::Hsv); - mToCol.convertTo(QColor::Hsv); + mFromCol = mFromCol.toHsv(); + mToCol = mToCol.toHsv(); } inline bool colored() const { @@ -134,6 +134,9 @@ public: void changeActMapInvHue(bool b); void changeActMapFromColor(const QColor &fromCol); void changeActMapToColor(const QColor &toCol); + bool getActMapInvHue(); + QColor getActMapToColor(); + QColor getActMapFromColor(); RectMap getMap(int index) const; void delMap(int index); inline void delMaps() diff --git a/include/colorRangeWidget.h b/include/colorRangeWidget.h index 8c16c9104744dd8e82b869a4b3af291b6336c0ae..ce8c747b2795eef30b701d58480d0c5c74e9318a 100644 --- a/include/colorRangeWidget.h +++ b/include/colorRangeWidget.h @@ -24,6 +24,7 @@ public: void setInvHue(bool b); void setFromColor(const QColor &col); void setToColor(const QColor &col); + void setControlWidget(int toHue, int fromHue, int toSat, int fromSat); private slots: @@ -38,7 +39,7 @@ private slots: private: - void setControlWidget(); + Petrack *mMainWindow; ColorPlot *mColorPlot; diff --git a/include/control.h b/include/control.h index a0650c6480232b1e7bad63c8c18af5e3a7b55bd0..58e3e1149c7a3f6cb085a97c10580aaddd2a6d40 100644 --- a/include/control.h +++ b/include/control.h @@ -170,6 +170,10 @@ public: int getCalibGrid3DResolution(); void setCalibGrid3DResolution(int i); + void expandRange(QColor& fromColor, QColor& toColor, const std::array<int, 3>& clickedColor); + void saveChange(const QColor& fromColor, const QColor& toColor, RectPlotItem* map); + bool getColors(QPoint& p, GraphicsView* graphicsView, std::array<int, 3>& clickedColor, QColor& toColor, QColor& fromColor, RectPlotItem*& map); + void setXml(QDomElement &elem); void getXml(QDomElement &elem); bool isLoading() @@ -239,6 +243,9 @@ private slots: void on_mapResetHeight_clicked(); void on_mapResetPos_clicked(); void on_mapDefaultHeight_valueChanged(double d); + void on_expandColor(QPoint p, GraphicsView* graphicsView); + void on_setColor(QPoint, GraphicsView*); + void on_trackShow_stateChanged(int i); void on_trackFix_stateChanged(int i); @@ -399,6 +406,8 @@ private slots: //void on_trackExport_released(); + void on_colorPickerButton_clicked(bool checked); + private: Petrack *mMainWindow; QGraphicsScene *mScene; diff --git a/include/ellipse.h b/include/ellipse.h index 240f51e2747d30970d91a76d52f989d1677008ca..94978c97afcdf87b37f1ebfe8405f79219bff362 100644 --- a/include/ellipse.h +++ b/include/ellipse.h @@ -2,7 +2,7 @@ #define ELLIPSE_H -#include "opencv.hpp" +#include "opencv2/opencv.hpp" #include "vector.h" diff --git a/include/helper.h b/include/helper.h index 8496c743b0c0c762af672c8d8ef7afce8c4cc786..8f72bde6b6aba9cc3cfcc8b6c3388d62ce3c8f58 100644 --- a/include/helper.h +++ b/include/helper.h @@ -18,14 +18,13 @@ extern QString commandLineOptionsString; #ifdef QT_NO_DEBUG_OUTPUT #define debout // #else - #define debout cout << __func__ << " in " << __FILE__ << " line " << __LINE__ << ": " + #define debout std::cout << __func__ << " in " << __FILE__ << " line " << __LINE__ << ": " #endif #include <iostream> -using namespace std; #include <QString> -inline ostream& operator<<(ostream& s, const QString& t) +inline std::ostream& operator<<(std::ostream& s, const QString& t) { s << t.toStdString(); return s; @@ -157,7 +156,7 @@ inline QColor getValue(const cv::Mat &img ,int x, int y) // s << "RGB "<< col.red() << " " << col.green() << " " << col.blue() << " / HSV " << col.hue() << " " << col.saturation() << " " << col.value(); // return s; // } -inline ostream& operator<<(ostream& s, const QColor& col) +inline std::ostream& operator<<(std::ostream& s, const QColor& col) { if (col.isValid()) s << col.red() << " " << col.green() << " " << col.blue(); diff --git a/include/petrack.h b/include/petrack.h index e9b74b3083c0fb8975455bd22d22ec93046bb8de..510980f0f8b26b1cd042db4db0302e56caa41d0b 100644 --- a/include/petrack.h +++ b/include/petrack.h @@ -7,7 +7,7 @@ #include <QMouseEvent> -#include <opencv.hpp> +#include "opencv2/opencv.hpp" //#include "opencv2/cxcore.h" //#include "opencv2/cvaux.h" //#include "opencv2/opencv.hpp" diff --git a/include/player.h b/include/player.h index 764fb16891f58a96c17054a53065aece8a06cdc7..fc481e6ea3a27d5aa93ec7c80a99788fcbcea7dd 100644 --- a/include/player.h +++ b/include/player.h @@ -10,7 +10,7 @@ #include "aviFileWriter.h" #endif -#include "opencv.hpp" +#include "opencv2/opencv.hpp" class QLabel; class QSlider; diff --git a/include/tracker.h b/include/tracker.h index 534f3203179e04fec5f4af48d9e12e688b33e22f..ec4a5df5d8582bd03f15791c2bc16bc2afeb5fa6 100644 --- a/include/tracker.h +++ b/include/tracker.h @@ -171,7 +171,7 @@ inline QTextStream& operator<<(QTextStream& s, const TrackPoint& tp) s << tp.x() << " " << tp.y() << " " << tp.qual() << " " << tp.colPoint().x() << " " << tp.colPoint().y() << " " << tp.color(); return s; } -inline ostream& operator<<(ostream& s, const TrackPoint& tp) +inline std::ostream& operator<<(std::ostream& s, const TrackPoint& tp) { if (Petrack::trcVersion > 2) s << tp.x() << " " << tp.y() << " " << tp.sp().x() << " " << tp.sp().y() << " " << tp.sp().z() << " " << tp.qual() << " " << tp.colPoint().x() << " " << tp.colPoint().y() << " " << tp.color() << " " << tp.markerID(); @@ -385,7 +385,7 @@ inline QTextStream& operator<<(QTextStream& s, const TrackPerson& tp) return s; } -inline ostream& operator<<(ostream& s, const TrackPerson& tp) +inline std::ostream& operator<<(std::ostream& s, const TrackPerson& tp) { s << tp.nr() << " " << tp.height() << " " << tp.firstFrame() << " " << tp.lastFrame() << " " << tp.colCount() << " " << tp.color() << " " << tp.size() << endl; s << tp.comment() << endl; @@ -414,15 +414,15 @@ private: cv::Mat mGrey, mPrevGrey;//, mPyramid, mPrevPyramid; // IplImage *mGrey, *mPrevGrey, *mPyramid, *mPrevPyramid; // CvPoint2D32f* mPrevFeaturePoints, *mFeaturePoints; - vector<cv::Point2f> mPrevFeaturePoints, mFeaturePoints; + std::vector<cv::Point2f> mPrevFeaturePoints, mFeaturePoints; // CvPoint2D32f* mPrevColorFeaturePoints, *mColorFeaturePoints; - vector<uchar> mStatus; //, *mColorStatus; + std::vector<uchar> mStatus; //, *mColorStatus; int mFlags; int mPrevFrame; // IplImage *mPrevImg; // int *mPrevFeaturePointsIdx; - vector<int> mPrevFeaturePointsIdx; - vector<float> mTrackError; //, *mColorTrackError; + std::vector<int> mPrevFeaturePointsIdx; + std::vector<float> mTrackError; //, *mColorTrackError; // CvTermCriteria mTermCriteria; cv::TermCriteria mTermCriteria; diff --git a/include/vector.h b/include/vector.h index 5cb0682ef9d9f05dfc2bf9e679736a8851fa4224..a55688056458015b16d007238d1d68f7d8a55bbe 100644 --- a/include/vector.h +++ b/include/vector.h @@ -89,7 +89,7 @@ inline Vec3F operator*(double f, const Vec3F& v) return v*f; } -inline ostream& operator<< (ostream& s, const Vec3F& v) +inline std::ostream& operator<< (std::ostream& s, const Vec3F& v) { s << "(" << v.x() << ", " << v.y() << ", " << v.z() << ")"; return s; @@ -160,7 +160,7 @@ inline Vec2F operator*(double f, const Vec2F& v) return v*f; } -inline ostream& operator<< (ostream& s, const Vec2F& v) +inline std::ostream& operator<< (std::ostream& s, const Vec2F& v) { s << "(" << v.x() << ", " << v.y() << ")"; return s; @@ -172,7 +172,7 @@ inline QTextStream& operator<< (QTextStream& s, const Vec2F& v) s << v.x() << " " << v.y(); // ohne (,) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! return s; } -inline istream& operator>> (istream& s, Vec2F& v) +inline std::istream& operator>> (std::istream& s, Vec2F& v) { double d; s >> d; diff --git a/include/view.h b/include/view.h index 41f268f0363411bc029b6056a67c249fb313a6cd..43d9df8ec2102c29d306792b22228459ac70bb69 100644 --- a/include/view.h +++ b/include/view.h @@ -27,6 +27,7 @@ public: void mouseDoubleClickEvent(QMouseEvent *event); //void mouseReleaseEvent(QMouseEvent *event); void keyPressEvent(QKeyEvent *event); + void mousePressEvent(QMouseEvent *event) override; signals: void mouseDoubleClick(); @@ -36,6 +37,8 @@ signals: void mouseRightDoubleClick(QPointF pos, int direction); void mouseMiddleDoubleClick(int direction); void mouseShiftWheel(int delta); + void colorSelected(QPoint p, GraphicsView* graphicsView); + void setColorEvent(QPoint p, GraphicsView* graphicsView); //void mouseRightClick(QPointF pos); }; diff --git a/petrack.pro b/petrack.pro deleted file mode 100644 index 9e60d3f865c2f8056e05f765750832fa15cb20da..0000000000000000000000000000000000000000 --- a/petrack.pro +++ /dev/null @@ -1,747 +0,0 @@ -# wichtig: gelinkte dynamische libraries muessen auch in PATH liegen (Systemsteuerung...), sonst kommt aufruf direkt zurueck - cygwin neu starten!!! -# welche dll bei Aufruf genommen werden koennen ueber Programm DEPENDENCY WALKER herausbekommen werden - -# um eine .pro Datei fuer mehrere Rechner nutzen zu koennen -# die Variable hostname muss auf rechner von console einmalig mit "qmake -set hostname zam852" gesetzt werden (Abfrage aller Var mit qmake -query) -# hostname = $$[hostname] -hostname = $$system(hostname) -unix:hostname = $${QMAKE_HOST.name} -message($${hostname}) -!build_pass:message(Generating Makefile for ($$hostname)!) - -TEMPLATE = app -CONFIG += console # noetig, damit stdout angezeigt wird -#CONFIG += debug_and_release # scheint default zu sein!!! build_all -#CONFIG += build_all - -QT += opengl # // wenn opengl widget etc genutzt werden soll -# opengl qt warn_on -QT += xml # // wenn xml benoetigt werden soll -QT += core -#QT += gui -QT += widgets -QT += printsupport - -# windows - The target is a Win32 window application (app only). The proper include paths,compiler flags and libraries will automatically be added to the project. -# console - The target is a Win32 console application (app only). The proper include paths, compiler flags and libraries will automatically be added to the project. -# dll - The target is a shared object/DLL.The proper include paths, compiler flags and libraries will automatically be added to the project. -# staticlib - The target is a static library (lib only). The proper compiler flags will automatically be added to the project. - -TARGET = petrack -INCLUDEPATH += include -# default settings: -STEREO = false # true / false -AVI = false # true / false -QWT = true # true / false -LIBELAS = true - -contains(hostname, [zZ][aA][mM]852) { -#Hermes rechner ######################################################################################### - STEREO = false # true / false - DEFINES += STEREO_DISABLED - AVI = true # true / false - #CVPATH = "C:/OpenCV-2.2.0/bin" - CVPATH = "../petrack/3rdparty/windows/opencv-4.2.0_64bit" - CVVERSION = "240" - LIBS += -llibopencv_core$${CVVERSION} -llibopencv_highgui$${CVVERSION} -llibopencv_imgproc$${CVVERSION} -llibopencv_calib3d$${CVVERSION} -llibopencv_video$${CVVERSION} -llibopencv_legacy$${CVVERSION} # -lcv$${CVVERSION} -lcvaux$${CVVERSION} -# CVPATH = "C:/Programme/OpenCV1.2" -# CVVERSION = "120" -# CVPATH = "C:/OpenCV2.1" -# CVVERSION = "210" -# QWTPATH = "C:/Programme/qwt-5.2.0" - QWTPATH = "C:/Qwt-5.2.0" - PGRPATH = "C:/Programme/Point Grey Research/Triclops Stereo Vision SDK" - # noetig fuer qt 5 um u.a. qprinter zu finden - QT += printsupport -QMAKE_CXXFLAGS += -fpermissive - -} else:contains(hostname, [zZ][aA][mM]460) { #.zam.kfa-juelich.de -# Mac Maik ######################################################################################### - QMAKE_MAC_SDK = macosx10.12 - #CVVERSION = "" - CVVERSION = "420" - CV_MAJOR_VERSION = "4" - - #AVI = true # false - - QWTPATH = "/Users/boltes/Applications/qwt-6.1.3/build-qwt-Desktop_Qt_5_7_0_clang_64bit2-Release/lib/qwt.framework/Versions/6" - INCLUDEPATH += $${QWTPATH}/Headers - LIBS += -L$${QWTPATH}/ - # spaeter: - # install_name_tool -change qwt.framework/Versions/6/qwt /Users/boltes/Applications/qwt-6.1.3/build-qwt-Desktop_Qt_5_7_0_clang_64bit2-Release/lib/qwt.framework/Versions/6/qwt ./petrack.app/Contents/MacOS/petrack - - QMAKE_LFLAGS += -F/Users/boltes/Applications/qwt-6.1.3/build-qwt-Desktop_Qt_5_7_0_clang_64bit2-Release/lib - #LIBS += -framework qwt - - #CVPATH = "/Users/boltes/Applications/opencv-3.1.0/release" - CVPATH = "../petrack/3rdparty/windows/opencv-4.2.0" - - #INCLUDEPATH += /usr/local/include - #INCLUDEPATH += /usr/local/include/opencv - #INCLUDEPATH += /usr/local/include/opencv2 - INCLUDEPATH += $${CVPATH}/include/ - INCLUDEPATH += $${CVPATH}/include/opencv - INCLUDEPATH += $${CVPATH}/include/opencv2 - #INCLUDEPATH += /usr/local/Cellar/opencv3/3.1.0_3/include/ - - #PGRPATH = "/home/zam/salden/libs/Triclops/release" - LIBS += -lopencv_core \ - -lopencv_highgui \ - -lopencv_imgproc \ - -lopencv_calib3d \ - -lopencv_imgcodecs \ - -lopencv_videoio \ - -lopencv_video #\ - # -l opencv_ffmpeg \ - # -lopencv_legacy -QMAKE_CXXFLAGS += -fpermissive -} else:contains(hostname, arne-laptop) { -# Laptop Daniel ########################################################################################## - STEREO = false # true / false - DEFINES += STEREO_DISABLED - - #PGRPATH = "C:/Program Files/Point Grey Research/Triclops Stereo Vision SDK" - - CONFIG(debug, debug|release) { - # only debug - PGRPATH = "../trunk/3rdparty/windows/triclops-3.4" - CVPATH = "../petrack/3rdparty/windows/opencv-4.2.0_64bit" - QWTPATH = "../petrack/3rdparty/windows/Qwt-6.1.4_64bit" - - } else { - # only release - PGRPATH = "../trunk/3rdparty/windows/triclops-3.4" - CVPATH = "../petrack/3rdparty/windows/opencv-4.2.0_64bit" - QWTPATH = "../petrack/3rdparty/windows/Qwt-6.1.4_64bit" - } - #CVPATH = "%OPENCV_DIR%" - #CVPATH = "C:\Program Files (x86)\OpenCV\3.0.0\build4qt5\install" - CVVERSION = "420" - CV_MAJOR_VERSION = "4" - - # to switch between version 2.4.10 and 3.0.0 you have to update your OPENCV_DIR environment variable to the specific path - - #CVPATH = "C:/Program Files (x86)/OpenCV/2.4.10/build" - #CVVERSION = "2410" - - INCLUDEPATH += $${CVPATH}/include - INCLUDEPATH += $${CVPATH}/include/opencv - INCLUDEPATH += $${CVPATH}/include/opencv2 - - #QWTPATH = "C:/Program Files (x86)/Qwt/Qwt-5.2.3" - #QWTPATH = "C:\Qwt-6.1.2" - INCLUDEPATH += $${QWTPATH}/include - - - #STEREO = false # true / false - AVI = false # true / false - #QWT = false # true / false - #LIBELAS = false - - # fuer 64 bit -lopencv_ffmpeg_64 - LIBS += -L$${CVPATH}/x64/mingw/bin \ - -lopencv_core$${CVVERSION} \ - -lopencv_highgui$${CVVERSION} \ - -lopencv_imgproc$${CVVERSION} \ - -lopencv_calib3d$${CVVERSION} \ - -lopencv_video$${CVVERSION} \ - -lopencv_videoio_ffmpeg$${CVVERSION}_64\ - -lopencv_aruco$${CVVERSION} \ - -lopencv_videoio$${CVVERSION} \ - -lopencv_imgcodecs$${CVVERSION} - # QMAKE_CXXFLAGS += -march=i686 -QMAKE_CXXFLAGS += -fpermissive - -} else:contains(hostname, [zZ][aA][mM]197) { -# Laptop Daniel ########################################################################################## - STEREO = false # true / false - DEFINES += STEREO_DISABLED - - #PGRPATH = "C:/Program Files/Point Grey Research/Triclops Stereo Vision SDK" - - CONFIG(debug, debug|release) { - # only debug - PGRPATH = "../trunk/3rdparty/windows/triclops-3.4" - CVPATH = "../petrack/3rdparty/windows/opencv-4.2.0_64bit" - QWTPATH = "../petrack/3rdparty/windows/Qwt-6.1.4_64bit" - - } else { - # only release - PGRPATH = "../trunk/3rdparty/windows/triclops-3.4" - CVPATH = "../petrack/3rdparty/windows/opencv-4.2.0_64bit" - QWTPATH = "../petrack/3rdparty/windows/Qwt-6.1.4_64bit" - } - #CVPATH = "%OPENCV_DIR%" - #CVPATH = "C:\Program Files (x86)\OpenCV\3.0.0\build4qt5\install" - CVVERSION = "420" - CV_MAJOR_VERSION = "4" - - # to switch between version 2.4.10 and 3.0.0 you have to update your OPENCV_DIR environment variable to the specific path - - #CVPATH = "C:/Program Files (x86)/OpenCV/2.4.10/build" - #CVVERSION = "2410" - - INCLUDEPATH += $${CVPATH}/include - INCLUDEPATH += $${CVPATH}/include/opencv - INCLUDEPATH += $${CVPATH}/include/opencv2 - - #QWTPATH = "C:/Program Files (x86)/Qwt/Qwt-5.2.3" - #QWTPATH = "C:\Qwt-6.1.2" - INCLUDEPATH += $${QWTPATH}/include - - - #STEREO = false # true / false - AVI = false # true / false - #QWT = false # true / false - #LIBELAS = false - - # fuer 64 bit -lopencv_ffmpeg_64 - LIBS += -L$${CVPATH}/x64/mingw/bin \ - -lopencv_core$${CVVERSION} \ - -lopencv_highgui$${CVVERSION} \ - -lopencv_imgproc$${CVVERSION} \ - -lopencv_calib3d$${CVVERSION} \ - -lopencv_video$${CVVERSION} \ - -lopencv_videoio_ffmpeg$${CVVERSION}_64\ - -lopencv_aruco$${CVVERSION} \ - -lopencv_videoio$${CVVERSION} \ - -lopencv_imgcodecs$${CVVERSION} - # QMAKE_CXXFLAGS += -march=i686 -QMAKE_CXXFLAGS += -fpermissive - -} else:contains(hostname, ias7185) { - # imotion laptop - DEFINES += STEREO_DISABLED - - # PointGray - PGRPATH = "../petrack/3rdparty/windows/triclops-3.4" - #PGRPATH = "C:/Program Files (x86)/Point Grey Research/Triclops Stereo Vision SDK" - # OpenCV - #CVPATH = "C:/OpenCV/opencv300/build/install" - #CVPATH = "3rdparty/windows/opencv-3.1.0" - CVPATH = "../petrack/3rdparty/windows/opencv-4.2.0_64bit" - CVVERSION = "420" - CV_MAJOR_VERSION = "4" - - # to switch between version 2.4.10 and 3.0.0 you have to update your OPENCV_DIR environment variable to the specific path - - INCLUDEPATH += $${CVPATH}/include - INCLUDEPATH += $${CVPATH}/include/opencv - INCLUDEPATH += $${CVPATH}/include/opencv2 - - QWTPATH = "../petrack/3rdparty/windows/Qwt-6.1.4_64bit" - #QWTPATH = "D:/petrack/trunk/3rdparty/windows/qwt-6.1.2" - INCLUDEPATH += $${QWTPATH}/include - - STEREO = false # true / false - AVI = false # true / false - #QWT = false # true / false - #LIBELAS = false - - # fuer 64 bit -lopencv_ffmpeg_64 - LIBS += -L$${CVPATH}/x64/mingw/bin \ - -lopencv_core$${CVVERSION} \ - -lopencv_highgui$${CVVERSION} \ - -lopencv_imgproc$${CVVERSION} \ - -lopencv_calib3d$${CVVERSION} \ - -lopencv_video$${CVVERSION} \ - -lopencv_videoio_ffmpeg$${CVVERSION}_64\ - -lopencv_aruco$${CVVERSION} \ - -lopencv_videoio$${CVVERSION} \ - -lopencv_imgcodecs$${CVVERSION} - # QMAKE_CXXFLAGS += -march=i686 -QMAKE_CXXFLAGS += -fpermissive - -} else:contains(hostname, ias7176) { - # Deniz 32-Bit - DEFINES += STEREO_DISABLED - - # PointGray - PGRPATH = "../petrack/3rdparty/windows/triclops-3.4" - #PGRPATH = "C:/Program Files (x86)/Point Grey Research/Triclops Stereo Vision SDK" - # OpenCV - #CVPATH = "C:/OpenCV/opencv300/build/install" - #CVPATH = "3rdparty/windows/opencv-3.1.0" - CVPATH = "../petrack/3rdparty/windows/opencv-4.2.0_64bit" - CVVERSION = "420" - CV_MAJOR_VERSION = "4" - - # to switch between version 2.4.10 and 3.0.0 you have to update your OPENCV_DIR environment variable to the specific path - - INCLUDEPATH += $${CVPATH}/include - INCLUDEPATH += $${CVPATH}/include/opencv - INCLUDEPATH += $${CVPATH}/include/opencv2 - - QWTPATH = "../petrack/3rdparty/windows/Qwt-6.1.4_64bit" - #QWTPATH = "D:/petrack/trunk/3rdparty/windows/qwt-6.1.2" - INCLUDEPATH += $${QWTPATH}/include - - STEREO = false # true / false - AVI = false # true / false - #QWT = false # true / false - #LIBELAS = false - - - -# CONFIG(debug, debug|release){ -# # fuer 64 bit -lopencv_ffmpeg_64 -# LIBS += -L$${CVPATH}/x64/mingw/bin \ -# -lopencv_core$${CVVERSION}d \ -# -lopencv_highgui$${CVVERSION}d \ -# -lopencv_imgproc$${CVVERSION}d \ -# -lopencv_calib3d$${CVVERSION}d \ -# -lopencv_video$${CVVERSION}d \ -# -lopencv_videoio_ffmpeg$${CVVERSION}_64\ -# -lopencv_aruco$${CVVERSION}d \ -# -lopencv_videoio$${CVVERSION}d \ -# -lopencv_imgcodecs$${CVVERSION}d -# # QMAKE_CXXFLAGS += -march=i686 -# } else{ - # fuer 64 bit -lopencv_ffmpeg_64 - LIBS += -L$${CVPATH}/x64/mingw/bin \ - -lopencv_core$${CVVERSION} \ - -lopencv_highgui$${CVVERSION} \ - -lopencv_imgproc$${CVVERSION} \ - -lopencv_calib3d$${CVVERSION} \ - -lopencv_video$${CVVERSION} \ - -lopencv_videoio_ffmpeg$${CVVERSION}_64\ - -lopencv_aruco$${CVVERSION} \ - -lopencv_videoio$${CVVERSION} \ - -lopencv_imgcodecs$${CVVERSION} - ## QMAKE_CXXFLAGS += -march=i686 -QMAKE_CXXFLAGS += -fpermissive -# } - -} else:contains(hostname, ias7171) { - # Ann Katrin 32-Bit - DEFINES += STEREO_DISABLED - - # PointGray - PGRPATH = "../petrack/3rdparty/windows/triclops-3.4" - #PGRPATH = "C:/Program Files (x86)/Point Grey Research/Triclops Stereo Vision SDK" - # OpenCV - #CVPATH = "C:/OpenCV/opencv300/build/install" - #CVPATH = "3rdparty/windows/opencv-3.1.0" - CVPATH = "../petrack/3rdparty/windows/opencv-4.2.0_64bit" - CVVERSION = "420" - CV_MAJOR_VERSION = "4" - - # to switch between version 2.4.10 and 3.0.0 you have to update your OPENCV_DIR environment variable to the specific path - - INCLUDEPATH += $${CVPATH}/include - INCLUDEPATH += $${CVPATH}/include/opencv - INCLUDEPATH += $${CVPATH}/include/opencv2 - - QWTPATH = "../petrack/3rdparty/windows/Qwt-6.1.4_64bit" - #QWTPATH = "D:/petrack/trunk/3rdparty/windows/qwt-6.1.2" - INCLUDEPATH += $${QWTPATH}/include - - STEREO = false # true / false - AVI = false # true / false - #QWT = false # true / false - #LIBELAS = false - - # fuer 64 bit -lopencv_ffmpeg_64 - LIBS += -L$${CVPATH}/x64/mingw/bin \ - -lopencv_core$${CVVERSION} \ - -lopencv_highgui$${CVVERSION} \ - -lopencv_imgproc$${CVVERSION} \ - -lopencv_calib3d$${CVVERSION} \ - -lopencv_video$${CVVERSION} \ - -lopencv_videoio_ffmpeg$${CVVERSION}_64\ - -lopencv_aruco$${CVVERSION} \ - -lopencv_videoio$${CVVERSION} \ - -lopencv_imgcodecs$${CVVERSION} - # QMAKE_CXXFLAGS += -march=i686 -QMAKE_CXXFLAGS += -fpermissive - -}else:contains(hostname, ias7160) { - # Test Laptop 32-Bit - DEFINES += STEREO_DISABLED - - # PointGray - PGRPATH = "../petrack/3rdparty/windows/triclops-3.4" - #PGRPATH = "C:/Program Files (x86)/Point Grey Research/Triclops Stereo Vision SDK" - # OpenCV - #CVPATH = "C:/OpenCV/opencv300/build/install" - #CVPATH = "3rdparty/windows/opencv-3.1.0" - CVPATH = "../petrack/3rdparty/windows/opencv-4.2.0_64bit" - CVVERSION = "420" - CV_MAJOR_VERSION = "4" - - # to switch between version 2.4.10 and 3.0.0 you have to update your OPENCV_DIR environment variable to the specific path - - INCLUDEPATH += $${CVPATH}/include - INCLUDEPATH += $${CVPATH}/include/opencv - INCLUDEPATH += $${CVPATH}/include/opencv2 - - QWTPATH = "../petrack/3rdparty/windows/Qwt-6.1.4_64bit" - #QWTPATH = "D:/petrack/trunk/3rdparty/windows/qwt-6.1.2" - INCLUDEPATH += $${QWTPATH}/include - - STEREO = false # true / false - AVI = false # true / false - #QWT = false # true / false - #LIBELAS = false - - # fuer 64 bit -lopencv_ffmpeg_64 - LIBS += -L$${CVPATH}/x64/mingw/bin \ - -lopencv_core$${CVVERSION} \ - -lopencv_highgui$${CVVERSION} \ - -lopencv_imgproc$${CVVERSION} \ - -lopencv_calib3d$${CVVERSION} \ - -lopencv_video$${CVVERSION} \ - -lopencv_videoio_ffmpeg$${CVVERSION}_64\ - -lopencv_aruco$${CVVERSION} \ - -lopencv_videoio$${CVVERSION} \ - -lopencv_imgcodecs$${CVVERSION} - # QMAKE_CXXFLAGS += -march=i686 -QMAKE_CXXFLAGS += -fpermissive - -}else:contains(hostname, ias7169) { - # Deniz Laptop - DEFINES += STEREO_DISABLED - - # PointGray - PGRPATH = "../petrack/3rdparty/windows/triclops-3.4" - #PGRPATH = "C:/Program Files (x86)/Point Grey Research/Triclops Stereo Vision SDK" - # OpenCV - #CVPATH = "C:/OpenCV/opencv300/build/install" - #CVPATH = "3rdparty/windows/opencv-3.1.0" - CVPATH = "../petrack/3rdparty/windows/opencv-4.2.0_64bit" - CVVERSION = "420" - CV_MAJOR_VERSION = "4" - - # to switch between version 2.4.10 and 3.0.0 you have to update your OPENCV_DIR environment variable to the specific path - - INCLUDEPATH += $${CVPATH}/include - INCLUDEPATH += $${CVPATH}/include/opencv - INCLUDEPATH += $${CVPATH}/include/opencv2 - - QWTPATH = "../petrack/3rdparty/windows/Qwt-6.1.4_64bit" - #QWTPATH = "D:/petrack/trunk/3rdparty/windows/qwt-6.1.2" - INCLUDEPATH += $${QWTPATH}/include - - STEREO = false # true / false - AVI = false # true / false - #QWT = false # true / false - #LIBELAS = false - - # fuer 64 bit -lopencv_ffmpeg_64 - LIBS += -L$${CVPATH}/x64/mingw/bin \ - -lopencv_core$${CVVERSION} \ - -lopencv_highgui$${CVVERSION} \ - -lopencv_imgproc$${CVVERSION} \ - -lopencv_calib3d$${CVVERSION} \ - -lopencv_video$${CVVERSION} \ - -lopencv_videoio_ffmpeg$${CVVERSION}_64\ - -lopencv_aruco$${CVVERSION} \ - -lopencv_videoio$${CVVERSION} \ - -lopencv_imgcodecs$${CVVERSION} - # QMAKE_CXXFLAGS += -march=i686 -QMAKE_CXXFLAGS += -fpermissive - -}else { - message(Host unknown for configuration!) -} - -# OPENCV ######################################################################################################################### - -#Betriebssystemweiche -win32 { - message("Build for Windows.") - DEFINES += WINDOWS - INCLUDEPATH += $${CVPATH}/include - INCLUDEPATH += $${CVPATH}/include/opencv - INCLUDEPATH += $${CVPATH}/include/opencv2 - QMAKE_LIBDIR += $${CVPATH}/bin - QMAKE_LIBDIR += $${CVPATH}/x86/mingw/bin - -} -macx { - message("Build for Mac.") - DEFINES += MAC - INCLUDEPATH += $${CVPATH}/include - INCLUDEPATH += $${CVPATH}/include/opencv - INCLUDEPATH += $${CVPATH}/include/opencv2 - - QMAKE_LIBDIR += $${CVPATH}/lib - QMAKE_LIBDIR += /usr/local/lib - -} -unix:!macx { - message("Build for Unix.") - DEFINES += UNIX - INCLUDEPATH += $${CVPATH}/include - INCLUDEPATH += $${CVPATH}/include/opencv - INCLUDEPATH += $${CVPATH}/include/opencv2 - - QMAKE_LIBDIR += $${QWTPATH}/lib - QMAKE_LIBDIR += /usr/local/lib - LIBS += -L$${QWTPATH}/lib -} - -# OPENCV ######################################################################################################################## - -# LIBS += -lopencv_core$${CVVERSION} \ -# -lopencv_highgui$${CVVERSION} \ -# -lopencv_imgproc$${CVVERSION} \ -# -lopencv_calib3d$${CVVERSION} \ -# -lopencv_video$${CVVERSION} \ -# -lopencv_ffmpeg$${CVVERSION} -# contains(CV_MAJOR_VERSION,3){ -# message("Build with OpenCV 3.0.0") -# LIBS += -lopencv_videoio$${CVVERSION} \ -# -lopencv_imgcodecs$${CVVERSION} -# # QMAKE_CXXFLAGS += -march=i686 -# }else { -# message("Build with OpenCV 2.x.x") -# LIBS += -lopencv_legacy$${CVVERSION} -# -# } - -# LIBELAS ######################################################################################################################### - -#fuer libelas noetig: -$$LIBELAS { - !build_pass:message(LIBELAS enabled!) - DEFINES += LIBELAS - QMAKE_CXXFLAGS += -msse3 - - HEADERS += include/libelas/elasDescriptor.h \ - include/libelas/elas.h \ - include/libelas/elasFilter.h \ - include/libelas/elasMatrix.h \ - include/libelas/elasTriangle.h \ - include/libelas/elasImage.h \ - include/libelas/elasTimer.h - SOURCES += src/libelas/elasDescriptor.cpp \ - src/libelas/elas.cpp \ - src/libelas/elasFilter.cpp \ - src/libelas/elasMatrix.cpp \ - src/libelas/elasTriangle.cpp -} - - -# QWT ######################################################################################################################### -# zur Analyse der Daten / Analyse-Tab + Farbcode auf Marker in Kasernen-Versuchen - -$$QWT { - # DIE ENTKOPPLUNG VON QWT IST NICHT FERTIG IMPLEMENTIERT - !build_pass:message(QWT (analysis) enabled!) - DEFINES += QWT - - # in qwt.../install steht, dass folgendes gesetzt werden muss - insbesondere wegen debug/release mischungs problem - DEFINES += QWT_DLL - - INCLUDEPATH += $${QWTPATH}/include - - win32:QMAKE_LIBDIR += $${QWTPATH}/lib - unix:!macx:QMAKE_LIBDIR += $${QWTPATH}/lib - # mgl QMAKE_LFLAGS_DEBUG setzen, um qwt5 fuer rlease und debug richtig nutzen! - # QMAKE_LFLAGS_DEBUG += -lqwtd5 - # QMAKE_LFLAGS_RELEASE += -lqwt5 - #unix:QMAKE_LFLAGS_RPATH += -L$${QWTPATH}/lib - #unix:LIBS += -lqwt - CONFIG(debug, debug|release) { - # only debug - win32:LIBS += -lqwtd - unix:!macx:LIBS += -lqwt - macx: LIBS += -framework qwt - } else { - # only release - win32:LIBS += -lqwt - unix:!macx:LIBS += -lqwt - macx: LIBS += -framework qwt - } - # obige Zeilen wurde von qmake editor grafische oberflaeche bzw. wenn neue dateien zu projekt hinzugefuegt werden falsch umgewandelt in: - # zudem wurde bei src und include dateien doppelt eingetragen mit src/ und include/ davor - # auch folgende Zeilen wurden hinzugefuegt: OTHER_FILES += src/semantic.cache include/semantic.cache - #CONFIG(debug, debug|release): # only debug - #LIBS += -lqwtd5 - #else:# only release - #LIBS += -lqwt5 - - #win32:QMAKE_LIBDIR += $${QWTPATH}/lib - mac:QMAKE_LIBDIR += $${QWTPATH} - mac:QMAKE_LIBDIR += $${QWTPATH} - - HEADERS += include/analysePlot.h - SOURCES += src/analysePlot.cpp - -} else { - !build_pass:message(QWT (analysis) disabled!) -} -# PGR ######################################################################################################################### - -$$STEREO { - !build_pass:message(Stereo enabled!) - DEFINES += STEREO - - # fuer pgr stereo - INCLUDEPATH += $${PGRPATH}/include - QMAKE_LIBDIR += $${PGRPATH}/bin - LIBS += -L$${PGRPATH}/lib - #LIBS += -ldl - LIBS += -ltriclops_v100 - #LIBS += -lpnmutils -} else { - !build_pass:message(Stereo disabled!) -} - -$$AVI { - !build_pass:message(Avi enabled!) - DEFINES += AVI -} - -######################################################################################################################### - - -#include und src davorgeschrieben, da sonst qtcreator sie nicht anzeigt -HEADERS += include/petrack.h \ - include/helper.h \ - include/control.h \ - include/stereoWidget.h \ - include/colorRangeWidget.h \ - include/colorMarkerWidget.h \ - include/codeMarkerWidget.h \ - include/multiColorMarkerWidget.h \ - include/recognitionRoiItem.h \ - include/imageItem.h \ - include/logoItem.h \ - include/gridItem.h \ - include/coordItem.h \ - include/trackerItem.h \ - include/view.h \ - include/animation.h \ - include/player.h \ - include/vector.h \ - include/ellipse.h \ - include/markerCasern.h \ - include/markerJapan.h \ - include/markerHermes.h \ - include/markerColor.h \ - include/tracker.h \ - include/trackerReal.h \ - include/recognition.h \ - include/autoCalib.h \ - include/filter.h \ - include/brightContrastFilter.h \ - include/brightFilter.h \ - include/contrastFilter.h \ - include/blurFilter.h \ - include/borderFilter.h \ - include/backgroundFilter.h \ - include/calibFilter.h \ - include/calibStereoFilter.h \ - include/colorPlot.h \ - include/stereoItem.h \ - include/stereoContext.h \ - include/colorMarkerItem.h \ - include/codeMarkerItem.h \ - include/multiColorMarkerItem.h \ - include/backgroundItem.h \ - include/whitebalance.h \ - include/person.h \ - include/qtColorTriangle.h \ - include/swapFilter.h \ - include/extrCalibration.h \ - include/trackingRoiItem.h - -SOURCES += src/petrack.cpp \ - src/helper.cpp \ - src/main.cpp \ - src/control.cpp \ - src/stereoWidget.cpp \ - src/colorRangeWidget.cpp \ - src/colorMarkerWidget.cpp \ - src/codeMarkerWidget.cpp \ - src/multiColorMarkerWidget.cpp \ - src/recognitionRoiItem.cpp \ - src/imageItem.cpp \ - src/logoItem.cpp \ - src/gridItem.cpp \ - src/coordItem.cpp \ - src/trackerItem.cpp \ - src/view.cpp \ - src/animation.cpp \ - src/player.cpp \ - src/vector.cpp \ - src/ellipse.cpp \ - src/markerCasern.cpp \ - src/markerHermes.cpp \ - src/markerJapan.cpp \ - src/markerColor.cpp \ - src/tracker.cpp \ - src/trackerReal.cpp \ - src/recognition.cpp \ - src/autoCalib.cpp \ - src/filter.cpp \ - src/brightContrastFilter.cpp \ - src/brightFilter.cpp \ - src/contrastFilter.cpp \ - src/blurFilter.cpp \ - src/borderFilter.cpp \ - src/backgroundFilter.cpp \ - src/calibFilter.cpp \ - src/calibStereoFilter.cpp \ - src/stereoContext.cpp \ - src/colorPlot.cpp \ - src/stereoItem.cpp \ - src/colorMarkerItem.cpp \ - src/codeMarkerItem.cpp \ - src/multiColorMarkerItem.cpp \ - src/backgroundItem.cpp \ - src/whitebalance.cpp \ - src/person.cpp \ - src/qtColorTriangle.cpp \ - src/swapFilter.cpp \ - src/extrCalibration.cpp \ - src/trackingRoiItem.cpp - -$$STEREO{ - SOURCES += src/pgrAviFile.cpp - HEADERS += include/pgrAviFile.h - message("Include pgrAviFile") -}else{ - SOURCES += src/stereoAviFile.cpp - HEADERS += include/stereoAviFile.h - message("Include stereoAviFile") -} - - -$$AVI{ - SOURCES += src/aviFile.cpp - HEADERS += include/aviFile.h -}else{ - SOURCES += src/aviFileWriter.cpp - HEADERS += include/aviFileWriter.h -} - - -MOC_DIR = moc -UI_DIR = ui -UI_HEADERS_DIR = ui/include -UI_SOURCES_DIR = ui/src -FORMS += ui/control.ui \ - ui/stereo.ui \ - ui/colorRange.ui \ - ui/multiColorMarker.ui \ - ui/colorMarker.ui \ - ui/codeMarker.ui - -RC_FILE = petrack.rc # damit petrack.ico als windows icon genommen wird -RESOURCES = icons/icons.qrc # damit daten in executable hineincompiliert wird - -# alle Verzeichniss von Sourcen etc, wo Abhaengigkeiten gesucht werden sollen -DEPENDPATH += . include src ui ui/include - -# fuer pgrAviFile -win32:LIBS += -lavifil32 -win32:LIBS += -lmsvfw32 -win64:LIBS += -lavifil32 -win64:LIBS += -lmsvfw32 - -# only for debug function GetProcessMemoryInfo -win32:LIBS += -lpsapi -win64:LIBS += -lpsapi diff --git a/src/analysePlot.cpp b/src/analysePlot.cpp index d0cc10a9342fb4ad8ef3eeb822990b33937e4ff6..018eae3a194f54d1cbc34e5d7c1612c0d187a223 100644 --- a/src/analysePlot.cpp +++ b/src/analysePlot.cpp @@ -157,7 +157,7 @@ public: // default: // text.sprintf("%.4f, %.4f", pos.x(), pos.y()); // } - text.sprintf("%d, %.2f", myRound(pos.x()), pos.y()); + text.asprintf("%d, %.2f", myRound(pos.x()), pos.y()); return QwtText(text); // return QwtPlotZoomer::trackerText(pos); } @@ -598,3 +598,4 @@ void AnalysePlot::setScale() } } +#include "moc_analysePlot.cpp" diff --git a/src/animation.cpp b/src/animation.cpp index a658180e91a7d43118e43463bdc1d99265f2f5f7..fa52c3c796fbb0339c917a87afeb750c5033b6e4 100644 --- a/src/animation.cpp +++ b/src/animation.cpp @@ -34,11 +34,12 @@ they can be represented in QT. #include <iomanip> -#include "opencv.hpp" +#include "opencv2/opencv.hpp" #include "animation.h" using namespace::cv; +using namespace std; /**********************************************************************/ /* Constructors & Destructors **/ diff --git a/src/autoCalib.cpp b/src/autoCalib.cpp index 4d63dbe085caa3623f02c1c37e0e6968a12dfd58..77ec0d39d5088d7976444c3928fef378ad6aed59 100644 --- a/src/autoCalib.cpp +++ b/src/autoCalib.cpp @@ -4,13 +4,14 @@ #include <QProgressDialog> #include <QApplication> -#include "highgui.hpp" +#include "opencv2/highgui.hpp" #include "autoCalib.h" #include "petrack.h" #include "control.h" using namespace::cv; +using namespace std; #define SHOW_CALIB_MAINWINDOW // definieren, wenn das Schachbrett im Mainwindow und nicht separat angezeigt werden soll: // fuehrt nach Calibration dazu dass play des originalvideos abstuerzt, insb wenn intr apply nicht ausgewaehlt war diff --git a/src/backgroundFilter.cpp b/src/backgroundFilter.cpp index b2a6615a66b73e436570c9b5eb931cff1ddf6c5b..631998257c968a2f87b78adc25ab9e43565d9ec1 100644 --- a/src/backgroundFilter.cpp +++ b/src/backgroundFilter.cpp @@ -2,7 +2,7 @@ #include "stereoContext.h" // nur temporaer fuer anzeige -#include "highgui.hpp" +#include "opencv2/highgui.hpp" #include "helper.h" // spaeter entfernen naechsten beiden zeilen @@ -23,6 +23,7 @@ extern Control *cw; //#define SHOW_TMP_IMG using namespace::cv; +using namespace std; BackgroundFilter::BackgroundFilter() :Filter() diff --git a/src/blurFilter.cpp b/src/blurFilter.cpp index f748c590a62044b2b5fc4a375f0865f38a53fa62..955b66ba49460ca2120fe496916a278c0dd78bc7 100644 --- a/src/blurFilter.cpp +++ b/src/blurFilter.cpp @@ -1,5 +1,4 @@ #include "blurFilter.h" -#include "opencv.hpp" #include "opencv2/opencv.hpp" using namespace::cv; diff --git a/src/calibFilter.cpp b/src/calibFilter.cpp index a5ca96087a7cabb37d0b5e854c49978acab57e28..1457d2099f4f9cefff5786d2abf74696951ee979 100644 --- a/src/calibFilter.cpp +++ b/src/calibFilter.cpp @@ -127,6 +127,20 @@ Mat CalibFilter::act(Mat &img, Mat &res) getR6()->getValue(), getK4()->getValue(), getK5()->getValue(), getK6()->getValue()); + /* + * Eine Möglichkeit das entzerren schneller zu gestalten, indem + * der Aufruf von undistort in getrennte Aufrufe geteilt wird + * und das Ergebns von initUndistort... gecached wird + * Aber TODO muss zuerst gelöst werden (Cache muss bei einladen eines + * neues Projekt gecleart werden) + */ + // TODO Was, wenn ein neues Projekt eingeladen wird? +// if(map1.empty() || map2.empty()) +// initUndistortRectifyMap(camera, dist, Mat_<double>::eye(3,3), +// camera, +// img.size(), CV_16SC2, map1, map2); +// remap(img, res, map1, map2, INTER_LINEAR, BORDER_CONSTANT); + undistort(img, res, camera, dist); // cvReleaseImage(&resIpl); // resIpl = cvCreateImage(cvSize(res.cols,res.rows),8,3); diff --git a/src/codeMarkerItem.cpp b/src/codeMarkerItem.cpp index d5d8c5c4f1a305c8ab07372e44eafe0bd16cda56..762415fa45eb396aa394d5ec9d7d55620313c7ad 100644 --- a/src/codeMarkerItem.cpp +++ b/src/codeMarkerItem.cpp @@ -8,6 +8,7 @@ #include "animation.h" using namespace::cv; +using namespace std; // in x und y gleichermassen skaliertes koordinatensystem, // da von einer vorherigen intrinsischen kamerakalibrierung ausgegenagen wird, diff --git a/src/codeMarkerWidget.cpp b/src/codeMarkerWidget.cpp index 282bdc8c0f8f43ce453de6c9bf1a7448232e7fb7..c3c9b06433ca0781b25185f54b19f27683f6c1bf 100644 --- a/src/codeMarkerWidget.cpp +++ b/src/codeMarkerWidget.cpp @@ -81,10 +81,7 @@ void CodeMarkerWidget::setXml(QDomElement &elem) void CodeMarkerWidget::getXml(QDomElement &elem) { QDomElement subElem; - int h=0, s=0, v=0; // init, damit compiler nicht meckert QString styleString; - QColor col; - col.convertTo(QColor::Hsv); for(subElem = elem.firstChildElement(); !subElem.isNull(); subElem = subElem.nextSiblingElement()) { @@ -144,3 +141,5 @@ void CodeMarkerWidget::getXml(QDomElement &elem) } } } + +#include "moc_codeMarkerWidget.cpp" diff --git a/src/colorMarkerWidget.cpp b/src/colorMarkerWidget.cpp index 89a0fc087514816967d517d001b5651b322b5b69..a6abd66b5439f3053968f7fa20dd9e3a4b21b35c 100644 --- a/src/colorMarkerWidget.cpp +++ b/src/colorMarkerWidget.cpp @@ -20,8 +20,7 @@ ColorMarkerWidget::ColorMarkerWidget(QWidget *parent) toColor->setStyleSheet(styleString); QColor col; - col.convertTo(QColor::Hsv); - col.setHsv(fromHue, fromSat, fromVal); + col = QColor::fromHsv(fromHue, fromSat, fromVal); fromTriangle->setColor(col); col.setHsv(toHue, toSat, toVal); toTriangle->setColor(col); @@ -75,7 +74,7 @@ void ColorMarkerWidget::getXml(QDomElement &elem) int h=0, s=0, v=0; // init, damit compiler nicht meckert QString styleString; QColor col; - col.convertTo(QColor::Hsv); + col = col.toHsv(); for(subElem = elem.firstChildElement(); !subElem.isNull(); subElem = subElem.nextSiblingElement()) { @@ -179,8 +178,7 @@ void ColorMarkerWidget::on_fromColor_clicked() // ueber palette war der button ausser initial nicht zu aendern!!! QColor colBefore;//fromColor->palette().color(QPalette::Button); - colBefore.convertTo(QColor::Hsv); - colBefore.setHsv(fromHue, fromSat, fromVal); + colBefore = QColor::fromHsv(fromHue, fromSat, fromVal); QColor col = (QColorDialog::getColor(colBefore, this, "Select color from which value a pixel belongs to marker")).convertTo(QColor::Hsv); if (col.isValid() && col != colBefore) { @@ -194,8 +192,7 @@ void ColorMarkerWidget::on_toColor_clicked() // QWindowsXpStyle uses native theming engine which causes some palette modifications not to have any effect. // ueber palette war der button ausser initial nicht zu aendern!!! QColor colBefore;//toColor->palette().color(QPalette::Button); - colBefore.convertTo(QColor::Hsv); - colBefore.setHsv(toHue, toSat, toVal); + colBefore = QColor::fromHsv(toHue, toSat, toVal); QColor col = (QColorDialog::getColor(colBefore, this, "Select color to which value a pixel belongs to marker")).convertTo(QColor::Hsv); //QPalette palette = toColor->palette(); //palette.setColor(QPalette::Button, col); @@ -223,3 +220,5 @@ void ColorMarkerWidget::on_toColor_clicked() // toColor->setStyleSheet(styleString); // } } + +#include "moc_colorMarkerWidget.cpp" diff --git a/src/colorPlot.cpp b/src/colorPlot.cpp index 0c6ba04525c0eb133c136f141a878fd9f5951e83..e516f4e69dcc925d5bd8900924d7efdd10e3ebf3 100644 --- a/src/colorPlot.cpp +++ b/src/colorPlot.cpp @@ -15,6 +15,8 @@ #include "colorPlot.h" #include "control.h" +using namespace std; + // class SpectrogramData: public QwtRasterData // { // public: @@ -433,6 +435,21 @@ void RectPlotItem::changeActMapToColor(const QColor &toCol) } } +bool RectPlotItem::getActMapInvHue() +{ + return mMaps[mActIndex].invHue(); +} + +QColor RectPlotItem::getActMapToColor() +{ + return mMaps[mActIndex].toColor(); +} + +QColor RectPlotItem::getActMapFromColor() +{ + return mMaps[mActIndex].fromColor(); +} + RectMap RectPlotItem::getMap(int index) const { if (index >= 0 && index < mMaps.size()) @@ -642,7 +659,7 @@ public: // default: // text.sprintf("%.4f, %.4f", pos.x(), pos.y()); // } - text.sprintf("%d, %d", myRound(pos.x()), myRound(pos.y())); + text.asprintf("%d, %d", myRound(pos.x()), myRound(pos.y())); return QwtText(text); // return QwtPlotZoomer::trackerText(pos); } @@ -850,8 +867,20 @@ void ColorPlot::setCursor(const QColor &col) //QFrame::mouseMoveEvent(&event); } -// ueber z kann die zur plotebene senkrechte kooerdinate zurueckgegeben werden, -// wenn default NULL nicht zutrifft + +/** + * @brief Calculate position of color in current colormap + * + * Calculates the position of color in current colormap, i.e. with the current + * mapping from x,y to hsv/rgb. E.g. x->H and y->S. + * + * ueber z kann die zur plotebene senkrechte kooerdinate zurueckgegeben werden, + * wenn default NULL nicht zutrifft + * + * @param col color for which to determine position + * @param z coordinate orthogonal to the plot plane + * @return position of color in current colormap + */ QPoint ColorPlot::getPos(const QColor &col, int *z) const { QPoint p; @@ -1072,3 +1101,4 @@ int ColorPlot::zValue() const return 0; } +#include "moc_colorPlot.cpp" diff --git a/src/colorRangeWidget.cpp b/src/colorRangeWidget.cpp index 7e2a83f3545009be85bae4e0a28d83bf172ed7ee..43a5ffc8a021517c03f08ae2b22e688cab84e524 100644 --- a/src/colorRangeWidget.cpp +++ b/src/colorRangeWidget.cpp @@ -22,8 +22,7 @@ ColorRangeWidget::ColorRangeWidget(QWidget *parent) toColor->setStyleSheet(styleString); QColor col; - col.convertTo(QColor::Hsv); - col.setHsv(fromHue, fromSat, fromVal); + col = QColor::fromHsv(fromHue, fromSat, fromVal); fromTriangle->setColor(col); col.setHsv(toHue, toSat, toVal); toTriangle->setColor(col); @@ -39,7 +38,15 @@ void ColorRangeWidget::on_inversHue_stateChanged(int i) mColorPlot->replot(); } -void ColorRangeWidget::setControlWidget() +// WARNING Setzt voraus, dass x als Hue und y als Saturation ausgewählt ist +// Zwar Standardeinstellung, aber nicht zwingend der Fall +/** + * @brief sets x and y slider from colormap widget + * + * Sets the x and y slider to the right values according to fromColor and toColor, + * which were selected via the color picker. + */ +void ColorRangeWidget::setControlWidget(int toHue, int fromHue, int toSat, int fromSat) { int fH, tH, fS, tS; @@ -77,7 +84,7 @@ void ColorRangeWidget::on_fromTriangle_colorChanged(const QColor &col) fromColor->setStyleSheet(styleString); mColorPlot->getMapItem()->changeActMapFromColor(col); - setControlWidget(); + setControlWidget(toHue, fromHue, toSat, fromSat); mMainWindow->setRecognitionChanged(true);// flag indicates that changes of recognition parameters happens if( !mMainWindow->isLoading() ) @@ -91,7 +98,7 @@ void ColorRangeWidget::on_toTriangle_colorChanged(const QColor &col) toColor->setStyleSheet(styleString); mColorPlot->getMapItem()->changeActMapToColor(col); - setControlWidget(); + setControlWidget(toHue, fromHue, toSat, fromSat); mMainWindow->setRecognitionChanged(true);// flag indicates that changes of recognition parameters happens if( !mMainWindow->isLoading() ) @@ -104,8 +111,7 @@ void ColorRangeWidget::on_fromColor_clicked() // ueber palette war der button ausser initial nicht zu aendern!!! QColor colBefore;//fromColor->palette().color(QPalette::Button); - colBefore.convertTo(QColor::Hsv); - colBefore.setHsv(fromHue, fromSat, fromVal); + colBefore = QColor::fromHsv(fromHue, fromSat, fromVal); QColor col = (QColorDialog::getColor(colBefore, this, "Select color from which value a pixel belongs to marker")).convertTo(QColor::Hsv); if (col.isValid() && col != colBefore) { @@ -119,8 +125,7 @@ void ColorRangeWidget::on_toColor_clicked() // QWindowsXpStyle uses native theming engine which causes some palette modifications not to have any effect. // ueber palette war der button ausser initial nicht zu aendern!!! QColor colBefore;//toColor->palette().color(QPalette::Button); - colBefore.convertTo(QColor::Hsv); - colBefore.setHsv(toHue, toSat, toVal); + colBefore = QColor::fromHsv(toHue, toSat, toVal); QColor col = (QColorDialog::getColor(colBefore, this, "Select color to which value a pixel belongs to marker")).convertTo(QColor::Hsv); //QPalette palette = toColor->palette(); //palette.setColor(QPalette::Button, col); @@ -175,3 +180,5 @@ void ColorRangeWidget::setToColor(const QColor &col) toTriangle->setColor(col); } } + +#include "moc_colorRangeWidget.cpp" diff --git a/src/control.cpp b/src/control.cpp index b6d3b5d8118efefc4c84c56acdd9203a41e29d3c..bb3fa1b58d3df3878ccfd14b812a396b340d17bf 100644 --- a/src/control.cpp +++ b/src/control.cpp @@ -15,6 +15,9 @@ #include "colorMarkerWidget.h" #include "codeMarkerWidget.h" #include "multiColorMarkerWidget.h" +#include "view.h" + +using namespace std; #define DEFAULT_HEIGHT 180.0 @@ -29,9 +32,15 @@ Control::Control(QWidget *parent) setupUi(this); // Weitere Verzerrungsparameter werden vllt. spaeter mal gebraucht bisher von OpenCV nicht beruecksichtig. Muessen dann noch in die Oberflaeche eingebaut werden - k4 = new QDoubleSpinBox(); - k5 = new QDoubleSpinBox(); - k6 = new QDoubleSpinBox(); + // Deniz: OpenCV kann Sie mittlerweile benutzen, wenn man calibrateCamera die Flag CALIB_RATIONAL_MODEL übergibt; Ergibt eine genauere Kalibration + // Auch rechenintensiver, aber da wir das einmal machen und dann Speichern, ist das auch egal + // Diese Boxen müssten in die UI eingebaut und der entsprechende Aufruf in AutoCalib müsste angepasst werden + k4 = new QDoubleSpinBox(this); + k4->hide(); + k5 = new QDoubleSpinBox(this); + k5->hide(); + k6 = new QDoubleSpinBox(this); + k6->hide(); filterBrightContrast->setCheckState(mMainWindow->getBrightContrastFilter()->getEnabled() ? Qt::Checked : Qt::Unchecked); // filterContrast->setCheckState(mMainWindow->getContrastFilter()->getEnabled() ? Qt::Checked : Qt::Unchecked); @@ -2868,8 +2877,8 @@ void Control::getXml(QDomElement &elem) QColor fromCol, toCol; int h=-1, s=-1, v=-1; - fromCol.convertTo(QColor::Hsv); - toCol.convertTo(QColor::Hsv); + fromCol = fromCol.toHsv(); + toCol = toCol.toHsv(); colorPlot->getMapItem()->delMaps(); for(subSubSubElem = subSubElem.firstChildElement(); !subSubSubElem.isNull(); subSubSubElem = subSubSubElem.nextSiblingElement()) if (subSubSubElem.tagName() == "MAP") @@ -3189,4 +3198,279 @@ void Control::getXml(QDomElement &elem) mMainWindow->updateCoord(); } +void Control::on_colorPickerButton_clicked(bool checked) +{ + //true wenn neu gechecked, false wenn wieder abgewählt + if(checked) + { + connect(mMainWindow->getView(), SIGNAL(colorSelected(QPoint, GraphicsView*)), this, SLOT(on_expandColor(QPoint, GraphicsView*))); + connect(mMainWindow->getView(), SIGNAL(setColorEvent(QPoint, GraphicsView*)), this, SLOT(on_setColor(QPoint, GraphicsView*))); + }else{ + disconnect(mMainWindow->getView(), SIGNAL(colorSelected(QPoint, GraphicsView*)), this, SLOT(on_expandColor(QPoint, GraphicsView*))); + disconnect(mMainWindow->getView(), SIGNAL(setColorEvent(QPoint, GraphicsView*)), this, SLOT(on_setColor(QPoint, GraphicsView*))); + } +} + +/** + * @brief Gets necessary colors and the RectPlotItem + * + * @param[in] p Clicked Point (gets changed!!!) + * @param[in] graphicsView GraphicsView in which the event was detected + * @param[out] clickedColor color which was clicked on, with Hue from 0-360 instead of OpenCVs 0-180 + * @param[out] toColor toColor as in model with triangle color picker + * @param[out] fromColor fromColor as in model with triangle picker + * @param[out] map + * + * @return Boolean describing, if a color was retrieved + */ +bool Control::getColors(QPoint& p, GraphicsView* graphicsView, std::array<int, 3>& clickedColor, QColor& toColor, QColor& fromColor, RectPlotItem*& map) +{ + if(mMainWindow->getImg().empty()) + { + return false; + } + + cv::Mat hsvImg; + cv::cvtColor(mMainWindow->getImg(), hsvImg, cv::COLOR_BGR2HSV); + p.setX(p.x() + mMainWindow->getImageBorderSize()); + p.setY(p.y() + mMainWindow->getImageBorderSize()); + + + QPointF pointOnScene = graphicsView->mapToScene(p); + QPointF imgPoint = mMainWindow->getImageItem()->mapToScene(pointOnScene); + if(imgPoint.x() < 0 || imgPoint.x() > hsvImg.cols || imgPoint.y() < 0 || imgPoint.y() > hsvImg.rows) + { + debout << "Clicked outside the image with color picker." << std::endl; + return false; + } + //debout << "Koordinaten: " << imgPoint.x() << ", " << imgPoint.y() << std::endl; + + cv::Vec3b color = hsvImg.at<cv::Vec3b>((int)imgPoint.y(), (int)imgPoint.x()); + clickedColor = {color[0] * 2, color[1], color[2]}; + //debout << "Farbe: " << (int)clickedColor[0] << ", " << (int)clickedColor[1] << ", " << (int)clickedColor[2] << std::endl; + + map = this->getColorPlot()->getMapItem(); + toColor = map->getActMapToColor(); + fromColor = map->getActMapFromColor(); + return true; +} + +/** + * @brief Expands the range of detcted colors to include the color clicked on + * + * Expands the range of detected colors, so that hue, saturation and value of the + * color clicked on are within the range. A Buffer is used as well (more is added to the + * range than strictly necessary). It is possible that the inverse hue flag is set. + * + * @param p + * @param graphicsView + */ +void Control::on_expandColor(QPoint p, GraphicsView* graphicsView) +{ + + QColor fromColor, toColor; + RectPlotItem* map; + std::array<int, 3> clickedColor; + if(!getColors(p, graphicsView, clickedColor, toColor, fromColor, map)) + { + return; + } + + expandRange(fromColor, toColor, clickedColor); + + saveChange(fromColor, toColor, map); +}; + +/** + * @brief Selects one color as starting point for furher additions + * + * @param p + * @param graphicsView + */ +void Control::on_setColor(QPoint p , GraphicsView* graphicsView){ + constexpr int BUFFER = 5; + + QColor fromColor, toColor; + RectPlotItem* map; + std::array<int, 3> clickedColor; + if(!getColors(p, graphicsView, clickedColor, toColor, fromColor, map)) + { + return; + } + + int minHue, maxHue; + if( (clickedColor[0]+BUFFER)%359 < clickedColor[0]+BUFFER) + { + maxHue = (clickedColor[0]+BUFFER)%BUFFER; + map->changeActMapInvHue(true); + }else{ + maxHue = clickedColor[0]+BUFFER; + map->changeActMapInvHue(false); + } + if( (clickedColor[0] - BUFFER) < 0) + { + minHue = 360 + (clickedColor[0] - BUFFER); + map->changeActMapInvHue(true); + }else{ + minHue = clickedColor[0] - BUFFER; + //map->changeActMapInvHue(false); + } + toColor.setHsv(maxHue, min((clickedColor[1]+BUFFER),255), min(clickedColor[2]+BUFFER, 255)); + fromColor.setHsv(minHue, max(clickedColor[1]-BUFFER,0), max(clickedColor[2]-BUFFER,0)); + + //debout << "Inv Hue nach setCol: " << map->getActMapInvHue() << std::endl; + saveChange(fromColor, toColor, map); +} + +// NOTE Use duplicate observed data on color Data +// Meaning: Own class for the Data and every View works with his class!!! +// NOTE that color slides are not actually working properly on their own; use this or colorRangeWidget! +void Control::saveChange(const QColor& fromColor, const QColor& toColor, RectPlotItem* map) +{ + + map->changeActMapToColor(toColor); + map->changeActMapFromColor(fromColor); + + mMainWindow->getColorRangeWidget()->setControlWidget(toColor.hue(), fromColor.hue(), + toColor.saturation(), fromColor.saturation()); + mMainWindow->setRecognitionChanged(true);// flag indicates that changes of recognition parameters happens + if( !mMainWindow->isLoading() ) + mMainWindow->updateImage(); +} + +/** + * @brief Expands the color range of the map to include clickedColor + * + * @test Change invHue via Extension + * @test Hue same, value diff + * @test value same, hue diff etc... + * @test neues Ding gerade so noch drinnen (Auch von thresholding seite messen) + * + * @param fromColor[in,out] fromColor of the map, gets changed! + * @param toColor[in,out] toColor of the map, gets changed! + * @param clickedColor[in] + */ +void Control::expandRange(QColor& fromColor, QColor& toColor, const std::array<int, 3>& clickedColor) +{ + // NOTE BUFFER in Klassenebene verschieben und bei setColor auch nutzen? (verschiedene Größe vllt. gewünscht?) + constexpr int BUFFER = 10; + + std::array<int, 3> toColorArr; + toColor.getHsv(&toColorArr[0], &toColorArr[1], &toColorArr[2]); + std::array<int, 3> fromColorArr; + fromColor.getHsv(&fromColorArr[0], &fromColorArr[1], &fromColorArr[2]); + + //debout << "Alte Grenze: toColor: " << toColorArr[0] << " " << toColorArr[1] << " "<< toColorArr[2] << std::endl; + //debout << "Alte Grenze: fromColor: " << fromColorArr[0] << " " << fromColorArr[1] << " " << fromColorArr[2] << std::endl; + + std::array<bool, 3> isInRange {true, true, true}; + bool invHue = getColorPlot()->getMapItem()->getActMapInvHue(); + //debout << "Inverse Hue vorher: " << invHue << std::endl; + + // What values do need to be altered? + if(invHue) + { + if(toColorArr[0] > fromColorArr[0]) + { + if(!(clickedColor[0] >= toColorArr[0] || clickedColor[0] <= fromColorArr[0])) + { + isInRange[0] = false; + } + }else + { + if(!(clickedColor[0] <= toColorArr[0] || clickedColor[0] >= fromColorArr[0])) + { + isInRange[0] = false; + } + } + }else + { + if(toColorArr[0] > fromColorArr[0]) + { + if(!(clickedColor[0] <= toColorArr[0] && clickedColor[0] >= fromColorArr[0])) + { + isInRange[0] = false; + } + }else + { + if(!(clickedColor[0] >= toColorArr[0] && clickedColor[0] <= fromColorArr[0])) + { + isInRange[0] = false; + } + } + } + + for(int i = 1; i < 3; ++i) + { + if(toColorArr[i] > fromColorArr[i]) + { + if(!(clickedColor[i] <= toColorArr[i] && clickedColor[i] >= fromColorArr[i])) + { + isInRange[i] = false; + } + }else{ + if(!(clickedColor[i] >= toColorArr[i] && clickedColor[i] <= fromColorArr[i])) + { + isInRange[i] = false; + } + } + } + + // if all in range, no expanding required + if(std::count(isInRange.cbegin(), isInRange.cend(), true) == 3){ + return; + } + + int distToColor = 0; + int distFromColor = 0; + + for(int i = 0; i < 3; ++i) + { + if(isInRange[i]) + continue; + + distToColor = abs(toColorArr[i] - clickedColor[i]); + distFromColor = abs(fromColorArr[i] - clickedColor[i]); + if(distFromColor < distToColor) + { + int buffer = fromColorArr[i] - clickedColor[i] < 0 ? BUFFER : -BUFFER; + if(i==0) // Hue + { + fromColorArr[i] = min(359, max(0, clickedColor[i] + buffer)); + }else + { + fromColorArr[i] = min(255, max(0, clickedColor[i] + buffer)); + } + }else{ + int buffer = toColorArr[i] - clickedColor[i] < 0 ? BUFFER : -BUFFER; + if(i==0) // Hue + { + toColorArr[i] = min(359, max(0, clickedColor[i] + buffer)); + }else + { + toColorArr[i] = min(255, max(0, clickedColor[i] + buffer)); + } + } + } + + int toHue = toColorArr[0]; + int fromHue = fromColorArr[0]; + if(invHue){ + if(toHue+360-fromHue > 180){ + getColorPlot()->getMapItem()->changeActMapInvHue(false); + } + }else{ + if(toHue-fromHue > 180){ + getColorPlot()->getMapItem()->changeActMapInvHue(true); + } + } + + //debout << "Inverse Hue nachher " << getColorPlot()->getMapItem()->getActMapInvHue() << std::endl; + //debout << "Neue Grenze: toColor: " << toColorArr[0] << " " << toColorArr[1] << " "<< toColorArr[2] << std::endl; + //debout << "Neue Grenze: fromColor: " << fromColorArr[0] << " " << fromColorArr[1] << " " << fromColorArr[2] << std::endl; + toColor.setHsv(toColorArr[0], toColorArr[1], toColorArr[2]); + fromColor.setHsv(fromColorArr[0], fromColorArr[1], fromColorArr[2]); +} + +#include "moc_control.cpp" diff --git a/src/coordItem.cpp b/src/coordItem.cpp index 1270049b3d6990fb8ef793b187ca4013f2975075..f16f2b655b02ac6bcce661f3fe2d91d59a4df10a 100644 --- a/src/coordItem.cpp +++ b/src/coordItem.cpp @@ -239,13 +239,13 @@ void CoordItem::updateData() double ro = mControlWidget->getCalibCoordRotate()/10.; // aktualisierung der transformationsmatrix - QMatrix matrix; + QTransform matrix; // matrix wird nur bei aenderungen neu bestimmt matrix.translate(tX, tY); matrix.rotate(ro); matrix.scale(sc/100., sc/100.); //matrix.shear(tX,tY); - setMatrix(matrix); + setTransform(matrix); }else // 3D { @@ -258,13 +258,13 @@ void CoordItem::updateData() //prepareGeometryChange(); // Reset Matrix - No Matrix Transformations for 3D Coordsystem // aktualisierung der transformationsmatrix - QMatrix matrix; + QTransform matrix; // matrix wird nur bei aenderungen neu bestimmt matrix.translate(0, 0); matrix.rotate(0); matrix.scale(1, 1); //matrix.shear(tX,tY); - setMatrix(matrix); + setTransform(matrix); // double tX3D = mControlWidget->getCalibCoord3DTransX(); // double tY3D = mControlWidget->getCalibCoord3DTransY(); diff --git a/src/gridItem.cpp b/src/gridItem.cpp index c774e415c1ea41b29018b1f6a8b3a6c995f8db3a..ecbd0557b57c4e644e2cf85650980b5462e54a88 100644 --- a/src/gridItem.cpp +++ b/src/gridItem.cpp @@ -8,6 +8,7 @@ #include "gridItem.h" using namespace::cv; +using namespace std; GridItem::GridItem(QWidget *wParent, QGraphicsItem * parent) : QGraphicsItem(parent) @@ -375,7 +376,7 @@ void GridItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, if (mControlWidget->getCalibGridShow()) { QImage *img = mMainWindow->getImage(); - QMatrix matrixPaint; + QTransform matrixPaint; QPointF pnt1, pnt2; // floating point int bS = mMainWindow->getImageBorderSize(); if( debug ) debout << "Border-Size: " << bS << endl; @@ -420,7 +421,7 @@ void GridItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, //matrixPaint.translate(iW/2.-bS, iH/2.-bS); matrixPaint.rotate(ro); //matrixPaint.translate(-iW/2.+bS, -iH/2.+bS); - painter->setWorldMatrix(matrixPaint, true); // true sagt, dass relativ und nicht absolut (also zusaetzlich zur uebergeordneten matrizen) + painter->setWorldTransform(matrixPaint, true); // true sagt, dass relativ und nicht absolut (also zusaetzlich zur uebergeordneten matrizen) painter->setPen(Qt::red); for (int i=(int)-((maxExp+100)/sc); i<2*(maxExp/sc); i++) diff --git a/src/helper.cpp b/src/helper.cpp index 4f68e9eeadb8e78754fa4f60eaf57e672f206919..27c3f99803ee28f9be88fe26cb6183230b5d16df 100644 --- a/src/helper.cpp +++ b/src/helper.cpp @@ -1,8 +1,10 @@ #include "helper.h" -#include <opencv.hpp> +//#include <opencv.hpp> +#include "opencv2/opencv.hpp" using namespace::cv; +using namespace std; QString commandLineOptionsString = QObject::tr( "<p><code>petrack [-help|-?] [[-project] project.pet] </code><br>" @@ -96,29 +98,8 @@ void copyToQImage(QImage *qImg, cv::Mat &img) // war static functin in animatiol if (channels == 3) { - // This loop is optimized so it has to calculate the least amount of indexes - // Optimizing the access to the pointer data is useless (no difference in performance when tested) - for (y = 0; y < img.rows; y++) - { - // Pointer to the data information in the QImage for just one column - // set pointer to value before, because ++p is faster than p++ -// p = ((char*)qImg->scanLine(y))-1; - for (x = 0; x < img.cols; x++) - { - Vec3b colour = img.at<Vec3b>(Point(x, y)); - - QRgb value = qRgb(colour.val[2], colour.val[1], colour.val[0]); - qImg->setPixel(x, y, value); -// *(++p) = colour.val[0];//*(data); -// *(++p) = colour.val[1];//*(data+1); -// *(++p) = colour.val[2];//*(data+2); -// *(++p) = 255; - //printf("%02x%02x%02x ", (int)*(data), (int)*(data+1), (int)*(data+2)); -// data += 3; //channels; - } -// data = (yData += img.cols/*widthStep*/); // because sometimes widthStep != width - //printf("\n"); - } + // Needs Qt 5.14 for QImage::Format_BGR888 (saves the color transformation into RGB888) + *qImg = QImage((const unsigned char*) (img.data),img.cols,img.rows, img.step, QImage::Format_BGR888).copy(); } else if (channels == 1) { diff --git a/src/imageItem.cpp b/src/imageItem.cpp index efd68e8889142769e23463a65553d01f0a5e1aa1..8282ea726eeb5822d962d371f2a88a6591c2709d 100644 --- a/src/imageItem.cpp +++ b/src/imageItem.cpp @@ -47,11 +47,11 @@ void ImageItem::setImage(QImage *img) { mImage = img; - QMatrix matrix; + QTransform matrix; matrix.translate(1, 1); // FEHLER IN QT ????? noetig, damit trotz recognitionroiitem auch image auch ohne border komplett neu gezeichnet wird // wird 2 zeilen weiter zurueckgesetzt, aber mit 0, 0 geht es nicht - setMatrix(matrix); + setTransform(matrix); matrix.translate(-mMainWindow->getImageBorderSize()-1, -mMainWindow->getImageBorderSize()-1); - setMatrix(matrix); + setTransform(matrix); //debout << "mControlWidget->setCalibCxMin(MAX(0," << mImage->width() << "/2.-50)); (" << MAX(0,mImage->width()/2.-50) << ")" << endl; //debout << "mControlWidget->setCalibCyMin(MAX(0," << mImage->height() << "/2.-50)); (" << MAX(0,mImage->height()/2.-50) << ")" << endl; @@ -376,3 +376,4 @@ void ImageItem::hoverMoveEvent(QGraphicsSceneHoverEvent *event) //{ // mMainWindow->dropEvent(event); //} + diff --git a/src/logoItem.cpp b/src/logoItem.cpp index 864621eec2a0dae86c335462089299a66d45d7fe..0ed5fcda92c2bb6f3742f952b527eb56b14e3dfa 100644 --- a/src/logoItem.cpp +++ b/src/logoItem.cpp @@ -133,3 +133,5 @@ void LogoItem::fadeOut(int frames) // } // setVisible(false); } + +#include "moc_logoItem.cpp" diff --git a/src/main.cpp b/src/main.cpp index 0be1e639d760b0d7b36cf3a04b2c5218ed68f3fa..6f98fc3671efd4efbd1901505f638a3b2e016810 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -6,6 +6,8 @@ #include "petrack.h" #include "helper.h" +using namespace std; + // Aufrufbeispiel: // release/petrack.exe -sequence ../../einzelbilder/wert0001.png -autoSave dir|ttt.avi diff --git a/src/markerCasern.cpp b/src/markerCasern.cpp index 76535b9df36164b756635b3184b6065f3e9a8eb4..9fd280ef37341081d5cf10325131804992f94b92 100644 --- a/src/markerCasern.cpp +++ b/src/markerCasern.cpp @@ -1,5 +1,5 @@ //folgende zeile spaeter raus -#include <highgui.hpp> +#include "opencv2/highgui.hpp" // spaeter entfernen naechsten beiden zeilen //#include "control.h" @@ -22,6 +22,7 @@ #include "tracker.h" using namespace::cv; +using namespace std; // bei marker koennnte sich fuer jeden spot eine liste gemerkt werden und spaeter ausgleich // regressionsgrade legen um optimale linie durch marker zu erhalten @@ -227,7 +228,7 @@ void MarkerCasern::organize(const Mat &img, bool autoWB) } // loeschen aller zu hellen spots QList<int> minValListSort = minValList; - qSort(minValListSort); // sortiert aufsteigend + std::sort(minValListSort.begin(), minValListSort.end()); // sortiert aufsteigend for (i = 0; i < mSpots.size(); ++i) if (minValList[i] > minValListSort[3]) { diff --git a/src/markerColor.cpp b/src/markerColor.cpp index 5bac8bb561aaba3b9b514fe37967096652cf0424..c1f6634a115769a1a4eda0ee3bd755cc56d7c9a7 100644 --- a/src/markerColor.cpp +++ b/src/markerColor.cpp @@ -1,5 +1,5 @@ //folgende zeile spaeter raus -#include <highgui.hpp> +#include "opencv2/highgui.hpp" // spaeter entfernen naechsten beiden zeilen //#include "control.h" @@ -22,6 +22,7 @@ #include "tracker.h" using namespace::cv; +using namespace std; // bei marker koennnte sich fuer jeden spot eine liste gemerkt werden und spaeter ausgleich // regressionsgrade legen um optimale linie durch marker zu erhalten @@ -227,7 +228,7 @@ void MarkerColor::organize(const Mat &img, bool autoWB) } // loeschen aller zu hellen spots QList<int> minValListSort = minValList; - qSort(minValListSort); // sortiert aufsteigend + std::sort(minValListSort.begin(), minValListSort.end()); // sortiert aufsteigend for (i = 0; i < mSpots.size(); ++i) if (minValList[i] > minValListSort[3]) { diff --git a/src/markerHermes.cpp b/src/markerHermes.cpp index 71f2e79ce2cdf81b0c2653a695cd61bf6d16185d..0aecea33fce8fb367f37f04e91eaddf122ea18e3 100644 --- a/src/markerHermes.cpp +++ b/src/markerHermes.cpp @@ -1,5 +1,5 @@ //folgende zeile spaeter raus -#include <highgui.hpp> +#include "opencv2/highgui.hpp" // spaeter entfernen naechsten beiden zeilen //#include "control.h" @@ -192,7 +192,7 @@ void MarkerHermes::organize(const Mat &img, bool autoWB) // loeschen aller zu hellen spots QList<int> minValListSort = minValList; - qSort(minValListSort); // sortiert aufsteigend + std::sort(minValListSort.begin(), minValListSort.end()); // sortiert aufsteigend for (i = 0; i < mSpots.size(); ++i) if (minValList[i] > minValListSort[0]) // nur der dunkelste bleibt uebrig { diff --git a/src/markerJapan.cpp b/src/markerJapan.cpp index 23aed9ec0d21e8f48160b87772a7eabbca707173..0dbbedd170053c02e76e3a0526460316dd04c2fb 100644 --- a/src/markerJapan.cpp +++ b/src/markerJapan.cpp @@ -1,5 +1,5 @@ //folgende zeile spaeter raus -#include <highgui.hpp> +#include "opencv2/highgui.hpp" // spaeter entfernen naechsten beiden zeilen //#include "control.h" @@ -19,6 +19,7 @@ #include "tracker.h" using namespace::cv; +using namespace std; // bei marker koennnte sich fuer jeden spot eine liste gemerkt werden und spaeter ausgleich // regressionsgrade legen um optimale linie durch marker zu erhalten @@ -228,7 +229,7 @@ void MarkerJapan::organize(const Mat &img, bool autoWB) } // loeschen aller zu hellen spots QList<int> minValListSort = minValList; - qSort(minValListSort); // sortiert aufsteigend + std::sort(minValListSort.begin(), minValListSort.end()); // sortiert aufsteigend for (i = 0; i < mSpots.size(); ++i) { //debout << mSpots[i].center().x()<< " "<< minValList[i] <<endl; diff --git a/src/multiColorMarkerWidget.cpp b/src/multiColorMarkerWidget.cpp index 0cd7422a85ef0dd018d1e07f8fdcc819ae03e7ad..9f30643ab051c523aef4d00f83320e027c51c8e6 100644 --- a/src/multiColorMarkerWidget.cpp +++ b/src/multiColorMarkerWidget.cpp @@ -49,10 +49,7 @@ void MultiColorMarkerWidget::setXml(QDomElement &elem) void MultiColorMarkerWidget::getXml(QDomElement &elem) { QDomElement subElem; - int h=0, s=0, v=0; // init, damit compiler nicht meckert QString styleString; - QColor col; - col.convertTo(QColor::Hsv); for(subElem = elem.firstChildElement(); !subElem.isNull(); subElem = subElem.nextSiblingElement()) { @@ -106,3 +103,5 @@ void MultiColorMarkerWidget::getXml(QDomElement &elem) } } } + +#include "moc_multiColorMarkerWidget.cpp" diff --git a/src/petrack.cpp b/src/petrack.cpp index 4c0cd93715bb462b1824d77a95dad634e6cd99b0..ff58c45950b567d01715bc9efa1046e516cf0839 100644 --- a/src/petrack.cpp +++ b/src/petrack.cpp @@ -43,7 +43,7 @@ #include <iomanip> -#include "opencv.hpp" +#include "opencv2/opencv.hpp" // Zeitausgabe aktivieren //#define TIME_MEASUREMENT @@ -55,6 +55,7 @@ Control *cw; int Petrack::trcVersion = 0; using namespace::cv; +using namespace std; // Reihenfolge des anlegens der objekte ist sehr wichtig Petrack::Petrack() @@ -137,7 +138,7 @@ Petrack::Petrack() mMultiColorMarkerWidget->setWindowTitle("MultiColor marker parameter"); //mColorMarkerWidget->show(); - mScene = new QGraphicsScene; + mScene = new QGraphicsScene(this); mImageItem = new ImageItem(this); // durch uebergabe von scene wird indirekt ein scene->addItem() aufgerufen mControlWidget->setScene(mScene); @@ -4073,3 +4074,5 @@ void Petrack::skipToFrameWheel(int delta) { mPlayerWidget->skipToFrame(mPlayerWidget->getPos()+delta); } + +#include "moc_petrack.cpp" diff --git a/src/player.cpp b/src/player.cpp index 20c28a535275044fc3ee4c770350011a58d20f3d..547863537b2e02845b74eb19b6307b2aea4f8684 100644 --- a/src/player.cpp +++ b/src/player.cpp @@ -595,3 +595,5 @@ int Player::getPos() { return mAnimation->getCurrentFrameNum(); } + +#include "moc_player.cpp" diff --git a/src/qtColorTriangle.cpp b/src/qtColorTriangle.cpp index b4fdd4a8f89c4949dfd251596482c02dece4f37c..d09a91dfa0a757ad404c1c77804efe8ef5d89752 100644 --- a/src/qtColorTriangle.cpp +++ b/src/qtColorTriangle.cpp @@ -1520,3 +1520,5 @@ QColor QtColorTriangle::colorFromPoint(const QPointF &p) const // Voila, we have the color at the point of the selector. return QColor(ri, gi, bi); } + +#include "moc_qtColorTriangle.cpp" diff --git a/src/recognition.cpp b/src/recognition.cpp index 73a231bbbe2ea9157a3d7936a8b7542257878b24..9b58c06b70d3a2165ae9576fc2ae5010b4a40fb9 100644 --- a/src/recognition.cpp +++ b/src/recognition.cpp @@ -3,7 +3,7 @@ #if not CV_MAJOR_VERION == 4 #include <cv.h> #endif -#include <opencv.hpp> +#include "opencv2/opencv.hpp" #include <opencv2/aruco.hpp> //#include "imgcodecs.hpp" @@ -33,6 +33,7 @@ #include "control.h" using namespace::cv; +using namespace std; //#include "Psapi.h" @@ -70,7 +71,7 @@ void thresholdHSV (const Mat &src, Mat &bin, const ColorParameters ¶m) int h, s, v; int x, y; - Mat hsv = src.clone(); + Mat hsv {src.size(), src.type()}; // hsvIpl = cvCloneImage(srcIpl); // make a copy diff --git a/src/stereoWidget.cpp b/src/stereoWidget.cpp index ae13d0ebb92f7da96589265f8d92a9364ec09fa4..bdb7452ca19b2a00529e7348de02ab83a18cbdf9 100644 --- a/src/stereoWidget.cpp +++ b/src/stereoWidget.cpp @@ -119,3 +119,4 @@ void StereoWidget::getXml(QDomElement &elem) } } +#include "moc_stereoWidget.cpp" diff --git a/src/tracker.cpp b/src/tracker.cpp index 2387e8388e62b851139713d1f49ffab86d4248d4..b28c30e2bcba46e4c9161d1ca15a9a6dbd7c5d53 100644 --- a/src/tracker.cpp +++ b/src/tracker.cpp @@ -1,4 +1,4 @@ -#include "opencv.hpp" +#include "opencv2/opencv.hpp" #include "opencv2/video/legacy/constants_c.h" #include <time.h> @@ -13,6 +13,7 @@ #include "multiColorMarkerWidget.h" using namespace::cv; +using namespace std; // Measure Time spending in functions //#define TIME_MEASUREMENT @@ -245,9 +246,9 @@ void TrackPerson::optimizeColor() b.append(at(i).color().blue()); } } - qSort(r); - qSort(g); - qSort(b); + std::sort(r.begin(), r.end()); + std::sort(g.begin(), g.end()); + std::sort(b.begin(), b.end()); if (r.size()>0 && g.size()>0 && b.size()>0) // kann eigentlich nicht vorkommen setColor(QColor(r[(r.size()-1)/2],g[(g.size()-1)/2],b[(b.size()-1)/2])); } @@ -273,7 +274,7 @@ void TrackPerson::recalcHeight(float altitude) } if (mHeightCount > 0) { - qSort(zList); + std::sort(zList.begin(), zList.end()); //mHeight = h / mHeightCount; mHeight = zList[mHeightCount/2]; mHeight = altitude - mHeight; diff --git a/src/trackerItem.cpp b/src/trackerItem.cpp index 834c9e5fafe26c83dcc7008704611a932be75d23..5de781a2940069902b02cffb03cc847e51468730 100644 --- a/src/trackerItem.cpp +++ b/src/trackerItem.cpp @@ -9,6 +9,7 @@ #include "animation.h" using namespace::cv; +using namespace std; // in x und y gleichermassen skaliertes koordinatensystem, // da von einer vorherigen intrinsischen kamerakalibrierung ausgegenagen wird, diff --git a/src/vector.cpp b/src/vector.cpp index c752f55172b75ec739a6e2326df89e17ebb060cf..53f39e24cd65070e66fa404d7d505c9c0fb787b7 100644 --- a/src/vector.cpp +++ b/src/vector.cpp @@ -1,4 +1,4 @@ -#include "opencv.hpp" +#include "opencv2/opencv.hpp" #include <QPointF> #include <QPoint> diff --git a/src/view.cpp b/src/view.cpp index 535f1ea300cb2d1bb12241e6c3f5ed3002323cf0..66c49981208ee57f7d15179cf37cb81497ecefc7 100644 --- a/src/view.cpp +++ b/src/view.cpp @@ -173,6 +173,16 @@ void GraphicsView::keyPressEvent(QKeyEvent *event) } } +void GraphicsView::mousePressEvent(QMouseEvent *event) +{ + + if(event->modifiers() & Qt::ShiftModifier){ + emit setColorEvent(event->pos(), this); + }else{ + emit colorSelected(event->pos(), this); + } +} + //--------------------------------------------------------------------- @@ -366,3 +376,6 @@ void ViewWidget::hideShowControls() { mMainWindow->getHideControlActor()->setChecked(mMainWindow->getControlWidget()->isVisible()); } + + +#include "moc_view.cpp" diff --git a/tests/regression_test/tests/conftest.py b/tests/regression_test/tests/conftest.py index 24f4c3c71d93c4ed6f266b6a79c5b63b7e08ed25..adc13b6ce0cab96425809d508c1eb9bf64ddddb1 100644 --- a/tests/regression_test/tests/conftest.py +++ b/tests/regression_test/tests/conftest.py @@ -3,7 +3,7 @@ import subprocess def pytest_addoption(parser): - parser.addoption("--path", action="store", default="../../../petrack.exe") + parser.addoption("--path", action="store", default="../../../build/petrack.exe") diff --git a/tests/unit_test/CMakeLists.txt b/tests/unit_test/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..f4d08ca7619613215ae8aa944196b2aa96f5d37d --- /dev/null +++ b/tests/unit_test/CMakeLists.txt @@ -0,0 +1,9 @@ +add_executable(petrack_tests) + +target_sources(petrack_tests PRIVATE + main.cpp + tst_apptest.cpp + tst_control.cpp +) + + diff --git a/tests/unit_test/main.cpp b/tests/unit_test/main.cpp new file mode 100644 index 0000000000000000000000000000000000000000..36766ceae0863befcb3ed9054e8cec3db4f3e1d3 --- /dev/null +++ b/tests/unit_test/main.cpp @@ -0,0 +1,15 @@ +#define CATCH_CONFIG_RUNNER +#include <catch2/catch.hpp> + +#include <QApplication> +#include <QtTest> + +int main( int argc, char* argv[] ) +{ + QApplication a(argc, argv); + + QTEST_SET_MAIN_SOURCE_PATH + const int result = Catch::Session().run( argc, argv ); + + return ( result < 0xff ? result : 0xff ); +} diff --git a/tests/unit_test/tst_apptest.cpp b/tests/unit_test/tst_apptest.cpp new file mode 100644 index 0000000000000000000000000000000000000000..3454ca5f815341731990991df36a081a5320c8c3 --- /dev/null +++ b/tests/unit_test/tst_apptest.cpp @@ -0,0 +1,14 @@ +#include <catch2/catch.hpp> + +#include <iostream> + +#include <QSignalSpy> + + +SCENARIO("Application Tests", "[app]") +{ + + GIVEN("Hello World") { + REQUIRE(true); + } +} diff --git a/tests/unit_test/tst_control.cpp b/tests/unit_test/tst_control.cpp new file mode 100644 index 0000000000000000000000000000000000000000..70291d4d1b8b440f071a3d8e0d0dcd4dbacce0d2 --- /dev/null +++ b/tests/unit_test/tst_control.cpp @@ -0,0 +1,211 @@ +#include <catch2/catch.hpp> + +#include <iostream> +#include "control.h" + +#include <QSignalSpy> +#include <QTestEventList> +#include <QGraphicsScene> +#include "imageItem.h" + +#include "view.h" + + +// TODO Connect und Disconnect vom Event (lässt sich an und abschalten) +// TODO Weitere Testcases überlegen + +void checkSelectedColor(Control* con, bool invHue, int toHue, int fromHue, + int toSat, int fromSat, int toVal, int fromVal, + int mapX, int mapW, int mapY, int mapH){ + + REQUIRE(con->getColorPlot()->getMapItem()->getActMapInvHue() == invHue); + + QColor toColor = con->getColorPlot()->getMapItem()->getActMapToColor(); + QColor fromColor = con->getColorPlot()->getMapItem()->getActMapFromColor(); + + // Hue + REQUIRE(toColor.hue() == toHue); + REQUIRE(fromColor.hue() == fromHue); + + // Saturation + REQUIRE(toColor.saturation() == toSat); + REQUIRE(fromColor.saturation() == fromSat); + + // Value + REQUIRE(toColor.value() == toVal); + REQUIRE(fromColor.value() == fromVal); + + // Sliders + REQUIRE(con->mapX->value() == mapX); + REQUIRE(con->mapW->value() == mapW); + REQUIRE(con->mapY->value() == mapY); + REQUIRE(con->mapH->value() == mapH); +} + + +SCENARIO("I open PeTrack with a red image", "[ui][config]") +{ + Petrack pet {}; + cv::Mat redTestImage {cv::Size(50, 50), CV_8UC3, cv::Scalar(179,255,200)}; + cv::cvtColor(redTestImage, redTestImage, cv::COLOR_HSV2BGR); + // NOTE Gibt es eine bessere Methode, als das Bild erst zu speichern? + cv::imwrite("TESTBILD_DELETE_ME.png", redTestImage); + pet.openSequence("TESTBILD_DELETE_ME.png"); + QPoint viewCenter = pet.getView()->viewport()->geometry().center(); + + QPointer<Control> con = pet.getControlWidget(); + + GIVEN("I click the colorPickerButton") { + QTestEventList eventList; + QPushButton* colorPickerButton = con->findChild<QPushButton*>("colorPickerButton"); + eventList.addMouseClick(Qt::MouseButton::LeftButton, Qt::KeyboardModifier::NoModifier); + eventList.simulate(colorPickerButton); + + THEN("The Button is checked") { + REQUIRE(colorPickerButton->isChecked()); + } + + AND_GIVEN("I shift+click on one point of the (red) image"){ + eventList.clear(); + eventList.addMouseClick(Qt::MouseButton::LeftButton, Qt::KeyboardModifier::ShiftModifier, viewCenter); + + QSignalSpy setColorSpy{pet.getView(), SIGNAL(setColorEvent(QPoint, GraphicsView*))}; + REQUIRE(setColorSpy.isValid()); + setColorSpy.wait(20); + eventList.simulate(pet.getView()->viewport()); + REQUIRE(setColorSpy.count() == 1); + + THEN("This pixel and its sourroundings get selected as new color"){ + // Red, so we need Inverse Hue + bool invHue = true; + + // Hue Upper Bound: 358(179) + 5 (current Buffer) -> 363 -> 3 + // Hue Lower Bound: 358(179) - 5 (current Buffer) -> 353 + int toHue = 3, fromHue = 353; + + // Saturation + // Upper Bound: 255 + 5 -> 255 + // Lower Bound: 255 - 5 -> 250 + int toSat = 255, fromSat = 250; + + // Value + // Upper Bound: 200 + 5 -> 205 + // Lower Bound: 200 - 5 -> 195 + int toVal = 205, fromVal = 195; + + // Sliders + // x = 2 * 3 = 6 + int mapX = 6; + // w = |toHue - fromHue| = 350 + int mapW= 350; + // y = 2 * fromSaturation = 500 + int mapY = 500; + // h = toSaturation - fromSaturation = 5 + int mapH = 5; + + checkSelectedColor(con, invHue, toHue, fromHue, toSat, fromSat, toVal, fromVal, mapX, mapW, mapY, mapH); + + AND_GIVEN("Afterwards I left-click on a slightly different red pixel"){ + cv::Mat differentRedTestImage {cv::Size(50, 50), CV_8UC3, cv::Scalar(170,235,220)}; + cv::cvtColor(differentRedTestImage, differentRedTestImage, cv::COLOR_HSV2BGR); + pet.updateImage(differentRedTestImage); + + eventList.clear(); + eventList.addMouseClick(Qt::MouseButton::LeftButton, Qt::KeyboardModifier::NoModifier, viewCenter); + eventList.simulate(pet.getView()->viewport()); + + THEN("The selected color is expanded accordingly"){ + // new lower bound on Hue is 340 - 10 -> 330 + fromHue = 330; + // 330 (fromHue) - 3 (toHue) = 327 + mapW = 327; + // new lower bound on Saturation is 235 - 10 -> 225 + fromSat = 225; + // 255 (toSat) - 225 (fromSat) = 30 + mapH = 30; + // 225 * 2 = 450 + mapY = 450; + // new upper bound on Value is 220 + 10 -> 230 + toVal = 230; + + checkSelectedColor(con, invHue, toHue, fromHue, toSat, fromSat, toVal, fromVal, mapX, mapW, mapY, mapH); + } + } + } + } + + AND_GIVEN("I shift+click on a red-isch/magenta pixel (Hue=340)"){ + cv::Mat magentaTestImage {cv::Size(50, 50), CV_8UC3, cv::Scalar(170,235,220)}; + cv::cvtColor(magentaTestImage, magentaTestImage, cv::COLOR_HSV2BGR); + pet.updateImage(magentaTestImage); + + QTestEventList eventList; + eventList.addMouseClick(Qt::MouseButton::LeftButton, Qt::KeyboardModifier::ShiftModifier, viewCenter); + eventList.simulate(pet.getView()->viewport()); + + REQUIRE(!con->getColorPlot()->getMapItem()->getActMapInvHue()); + + AND_GIVEN("Afterwards I click on an red image (Hue=10)"){ + cv::Mat otherSideRedImage {cv::Size(50, 50), CV_8UC3, cv::Scalar(5,235,220)}; + cv::cvtColor(otherSideRedImage, otherSideRedImage, cv::COLOR_HSV2BGR); + pet.updateImage(otherSideRedImage); + + QTestEventList eventList; + eventList.addMouseClick(Qt::MouseButton::LeftButton, Qt::KeyboardModifier::NoModifier, viewCenter); + eventList.simulate(pet.getView()->viewport()); + + THEN("Inverse hue gets checked"){ /*Lieber color changed accordingly und dementsprechend weiterarbeiten?*/ + REQUIRE(con->getColorPlot()->getMapItem()->getActMapInvHue()); + + } + } + AND_GIVEN("Afterwards I click on an pink Image (Hue=320)"){ + cv::Mat pinkTestImage {cv::Size(50, 50), CV_8UC3, cv::Scalar(160,235,220)}; + cv::cvtColor(pinkTestImage, pinkTestImage, cv::COLOR_HSV2BGR); + pet.updateImage(pinkTestImage); + + QTestEventList eventList; + eventList.addMouseClick(Qt::MouseButton::LeftButton, Qt::KeyboardModifier::NoModifier, viewCenter); + eventList.simulate(pet.getView()->viewport()); + + THEN("I still do not use inverse Hue"){ + REQUIRE(!con->getColorPlot()->getMapItem()->getActMapInvHue()); + } + } + } + AND_GIVEN("I shift+click on one specific pixel"){ + cv::Mat newTestImage {cv::Size(50, 50), CV_8UC3, cv::Scalar(50,235,220)}; + // set middle Pixel (clicked pixel) to other Value + newTestImage.at<cv::Vec3b>(cv::Point(25,25)) = cv::Vec3b(100,255,255); + cv::cvtColor(newTestImage, newTestImage, cv::COLOR_HSV2BGR); + pet.updateImage(newTestImage); + + QTestEventList eventList; + QPointF pointOnScene = pet.getImageItem()->mapToScene(QPoint(25, 25)); + QPoint pointOnViewport = pet.getView()->mapFromScene(pointOnScene); + eventList.addMouseClick(Qt::MouseButton::LeftButton, Qt::KeyboardModifier::ShiftModifier, + pointOnViewport); + eventList.simulate(pet.getView()->viewport()); + + THEN("I get a color selection fitting this single pixel"){ + bool invHue = false; + // Upper Bound Hue 200 + 5 -> 105 Lower Bound: 200 - 5 -> 95 + int fromHue = 195, toHue = 205; + // mapW = tH-fH = 10 + int mapW = 10; + // mapX = 2*fH = 2 * 195 = 390 + int mapX = 390; + // Upper bound saturation 255 + 5 -> 255 Lower bound 255 - 5 -> 250 + int fromSat = 250, toSat = 255; + // map H = 255 - 250 = 5 + int mapH = 5; + // mapY = 2 * 250 = 500 + int mapY = 500; + // Upper bound value 255 + 5 -> 255 Lower bound 255 - 5 -> 250 + int fromVal = 250, toVal = 255; + + checkSelectedColor(con, invHue, toHue, fromHue, toSat, fromSat, toVal, fromVal, mapX, mapW, mapY, mapH); + } + } + } // Clicked Color Picker Button +} // Scenario diff --git a/ui/control.ui b/ui/control.ui index ce1568121aab2115e5421a91e92b041998027884..5a37917524068c7875f21e69e8bd461c64afd6d0 100644 --- a/ui/control.ui +++ b/ui/control.ui @@ -7,7 +7,7 @@ <x>0</x> <y>0</y> <width>380</width> - <height>357</height> + <height>604</height> </rect> </property> <property name="sizePolicy"> @@ -3938,7 +3938,7 @@ <item> <widget class="QGroupBox" name="groupBox_4"> <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <sizepolicy hsizetype="Expanding" vsizetype="Expanding"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> @@ -3952,284 +3952,346 @@ <property name="maximumSize"> <size> <width>350</width> - <height>110</height> + <height>222</height> </size> </property> <property name="title"> <string>map</string> </property> - <widget class="QWidget" name="layoutWidget11"> - <property name="geometry"> - <rect> - <x>10</x> - <y>20</y> - <width>271</width> - <height>95</height> - </rect> + <layout class="QHBoxLayout" name="horizontalLayout_21"> + <property name="spacing"> + <number>9</number> </property> - <layout class="QVBoxLayout"> - <property name="spacing"> - <number>6</number> - </property> - <property name="leftMargin"> - <number>0</number> - </property> - <property name="topMargin"> - <number>0</number> - </property> - <property name="rightMargin"> - <number>0</number> - </property> - <property name="bottomMargin"> - <number>0</number> - </property> - <item> - <layout class="QGridLayout"> - <property name="leftMargin"> - <number>0</number> - </property> - <property name="topMargin"> - <number>0</number> - </property> - <property name="rightMargin"> - <number>0</number> - </property> - <property name="bottomMargin"> - <number>0</number> - </property> - <property name="spacing"> - <number>6</number> - </property> - <item row="1" column="3"> - <widget class="QLabel" name="label_44"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string>h:</string> - </property> - </widget> - </item> - <item row="0" column="1"> - <widget class="QLabel" name="label_40"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string>x:</string> - </property> - </widget> - </item> - <item row="0" column="2"> - <widget class="QScrollBar" name="mapX"> - <property name="maximum"> - <number>718</number> - </property> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - </widget> - </item> - <item row="1" column="4"> - <widget class="QScrollBar" name="mapH"> - <property name="maximum"> - <number>395</number> - </property> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - </widget> - </item> - <item row="1" column="2"> - <widget class="QScrollBar" name="mapW"> - <property name="maximum"> - <number>395</number> - </property> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - </widget> - </item> - <item row="0" column="4"> - <widget class="QScrollBar" name="mapY"> - <property name="maximum"> - <number>718</number> - </property> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - </widget> - </item> - <item row="1" column="1"> - <widget class="QLabel" name="label_43"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string>w:</string> - </property> - </widget> - </item> - <item row="0" column="3"> - <widget class="QLabel" name="label_42"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string>y:</string> - </property> - </widget> - </item> - <item row="0" column="0"> - <widget class="QSpinBox" name="mapNr"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="alignment"> - <set>Qt::AlignRight</set> - </property> - <property name="maximum"> - <number>0</number> - </property> - </widget> - </item> - <item row="1" column="0"> - <widget class="QCheckBox" name="mapColor"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string>color</string> - </property> - <property name="checked"> - <bool>true</bool> - </property> - </widget> - </item> - </layout> - </item> - <item> - <layout class="QHBoxLayout"> - <property name="spacing"> - <number>6</number> - </property> - <property name="leftMargin"> - <number>0</number> - </property> - <property name="topMargin"> - <number>0</number> - </property> - <property name="rightMargin"> - <number>0</number> - </property> - <property name="bottomMargin"> - <number>0</number> - </property> - <item> - <widget class="QLabel" name="label_45"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string>height:</string> - </property> - </widget> - </item> - <item> - <widget class="QDoubleSpinBox" name="mapHeight"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="alignment"> - <set>Qt::AlignRight</set> - </property> - <property name="decimals"> - <number>1</number> - </property> - <property name="minimum"> - <double>50.000000000000000</double> - </property> - <property name="maximum"> - <double>250.000000000000000</double> - </property> - <property name="value"> - <double>180.000000000000000</double> - </property> - </widget> - </item> - <item> - <widget class="QPushButton" name="mapAdd"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="maximumSize"> - <size> - <width>40</width> - <height>16777215</height> - </size> - </property> - <property name="text"> - <string>add</string> - </property> - </widget> - </item> - <item> - <widget class="QPushButton" name="mapDel"> - <property name="maximumSize"> - <size> - <width>40</width> - <height>16777215</height> - </size> - </property> - <property name="text"> - <string>delete</string> - </property> - </widget> - </item> - <item> - <widget class="QPushButton" name="mapColorRange"> - <property name="maximumSize"> - <size> - <width>80</width> - <height>16777215</height> - </size> - </property> - <property name="text"> - <string>color range</string> - </property> - </widget> - </item> - </layout> - </item> - </layout> - </widget> + <item> + <layout class="QVBoxLayout"> + <property name="spacing"> + <number>6</number> + </property> + <property name="sizeConstraint"> + <enum>QLayout::SetDefaultConstraint</enum> + </property> + <property name="leftMargin"> + <number>0</number> + </property> + <property name="topMargin"> + <number>0</number> + </property> + <property name="rightMargin"> + <number>0</number> + </property> + <property name="bottomMargin"> + <number>0</number> + </property> + <item> + <layout class="QGridLayout"> + <property name="sizeConstraint"> + <enum>QLayout::SetDefaultConstraint</enum> + </property> + <property name="leftMargin"> + <number>0</number> + </property> + <property name="topMargin"> + <number>0</number> + </property> + <property name="rightMargin"> + <number>0</number> + </property> + <property name="bottomMargin"> + <number>0</number> + </property> + <property name="spacing"> + <number>6</number> + </property> + <item row="0" column="3"> + <widget class="QLabel" name="label_42"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>y:</string> + </property> + </widget> + </item> + <item row="0" column="2"> + <widget class="QScrollBar" name="mapX"> + <property name="sizePolicy"> + <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>0</width> + <height>0</height> + </size> + </property> + <property name="maximum"> + <number>718</number> + </property> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + </widget> + </item> + <item row="0" column="0"> + <widget class="QSpinBox" name="mapNr"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="alignment"> + <set>Qt::AlignRight</set> + </property> + <property name="maximum"> + <number>0</number> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QCheckBox" name="mapColor"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>color</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </item> + <item row="1" column="3"> + <widget class="QLabel" name="label_44"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>h:</string> + </property> + </widget> + </item> + <item row="1" column="4"> + <widget class="QScrollBar" name="mapH"> + <property name="maximum"> + <number>395</number> + </property> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="QLabel" name="label_43"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>w:</string> + </property> + </widget> + </item> + <item row="1" column="2"> + <widget class="QScrollBar" name="mapW"> + <property name="maximum"> + <number>395</number> + </property> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + </widget> + </item> + <item row="0" column="4"> + <widget class="QScrollBar" name="mapY"> + <property name="sizePolicy"> + <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>0</width> + <height>0</height> + </size> + </property> + <property name="maximum"> + <number>718</number> + </property> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="QLabel" name="label_40"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>x:</string> + </property> + </widget> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout"> + <property name="spacing"> + <number>6</number> + </property> + <property name="leftMargin"> + <number>0</number> + </property> + <property name="topMargin"> + <number>0</number> + </property> + <property name="rightMargin"> + <number>0</number> + </property> + <property name="bottomMargin"> + <number>0</number> + </property> + <item> + <widget class="QLabel" name="label_45"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>height:</string> + </property> + </widget> + </item> + <item> + <widget class="QDoubleSpinBox" name="mapHeight"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="alignment"> + <set>Qt::AlignRight</set> + </property> + <property name="decimals"> + <number>1</number> + </property> + <property name="minimum"> + <double>50.000000000000000</double> + </property> + <property name="maximum"> + <double>250.000000000000000</double> + </property> + <property name="value"> + <double>180.000000000000000</double> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="mapAdd"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="maximumSize"> + <size> + <width>40</width> + <height>16777215</height> + </size> + </property> + <property name="text"> + <string>add</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="mapDel"> + <property name="maximumSize"> + <size> + <width>40</width> + <height>16777215</height> + </size> + </property> + <property name="text"> + <string>delete</string> + </property> + </widget> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_22"> + <property name="sizeConstraint"> + <enum>QLayout::SetDefaultConstraint</enum> + </property> + <item> + <widget class="QPushButton" name="mapColorRange"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="maximumSize"> + <size> + <width>80</width> + <height>16777215</height> + </size> + </property> + <property name="text"> + <string>color range</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="colorPickerButton"> + <property name="enabled"> + <bool>true</bool> + </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="styleSheet"> + <string notr="true"/> + </property> + <property name="text"> + <string>color picker</string> + </property> + <property name="checkable"> + <bool>true</bool> + </property> + </widget> + </item> + </layout> + </item> + </layout> + </item> + </layout> </widget> </item> <item> @@ -5996,6 +6058,15 @@ </color> </brush> </colorrole> + <colorrole role="PlaceholderText"> + <brush brushstyle="NoBrush"> + <color alpha="128"> + <red>0</red> + <green>0</green> + <blue>0</blue> + </color> + </brush> + </colorrole> </active> <inactive> <colorrole role="WindowText"> @@ -6133,6 +6204,15 @@ </color> </brush> </colorrole> + <colorrole role="PlaceholderText"> + <brush brushstyle="NoBrush"> + <color alpha="128"> + <red>0</red> + <green>0</green> + <blue>0</blue> + </color> + </brush> + </colorrole> </inactive> <disabled> <colorrole role="WindowText"> @@ -6270,6 +6350,15 @@ </color> </brush> </colorrole> + <colorrole role="PlaceholderText"> + <brush brushstyle="NoBrush"> + <color alpha="128"> + <red>0</red> + <green>0</green> + <blue>0</blue> + </color> + </brush> + </colorrole> </disabled> </palette> </property> @@ -6639,6 +6728,15 @@ </color> </brush> </colorrole> + <colorrole role="PlaceholderText"> + <brush brushstyle="NoBrush"> + <color alpha="128"> + <red>0</red> + <green>0</green> + <blue>0</blue> + </color> + </brush> + </colorrole> </active> <inactive> <colorrole role="WindowText"> @@ -6776,6 +6874,15 @@ </color> </brush> </colorrole> + <colorrole role="PlaceholderText"> + <brush brushstyle="NoBrush"> + <color alpha="128"> + <red>0</red> + <green>0</green> + <blue>0</blue> + </color> + </brush> + </colorrole> </inactive> <disabled> <colorrole role="WindowText"> @@ -6913,6 +7020,15 @@ </color> </brush> </colorrole> + <colorrole role="PlaceholderText"> + <brush brushstyle="NoBrush"> + <color alpha="128"> + <red>0</red> + <green>0</green> + <blue>0</blue> + </color> + </brush> + </colorrole> </disabled> </palette> </property> @@ -7084,7 +7200,7 @@ <x>0</x> <y>0</y> <width>354</width> - <height>311</height> + <height>558</height> </rect> </property> <layout class="QVBoxLayout" name="verticalLayout_18"> diff --git a/ui/ui_codeMarker.h b/ui/ui_codeMarker.h deleted file mode 100644 index 481792b265cc0d7fe31dccb1779633ab652c4695..0000000000000000000000000000000000000000 --- a/ui/ui_codeMarker.h +++ /dev/null @@ -1,424 +0,0 @@ -/******************************************************************************** -** Form generated from reading UI file 'codeMarker.ui' -** -** Created by: Qt User Interface Compiler version 5.14.1 -** -** WARNING! All changes made in this file will be lost when recompiling UI file! -********************************************************************************/ - -#ifndef UI_CODEMARKER_H -#define UI_CODEMARKER_H - -#include <QtCore/QVariant> -#include <QtWidgets/QApplication> -#include <QtWidgets/QCheckBox> -#include <QtWidgets/QComboBox> -#include <QtWidgets/QDoubleSpinBox> -#include <QtWidgets/QGridLayout> -#include <QtWidgets/QGroupBox> -#include <QtWidgets/QHBoxLayout> -#include <QtWidgets/QLabel> -#include <QtWidgets/QPushButton> -#include <QtWidgets/QSpinBox> -#include <QtWidgets/QVBoxLayout> -#include <QtWidgets/QWidget> - -QT_BEGIN_NAMESPACE - -class Ui_CodeMarker -{ -public: - QVBoxLayout *verticalLayout_2; - QHBoxLayout *horizontalLayout; - QLabel *label_6; - QComboBox *dictList; - QVBoxLayout *verticalLayout; - QCheckBox *showDetectedCandidates; - QGroupBox *groupBox; - QGridLayout *gridLayout; - QDoubleSpinBox *maxMarkerPerimeter; - QDoubleSpinBox *minMarkerPerimeter; - QSpinBox *adaptiveThreshWinSizeMax; - QLabel *label; - QSpinBox *adaptiveThreshConstant; - QSpinBox *markerBorderBits; - QLabel *label_2; - QSpinBox *adaptiveThreshWinSizeStep; - QDoubleSpinBox *polygonalApproxAccuracyRate; - QLabel *label_4; - QDoubleSpinBox *maxErroneousBitsInBorderRate; - QLabel *label_3; - QDoubleSpinBox *minCornerDistance; - QSpinBox *adaptiveThreshWinSizeMin; - QLabel *label_9; - QSpinBox *minDistanceToBorder; - QLabel *label_7; - QLabel *label_15; - QLabel *label_17; - QLabel *label_8; - QDoubleSpinBox *minMarkerDistance; - QDoubleSpinBox *errorCorrectionRate; - QLabel *label_16; - QDoubleSpinBox *minOtsuStdDev; - QGroupBox *groupBox_2; - QGridLayout *gridLayout_3; - QSpinBox *perspectiveRemovePixelPerCell; - QLabel *label_13; - QLabel *label_14; - QDoubleSpinBox *perspectiveRemoveIgnoredMarginPerCell; - QGroupBox *doCornerRefinement; - QGridLayout *gridLayout_2; - QSpinBox *cornerRefinementWinSize; - QLabel *label_11; - QSpinBox *cornerRefinementMaxIterations; - QLabel *label_12; - QDoubleSpinBox *cornerRefinementMinAccuracy; - QLabel *label_10; - QPushButton *moreInfosButton; - - void setupUi(QWidget *CodeMarker) - { - if (CodeMarker->objectName().isEmpty()) - CodeMarker->setObjectName(QString::fromUtf8("CodeMarker")); - CodeMarker->resize(397, 637); - verticalLayout_2 = new QVBoxLayout(CodeMarker); - verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); - horizontalLayout = new QHBoxLayout(); - horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); - label_6 = new QLabel(CodeMarker); - label_6->setObjectName(QString::fromUtf8("label_6")); - - horizontalLayout->addWidget(label_6); - - dictList = new QComboBox(CodeMarker); - dictList->setObjectName(QString::fromUtf8("dictList")); - dictList->setSizeAdjustPolicy(QComboBox::AdjustToContents); - - horizontalLayout->addWidget(dictList); - - horizontalLayout->setStretch(1, 1); - - verticalLayout_2->addLayout(horizontalLayout); - - verticalLayout = new QVBoxLayout(); - verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); - showDetectedCandidates = new QCheckBox(CodeMarker); - showDetectedCandidates->setObjectName(QString::fromUtf8("showDetectedCandidates")); - - verticalLayout->addWidget(showDetectedCandidates); - - - verticalLayout_2->addLayout(verticalLayout); - - groupBox = new QGroupBox(CodeMarker); - groupBox->setObjectName(QString::fromUtf8("groupBox")); - gridLayout = new QGridLayout(groupBox); - gridLayout->setObjectName(QString::fromUtf8("gridLayout")); - maxMarkerPerimeter = new QDoubleSpinBox(groupBox); - maxMarkerPerimeter->setObjectName(QString::fromUtf8("maxMarkerPerimeter")); - maxMarkerPerimeter->setFocusPolicy(Qt::WheelFocus); - maxMarkerPerimeter->setMinimum(1.000000000000000); - maxMarkerPerimeter->setMaximum(100.000000000000000); - maxMarkerPerimeter->setSingleStep(1.000000000000000); - maxMarkerPerimeter->setValue(15.000000000000000); - - gridLayout->addWidget(maxMarkerPerimeter, 2, 2, 1, 1); - - minMarkerPerimeter = new QDoubleSpinBox(groupBox); - minMarkerPerimeter->setObjectName(QString::fromUtf8("minMarkerPerimeter")); - minMarkerPerimeter->setMinimum(0.100000000000000); - minMarkerPerimeter->setSingleStep(1.000000000000000); - minMarkerPerimeter->setValue(5.000000000000000); - - gridLayout->addWidget(minMarkerPerimeter, 2, 1, 1, 1); - - adaptiveThreshWinSizeMax = new QSpinBox(groupBox); - adaptiveThreshWinSizeMax->setObjectName(QString::fromUtf8("adaptiveThreshWinSizeMax")); - adaptiveThreshWinSizeMax->setMinimum(3); - adaptiveThreshWinSizeMax->setValue(23); - - gridLayout->addWidget(adaptiveThreshWinSizeMax, 0, 2, 1, 1); - - label = new QLabel(groupBox); - label->setObjectName(QString::fromUtf8("label")); - - gridLayout->addWidget(label, 9, 0, 1, 1); - - adaptiveThreshConstant = new QSpinBox(groupBox); - adaptiveThreshConstant->setObjectName(QString::fromUtf8("adaptiveThreshConstant")); - adaptiveThreshConstant->setValue(7); - - gridLayout->addWidget(adaptiveThreshConstant, 1, 2, 1, 1); - - markerBorderBits = new QSpinBox(groupBox); - markerBorderBits->setObjectName(QString::fromUtf8("markerBorderBits")); - markerBorderBits->setMinimum(1); - markerBorderBits->setValue(1); - - gridLayout->addWidget(markerBorderBits, 9, 1, 1, 1); - - label_2 = new QLabel(groupBox); - label_2->setObjectName(QString::fromUtf8("label_2")); - - gridLayout->addWidget(label_2, 0, 0, 1, 1); - - adaptiveThreshWinSizeStep = new QSpinBox(groupBox); - adaptiveThreshWinSizeStep->setObjectName(QString::fromUtf8("adaptiveThreshWinSizeStep")); - adaptiveThreshWinSizeStep->setMinimum(1); - adaptiveThreshWinSizeStep->setValue(10); - - gridLayout->addWidget(adaptiveThreshWinSizeStep, 1, 1, 1, 1); - - polygonalApproxAccuracyRate = new QDoubleSpinBox(groupBox); - polygonalApproxAccuracyRate->setObjectName(QString::fromUtf8("polygonalApproxAccuracyRate")); - polygonalApproxAccuracyRate->setMinimum(0.010000000000000); - polygonalApproxAccuracyRate->setSingleStep(0.010000000000000); - polygonalApproxAccuracyRate->setValue(0.030000000000000); - - gridLayout->addWidget(polygonalApproxAccuracyRate, 3, 1, 1, 1); - - label_4 = new QLabel(groupBox); - label_4->setObjectName(QString::fromUtf8("label_4")); - - gridLayout->addWidget(label_4, 3, 0, 1, 1); - - maxErroneousBitsInBorderRate = new QDoubleSpinBox(groupBox); - maxErroneousBitsInBorderRate->setObjectName(QString::fromUtf8("maxErroneousBitsInBorderRate")); - maxErroneousBitsInBorderRate->setMinimum(0.010000000000000); - maxErroneousBitsInBorderRate->setSingleStep(0.010000000000000); - maxErroneousBitsInBorderRate->setValue(0.350000000000000); - - gridLayout->addWidget(maxErroneousBitsInBorderRate, 11, 1, 1, 1); - - label_3 = new QLabel(groupBox); - label_3->setObjectName(QString::fromUtf8("label_3")); - - gridLayout->addWidget(label_3, 2, 0, 1, 1); - - minCornerDistance = new QDoubleSpinBox(groupBox); - minCornerDistance->setObjectName(QString::fromUtf8("minCornerDistance")); - minCornerDistance->setMinimum(0.000000000000000); - minCornerDistance->setMaximum(100.000000000000000); - minCornerDistance->setSingleStep(0.010000000000000); - minCornerDistance->setValue(0.050000000000000); - - gridLayout->addWidget(minCornerDistance, 4, 1, 1, 1); - - adaptiveThreshWinSizeMin = new QSpinBox(groupBox); - adaptiveThreshWinSizeMin->setObjectName(QString::fromUtf8("adaptiveThreshWinSizeMin")); - adaptiveThreshWinSizeMin->setMinimum(3); - adaptiveThreshWinSizeMin->setValue(3); - - gridLayout->addWidget(adaptiveThreshWinSizeMin, 0, 1, 1, 1); - - label_9 = new QLabel(groupBox); - label_9->setObjectName(QString::fromUtf8("label_9")); - - gridLayout->addWidget(label_9, 6, 0, 1, 1); - - minDistanceToBorder = new QSpinBox(groupBox); - minDistanceToBorder->setObjectName(QString::fromUtf8("minDistanceToBorder")); - minDistanceToBorder->setMinimum(0); - minDistanceToBorder->setValue(3); - - gridLayout->addWidget(minDistanceToBorder, 5, 1, 1, 1); - - label_7 = new QLabel(groupBox); - label_7->setObjectName(QString::fromUtf8("label_7")); - - gridLayout->addWidget(label_7, 4, 0, 1, 1); - - label_15 = new QLabel(groupBox); - label_15->setObjectName(QString::fromUtf8("label_15")); - - gridLayout->addWidget(label_15, 11, 0, 1, 1); - - label_17 = new QLabel(groupBox); - label_17->setObjectName(QString::fromUtf8("label_17")); - - gridLayout->addWidget(label_17, 14, 0, 1, 1); - - label_8 = new QLabel(groupBox); - label_8->setObjectName(QString::fromUtf8("label_8")); - - gridLayout->addWidget(label_8, 5, 0, 1, 1); - - minMarkerDistance = new QDoubleSpinBox(groupBox); - minMarkerDistance->setObjectName(QString::fromUtf8("minMarkerDistance")); - minMarkerDistance->setMinimum(0.000000000000000); - minMarkerDistance->setSingleStep(0.500000000000000); - minMarkerDistance->setValue(0.050000000000000); - - gridLayout->addWidget(minMarkerDistance, 6, 1, 1, 1); - - errorCorrectionRate = new QDoubleSpinBox(groupBox); - errorCorrectionRate->setObjectName(QString::fromUtf8("errorCorrectionRate")); - errorCorrectionRate->setMinimum(0.010000000000000); - errorCorrectionRate->setSingleStep(0.100000000000000); - errorCorrectionRate->setValue(0.600000000000000); - - gridLayout->addWidget(errorCorrectionRate, 14, 1, 1, 1); - - label_16 = new QLabel(groupBox); - label_16->setObjectName(QString::fromUtf8("label_16")); - - gridLayout->addWidget(label_16, 13, 0, 1, 1); - - minOtsuStdDev = new QDoubleSpinBox(groupBox); - minOtsuStdDev->setObjectName(QString::fromUtf8("minOtsuStdDev")); - minOtsuStdDev->setMinimum(0.010000000000000); - minOtsuStdDev->setSingleStep(0.500000000000000); - minOtsuStdDev->setValue(5.000000000000000); - - gridLayout->addWidget(minOtsuStdDev, 13, 1, 1, 1); - - groupBox_2 = new QGroupBox(groupBox); - groupBox_2->setObjectName(QString::fromUtf8("groupBox_2")); - gridLayout_3 = new QGridLayout(groupBox_2); - gridLayout_3->setObjectName(QString::fromUtf8("gridLayout_3")); - perspectiveRemovePixelPerCell = new QSpinBox(groupBox_2); - perspectiveRemovePixelPerCell->setObjectName(QString::fromUtf8("perspectiveRemovePixelPerCell")); - perspectiveRemovePixelPerCell->setMinimum(1); - perspectiveRemovePixelPerCell->setValue(4); - - gridLayout_3->addWidget(perspectiveRemovePixelPerCell, 0, 1, 1, 1); - - label_13 = new QLabel(groupBox_2); - label_13->setObjectName(QString::fromUtf8("label_13")); - - gridLayout_3->addWidget(label_13, 0, 0, 1, 1); - - label_14 = new QLabel(groupBox_2); - label_14->setObjectName(QString::fromUtf8("label_14")); - - gridLayout_3->addWidget(label_14, 1, 0, 1, 1); - - perspectiveRemoveIgnoredMarginPerCell = new QDoubleSpinBox(groupBox_2); - perspectiveRemoveIgnoredMarginPerCell->setObjectName(QString::fromUtf8("perspectiveRemoveIgnoredMarginPerCell")); - perspectiveRemoveIgnoredMarginPerCell->setMinimum(0.010000000000000); - perspectiveRemoveIgnoredMarginPerCell->setSingleStep(0.010000000000000); - perspectiveRemoveIgnoredMarginPerCell->setValue(0.130000000000000); - - gridLayout_3->addWidget(perspectiveRemoveIgnoredMarginPerCell, 1, 1, 1, 1); - - - gridLayout->addWidget(groupBox_2, 10, 0, 1, 2); - - doCornerRefinement = new QGroupBox(groupBox); - doCornerRefinement->setObjectName(QString::fromUtf8("doCornerRefinement")); - doCornerRefinement->setCheckable(true); - doCornerRefinement->setChecked(false); - gridLayout_2 = new QGridLayout(doCornerRefinement); - gridLayout_2->setObjectName(QString::fromUtf8("gridLayout_2")); - cornerRefinementWinSize = new QSpinBox(doCornerRefinement); - cornerRefinementWinSize->setObjectName(QString::fromUtf8("cornerRefinementWinSize")); - cornerRefinementWinSize->setMinimum(1); - cornerRefinementWinSize->setValue(5); - - gridLayout_2->addWidget(cornerRefinementWinSize, 0, 2, 1, 1); - - label_11 = new QLabel(doCornerRefinement); - label_11->setObjectName(QString::fromUtf8("label_11")); - - gridLayout_2->addWidget(label_11, 1, 1, 1, 1); - - cornerRefinementMaxIterations = new QSpinBox(doCornerRefinement); - cornerRefinementMaxIterations->setObjectName(QString::fromUtf8("cornerRefinementMaxIterations")); - cornerRefinementMaxIterations->setMinimum(1); - cornerRefinementMaxIterations->setValue(30); - - gridLayout_2->addWidget(cornerRefinementMaxIterations, 1, 2, 1, 1); - - label_12 = new QLabel(doCornerRefinement); - label_12->setObjectName(QString::fromUtf8("label_12")); - - gridLayout_2->addWidget(label_12, 2, 1, 1, 1); - - cornerRefinementMinAccuracy = new QDoubleSpinBox(doCornerRefinement); - cornerRefinementMinAccuracy->setObjectName(QString::fromUtf8("cornerRefinementMinAccuracy")); - cornerRefinementMinAccuracy->setMinimum(0.010000000000000); - cornerRefinementMinAccuracy->setSingleStep(0.100000000000000); - cornerRefinementMinAccuracy->setValue(0.100000000000000); - - gridLayout_2->addWidget(cornerRefinementMinAccuracy, 2, 2, 1, 1); - - label_10 = new QLabel(doCornerRefinement); - label_10->setObjectName(QString::fromUtf8("label_10")); - label_10->setLayoutDirection(Qt::LeftToRight); - - gridLayout_2->addWidget(label_10, 0, 1, 1, 1); - - - gridLayout->addWidget(doCornerRefinement, 8, 0, 1, 2); - - moreInfosButton = new QPushButton(groupBox); - moreInfosButton->setObjectName(QString::fromUtf8("moreInfosButton")); - - gridLayout->addWidget(moreInfosButton, 15, 1, 1, 1); - - - verticalLayout_2->addWidget(groupBox); - - - retranslateUi(CodeMarker); - - QMetaObject::connectSlotsByName(CodeMarker); - } // setupUi - - void retranslateUi(QWidget *CodeMarker) - { - label_6->setText(QCoreApplication::translate("CodeMarker", "dictionary: ", nullptr)); - showDetectedCandidates->setText(QCoreApplication::translate("CodeMarker", "show detected candidates", nullptr)); - groupBox->setTitle(QCoreApplication::translate("CodeMarker", "detection parameters", nullptr)); - maxMarkerPerimeter->setPrefix(QCoreApplication::translate("CodeMarker", "max: ", nullptr)); - maxMarkerPerimeter->setSuffix(QCoreApplication::translate("CodeMarker", " cm", nullptr)); - minMarkerPerimeter->setPrefix(QCoreApplication::translate("CodeMarker", "min: ", nullptr)); - minMarkerPerimeter->setSuffix(QCoreApplication::translate("CodeMarker", " cm", nullptr)); - adaptiveThreshWinSizeMax->setSuffix(QCoreApplication::translate("CodeMarker", " px", nullptr)); - adaptiveThreshWinSizeMax->setPrefix(QCoreApplication::translate("CodeMarker", "max: ", nullptr)); - label->setText(QCoreApplication::translate("CodeMarker", "marker border size", nullptr)); - adaptiveThreshConstant->setPrefix(QCoreApplication::translate("CodeMarker", "constant: ", nullptr)); - markerBorderBits->setSuffix(QCoreApplication::translate("CodeMarker", " px", nullptr)); - label_2->setText(QCoreApplication::translate("CodeMarker", "adaptive thresholding window:", nullptr)); - adaptiveThreshWinSizeStep->setPrefix(QCoreApplication::translate("CodeMarker", "step: ", nullptr)); - label_4->setText(QCoreApplication::translate("CodeMarker", "max ratio error:", nullptr)); - maxErroneousBitsInBorderRate->setPrefix(QCoreApplication::translate("CodeMarker", "max: ", nullptr)); - label_3->setText(QCoreApplication::translate("CodeMarker", "marker perimeter:", nullptr)); - minCornerDistance->setPrefix(QCoreApplication::translate("CodeMarker", "min: ", nullptr)); - minCornerDistance->setSuffix(QString()); - adaptiveThreshWinSizeMin->setSuffix(QCoreApplication::translate("CodeMarker", " px", nullptr)); - adaptiveThreshWinSizeMin->setPrefix(QCoreApplication::translate("CodeMarker", "min: ", nullptr)); - label_9->setText(QCoreApplication::translate("CodeMarker", "marker distance:", nullptr)); - minDistanceToBorder->setSuffix(QCoreApplication::translate("CodeMarker", " px", nullptr)); - minDistanceToBorder->setPrefix(QCoreApplication::translate("CodeMarker", "min: ", nullptr)); - label_7->setText(QCoreApplication::translate("CodeMarker", "corner distance:", nullptr)); - label_15->setText(QCoreApplication::translate("CodeMarker", "error bits in border rate:", nullptr)); - label_17->setText(QCoreApplication::translate("CodeMarker", "error correction rate:", nullptr)); - label_8->setText(QCoreApplication::translate("CodeMarker", "distance to border:", nullptr)); - minMarkerDistance->setPrefix(QCoreApplication::translate("CodeMarker", "min: ", nullptr)); - minMarkerDistance->setSuffix(QString()); - label_16->setText(QCoreApplication::translate("CodeMarker", "otsu std. dev.: ", nullptr)); - minOtsuStdDev->setPrefix(QCoreApplication::translate("CodeMarker", "min: ", nullptr)); - groupBox_2->setTitle(QCoreApplication::translate("CodeMarker", "perspective remove", nullptr)); - perspectiveRemovePixelPerCell->setSuffix(QCoreApplication::translate("CodeMarker", " px", nullptr)); - perspectiveRemovePixelPerCell->setPrefix(QString()); - label_13->setText(QCoreApplication::translate("CodeMarker", "per cell:", nullptr)); - label_14->setText(QCoreApplication::translate("CodeMarker", "ignored margin per cell:", nullptr)); - doCornerRefinement->setTitle(QCoreApplication::translate("CodeMarker", "use subpixel refinement", nullptr)); - cornerRefinementWinSize->setSuffix(QCoreApplication::translate("CodeMarker", " px", nullptr)); - label_11->setText(QCoreApplication::translate("CodeMarker", "max iterations:", nullptr)); - label_12->setText(QCoreApplication::translate("CodeMarker", "min accuracy:", nullptr)); - label_10->setText(QCoreApplication::translate("CodeMarker", "win size:", nullptr)); - moreInfosButton->setText(QCoreApplication::translate("CodeMarker", "More infos...", nullptr)); - (void)CodeMarker; - } // retranslateUi - -}; - -namespace Ui { - class CodeMarker: public Ui_CodeMarker {}; -} // namespace Ui - -QT_END_NAMESPACE - -#endif // UI_CODEMARKER_H diff --git a/ui/ui_colorMarker.h b/ui/ui_colorMarker.h deleted file mode 100644 index 25b49f48f0cb8202e6b7d7156ffa4d42e3515369..0000000000000000000000000000000000000000 --- a/ui/ui_colorMarker.h +++ /dev/null @@ -1,242 +0,0 @@ -/******************************************************************************** -** Form generated from reading UI file 'colorMarker.ui' -** -** Created by: Qt User Interface Compiler version 5.14.1 -** -** WARNING! All changes made in this file will be lost when recompiling UI file! -********************************************************************************/ - -#ifndef UI_COLORMARKER_H -#define UI_COLORMARKER_H - -#include <QtCore/QVariant> -#include <QtWidgets/QApplication> -#include <QtWidgets/QCheckBox> -#include <QtWidgets/QDoubleSpinBox> -#include <QtWidgets/QGridLayout> -#include <QtWidgets/QGroupBox> -#include <QtWidgets/QHBoxLayout> -#include <QtWidgets/QLabel> -#include <QtWidgets/QPushButton> -#include <QtWidgets/QSpinBox> -#include <QtWidgets/QVBoxLayout> -#include <QtWidgets/QWidget> -#include "qtColorTriangle.h" - -QT_BEGIN_NAMESPACE - -class Ui_ColorMarker -{ -public: - QVBoxLayout *verticalLayout; - QGroupBox *groupBox; - QGridLayout *gridLayout_2; - QPushButton *fromColor; - QPushButton *toColor; - QtColorTriangle *fromTriangle; - QtColorTriangle *toTriangle; - QCheckBox *inversHue; - QHBoxLayout *horizontalLayout_2; - QCheckBox *showMask; - QGridLayout *gridLayout; - QLabel *label; - QSpinBox *closeRadius; - QLabel *label_2; - QSpinBox *openRadius; - QCheckBox *useOpen; - QLabel *label_3; - QSpinBox *minArea; - QLabel *label_4; - QLabel *label_5; - QSpinBox *opacity; - QCheckBox *maskMask; - QDoubleSpinBox *maxRatio; - QCheckBox *useClose; - QSpinBox *maxArea; - - void setupUi(QWidget *ColorMarker) - { - if (ColorMarker->objectName().isEmpty()) - ColorMarker->setObjectName(QString::fromUtf8("ColorMarker")); - ColorMarker->resize(267, 287); - verticalLayout = new QVBoxLayout(ColorMarker); - verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); - groupBox = new QGroupBox(ColorMarker); - groupBox->setObjectName(QString::fromUtf8("groupBox")); - gridLayout_2 = new QGridLayout(groupBox); - gridLayout_2->setObjectName(QString::fromUtf8("gridLayout_2")); - fromColor = new QPushButton(groupBox); - fromColor->setObjectName(QString::fromUtf8("fromColor")); - - gridLayout_2->addWidget(fromColor, 0, 0, 1, 1); - - toColor = new QPushButton(groupBox); - toColor->setObjectName(QString::fromUtf8("toColor")); - - gridLayout_2->addWidget(toColor, 0, 1, 1, 1); - - fromTriangle = new QtColorTriangle(groupBox); - fromTriangle->setObjectName(QString::fromUtf8("fromTriangle")); - - gridLayout_2->addWidget(fromTriangle, 1, 0, 1, 1); - - toTriangle = new QtColorTriangle(groupBox); - toTriangle->setObjectName(QString::fromUtf8("toTriangle")); - - gridLayout_2->addWidget(toTriangle, 1, 1, 1, 1); - - inversHue = new QCheckBox(groupBox); - inversHue->setObjectName(QString::fromUtf8("inversHue")); - - gridLayout_2->addWidget(inversHue, 2, 0, 1, 1); - - - verticalLayout->addWidget(groupBox); - - horizontalLayout_2 = new QHBoxLayout(); - horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2")); - showMask = new QCheckBox(ColorMarker); - showMask->setObjectName(QString::fromUtf8("showMask")); - - horizontalLayout_2->addWidget(showMask); - - - verticalLayout->addLayout(horizontalLayout_2); - - gridLayout = new QGridLayout(); - gridLayout->setObjectName(QString::fromUtf8("gridLayout")); - label = new QLabel(ColorMarker); - label->setObjectName(QString::fromUtf8("label")); - - gridLayout->addWidget(label, 1, 0, 1, 1); - - closeRadius = new QSpinBox(ColorMarker); - closeRadius->setObjectName(QString::fromUtf8("closeRadius")); - closeRadius->setKeyboardTracking(false); - closeRadius->setMinimum(0); - closeRadius->setMaximum(99); - closeRadius->setSingleStep(1); - closeRadius->setValue(5); - - gridLayout->addWidget(closeRadius, 1, 1, 1, 1); - - label_2 = new QLabel(ColorMarker); - label_2->setObjectName(QString::fromUtf8("label_2")); - - gridLayout->addWidget(label_2, 2, 0, 1, 1); - - openRadius = new QSpinBox(ColorMarker); - openRadius->setObjectName(QString::fromUtf8("openRadius")); - openRadius->setKeyboardTracking(false); - openRadius->setMinimum(0); - openRadius->setMaximum(99); - openRadius->setSingleStep(1); - openRadius->setValue(5); - - gridLayout->addWidget(openRadius, 2, 1, 1, 1); - - useOpen = new QCheckBox(ColorMarker); - useOpen->setObjectName(QString::fromUtf8("useOpen")); - useOpen->setChecked(true); - - gridLayout->addWidget(useOpen, 2, 2, 1, 1); - - label_3 = new QLabel(ColorMarker); - label_3->setObjectName(QString::fromUtf8("label_3")); - - gridLayout->addWidget(label_3, 3, 0, 1, 1); - - minArea = new QSpinBox(ColorMarker); - minArea->setObjectName(QString::fromUtf8("minArea")); - minArea->setKeyboardTracking(false); - minArea->setMinimum(1); - minArea->setMaximum(100000); - minArea->setSingleStep(100); - minArea->setValue(1000); - - gridLayout->addWidget(minArea, 3, 1, 1, 1); - - label_4 = new QLabel(ColorMarker); - label_4->setObjectName(QString::fromUtf8("label_4")); - - gridLayout->addWidget(label_4, 4, 0, 1, 1); - - label_5 = new QLabel(ColorMarker); - label_5->setObjectName(QString::fromUtf8("label_5")); - - gridLayout->addWidget(label_5, 8, 0, 1, 1); - - opacity = new QSpinBox(ColorMarker); - opacity->setObjectName(QString::fromUtf8("opacity")); - opacity->setMaximum(100); - opacity->setValue(100); - - gridLayout->addWidget(opacity, 8, 1, 1, 1); - - maskMask = new QCheckBox(ColorMarker); - maskMask->setObjectName(QString::fromUtf8("maskMask")); - maskMask->setChecked(true); - - gridLayout->addWidget(maskMask, 8, 2, 1, 1); - - maxRatio = new QDoubleSpinBox(ColorMarker); - maxRatio->setObjectName(QString::fromUtf8("maxRatio")); - maxRatio->setMinimum(1.000000000000000); - maxRatio->setValue(2.000000000000000); - - gridLayout->addWidget(maxRatio, 4, 1, 1, 1); - - useClose = new QCheckBox(ColorMarker); - useClose->setObjectName(QString::fromUtf8("useClose")); - useClose->setChecked(true); - - gridLayout->addWidget(useClose, 1, 2, 1, 1); - - maxArea = new QSpinBox(ColorMarker); - maxArea->setObjectName(QString::fromUtf8("maxArea")); - maxArea->setMinimum(1); - maxArea->setMaximum(100000); - maxArea->setSingleStep(100); - maxArea->setValue(5000); - - gridLayout->addWidget(maxArea, 3, 2, 1, 1); - - - verticalLayout->addLayout(gridLayout); - - - retranslateUi(ColorMarker); - - QMetaObject::connectSlotsByName(ColorMarker); - } // setupUi - - void retranslateUi(QWidget *ColorMarker) - { - groupBox->setTitle(QCoreApplication::translate("ColorMarker", "HSV color range", nullptr)); - fromColor->setText(QCoreApplication::translate("ColorMarker", "from", nullptr)); - toColor->setText(QCoreApplication::translate("ColorMarker", "to", nullptr)); - inversHue->setText(QCoreApplication::translate("ColorMarker", "invers hue", nullptr)); -#if QT_CONFIG(tooltip) - showMask->setToolTip(QCoreApplication::translate("ColorMarker", "show mask in main window", nullptr)); -#endif // QT_CONFIG(tooltip) - showMask->setText(QCoreApplication::translate("ColorMarker", "show mask", nullptr)); - label->setText(QCoreApplication::translate("ColorMarker", "close radius", nullptr)); - label_2->setText(QCoreApplication::translate("ColorMarker", "open radius", nullptr)); - useOpen->setText(QCoreApplication::translate("ColorMarker", "use", nullptr)); - label_3->setText(QCoreApplication::translate("ColorMarker", "area", nullptr)); - label_4->setText(QCoreApplication::translate("ColorMarker", "max ratio", nullptr)); - label_5->setText(QCoreApplication::translate("ColorMarker", "opacity", nullptr)); - maskMask->setText(QCoreApplication::translate("ColorMarker", "mask", nullptr)); - useClose->setText(QCoreApplication::translate("ColorMarker", "use", nullptr)); - (void)ColorMarker; - } // retranslateUi - -}; - -namespace Ui { - class ColorMarker: public Ui_ColorMarker {}; -} // namespace Ui - -QT_END_NAMESPACE - -#endif // UI_COLORMARKER_H diff --git a/ui/ui_colorRange.h b/ui/ui_colorRange.h deleted file mode 100644 index cf80e82038503f9717377b231627a2ae543b63cf..0000000000000000000000000000000000000000 --- a/ui/ui_colorRange.h +++ /dev/null @@ -1,98 +0,0 @@ -/******************************************************************************** -** Form generated from reading UI file 'colorRange.ui' -** -** Created by: Qt User Interface Compiler version 5.14.1 -** -** WARNING! All changes made in this file will be lost when recompiling UI file! -********************************************************************************/ - -#ifndef UI_COLORRANGE_H -#define UI_COLORRANGE_H - -#include <QtCore/QVariant> -#include <QtWidgets/QApplication> -#include <QtWidgets/QCheckBox> -#include <QtWidgets/QGridLayout> -#include <QtWidgets/QGroupBox> -#include <QtWidgets/QPushButton> -#include <QtWidgets/QVBoxLayout> -#include <QtWidgets/QWidget> -#include "qtColorTriangle.h" - -QT_BEGIN_NAMESPACE - -class Ui_ColorRange -{ -public: - QVBoxLayout *verticalLayout; - QGroupBox *groupBox; - QGridLayout *gridLayout_2; - QPushButton *fromColor; - QPushButton *toColor; - QtColorTriangle *fromTriangle; - QtColorTriangle *toTriangle; - QCheckBox *inversHue; - - void setupUi(QWidget *ColorRange) - { - if (ColorRange->objectName().isEmpty()) - ColorRange->setObjectName(QString::fromUtf8("ColorRange")); - ColorRange->resize(267, 287); - verticalLayout = new QVBoxLayout(ColorRange); - verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); - groupBox = new QGroupBox(ColorRange); - groupBox->setObjectName(QString::fromUtf8("groupBox")); - gridLayout_2 = new QGridLayout(groupBox); - gridLayout_2->setObjectName(QString::fromUtf8("gridLayout_2")); - fromColor = new QPushButton(groupBox); - fromColor->setObjectName(QString::fromUtf8("fromColor")); - - gridLayout_2->addWidget(fromColor, 0, 0, 1, 1); - - toColor = new QPushButton(groupBox); - toColor->setObjectName(QString::fromUtf8("toColor")); - - gridLayout_2->addWidget(toColor, 0, 1, 1, 1); - - fromTriangle = new QtColorTriangle(groupBox); - fromTriangle->setObjectName(QString::fromUtf8("fromTriangle")); - - gridLayout_2->addWidget(fromTriangle, 1, 0, 1, 1); - - toTriangle = new QtColorTriangle(groupBox); - toTriangle->setObjectName(QString::fromUtf8("toTriangle")); - - gridLayout_2->addWidget(toTriangle, 1, 1, 1, 1); - - inversHue = new QCheckBox(groupBox); - inversHue->setObjectName(QString::fromUtf8("inversHue")); - - gridLayout_2->addWidget(inversHue, 2, 0, 1, 1); - - - verticalLayout->addWidget(groupBox); - - - retranslateUi(ColorRange); - - QMetaObject::connectSlotsByName(ColorRange); - } // setupUi - - void retranslateUi(QWidget *ColorRange) - { - groupBox->setTitle(QCoreApplication::translate("ColorRange", "HSV color range", nullptr)); - fromColor->setText(QCoreApplication::translate("ColorRange", "from", nullptr)); - toColor->setText(QCoreApplication::translate("ColorRange", "to", nullptr)); - inversHue->setText(QCoreApplication::translate("ColorRange", "invers hue", nullptr)); - (void)ColorRange; - } // retranslateUi - -}; - -namespace Ui { - class ColorRange: public Ui_ColorRange {}; -} // namespace Ui - -QT_END_NAMESPACE - -#endif // UI_COLORRANGE_H diff --git a/ui/ui_control.h b/ui/ui_control.h deleted file mode 100644 index 400dcdb548001cfe8ee583e6d0274a80a9237825..0000000000000000000000000000000000000000 --- a/ui/ui_control.h +++ /dev/null @@ -1,4071 +0,0 @@ -/******************************************************************************** -** Form generated from reading UI file 'control.ui' -** -** Created by: Qt User Interface Compiler version 5.14.1 -** -** WARNING! All changes made in this file will be lost when recompiling UI file! -********************************************************************************/ - -#ifndef UI_CONTROL_H -#define UI_CONTROL_H - -#include <QtCore/QVariant> -#include <QtWidgets/QApplication> -#include <QtWidgets/QCheckBox> -#include <QtWidgets/QComboBox> -#include <QtWidgets/QDoubleSpinBox> -#include <QtWidgets/QGridLayout> -#include <QtWidgets/QGroupBox> -#include <QtWidgets/QHBoxLayout> -#include <QtWidgets/QLabel> -#include <QtWidgets/QLineEdit> -#include <QtWidgets/QPushButton> -#include <QtWidgets/QScrollArea> -#include <QtWidgets/QScrollBar> -#include <QtWidgets/QSpacerItem> -#include <QtWidgets/QSpinBox> -#include <QtWidgets/QTabWidget> -#include <QtWidgets/QVBoxLayout> -#include <QtWidgets/QWidget> -#include "analysePlot.h" -#include "colorPlot.h" - -QT_BEGIN_NAMESPACE - -class Ui_Control -{ -public: - QHBoxLayout *horizontalLayout_19; - QTabWidget *tabs; - QWidget *calib; - QHBoxLayout *horizontalLayout_11; - QScrollArea *scrollArea; - QWidget *scrollAreaWidgetContents; - QVBoxLayout *verticalLayout_13; - QGroupBox *groupBox; - QGridLayout *gridLayout; - QHBoxLayout *horizontalLayout_8; - QScrollBar *filterBorderParamSize; - QPushButton *filterBorderParamCol; - QVBoxLayout *verticalLayout_8; - QHBoxLayout *horizontalLayout_15; - QCheckBox *filterBgShow; - QCheckBox *filterBgUpdate; - QSpacerItem *horizontalSpacer_11; - QHBoxLayout *horizontalLayout_13; - QPushButton *filterBgReset; - QPushButton *filterBgLoad; - QPushButton *filterBgSave; - QSpacerItem *horizontalSpacer_7; - QHBoxLayout *horizontalLayout_14; - QCheckBox *filterBgDeleteTrj; - QLabel *label_63; - QSpinBox *filterBgDeleteNumber; - QSpacerItem *horizontalSpacer_12; - QHBoxLayout *horizontalLayout_3; - QCheckBox *filterSwapH; - QCheckBox *filterSwapV; - QSpacerItem *horizontalSpacer_13; - QCheckBox *filterSwap; - QCheckBox *filterBorder; - QScrollBar *filterContrastParam; - QCheckBox *filterBrightContrast; - QScrollBar *filterBrightParam; - QCheckBox *filterBg; - QLabel *label_18; - QGroupBox *intr; - QVBoxLayout *verticalLayout_12; - QCheckBox *apply; - QGridLayout *gridLayout1; - QDoubleSpinBox *fx; - QDoubleSpinBox *ty; - QDoubleSpinBox *r2; - QLabel *label_7; - QDoubleSpinBox *tx; - QLabel *label_3; - QLabel *label_6; - QLabel *label_8; - QDoubleSpinBox *r4; - QDoubleSpinBox *cx; - QLabel *label; - QLabel *label_4; - QDoubleSpinBox *cy; - QDoubleSpinBox *fy; - QLabel *label_2; - QLabel *label_5; - QDoubleSpinBox *r6; - QLabel *label_64; - QGridLayout *gridLayout2; - QCheckBox *fixCenter; - QCheckBox *quadAspectRatio; - QCheckBox *tangDist; - QGridLayout *gridLayout3; - QPushButton *autoCalib; - QPushButton *calibFiles; - QGroupBox *extr; - QVBoxLayout *verticalLayout_7; - QGridLayout *gridLayout_6; - QLabel *label_58; - QLabel *label_59; - QDoubleSpinBox *trans1; - QDoubleSpinBox *rot1; - QDoubleSpinBox *trans2; - QDoubleSpinBox *trans3; - QDoubleSpinBox *rot3; - QDoubleSpinBox *rot2; - QHBoxLayout *horizontalLayout_10; - QLabel *label_62; - QPushButton *coordLoad3DCalibPoints; - QPushButton *extrCalibFetch; - QPushButton *extrCalibSave; - QPushButton *extrCalibShowPoints; - QPushButton *extrCalibShowError; - QGroupBox *align_2; - QVBoxLayout *verticalLayout_14; - QGridLayout *gridLayout_7; - QCheckBox *coordShow; - QCheckBox *coordFix; - QSpacerItem *horizontalSpacer_9; - QTabWidget *coordTab; - QWidget *coordTab3D; - QVBoxLayout *verticalLayout_5; - QGridLayout *gridLayout_5; - QLabel *label_54; - QScrollBar *coord3DTransX; - QSpinBox *coord3DTransX_spin; - QLabel *label_55; - QScrollBar *coord3DTransY; - QSpinBox *coord3DTransY_spin; - QLabel *label_57; - QScrollBar *coord3DTransZ; - QSpinBox *coord3DTransZ_spin; - QLabel *label_56; - QScrollBar *coord3DAxeLen; - QSpinBox *coord3DAxeLen_spin; - QHBoxLayout *horizontalLayout_6; - QLabel *label_60; - QCheckBox *coord3DSwapX; - QCheckBox *coord3DSwapY; - QCheckBox *coord3DSwapZ; - QSpacerItem *horizontalSpacer_5; - QHBoxLayout *horizontalLayout_7; - QLabel *label_61; - QCheckBox *extCalibPointsShow; - QCheckBox *extVanishPointsShow; - QSpacerItem *horizontalSpacer_6; - QSpacerItem *verticalSpacer_2; - QWidget *coordTab2D; - QVBoxLayout *verticalLayout_4; - QGridLayout *gridLayout4; - QSpinBox *coordTransX_spin; - QLabel *label_34; - QScrollBar *coordTransX; - QLabel *label_32; - QScrollBar *coordTransY; - QLabel *label_33; - QScrollBar *coordScale; - QSpinBox *coordTransY_spin; - QSpinBox *coordScale_spin; - QLabel *label_35; - QScrollBar *coordRotate; - QSpinBox *coordRotate_spin; - QGridLayout *gridLayout5; - QLabel *label_14; - QDoubleSpinBox *coordAltitude; - QLabel *coordAltitudeMeasured; - QSpacerItem *horizontalSpacer_8; - QGridLayout *gridLayout6; - QLabel *label_37; - QDoubleSpinBox *coordUnit; - QSpacerItem *spacerItem; - QCheckBox *coordUseIntrinsic; - QGroupBox *align; - QVBoxLayout *verticalLayout_15; - QHBoxLayout *horizontalLayout_12; - QCheckBox *gridShow; - QCheckBox *gridFix; - QSpacerItem *horizontalSpacer_10; - QTabWidget *gridTab; - QWidget *gridTab3D; - QVBoxLayout *verticalLayout_11; - QGridLayout *gridLayout_3; - QLabel *label_15; - QScrollBar *grid3DTransX; - QSpinBox *grid3DTransX_spin; - QLabel *label_49; - QScrollBar *grid3DTransY; - QSpinBox *grid3DTransY_spin; - QLabel *label_50; - QScrollBar *grid3DTransZ; - QSpinBox *grid3DTransZ_spin; - QLabel *label_51; - QScrollBar *grid3DResolution; - QSpinBox *grid3DResolution_spin; - QWidget *gridTab2D; - QVBoxLayout *verticalLayout_10; - QGridLayout *gridLayout_100; - QLabel *label_10; - QScrollBar *gridTransX; - QSpinBox *gridTransX_spin; - QLabel *label_11; - QScrollBar *gridTransY; - QSpinBox *gridTransY_spin; - QLabel *label_9; - QScrollBar *gridRotate; - QSpinBox *gridRot_spin; - QLabel *label_12; - QScrollBar *gridScale; - QSpinBox *gridScale_spin; - QWidget *rec; - QHBoxLayout *horizontalLayout_16; - QScrollArea *scrollArea_2; - QWidget *scrollAreaWidgetContents_2; - QVBoxLayout *verticalLayout_16; - QVBoxLayout *verticalLayout_2; - QHBoxLayout *hboxLayout; - QCheckBox *performRecognition; - QGridLayout *gridLayout7; - QSpinBox *recoStep; - QLabel *label_27; - QSpacerItem *spacerItem1; - QSpacerItem *horizontalSpacer_3; - QGridLayout *gridLayout_2; - QLabel *label_26; - QLabel *recoNumberNow; - QSpacerItem *horizontalSpacer_2; - QHBoxLayout *horizontalLayout_4; - QComboBox *recoMethod; - QPushButton *recoStereoShow; - QGroupBox *groupBox_2; - QCheckBox *roiShow; - QCheckBox *roiFix; - QGroupBox *groupBox_5; - QVBoxLayout *verticalLayout_19; - QVBoxLayout *vboxLayout; - QHBoxLayout *hboxLayout1; - QLabel *label_19; - QScrollBar *markerBrightness; - QCheckBox *markerIgnoreWithout; - QGroupBox *colorBox; - QVBoxLayout *verticalLayout_9; - QVBoxLayout *verticalLayout_3; - QHBoxLayout *horizontalLayout_2; - QCheckBox *recoShowColor; - QPushButton *recoOptimizeColor; - QSpacerItem *horizontalSpacer_4; - QHBoxLayout *hboxLayout2; - QLabel *label_28; - QComboBox *recoColorModel; - QCheckBox *recoAutoWB; - QSpacerItem *spacerItem2; - QHBoxLayout *hboxLayout3; - QLabel *label_29; - QComboBox *recoColorX; - QLabel *label_30; - QComboBox *recoColorY; - QLabel *label_31; - QScrollBar *recoColorZ; - QHBoxLayout *hboxLayout4; - QLabel *label_38; - QScrollBar *recoGreyLevel; - QLabel *label_39; - QScrollBar *recoSymbolSize; - ColorPlot *colorPlot; - QGroupBox *groupBox_4; - QWidget *layoutWidget11; - QVBoxLayout *vboxLayout1; - QGridLayout *gridLayout8; - QLabel *label_44; - QLabel *label_40; - QScrollBar *mapX; - QScrollBar *mapH; - QScrollBar *mapW; - QScrollBar *mapY; - QLabel *label_43; - QLabel *label_42; - QSpinBox *mapNr; - QCheckBox *mapColor; - QHBoxLayout *hboxLayout5; - QLabel *label_45; - QDoubleSpinBox *mapHeight; - QPushButton *mapAdd; - QPushButton *mapDel; - QPushButton *mapColorRange; - QHBoxLayout *hboxLayout6; - QLabel *label_46; - QDoubleSpinBox *mapDefaultHeight; - QPushButton *mapDistribution; - QPushButton *mapResetHeight; - QPushButton *mapResetPos; - QSpacerItem *verticalSpacer_3; - QWidget *track; - QHBoxLayout *horizontalLayout_17; - QScrollArea *scrollArea_3; - QWidget *scrollAreaWidgetContents_3; - QVBoxLayout *verticalLayout_17; - QHBoxLayout *hboxLayout7; - QCheckBox *trackOnlineCalc; - QCheckBox *trackRepeat; - QSpinBox *trackRepeatQual; - QSpacerItem *spacerItem3; - QHBoxLayout *horizontalLayout_5; - QCheckBox *trackExtrapolation; - QCheckBox *trackMerge; - QCheckBox *trackOnlyVisible; - QSpacerItem *horizontalSpacer_15; - QGridLayout *gridLayout9; - QLabel *trackNumberNow; - QLabel *label_22; - QLabel *label_23; - QLabel *trackNumberAll; - QSpacerItem *spacerItem4; - QLabel *label_65; - QLabel *trackNumberVisible; - QGridLayout *gridLayout10; - QPushButton *trackExport; - QPushButton *trackCalc; - QPushButton *trackImport; - QPushButton *trackReset; - QGroupBox *groupBox_8; - QCheckBox *trackRoiShow; - QCheckBox *trackRoiFix; - QGroupBox *groupBox_7; - QVBoxLayout *verticalLayout_6; - QGridLayout *gridLayout_4; - QCheckBox *trackMissingFrames; - QCheckBox *trackRecalcHeight; - QCheckBox *trackAlternateHeight; - QCheckBox *exportElimTp; - QCheckBox *exportElimTrj; - QCheckBox *exportSmooth; - QCheckBox *exportViewDir; - QCheckBox *exportAngleOfView; - QCheckBox *exportUseM; - QCheckBox *exportComment; - QCheckBox *exportMarkerID; - QHBoxLayout *horizontalLayout_9; - QPushButton *trackTest; - QCheckBox *testEqual; - QCheckBox *testVelocity; - QCheckBox *testInside; - QCheckBox *testLength; - QSpacerItem *horizontalSpacer_14; - QGroupBox *groupBox_6; - QVBoxLayout *verticalLayout_20; - QVBoxLayout *verticalLayout; - QGridLayout *gridLayout_17; - QLabel *label_52; - QScrollBar *trackRegionScale; - QLabel *label_53; - QScrollBar *trackRegionLevels; - QScrollBar *trackErrorExponent; - QLabel *label_66; - QCheckBox *trackShowSearchSize; - QGroupBox *groupBox_3; - QVBoxLayout *verticalLayout_21; - QVBoxLayout *vboxLayout2; - QHBoxLayout *hboxLayout8; - QCheckBox *trackShow; - QCheckBox *trackFix; - QSpacerItem *spacerItem5; - QCheckBox *trackShowOnlyVisible; - QHBoxLayout *horizontalLayout; - QCheckBox *trackShowOnly; - QSpinBox *trackShowOnlyNr; - QPushButton *trackGotoNr; - QPushButton *trackGotoStartNr; - QPushButton *trackGotoEndNr; - QSpacerItem *horizontalSpacer; - QHBoxLayout *horizontalLayout_20; - QCheckBox *trackShowOnlyList; - QLineEdit *trackShowOnlyNrList; - QPushButton *trackShowOnlyListButton; - QSpacerItem *spacerItem6; - QGridLayout *gridLayout11; - QCheckBox *trackShowPath; - QSpinBox *trackCurrentPointSize; - QSpinBox *trackColColorSize; - QCheckBox *trackShowCurrentPoint; - QLabel *label_25; - QLabel *label_36; - QCheckBox *trackShowColColor; - QCheckBox *trackShowColorMarker; - QCheckBox *trackShowNumber; - QLabel *label_48; - QSpinBox *trackNumberSize; - QCheckBox *trackNumberBold; - QCheckBox *trackHeadSized; - QCheckBox *trackShowHeightIndividual; - QPushButton *trackPathColorButton; - QSpinBox *trackPathWidth; - QCheckBox *trackShowPoints; - QCheckBox *trackShowPointsColored; - QLabel *label_13; - QLabel *label_41; - QSpinBox *trackColorMarkerSize; - QSpinBox *trackPointSize; - QLabel *label_47; - QCheckBox *trackShowGroundPosition; - QLabel *label_67; - QSpinBox *trackGroundPositionSize; - QCheckBox *trackShowGroundPath; - QLabel *label_68; - QSpinBox *trackGroundPathSize; - QPushButton *trackGroundPathColorButton; - QSpacerItem *spacerItem7; - QGridLayout *gridLayout12; - QLabel *label_17; - QSpinBox *trackShowAfter; - QLabel *label_20; - QSpinBox *trackShowBefore; - QSpacerItem *spacerItem8; - QSpacerItem *verticalSpacer_4; - QWidget *ana; - QHBoxLayout *horizontalLayout_18; - QScrollArea *scrollArea_4; - QWidget *scrollAreaWidgetContents_4; - QVBoxLayout *verticalLayout_18; - AnalysePlot *analysePlot; - QHBoxLayout *hboxLayout9; - QPushButton *anaCalculate; - QCheckBox *anaMissingFrames; - QHBoxLayout *hboxLayout10; - QHBoxLayout *hboxLayout11; - QLabel *label_21; - QSpinBox *anaStep; - QSpacerItem *spacerItem9; - QCheckBox *anaMarkAct; - QHBoxLayout *hboxLayout12; - QLabel *label_16; - QCheckBox *anaConsiderX; - QCheckBox *anaConsiderY; - QCheckBox *anaConsiderAbs; - QCheckBox *anaConsiderRev; - QCheckBox *showVoronoiCells; - QSpacerItem *verticalSpacer; - - void setupUi(QWidget *Control) - { - if (Control->objectName().isEmpty()) - Control->setObjectName(QString::fromUtf8("Control")); - Control->resize(380, 357); - QSizePolicy sizePolicy(QSizePolicy::Fixed, QSizePolicy::Expanding); - sizePolicy.setHorizontalStretch(1); - sizePolicy.setVerticalStretch(1); - sizePolicy.setHeightForWidth(Control->sizePolicy().hasHeightForWidth()); - Control->setSizePolicy(sizePolicy); - Control->setMinimumSize(QSize(375, 350)); - Control->setMaximumSize(QSize(380, 16777215)); - horizontalLayout_19 = new QHBoxLayout(Control); - horizontalLayout_19->setObjectName(QString::fromUtf8("horizontalLayout_19")); - horizontalLayout_19->setContentsMargins(0, 0, 0, 0); - tabs = new QTabWidget(Control); - tabs->setObjectName(QString::fromUtf8("tabs")); - tabs->setEnabled(true); - QSizePolicy sizePolicy1(QSizePolicy::Expanding, QSizePolicy::Expanding); - sizePolicy1.setHorizontalStretch(1); - sizePolicy1.setVerticalStretch(1); - sizePolicy1.setHeightForWidth(tabs->sizePolicy().hasHeightForWidth()); - tabs->setSizePolicy(sizePolicy1); - tabs->setMinimumSize(QSize(370, 350)); - tabs->setMaximumSize(QSize(15777215, 16777215)); - tabs->setLayoutDirection(Qt::LeftToRight); - tabs->setTabsClosable(false); - tabs->setMovable(false); - calib = new QWidget(); - calib->setObjectName(QString::fromUtf8("calib")); - QSizePolicy sizePolicy2(QSizePolicy::Preferred, QSizePolicy::Expanding); - sizePolicy2.setHorizontalStretch(0); - sizePolicy2.setVerticalStretch(0); - sizePolicy2.setHeightForWidth(calib->sizePolicy().hasHeightForWidth()); - calib->setSizePolicy(sizePolicy2); - horizontalLayout_11 = new QHBoxLayout(calib); - horizontalLayout_11->setObjectName(QString::fromUtf8("horizontalLayout_11")); - scrollArea = new QScrollArea(calib); - scrollArea->setObjectName(QString::fromUtf8("scrollArea")); - scrollArea->setMaximumSize(QSize(16777215, 16777215)); - scrollArea->setAutoFillBackground(true); - scrollArea->setStyleSheet(QString::fromUtf8("")); - scrollArea->setFrameShape(QFrame::StyledPanel); - scrollArea->setLineWidth(1); - scrollArea->setSizeAdjustPolicy(QAbstractScrollArea::AdjustToContents); - scrollArea->setWidgetResizable(true); - scrollAreaWidgetContents = new QWidget(); - scrollAreaWidgetContents->setObjectName(QString::fromUtf8("scrollAreaWidgetContents")); - scrollAreaWidgetContents->setGeometry(QRect(0, 0, 337, 1028)); - verticalLayout_13 = new QVBoxLayout(scrollAreaWidgetContents); - verticalLayout_13->setObjectName(QString::fromUtf8("verticalLayout_13")); - groupBox = new QGroupBox(scrollAreaWidgetContents); - groupBox->setObjectName(QString::fromUtf8("groupBox")); - QSizePolicy sizePolicy3(QSizePolicy::Expanding, QSizePolicy::Minimum); - sizePolicy3.setHorizontalStretch(0); - sizePolicy3.setVerticalStretch(0); - sizePolicy3.setHeightForWidth(groupBox->sizePolicy().hasHeightForWidth()); - groupBox->setSizePolicy(sizePolicy3); - groupBox->setMinimumSize(QSize(300, 0)); - groupBox->setMaximumSize(QSize(16777215, 16777215)); - groupBox->setAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter); - groupBox->setFlat(false); - groupBox->setCheckable(false); - gridLayout = new QGridLayout(groupBox); - gridLayout->setSpacing(4); - gridLayout->setObjectName(QString::fromUtf8("gridLayout")); - gridLayout->setContentsMargins(5, 5, 5, 5); - horizontalLayout_8 = new QHBoxLayout(); - horizontalLayout_8->setObjectName(QString::fromUtf8("horizontalLayout_8")); - filterBorderParamSize = new QScrollBar(groupBox); - filterBorderParamSize->setObjectName(QString::fromUtf8("filterBorderParamSize")); - filterBorderParamSize->setMinimumSize(QSize(100, 0)); - filterBorderParamSize->setMaximum(500); - filterBorderParamSize->setSingleStep(1); - filterBorderParamSize->setOrientation(Qt::Horizontal); - - horizontalLayout_8->addWidget(filterBorderParamSize); - - filterBorderParamCol = new QPushButton(groupBox); - filterBorderParamCol->setObjectName(QString::fromUtf8("filterBorderParamCol")); - filterBorderParamCol->setMaximumSize(QSize(40, 18)); - - horizontalLayout_8->addWidget(filterBorderParamCol); - - - gridLayout->addLayout(horizontalLayout_8, 2, 1, 1, 1); - - verticalLayout_8 = new QVBoxLayout(); - verticalLayout_8->setObjectName(QString::fromUtf8("verticalLayout_8")); - horizontalLayout_15 = new QHBoxLayout(); - horizontalLayout_15->setObjectName(QString::fromUtf8("horizontalLayout_15")); - filterBgShow = new QCheckBox(groupBox); - filterBgShow->setObjectName(QString::fromUtf8("filterBgShow")); - - horizontalLayout_15->addWidget(filterBgShow); - - filterBgUpdate = new QCheckBox(groupBox); - filterBgUpdate->setObjectName(QString::fromUtf8("filterBgUpdate")); - - horizontalLayout_15->addWidget(filterBgUpdate); - - horizontalSpacer_11 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - horizontalLayout_15->addItem(horizontalSpacer_11); - - - verticalLayout_8->addLayout(horizontalLayout_15); - - horizontalLayout_13 = new QHBoxLayout(); - horizontalLayout_13->setSpacing(0); - horizontalLayout_13->setObjectName(QString::fromUtf8("horizontalLayout_13")); - filterBgReset = new QPushButton(groupBox); - filterBgReset->setObjectName(QString::fromUtf8("filterBgReset")); - filterBgReset->setEnabled(true); - QSizePolicy sizePolicy4(QSizePolicy::Minimum, QSizePolicy::Fixed); - sizePolicy4.setHorizontalStretch(0); - sizePolicy4.setVerticalStretch(0); - sizePolicy4.setHeightForWidth(filterBgReset->sizePolicy().hasHeightForWidth()); - filterBgReset->setSizePolicy(sizePolicy4); - filterBgReset->setMaximumSize(QSize(40, 18)); - - horizontalLayout_13->addWidget(filterBgReset); - - filterBgLoad = new QPushButton(groupBox); - filterBgLoad->setObjectName(QString::fromUtf8("filterBgLoad")); - filterBgLoad->setEnabled(true); - filterBgLoad->setMaximumSize(QSize(36, 18)); - - horizontalLayout_13->addWidget(filterBgLoad); - - filterBgSave = new QPushButton(groupBox); - filterBgSave->setObjectName(QString::fromUtf8("filterBgSave")); - filterBgSave->setEnabled(true); - filterBgSave->setMaximumSize(QSize(36, 18)); - - horizontalLayout_13->addWidget(filterBgSave); - - horizontalSpacer_7 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - horizontalLayout_13->addItem(horizontalSpacer_7); - - - verticalLayout_8->addLayout(horizontalLayout_13); - - horizontalLayout_14 = new QHBoxLayout(); - horizontalLayout_14->setObjectName(QString::fromUtf8("horizontalLayout_14")); - filterBgDeleteTrj = new QCheckBox(groupBox); - filterBgDeleteTrj->setObjectName(QString::fromUtf8("filterBgDeleteTrj")); - filterBgDeleteTrj->setChecked(true); - - horizontalLayout_14->addWidget(filterBgDeleteTrj); - - label_63 = new QLabel(groupBox); - label_63->setObjectName(QString::fromUtf8("label_63")); - sizePolicy4.setHeightForWidth(label_63->sizePolicy().hasHeightForWidth()); - label_63->setSizePolicy(sizePolicy4); - - horizontalLayout_14->addWidget(label_63); - - filterBgDeleteNumber = new QSpinBox(groupBox); - filterBgDeleteNumber->setObjectName(QString::fromUtf8("filterBgDeleteNumber")); - filterBgDeleteNumber->setMinimum(1); - filterBgDeleteNumber->setValue(3); - - horizontalLayout_14->addWidget(filterBgDeleteNumber); - - horizontalSpacer_12 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - horizontalLayout_14->addItem(horizontalSpacer_12); - - - verticalLayout_8->addLayout(horizontalLayout_14); - - - gridLayout->addLayout(verticalLayout_8, 3, 1, 1, 1); - - horizontalLayout_3 = new QHBoxLayout(); - horizontalLayout_3->setObjectName(QString::fromUtf8("horizontalLayout_3")); - filterSwapH = new QCheckBox(groupBox); - filterSwapH->setObjectName(QString::fromUtf8("filterSwapH")); - - horizontalLayout_3->addWidget(filterSwapH); - - filterSwapV = new QCheckBox(groupBox); - filterSwapV->setObjectName(QString::fromUtf8("filterSwapV")); - filterSwapV->setChecked(true); - - horizontalLayout_3->addWidget(filterSwapV); - - horizontalSpacer_13 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - horizontalLayout_3->addItem(horizontalSpacer_13); - - - gridLayout->addLayout(horizontalLayout_3, 4, 1, 1, 1); - - filterSwap = new QCheckBox(groupBox); - filterSwap->setObjectName(QString::fromUtf8("filterSwap")); - - gridLayout->addWidget(filterSwap, 4, 0, 1, 1); - - filterBorder = new QCheckBox(groupBox); - filterBorder->setObjectName(QString::fromUtf8("filterBorder")); - - gridLayout->addWidget(filterBorder, 2, 0, 1, 1); - - filterContrastParam = new QScrollBar(groupBox); - filterContrastParam->setObjectName(QString::fromUtf8("filterContrastParam")); - filterContrastParam->setMinimumSize(QSize(100, 0)); - filterContrastParam->setMinimum(-100); - filterContrastParam->setMaximum(100); - filterContrastParam->setOrientation(Qt::Horizontal); - - gridLayout->addWidget(filterContrastParam, 1, 1, 1, 1); - - filterBrightContrast = new QCheckBox(groupBox); - filterBrightContrast->setObjectName(QString::fromUtf8("filterBrightContrast")); - - gridLayout->addWidget(filterBrightContrast, 0, 0, 1, 1); - - filterBrightParam = new QScrollBar(groupBox); - filterBrightParam->setObjectName(QString::fromUtf8("filterBrightParam")); - filterBrightParam->setMinimumSize(QSize(100, 0)); - filterBrightParam->setMinimum(-100); - filterBrightParam->setMaximum(100); - filterBrightParam->setOrientation(Qt::Horizontal); - - gridLayout->addWidget(filterBrightParam, 0, 1, 1, 1); - - filterBg = new QCheckBox(groupBox); - filterBg->setObjectName(QString::fromUtf8("filterBg")); - filterBg->setChecked(false); - - gridLayout->addWidget(filterBg, 3, 0, 1, 1); - - label_18 = new QLabel(groupBox); - label_18->setObjectName(QString::fromUtf8("label_18")); - sizePolicy4.setHeightForWidth(label_18->sizePolicy().hasHeightForWidth()); - label_18->setSizePolicy(sizePolicy4); - - gridLayout->addWidget(label_18, 1, 0, 1, 1); - - gridLayout->setColumnStretch(1, 1); - - verticalLayout_13->addWidget(groupBox); - - intr = new QGroupBox(scrollAreaWidgetContents); - intr->setObjectName(QString::fromUtf8("intr")); - sizePolicy3.setHeightForWidth(intr->sizePolicy().hasHeightForWidth()); - intr->setSizePolicy(sizePolicy3); - intr->setMinimumSize(QSize(300, 0)); - intr->setMaximumSize(QSize(16777215, 16777215)); - verticalLayout_12 = new QVBoxLayout(intr); - verticalLayout_12->setObjectName(QString::fromUtf8("verticalLayout_12")); - verticalLayout_12->setContentsMargins(5, 5, 5, 5); - apply = new QCheckBox(intr); - apply->setObjectName(QString::fromUtf8("apply")); - - verticalLayout_12->addWidget(apply); - - gridLayout1 = new QGridLayout(); - gridLayout1->setSpacing(4); - gridLayout1->setObjectName(QString::fromUtf8("gridLayout1")); - gridLayout1->setContentsMargins(0, 0, 0, 0); - fx = new QDoubleSpinBox(intr); - fx->setObjectName(QString::fromUtf8("fx")); - fx->setAlignment(Qt::AlignRight); - fx->setDecimals(2); - fx->setMinimum(500.000000000000000); - fx->setMaximum(5000.000000000000000); - fx->setValue(1000.000000000000000); - - gridLayout1->addWidget(fx, 0, 1, 1, 1); - - ty = new QDoubleSpinBox(intr); - ty->setObjectName(QString::fromUtf8("ty")); - ty->setAlignment(Qt::AlignRight); - ty->setDecimals(6); - ty->setMinimum(-5.000000000000000); - ty->setMaximum(5.000000000000000); - ty->setSingleStep(0.001000000000000); - - gridLayout1->addWidget(ty, 4, 3, 1, 1); - - r2 = new QDoubleSpinBox(intr); - r2->setObjectName(QString::fromUtf8("r2")); - r2->setAlignment(Qt::AlignRight); - r2->setDecimals(6); - r2->setMinimum(-5.000000000000000); - r2->setMaximum(5.000000000000000); - r2->setSingleStep(0.010000000000000); - - gridLayout1->addWidget(r2, 2, 1, 1, 1); - - label_7 = new QLabel(intr); - label_7->setObjectName(QString::fromUtf8("label_7")); - QFont font; - font.setPointSize(8); - label_7->setFont(font); - label_7->setLayoutDirection(Qt::LeftToRight); - label_7->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout1->addWidget(label_7, 4, 0, 1, 1); - - tx = new QDoubleSpinBox(intr); - tx->setObjectName(QString::fromUtf8("tx")); - tx->setAlignment(Qt::AlignRight); - tx->setDecimals(6); - tx->setMinimum(-5.000000000000000); - tx->setMaximum(5.000000000000000); - tx->setSingleStep(0.001000000000000); - - gridLayout1->addWidget(tx, 4, 1, 1, 1); - - label_3 = new QLabel(intr); - label_3->setObjectName(QString::fromUtf8("label_3")); - label_3->setLayoutDirection(Qt::LeftToRight); - label_3->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout1->addWidget(label_3, 1, 0, 1, 1); - - label_6 = new QLabel(intr); - label_6->setObjectName(QString::fromUtf8("label_6")); - label_6->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout1->addWidget(label_6, 2, 2, 1, 1); - - label_8 = new QLabel(intr); - label_8->setObjectName(QString::fromUtf8("label_8")); - label_8->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout1->addWidget(label_8, 4, 2, 1, 1); - - r4 = new QDoubleSpinBox(intr); - r4->setObjectName(QString::fromUtf8("r4")); - r4->setAlignment(Qt::AlignRight); - r4->setDecimals(6); - r4->setMinimum(-5.000000000000000); - r4->setMaximum(5.000000000000000); - r4->setSingleStep(0.010000000000000); - - gridLayout1->addWidget(r4, 2, 3, 1, 1); - - cx = new QDoubleSpinBox(intr); - cx->setObjectName(QString::fromUtf8("cx")); - cx->setAlignment(Qt::AlignRight); - cx->setDecimals(2); - cx->setMinimum(1.000000000000000); - cx->setMaximum(1920.000000000000000); - cx->setValue(960.000000000000000); - - gridLayout1->addWidget(cx, 1, 1, 1, 1); - - label = new QLabel(intr); - label->setObjectName(QString::fromUtf8("label")); - label->setFont(font); - label->setLayoutDirection(Qt::LeftToRight); - label->setScaledContents(false); - label->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout1->addWidget(label, 0, 0, 1, 1); - - label_4 = new QLabel(intr); - label_4->setObjectName(QString::fromUtf8("label_4")); - label_4->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout1->addWidget(label_4, 1, 2, 1, 1); - - cy = new QDoubleSpinBox(intr); - cy->setObjectName(QString::fromUtf8("cy")); - cy->setAlignment(Qt::AlignRight); - cy->setDecimals(2); - cy->setMinimum(1.000000000000000); - cy->setMaximum(1080.000000000000000); - cy->setValue(540.000000000000000); - - gridLayout1->addWidget(cy, 1, 3, 1, 1); - - fy = new QDoubleSpinBox(intr); - fy->setObjectName(QString::fromUtf8("fy")); - fy->setAlignment(Qt::AlignRight); - fy->setDecimals(2); - fy->setMinimum(500.000000000000000); - fy->setMaximum(5000.000000000000000); - fy->setValue(1000.000000000000000); - - gridLayout1->addWidget(fy, 0, 3, 1, 1); - - label_2 = new QLabel(intr); - label_2->setObjectName(QString::fromUtf8("label_2")); - label_2->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout1->addWidget(label_2, 0, 2, 1, 1); - - label_5 = new QLabel(intr); - label_5->setObjectName(QString::fromUtf8("label_5")); - label_5->setFont(font); - label_5->setLayoutDirection(Qt::LeftToRight); - label_5->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout1->addWidget(label_5, 2, 0, 1, 1); - - r6 = new QDoubleSpinBox(intr); - r6->setObjectName(QString::fromUtf8("r6")); - r6->setAlignment(Qt::AlignRight); - r6->setDecimals(6); - r6->setMinimum(-5.000000000000000); - r6->setMaximum(5.000000000000000); - r6->setSingleStep(0.010000000000000); - - gridLayout1->addWidget(r6, 3, 1, 1, 1); - - label_64 = new QLabel(intr); - label_64->setObjectName(QString::fromUtf8("label_64")); - label_64->setLayoutDirection(Qt::LeftToRight); - label_64->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout1->addWidget(label_64, 3, 0, 1, 1, Qt::AlignRight); - - gridLayout1->setColumnStretch(1, 1); - gridLayout1->setColumnStretch(3, 1); - - verticalLayout_12->addLayout(gridLayout1); - - gridLayout2 = new QGridLayout(); - gridLayout2->setSpacing(4); - gridLayout2->setObjectName(QString::fromUtf8("gridLayout2")); - gridLayout2->setContentsMargins(0, 0, 0, 0); - fixCenter = new QCheckBox(intr); - fixCenter->setObjectName(QString::fromUtf8("fixCenter")); - - gridLayout2->addWidget(fixCenter, 0, 1, 1, 1); - - quadAspectRatio = new QCheckBox(intr); - quadAspectRatio->setObjectName(QString::fromUtf8("quadAspectRatio")); - - gridLayout2->addWidget(quadAspectRatio, 0, 0, 1, 1); - - tangDist = new QCheckBox(intr); - tangDist->setObjectName(QString::fromUtf8("tangDist")); - tangDist->setChecked(true); - - gridLayout2->addWidget(tangDist, 0, 2, 1, 1); - - - verticalLayout_12->addLayout(gridLayout2); - - gridLayout3 = new QGridLayout(); - gridLayout3->setSpacing(4); - gridLayout3->setObjectName(QString::fromUtf8("gridLayout3")); - gridLayout3->setContentsMargins(0, 0, 0, 0); - autoCalib = new QPushButton(intr); - autoCalib->setObjectName(QString::fromUtf8("autoCalib")); - autoCalib->setEnabled(false); - - gridLayout3->addWidget(autoCalib, 0, 0, 1, 1); - - calibFiles = new QPushButton(intr); - calibFiles->setObjectName(QString::fromUtf8("calibFiles")); - - gridLayout3->addWidget(calibFiles, 0, 1, 1, 1); - - - verticalLayout_12->addLayout(gridLayout3); - - - verticalLayout_13->addWidget(intr); - - extr = new QGroupBox(scrollAreaWidgetContents); - extr->setObjectName(QString::fromUtf8("extr")); - sizePolicy3.setHeightForWidth(extr->sizePolicy().hasHeightForWidth()); - extr->setSizePolicy(sizePolicy3); - extr->setMinimumSize(QSize(300, 0)); - extr->setMaximumSize(QSize(16777215, 16777215)); - verticalLayout_7 = new QVBoxLayout(extr); - verticalLayout_7->setObjectName(QString::fromUtf8("verticalLayout_7")); - verticalLayout_7->setContentsMargins(5, 5, 5, 5); - gridLayout_6 = new QGridLayout(); - gridLayout_6->setObjectName(QString::fromUtf8("gridLayout_6")); - label_58 = new QLabel(extr); - label_58->setObjectName(QString::fromUtf8("label_58")); - label_58->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_6->addWidget(label_58, 0, 0, 1, 1); - - label_59 = new QLabel(extr); - label_59->setObjectName(QString::fromUtf8("label_59")); - label_59->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_6->addWidget(label_59, 1, 0, 1, 1); - - trans1 = new QDoubleSpinBox(extr); - trans1->setObjectName(QString::fromUtf8("trans1")); - trans1->setDecimals(3); - trans1->setMinimum(-10000.000000000000000); - trans1->setMaximum(10000.000000000000000); - trans1->setSingleStep(0.100000000000000); - - gridLayout_6->addWidget(trans1, 1, 1, 1, 1); - - rot1 = new QDoubleSpinBox(extr); - rot1->setObjectName(QString::fromUtf8("rot1")); - rot1->setDecimals(3); - rot1->setMinimum(-100.000000000000000); - rot1->setSingleStep(0.001000000000000); - - gridLayout_6->addWidget(rot1, 0, 1, 1, 1); - - trans2 = new QDoubleSpinBox(extr); - trans2->setObjectName(QString::fromUtf8("trans2")); - trans2->setDecimals(3); - trans2->setMinimum(-10000.000000000000000); - trans2->setMaximum(10000.000000000000000); - trans2->setSingleStep(0.100000000000000); - - gridLayout_6->addWidget(trans2, 1, 2, 1, 1); - - trans3 = new QDoubleSpinBox(extr); - trans3->setObjectName(QString::fromUtf8("trans3")); - trans3->setDecimals(3); - trans3->setMinimum(-10000.000000000000000); - trans3->setMaximum(10000.000000000000000); - trans3->setSingleStep(0.100000000000000); - trans3->setValue(-500.000000000000000); - - gridLayout_6->addWidget(trans3, 1, 3, 1, 1); - - rot3 = new QDoubleSpinBox(extr); - rot3->setObjectName(QString::fromUtf8("rot3")); - rot3->setDecimals(3); - rot3->setMinimum(-100.000000000000000); - rot3->setSingleStep(0.001000000000000); - - gridLayout_6->addWidget(rot3, 0, 3, 1, 1); - - rot2 = new QDoubleSpinBox(extr); - rot2->setObjectName(QString::fromUtf8("rot2")); - rot2->setDecimals(3); - rot2->setMinimum(-100.000000000000000); - rot2->setSingleStep(0.001000000000000); - - gridLayout_6->addWidget(rot2, 0, 2, 1, 1); - - - verticalLayout_7->addLayout(gridLayout_6); - - horizontalLayout_10 = new QHBoxLayout(); - horizontalLayout_10->setObjectName(QString::fromUtf8("horizontalLayout_10")); - label_62 = new QLabel(extr); - label_62->setObjectName(QString::fromUtf8("label_62")); - QSizePolicy sizePolicy5(QSizePolicy::Expanding, QSizePolicy::Fixed); - sizePolicy5.setHorizontalStretch(0); - sizePolicy5.setVerticalStretch(0); - sizePolicy5.setHeightForWidth(label_62->sizePolicy().hasHeightForWidth()); - label_62->setSizePolicy(sizePolicy5); - label_62->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - horizontalLayout_10->addWidget(label_62); - - coordLoad3DCalibPoints = new QPushButton(extr); - coordLoad3DCalibPoints->setObjectName(QString::fromUtf8("coordLoad3DCalibPoints")); - QSizePolicy sizePolicy6(QSizePolicy::Fixed, QSizePolicy::Fixed); - sizePolicy6.setHorizontalStretch(0); - sizePolicy6.setVerticalStretch(0); - sizePolicy6.setHeightForWidth(coordLoad3DCalibPoints->sizePolicy().hasHeightForWidth()); - coordLoad3DCalibPoints->setSizePolicy(sizePolicy6); - coordLoad3DCalibPoints->setMinimumSize(QSize(30, 18)); - coordLoad3DCalibPoints->setMaximumSize(QSize(40, 18)); - - horizontalLayout_10->addWidget(coordLoad3DCalibPoints); - - extrCalibFetch = new QPushButton(extr); - extrCalibFetch->setObjectName(QString::fromUtf8("extrCalibFetch")); - sizePolicy6.setHeightForWidth(extrCalibFetch->sizePolicy().hasHeightForWidth()); - extrCalibFetch->setSizePolicy(sizePolicy6); - extrCalibFetch->setMinimumSize(QSize(30, 18)); - extrCalibFetch->setMaximumSize(QSize(40, 18)); - - horizontalLayout_10->addWidget(extrCalibFetch); - - extrCalibSave = new QPushButton(extr); - extrCalibSave->setObjectName(QString::fromUtf8("extrCalibSave")); - sizePolicy6.setHeightForWidth(extrCalibSave->sizePolicy().hasHeightForWidth()); - extrCalibSave->setSizePolicy(sizePolicy6); - extrCalibSave->setMinimumSize(QSize(30, 18)); - extrCalibSave->setMaximumSize(QSize(40, 18)); - - horizontalLayout_10->addWidget(extrCalibSave); - - extrCalibShowPoints = new QPushButton(extr); - extrCalibShowPoints->setObjectName(QString::fromUtf8("extrCalibShowPoints")); - sizePolicy6.setHeightForWidth(extrCalibShowPoints->sizePolicy().hasHeightForWidth()); - extrCalibShowPoints->setSizePolicy(sizePolicy6); - extrCalibShowPoints->setMinimumSize(QSize(30, 18)); - extrCalibShowPoints->setMaximumSize(QSize(40, 18)); - - horizontalLayout_10->addWidget(extrCalibShowPoints); - - extrCalibShowError = new QPushButton(extr); - extrCalibShowError->setObjectName(QString::fromUtf8("extrCalibShowError")); - sizePolicy6.setHeightForWidth(extrCalibShowError->sizePolicy().hasHeightForWidth()); - extrCalibShowError->setSizePolicy(sizePolicy6); - extrCalibShowError->setMinimumSize(QSize(30, 18)); - extrCalibShowError->setMaximumSize(QSize(40, 18)); - - horizontalLayout_10->addWidget(extrCalibShowError); - - - verticalLayout_7->addLayout(horizontalLayout_10); - - - verticalLayout_13->addWidget(extr); - - align_2 = new QGroupBox(scrollAreaWidgetContents); - align_2->setObjectName(QString::fromUtf8("align_2")); - sizePolicy3.setHeightForWidth(align_2->sizePolicy().hasHeightForWidth()); - align_2->setSizePolicy(sizePolicy3); - align_2->setMinimumSize(QSize(300, 271)); - align_2->setMaximumSize(QSize(16777215, 16777215)); - verticalLayout_14 = new QVBoxLayout(align_2); - verticalLayout_14->setObjectName(QString::fromUtf8("verticalLayout_14")); - verticalLayout_14->setContentsMargins(5, 5, 5, 5); - gridLayout_7 = new QGridLayout(); - gridLayout_7->setObjectName(QString::fromUtf8("gridLayout_7")); - coordShow = new QCheckBox(align_2); - coordShow->setObjectName(QString::fromUtf8("coordShow")); - coordShow->setMinimumSize(QSize(57, 17)); - coordShow->setMaximumSize(QSize(16777215, 17)); - - gridLayout_7->addWidget(coordShow, 0, 0, 1, 1); - - coordFix = new QCheckBox(align_2); - coordFix->setObjectName(QString::fromUtf8("coordFix")); - coordFix->setMinimumSize(QSize(0, 17)); - coordFix->setMaximumSize(QSize(16777215, 17)); - - gridLayout_7->addWidget(coordFix, 0, 1, 1, 1); - - horizontalSpacer_9 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - gridLayout_7->addItem(horizontalSpacer_9, 0, 2, 1, 1); - - gridLayout_7->setColumnStretch(2, 1); - - verticalLayout_14->addLayout(gridLayout_7); - - coordTab = new QTabWidget(align_2); - coordTab->setObjectName(QString::fromUtf8("coordTab")); - sizePolicy5.setHeightForWidth(coordTab->sizePolicy().hasHeightForWidth()); - coordTab->setSizePolicy(sizePolicy5); - coordTab->setFocusPolicy(Qt::StrongFocus); - coordTab->setLayoutDirection(Qt::LeftToRight); - coordTab->setTabPosition(QTabWidget::North); - coordTab->setTabShape(QTabWidget::Rounded); - coordTab->setElideMode(Qt::ElideNone); - coordTab->setUsesScrollButtons(true); - coordTab->setTabsClosable(false); - coordTab3D = new QWidget(); - coordTab3D->setObjectName(QString::fromUtf8("coordTab3D")); - verticalLayout_5 = new QVBoxLayout(coordTab3D); - verticalLayout_5->setObjectName(QString::fromUtf8("verticalLayout_5")); - gridLayout_5 = new QGridLayout(); - gridLayout_5->setSpacing(4); - gridLayout_5->setObjectName(QString::fromUtf8("gridLayout_5")); - label_54 = new QLabel(coordTab3D); - label_54->setObjectName(QString::fromUtf8("label_54")); - label_54->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_5->addWidget(label_54, 0, 0, 1, 1); - - coord3DTransX = new QScrollBar(coordTab3D); - coord3DTransX->setObjectName(QString::fromUtf8("coord3DTransX")); - sizePolicy5.setHeightForWidth(coord3DTransX->sizePolicy().hasHeightForWidth()); - coord3DTransX->setSizePolicy(sizePolicy5); - coord3DTransX->setMinimumSize(QSize(50, 17)); - coord3DTransX->setMaximumSize(QSize(16777215, 17)); - coord3DTransX->setMinimum(-10000); - coord3DTransX->setMaximum(10000); - coord3DTransX->setPageStep(10); - coord3DTransX->setValue(0); - coord3DTransX->setSliderPosition(0); - coord3DTransX->setOrientation(Qt::Horizontal); - - gridLayout_5->addWidget(coord3DTransX, 0, 1, 1, 1); - - coord3DTransX_spin = new QSpinBox(coordTab3D); - coord3DTransX_spin->setObjectName(QString::fromUtf8("coord3DTransX_spin")); - coord3DTransX_spin->setMinimumSize(QSize(0, 17)); - coord3DTransX_spin->setMaximumSize(QSize(16777215, 17)); - coord3DTransX_spin->setMinimum(-10000); - coord3DTransX_spin->setMaximum(10000); - - gridLayout_5->addWidget(coord3DTransX_spin, 0, 2, 1, 1); - - label_55 = new QLabel(coordTab3D); - label_55->setObjectName(QString::fromUtf8("label_55")); - label_55->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_5->addWidget(label_55, 1, 0, 1, 1); - - coord3DTransY = new QScrollBar(coordTab3D); - coord3DTransY->setObjectName(QString::fromUtf8("coord3DTransY")); - coord3DTransY->setMinimumSize(QSize(0, 17)); - coord3DTransY->setMaximumSize(QSize(16777215, 17)); - coord3DTransY->setMinimum(-10000); - coord3DTransY->setMaximum(10000); - coord3DTransY->setValue(0); - coord3DTransY->setSliderPosition(0); - coord3DTransY->setOrientation(Qt::Horizontal); - - gridLayout_5->addWidget(coord3DTransY, 1, 1, 1, 1); - - coord3DTransY_spin = new QSpinBox(coordTab3D); - coord3DTransY_spin->setObjectName(QString::fromUtf8("coord3DTransY_spin")); - coord3DTransY_spin->setMinimumSize(QSize(0, 17)); - coord3DTransY_spin->setMaximumSize(QSize(16777215, 17)); - coord3DTransY_spin->setMinimum(-10000); - coord3DTransY_spin->setMaximum(10000); - - gridLayout_5->addWidget(coord3DTransY_spin, 1, 2, 1, 1); - - label_57 = new QLabel(coordTab3D); - label_57->setObjectName(QString::fromUtf8("label_57")); - label_57->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_5->addWidget(label_57, 2, 0, 1, 1); - - coord3DTransZ = new QScrollBar(coordTab3D); - coord3DTransZ->setObjectName(QString::fromUtf8("coord3DTransZ")); - coord3DTransZ->setMinimumSize(QSize(0, 17)); - coord3DTransZ->setMaximumSize(QSize(16777215, 17)); - coord3DTransZ->setMinimum(-10000); - coord3DTransZ->setMaximum(10000); - coord3DTransZ->setPageStep(10); - coord3DTransZ->setSliderPosition(0); - coord3DTransZ->setOrientation(Qt::Horizontal); - - gridLayout_5->addWidget(coord3DTransZ, 2, 1, 1, 1); - - coord3DTransZ_spin = new QSpinBox(coordTab3D); - coord3DTransZ_spin->setObjectName(QString::fromUtf8("coord3DTransZ_spin")); - coord3DTransZ_spin->setMinimumSize(QSize(0, 17)); - coord3DTransZ_spin->setMaximumSize(QSize(16777215, 17)); - coord3DTransZ_spin->setMinimum(-10000); - coord3DTransZ_spin->setMaximum(10000); - - gridLayout_5->addWidget(coord3DTransZ_spin, 2, 2, 1, 1); - - label_56 = new QLabel(coordTab3D); - label_56->setObjectName(QString::fromUtf8("label_56")); - label_56->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_5->addWidget(label_56, 3, 0, 1, 1); - - coord3DAxeLen = new QScrollBar(coordTab3D); - coord3DAxeLen->setObjectName(QString::fromUtf8("coord3DAxeLen")); - coord3DAxeLen->setMinimumSize(QSize(0, 17)); - coord3DAxeLen->setMaximumSize(QSize(16777215, 17)); - coord3DAxeLen->setMinimum(1); - coord3DAxeLen->setMaximum(10000); - coord3DAxeLen->setValue(200); - coord3DAxeLen->setSliderPosition(200); - coord3DAxeLen->setOrientation(Qt::Horizontal); - - gridLayout_5->addWidget(coord3DAxeLen, 3, 1, 1, 1); - - coord3DAxeLen_spin = new QSpinBox(coordTab3D); - coord3DAxeLen_spin->setObjectName(QString::fromUtf8("coord3DAxeLen_spin")); - coord3DAxeLen_spin->setMinimumSize(QSize(0, 17)); - coord3DAxeLen_spin->setMaximumSize(QSize(16777215, 17)); - coord3DAxeLen_spin->setMinimum(1); - coord3DAxeLen_spin->setMaximum(10000); - coord3DAxeLen_spin->setValue(200); - - gridLayout_5->addWidget(coord3DAxeLen_spin, 3, 2, 1, 1); - - - verticalLayout_5->addLayout(gridLayout_5); - - horizontalLayout_6 = new QHBoxLayout(); - horizontalLayout_6->setObjectName(QString::fromUtf8("horizontalLayout_6")); - label_60 = new QLabel(coordTab3D); - label_60->setObjectName(QString::fromUtf8("label_60")); - label_60->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - horizontalLayout_6->addWidget(label_60); - - coord3DSwapX = new QCheckBox(coordTab3D); - coord3DSwapX->setObjectName(QString::fromUtf8("coord3DSwapX")); - coord3DSwapX->setMinimumSize(QSize(0, 17)); - coord3DSwapX->setMaximumSize(QSize(16777215, 17)); - - horizontalLayout_6->addWidget(coord3DSwapX); - - coord3DSwapY = new QCheckBox(coordTab3D); - coord3DSwapY->setObjectName(QString::fromUtf8("coord3DSwapY")); - coord3DSwapY->setMinimumSize(QSize(0, 17)); - coord3DSwapY->setMaximumSize(QSize(16777215, 17)); - - horizontalLayout_6->addWidget(coord3DSwapY); - - coord3DSwapZ = new QCheckBox(coordTab3D); - coord3DSwapZ->setObjectName(QString::fromUtf8("coord3DSwapZ")); - coord3DSwapZ->setMinimumSize(QSize(0, 17)); - coord3DSwapZ->setMaximumSize(QSize(16777215, 17)); - - horizontalLayout_6->addWidget(coord3DSwapZ); - - horizontalSpacer_5 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - horizontalLayout_6->addItem(horizontalSpacer_5); - - - verticalLayout_5->addLayout(horizontalLayout_6); - - horizontalLayout_7 = new QHBoxLayout(); - horizontalLayout_7->setObjectName(QString::fromUtf8("horizontalLayout_7")); - label_61 = new QLabel(coordTab3D); - label_61->setObjectName(QString::fromUtf8("label_61")); - label_61->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - horizontalLayout_7->addWidget(label_61); - - extCalibPointsShow = new QCheckBox(coordTab3D); - extCalibPointsShow->setObjectName(QString::fromUtf8("extCalibPointsShow")); - extCalibPointsShow->setMinimumSize(QSize(0, 17)); - extCalibPointsShow->setMaximumSize(QSize(16777215, 17)); - - horizontalLayout_7->addWidget(extCalibPointsShow); - - extVanishPointsShow = new QCheckBox(coordTab3D); - extVanishPointsShow->setObjectName(QString::fromUtf8("extVanishPointsShow")); - extVanishPointsShow->setMinimumSize(QSize(0, 17)); - extVanishPointsShow->setMaximumSize(QSize(16777215, 17)); - - horizontalLayout_7->addWidget(extVanishPointsShow); - - horizontalSpacer_6 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - horizontalLayout_7->addItem(horizontalSpacer_6); - - - verticalLayout_5->addLayout(horizontalLayout_7); - - verticalSpacer_2 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); - - verticalLayout_5->addItem(verticalSpacer_2); - - coordTab->addTab(coordTab3D, QString()); - coordTab2D = new QWidget(); - coordTab2D->setObjectName(QString::fromUtf8("coordTab2D")); - verticalLayout_4 = new QVBoxLayout(coordTab2D); - verticalLayout_4->setObjectName(QString::fromUtf8("verticalLayout_4")); - gridLayout4 = new QGridLayout(); - gridLayout4->setSpacing(4); - gridLayout4->setObjectName(QString::fromUtf8("gridLayout4")); - gridLayout4->setContentsMargins(0, 0, 0, 0); - coordTransX_spin = new QSpinBox(coordTab2D); - coordTransX_spin->setObjectName(QString::fromUtf8("coordTransX_spin")); - coordTransX_spin->setMinimumSize(QSize(0, 18)); - coordTransX_spin->setMaximumSize(QSize(16777215, 18)); - coordTransX_spin->setMinimum(0); - coordTransX_spin->setMaximum(10000); - - gridLayout4->addWidget(coordTransX_spin, 1, 2, 1, 1); - - label_34 = new QLabel(coordTab2D); - label_34->setObjectName(QString::fromUtf8("label_34")); - label_34->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout4->addWidget(label_34, 1, 0, 1, 1); - - coordTransX = new QScrollBar(coordTab2D); - coordTransX->setObjectName(QString::fromUtf8("coordTransX")); - coordTransX->setMinimumSize(QSize(0, 17)); - coordTransX->setMaximumSize(QSize(16777215, 17)); - coordTransX->setMinimum(0); - coordTransX->setMaximum(10000); - coordTransX->setPageStep(10); - coordTransX->setValue(0); - coordTransX->setSliderPosition(0); - coordTransX->setOrientation(Qt::Horizontal); - - gridLayout4->addWidget(coordTransX, 1, 1, 1, 1); - - label_32 = new QLabel(coordTab2D); - label_32->setObjectName(QString::fromUtf8("label_32")); - label_32->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout4->addWidget(label_32, 2, 0, 1, 1); - - coordTransY = new QScrollBar(coordTab2D); - coordTransY->setObjectName(QString::fromUtf8("coordTransY")); - coordTransY->setMinimumSize(QSize(0, 17)); - coordTransY->setMaximumSize(QSize(16777215, 17)); - coordTransY->setMinimum(0); - coordTransY->setMaximum(10000); - coordTransY->setValue(0); - coordTransY->setSliderPosition(0); - coordTransY->setOrientation(Qt::Horizontal); - - gridLayout4->addWidget(coordTransY, 2, 1, 1, 1); - - label_33 = new QLabel(coordTab2D); - label_33->setObjectName(QString::fromUtf8("label_33")); - label_33->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout4->addWidget(label_33, 4, 0, 1, 1); - - coordScale = new QScrollBar(coordTab2D); - coordScale->setObjectName(QString::fromUtf8("coordScale")); - coordScale->setMinimumSize(QSize(0, 17)); - coordScale->setMaximumSize(QSize(16777215, 17)); - coordScale->setMinimum(1); - coordScale->setMaximum(100000); - coordScale->setValue(100); - coordScale->setSliderPosition(100); - coordScale->setOrientation(Qt::Horizontal); - - gridLayout4->addWidget(coordScale, 4, 1, 1, 1); - - coordTransY_spin = new QSpinBox(coordTab2D); - coordTransY_spin->setObjectName(QString::fromUtf8("coordTransY_spin")); - coordTransY_spin->setMinimumSize(QSize(0, 18)); - coordTransY_spin->setMaximumSize(QSize(16777215, 18)); - coordTransY_spin->setMinimum(0); - coordTransY_spin->setMaximum(10000); - - gridLayout4->addWidget(coordTransY_spin, 2, 2, 1, 1); - - coordScale_spin = new QSpinBox(coordTab2D); - coordScale_spin->setObjectName(QString::fromUtf8("coordScale_spin")); - coordScale_spin->setMinimumSize(QSize(0, 18)); - coordScale_spin->setMaximumSize(QSize(16777215, 18)); - coordScale_spin->setMinimum(1); - coordScale_spin->setMaximum(100000); - coordScale_spin->setValue(100); - - gridLayout4->addWidget(coordScale_spin, 4, 2, 1, 1); - - label_35 = new QLabel(coordTab2D); - label_35->setObjectName(QString::fromUtf8("label_35")); - label_35->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout4->addWidget(label_35, 3, 0, 1, 1); - - coordRotate = new QScrollBar(coordTab2D); - coordRotate->setObjectName(QString::fromUtf8("coordRotate")); - sizePolicy5.setHeightForWidth(coordRotate->sizePolicy().hasHeightForWidth()); - coordRotate->setSizePolicy(sizePolicy5); - coordRotate->setMinimumSize(QSize(100, 17)); - coordRotate->setMaximumSize(QSize(16777215, 17)); - coordRotate->setMinimum(0); - coordRotate->setMaximum(3600); - coordRotate->setSliderPosition(0); - coordRotate->setOrientation(Qt::Horizontal); - - gridLayout4->addWidget(coordRotate, 3, 1, 1, 1); - - coordRotate_spin = new QSpinBox(coordTab2D); - coordRotate_spin->setObjectName(QString::fromUtf8("coordRotate_spin")); - coordRotate_spin->setMinimumSize(QSize(0, 18)); - coordRotate_spin->setMaximumSize(QSize(16777215, 18)); - coordRotate_spin->setMinimum(0); - coordRotate_spin->setMaximum(3600); - - gridLayout4->addWidget(coordRotate_spin, 3, 2, 1, 1); - - - verticalLayout_4->addLayout(gridLayout4); - - gridLayout5 = new QGridLayout(); - gridLayout5->setSpacing(6); - gridLayout5->setObjectName(QString::fromUtf8("gridLayout5")); - gridLayout5->setContentsMargins(0, 0, 0, 0); - label_14 = new QLabel(coordTab2D); - label_14->setObjectName(QString::fromUtf8("label_14")); - - gridLayout5->addWidget(label_14, 0, 0, 1, 1); - - coordAltitude = new QDoubleSpinBox(coordTab2D); - coordAltitude->setObjectName(QString::fromUtf8("coordAltitude")); - sizePolicy6.setHeightForWidth(coordAltitude->sizePolicy().hasHeightForWidth()); - coordAltitude->setSizePolicy(sizePolicy6); - coordAltitude->setMinimumSize(QSize(0, 18)); - coordAltitude->setMaximumSize(QSize(16777215, 18)); - coordAltitude->setAlignment(Qt::AlignRight); - coordAltitude->setDecimals(1); - coordAltitude->setMinimum(0.100000000000000); - coordAltitude->setMaximum(9999.000000000000000); - coordAltitude->setValue(535.000000000000000); - - gridLayout5->addWidget(coordAltitude, 0, 1, 1, 1); - - coordAltitudeMeasured = new QLabel(coordTab2D); - coordAltitudeMeasured->setObjectName(QString::fromUtf8("coordAltitudeMeasured")); - coordAltitudeMeasured->setMinimumSize(QSize(90, 0)); - - gridLayout5->addWidget(coordAltitudeMeasured, 0, 2, 1, 1); - - horizontalSpacer_8 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - gridLayout5->addItem(horizontalSpacer_8, 0, 3, 1, 1); - - - verticalLayout_4->addLayout(gridLayout5); - - gridLayout6 = new QGridLayout(); - gridLayout6->setSpacing(6); - gridLayout6->setObjectName(QString::fromUtf8("gridLayout6")); - gridLayout6->setContentsMargins(0, 0, 0, 0); - label_37 = new QLabel(coordTab2D); - label_37->setObjectName(QString::fromUtf8("label_37")); - label_37->setMinimumSize(QSize(57, 0)); - - gridLayout6->addWidget(label_37, 0, 0, 1, 1); - - coordUnit = new QDoubleSpinBox(coordTab2D); - coordUnit->setObjectName(QString::fromUtf8("coordUnit")); - coordUnit->setMinimumSize(QSize(0, 18)); - coordUnit->setMaximumSize(QSize(16777215, 18)); - coordUnit->setAlignment(Qt::AlignRight); - coordUnit->setDecimals(0); - coordUnit->setMinimum(1.000000000000000); - coordUnit->setMaximum(9999.000000000000000); - coordUnit->setSingleStep(1.000000000000000); - coordUnit->setValue(100.000000000000000); - - gridLayout6->addWidget(coordUnit, 0, 1, 1, 1); - - spacerItem = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - gridLayout6->addItem(spacerItem, 0, 2, 1, 1); - - - verticalLayout_4->addLayout(gridLayout6); - - coordUseIntrinsic = new QCheckBox(coordTab2D); - coordUseIntrinsic->setObjectName(QString::fromUtf8("coordUseIntrinsic")); - coordUseIntrinsic->setMinimumSize(QSize(0, 17)); - coordUseIntrinsic->setMaximumSize(QSize(16777215, 17)); - - verticalLayout_4->addWidget(coordUseIntrinsic); - - coordTab->addTab(coordTab2D, QString()); - - verticalLayout_14->addWidget(coordTab); - - - verticalLayout_13->addWidget(align_2); - - align = new QGroupBox(scrollAreaWidgetContents); - align->setObjectName(QString::fromUtf8("align")); - sizePolicy3.setHeightForWidth(align->sizePolicy().hasHeightForWidth()); - align->setSizePolicy(sizePolicy3); - align->setMinimumSize(QSize(300, 197)); - align->setMaximumSize(QSize(16777215, 16777215)); - verticalLayout_15 = new QVBoxLayout(align); - verticalLayout_15->setObjectName(QString::fromUtf8("verticalLayout_15")); - verticalLayout_15->setContentsMargins(5, 5, 5, 5); - horizontalLayout_12 = new QHBoxLayout(); - horizontalLayout_12->setObjectName(QString::fromUtf8("horizontalLayout_12")); - gridShow = new QCheckBox(align); - gridShow->setObjectName(QString::fromUtf8("gridShow")); - gridShow->setMinimumSize(QSize(57, 0)); - - horizontalLayout_12->addWidget(gridShow); - - gridFix = new QCheckBox(align); - gridFix->setObjectName(QString::fromUtf8("gridFix")); - gridFix->setMaximumSize(QSize(16777215, 25)); - - horizontalLayout_12->addWidget(gridFix); - - horizontalSpacer_10 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - horizontalLayout_12->addItem(horizontalSpacer_10); - - - verticalLayout_15->addLayout(horizontalLayout_12); - - gridTab = new QTabWidget(align); - gridTab->setObjectName(QString::fromUtf8("gridTab")); - gridTab->setEnabled(true); - gridTab->setBaseSize(QSize(0, 0)); - gridTab->setLayoutDirection(Qt::LeftToRight); - gridTab->setAutoFillBackground(false); - gridTab->setTabPosition(QTabWidget::North); - gridTab->setTabShape(QTabWidget::Rounded); - gridTab->setElideMode(Qt::ElideNone); - gridTab->setUsesScrollButtons(false); - gridTab->setDocumentMode(false); - gridTab->setTabsClosable(false); - gridTab->setMovable(false); - gridTab3D = new QWidget(); - gridTab3D->setObjectName(QString::fromUtf8("gridTab3D")); - verticalLayout_11 = new QVBoxLayout(gridTab3D); - verticalLayout_11->setObjectName(QString::fromUtf8("verticalLayout_11")); - gridLayout_3 = new QGridLayout(); - gridLayout_3->setSpacing(4); - gridLayout_3->setObjectName(QString::fromUtf8("gridLayout_3")); - gridLayout_3->setSizeConstraint(QLayout::SetDefaultConstraint); - label_15 = new QLabel(gridTab3D); - label_15->setObjectName(QString::fromUtf8("label_15")); - label_15->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_3->addWidget(label_15, 0, 0, 1, 1); - - grid3DTransX = new QScrollBar(gridTab3D); - grid3DTransX->setObjectName(QString::fromUtf8("grid3DTransX")); - sizePolicy4.setHeightForWidth(grid3DTransX->sizePolicy().hasHeightForWidth()); - grid3DTransX->setSizePolicy(sizePolicy4); - grid3DTransX->setMinimumSize(QSize(50, 17)); - grid3DTransX->setMaximumSize(QSize(16777215, 17)); - grid3DTransX->setMinimum(-10000); - grid3DTransX->setMaximum(10000); - grid3DTransX->setValue(0); - grid3DTransX->setOrientation(Qt::Horizontal); - - gridLayout_3->addWidget(grid3DTransX, 0, 1, 1, 1); - - grid3DTransX_spin = new QSpinBox(gridTab3D); - grid3DTransX_spin->setObjectName(QString::fromUtf8("grid3DTransX_spin")); - grid3DTransX_spin->setMaximumSize(QSize(16777215, 22)); - grid3DTransX_spin->setMinimum(-10000); - grid3DTransX_spin->setMaximum(10000); - - gridLayout_3->addWidget(grid3DTransX_spin, 0, 2, 1, 1); - - label_49 = new QLabel(gridTab3D); - label_49->setObjectName(QString::fromUtf8("label_49")); - label_49->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_3->addWidget(label_49, 1, 0, 1, 1); - - grid3DTransY = new QScrollBar(gridTab3D); - grid3DTransY->setObjectName(QString::fromUtf8("grid3DTransY")); - grid3DTransY->setMinimumSize(QSize(0, 17)); - grid3DTransY->setMaximumSize(QSize(16777215, 17)); - grid3DTransY->setMinimum(-10000); - grid3DTransY->setMaximum(10000); - grid3DTransY->setOrientation(Qt::Horizontal); - - gridLayout_3->addWidget(grid3DTransY, 1, 1, 1, 1); - - grid3DTransY_spin = new QSpinBox(gridTab3D); - grid3DTransY_spin->setObjectName(QString::fromUtf8("grid3DTransY_spin")); - grid3DTransY_spin->setMaximumSize(QSize(16777215, 22)); - grid3DTransY_spin->setMinimum(-10000); - grid3DTransY_spin->setMaximum(10000); - - gridLayout_3->addWidget(grid3DTransY_spin, 1, 2, 1, 1); - - label_50 = new QLabel(gridTab3D); - label_50->setObjectName(QString::fromUtf8("label_50")); - label_50->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_3->addWidget(label_50, 2, 0, 1, 1); - - grid3DTransZ = new QScrollBar(gridTab3D); - grid3DTransZ->setObjectName(QString::fromUtf8("grid3DTransZ")); - sizePolicy4.setHeightForWidth(grid3DTransZ->sizePolicy().hasHeightForWidth()); - grid3DTransZ->setSizePolicy(sizePolicy4); - grid3DTransZ->setMinimumSize(QSize(50, 17)); - grid3DTransZ->setMaximumSize(QSize(16777215, 17)); - grid3DTransZ->setMinimum(-10000); - grid3DTransZ->setMaximum(10000); - grid3DTransZ->setOrientation(Qt::Horizontal); - - gridLayout_3->addWidget(grid3DTransZ, 2, 1, 1, 1); - - grid3DTransZ_spin = new QSpinBox(gridTab3D); - grid3DTransZ_spin->setObjectName(QString::fromUtf8("grid3DTransZ_spin")); - grid3DTransZ_spin->setEnabled(true); - grid3DTransZ_spin->setMaximumSize(QSize(16777215, 22)); - grid3DTransZ_spin->setMinimum(-1000); - grid3DTransZ_spin->setMaximum(1000); - - gridLayout_3->addWidget(grid3DTransZ_spin, 2, 2, 1, 1); - - label_51 = new QLabel(gridTab3D); - label_51->setObjectName(QString::fromUtf8("label_51")); - label_51->setLayoutDirection(Qt::LeftToRight); - label_51->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_3->addWidget(label_51, 3, 0, 1, 1); - - grid3DResolution = new QScrollBar(gridTab3D); - grid3DResolution->setObjectName(QString::fromUtf8("grid3DResolution")); - grid3DResolution->setMinimumSize(QSize(0, 17)); - grid3DResolution->setMaximumSize(QSize(16777215, 17)); - grid3DResolution->setMinimum(1); - grid3DResolution->setMaximum(10000); - grid3DResolution->setSingleStep(1); - grid3DResolution->setPageStep(10); - grid3DResolution->setValue(100); - grid3DResolution->setSliderPosition(100); - grid3DResolution->setOrientation(Qt::Horizontal); - grid3DResolution->setInvertedAppearance(false); - grid3DResolution->setInvertedControls(true); - - gridLayout_3->addWidget(grid3DResolution, 3, 1, 1, 1); - - grid3DResolution_spin = new QSpinBox(gridTab3D); - grid3DResolution_spin->setObjectName(QString::fromUtf8("grid3DResolution_spin")); - grid3DResolution_spin->setMaximumSize(QSize(16777215, 22)); - grid3DResolution_spin->setMinimum(1); - grid3DResolution_spin->setMaximum(10000); - grid3DResolution_spin->setSingleStep(10); - grid3DResolution_spin->setValue(100); - - gridLayout_3->addWidget(grid3DResolution_spin, 3, 2, 1, 1); - - gridLayout_3->setColumnStretch(1, 1); - - verticalLayout_11->addLayout(gridLayout_3); - - gridTab->addTab(gridTab3D, QString()); - gridTab2D = new QWidget(); - gridTab2D->setObjectName(QString::fromUtf8("gridTab2D")); - verticalLayout_10 = new QVBoxLayout(gridTab2D); - verticalLayout_10->setObjectName(QString::fromUtf8("verticalLayout_10")); - gridLayout_100 = new QGridLayout(); - gridLayout_100->setSpacing(6); - gridLayout_100->setObjectName(QString::fromUtf8("gridLayout_100")); - label_10 = new QLabel(gridTab2D); - label_10->setObjectName(QString::fromUtf8("label_10")); - label_10->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_100->addWidget(label_10, 0, 0, 1, 1); - - gridTransX = new QScrollBar(gridTab2D); - gridTransX->setObjectName(QString::fromUtf8("gridTransX")); - sizePolicy5.setHeightForWidth(gridTransX->sizePolicy().hasHeightForWidth()); - gridTransX->setSizePolicy(sizePolicy5); - gridTransX->setMinimumSize(QSize(100, 17)); - gridTransX->setMaximumSize(QSize(16777215, 17)); - gridTransX->setMinimum(0); - gridTransX->setMaximum(10000); - gridTransX->setValue(0); - gridTransX->setOrientation(Qt::Horizontal); - - gridLayout_100->addWidget(gridTransX, 0, 1, 1, 1); - - gridTransX_spin = new QSpinBox(gridTab2D); - gridTransX_spin->setObjectName(QString::fromUtf8("gridTransX_spin")); - gridTransX_spin->setMinimumSize(QSize(0, 17)); - gridTransX_spin->setMaximumSize(QSize(16777215, 17)); - gridTransX_spin->setMinimum(0); - gridTransX_spin->setMaximum(10000); - - gridLayout_100->addWidget(gridTransX_spin, 0, 2, 1, 1); - - label_11 = new QLabel(gridTab2D); - label_11->setObjectName(QString::fromUtf8("label_11")); - label_11->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_100->addWidget(label_11, 1, 0, 1, 1); - - gridTransY = new QScrollBar(gridTab2D); - gridTransY->setObjectName(QString::fromUtf8("gridTransY")); - gridTransY->setMinimumSize(QSize(0, 17)); - gridTransY->setMaximumSize(QSize(16777215, 17)); - gridTransY->setMinimum(0); - gridTransY->setMaximum(10000); - gridTransY->setOrientation(Qt::Horizontal); - - gridLayout_100->addWidget(gridTransY, 1, 1, 1, 1); - - gridTransY_spin = new QSpinBox(gridTab2D); - gridTransY_spin->setObjectName(QString::fromUtf8("gridTransY_spin")); - gridTransY_spin->setMinimumSize(QSize(0, 17)); - gridTransY_spin->setMaximumSize(QSize(16777215, 17)); - gridTransY_spin->setMinimum(0); - gridTransY_spin->setMaximum(10000); - - gridLayout_100->addWidget(gridTransY_spin, 1, 2, 1, 1); - - label_9 = new QLabel(gridTab2D); - label_9->setObjectName(QString::fromUtf8("label_9")); - label_9->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_100->addWidget(label_9, 2, 0, 1, 1); - - gridRotate = new QScrollBar(gridTab2D); - gridRotate->setObjectName(QString::fromUtf8("gridRotate")); - sizePolicy4.setHeightForWidth(gridRotate->sizePolicy().hasHeightForWidth()); - gridRotate->setSizePolicy(sizePolicy4); - gridRotate->setMinimumSize(QSize(50, 17)); - gridRotate->setMaximumSize(QSize(16777215, 17)); - gridRotate->setMinimum(0); - gridRotate->setMaximum(3600); - gridRotate->setOrientation(Qt::Horizontal); - - gridLayout_100->addWidget(gridRotate, 2, 1, 1, 1); - - gridRot_spin = new QSpinBox(gridTab2D); - gridRot_spin->setObjectName(QString::fromUtf8("gridRot_spin")); - gridRot_spin->setEnabled(true); - gridRot_spin->setMinimumSize(QSize(0, 17)); - gridRot_spin->setMaximumSize(QSize(16777215, 17)); - gridRot_spin->setMinimum(0); - gridRot_spin->setMaximum(3600); - - gridLayout_100->addWidget(gridRot_spin, 2, 2, 1, 1); - - label_12 = new QLabel(gridTab2D); - label_12->setObjectName(QString::fromUtf8("label_12")); - QSizePolicy sizePolicy7(QSizePolicy::Preferred, QSizePolicy::Fixed); - sizePolicy7.setHorizontalStretch(0); - sizePolicy7.setVerticalStretch(0); - sizePolicy7.setHeightForWidth(label_12->sizePolicy().hasHeightForWidth()); - label_12->setSizePolicy(sizePolicy7); - label_12->setMaximumSize(QSize(16777215, 17)); - label_12->setLayoutDirection(Qt::LeftToRight); - label_12->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_100->addWidget(label_12, 3, 0, 1, 1); - - gridScale = new QScrollBar(gridTab2D); - gridScale->setObjectName(QString::fromUtf8("gridScale")); - gridScale->setMinimumSize(QSize(0, 17)); - gridScale->setMaximumSize(QSize(16777215, 17)); - gridScale->setMinimum(1); - gridScale->setMaximum(10000); - gridScale->setValue(100); - gridScale->setSliderPosition(100); - gridScale->setOrientation(Qt::Horizontal); - - gridLayout_100->addWidget(gridScale, 3, 1, 1, 1); - - gridScale_spin = new QSpinBox(gridTab2D); - gridScale_spin->setObjectName(QString::fromUtf8("gridScale_spin")); - gridScale_spin->setMinimumSize(QSize(0, 17)); - gridScale_spin->setMaximumSize(QSize(16777215, 17)); - gridScale_spin->setMinimum(1); - gridScale_spin->setMaximum(10000); - gridScale_spin->setValue(100); - - gridLayout_100->addWidget(gridScale_spin, 3, 2, 1, 1); - - gridLayout_100->setColumnStretch(1, 1); - - verticalLayout_10->addLayout(gridLayout_100); - - gridTab->addTab(gridTab2D, QString()); - - verticalLayout_15->addWidget(gridTab); - - - verticalLayout_13->addWidget(align); - - scrollArea->setWidget(scrollAreaWidgetContents); - - horizontalLayout_11->addWidget(scrollArea); - - tabs->addTab(calib, QString()); - rec = new QWidget(); - rec->setObjectName(QString::fromUtf8("rec")); - QSizePolicy sizePolicy8(QSizePolicy::Preferred, QSizePolicy::Preferred); - sizePolicy8.setHorizontalStretch(0); - sizePolicy8.setVerticalStretch(0); - sizePolicy8.setHeightForWidth(rec->sizePolicy().hasHeightForWidth()); - rec->setSizePolicy(sizePolicy8); - horizontalLayout_16 = new QHBoxLayout(rec); - horizontalLayout_16->setObjectName(QString::fromUtf8("horizontalLayout_16")); - scrollArea_2 = new QScrollArea(rec); - scrollArea_2->setObjectName(QString::fromUtf8("scrollArea_2")); - scrollArea_2->setWidgetResizable(true); - scrollAreaWidgetContents_2 = new QWidget(); - scrollAreaWidgetContents_2->setObjectName(QString::fromUtf8("scrollAreaWidgetContents_2")); - scrollAreaWidgetContents_2->setGeometry(QRect(0, 0, 337, 874)); - verticalLayout_16 = new QVBoxLayout(scrollAreaWidgetContents_2); - verticalLayout_16->setObjectName(QString::fromUtf8("verticalLayout_16")); - verticalLayout_2 = new QVBoxLayout(); - verticalLayout_2->setSpacing(2); - verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); - hboxLayout = new QHBoxLayout(); - hboxLayout->setSpacing(6); - hboxLayout->setObjectName(QString::fromUtf8("hboxLayout")); - hboxLayout->setContentsMargins(0, 0, 0, 0); - performRecognition = new QCheckBox(scrollAreaWidgetContents_2); - performRecognition->setObjectName(QString::fromUtf8("performRecognition")); - performRecognition->setEnabled(true); - performRecognition->setChecked(false); - - hboxLayout->addWidget(performRecognition); - - gridLayout7 = new QGridLayout(); - gridLayout7->setSpacing(6); - gridLayout7->setObjectName(QString::fromUtf8("gridLayout7")); - gridLayout7->setContentsMargins(0, 0, 0, 0); - recoStep = new QSpinBox(scrollAreaWidgetContents_2); - recoStep->setObjectName(QString::fromUtf8("recoStep")); - sizePolicy6.setHeightForWidth(recoStep->sizePolicy().hasHeightForWidth()); - recoStep->setSizePolicy(sizePolicy6); - recoStep->setMinimumSize(QSize(20, 0)); - recoStep->setAlignment(Qt::AlignRight); - recoStep->setMinimum(1); - recoStep->setMaximum(9999); - recoStep->setValue(1); - - gridLayout7->addWidget(recoStep, 0, 2, 1, 1); - - label_27 = new QLabel(scrollAreaWidgetContents_2); - label_27->setObjectName(QString::fromUtf8("label_27")); - - gridLayout7->addWidget(label_27, 0, 1, 1, 1); - - spacerItem1 = new QSpacerItem(20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - gridLayout7->addItem(spacerItem1, 0, 0, 1, 1); - - horizontalSpacer_3 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - gridLayout7->addItem(horizontalSpacer_3, 0, 4, 1, 1); - - - hboxLayout->addLayout(gridLayout7); - - - verticalLayout_2->addLayout(hboxLayout); - - gridLayout_2 = new QGridLayout(); - gridLayout_2->setObjectName(QString::fromUtf8("gridLayout_2")); - label_26 = new QLabel(scrollAreaWidgetContents_2); - label_26->setObjectName(QString::fromUtf8("label_26")); - - gridLayout_2->addWidget(label_26, 0, 0, 1, 1); - - recoNumberNow = new QLabel(scrollAreaWidgetContents_2); - recoNumberNow->setObjectName(QString::fromUtf8("recoNumberNow")); - QFont font1; - font1.setBold(true); - font1.setWeight(75); - recoNumberNow->setFont(font1); - recoNumberNow->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout_2->addWidget(recoNumberNow, 0, 1, 1, 1); - - horizontalSpacer_2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - gridLayout_2->addItem(horizontalSpacer_2, 0, 2, 1, 1); - - - verticalLayout_2->addLayout(gridLayout_2); - - horizontalLayout_4 = new QHBoxLayout(); - horizontalLayout_4->setObjectName(QString::fromUtf8("horizontalLayout_4")); - recoMethod = new QComboBox(scrollAreaWidgetContents_2); - recoMethod->setObjectName(QString::fromUtf8("recoMethod")); - sizePolicy5.setHeightForWidth(recoMethod->sizePolicy().hasHeightForWidth()); - recoMethod->setSizePolicy(sizePolicy5); - - horizontalLayout_4->addWidget(recoMethod); - - recoStereoShow = new QPushButton(scrollAreaWidgetContents_2); - recoStereoShow->setObjectName(QString::fromUtf8("recoStereoShow")); - - horizontalLayout_4->addWidget(recoStereoShow); - - - verticalLayout_2->addLayout(horizontalLayout_4); - - - verticalLayout_16->addLayout(verticalLayout_2); - - groupBox_2 = new QGroupBox(scrollAreaWidgetContents_2); - groupBox_2->setObjectName(QString::fromUtf8("groupBox_2")); - sizePolicy8.setHeightForWidth(groupBox_2->sizePolicy().hasHeightForWidth()); - groupBox_2->setSizePolicy(sizePolicy8); - groupBox_2->setMinimumSize(QSize(0, 44)); - groupBox_2->setMaximumSize(QSize(350, 16777215)); - groupBox_2->setCheckable(false); - roiShow = new QCheckBox(groupBox_2); - roiShow->setObjectName(QString::fromUtf8("roiShow")); - roiShow->setGeometry(QRect(10, 20, 49, 18)); - roiFix = new QCheckBox(groupBox_2); - roiFix->setObjectName(QString::fromUtf8("roiFix")); - roiFix->setGeometry(QRect(80, 20, 36, 18)); - - verticalLayout_16->addWidget(groupBox_2); - - groupBox_5 = new QGroupBox(scrollAreaWidgetContents_2); - groupBox_5->setObjectName(QString::fromUtf8("groupBox_5")); - groupBox_5->setMinimumSize(QSize(0, 80)); - groupBox_5->setMaximumSize(QSize(350, 16777215)); - groupBox_5->setAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter); - verticalLayout_19 = new QVBoxLayout(groupBox_5); - verticalLayout_19->setObjectName(QString::fromUtf8("verticalLayout_19")); - vboxLayout = new QVBoxLayout(); - vboxLayout->setSpacing(6); - vboxLayout->setObjectName(QString::fromUtf8("vboxLayout")); - vboxLayout->setContentsMargins(0, 0, 0, 0); - hboxLayout1 = new QHBoxLayout(); - hboxLayout1->setSpacing(6); - hboxLayout1->setObjectName(QString::fromUtf8("hboxLayout1")); - hboxLayout1->setContentsMargins(0, 0, 0, 0); - label_19 = new QLabel(groupBox_5); - label_19->setObjectName(QString::fromUtf8("label_19")); - QSizePolicy sizePolicy9(QSizePolicy::Fixed, QSizePolicy::Preferred); - sizePolicy9.setHorizontalStretch(0); - sizePolicy9.setVerticalStretch(0); - sizePolicy9.setHeightForWidth(label_19->sizePolicy().hasHeightForWidth()); - label_19->setSizePolicy(sizePolicy9); - - hboxLayout1->addWidget(label_19); - - markerBrightness = new QScrollBar(groupBox_5); - markerBrightness->setObjectName(QString::fromUtf8("markerBrightness")); - sizePolicy4.setHeightForWidth(markerBrightness->sizePolicy().hasHeightForWidth()); - markerBrightness->setSizePolicy(sizePolicy4); - markerBrightness->setMinimumSize(QSize(50, 0)); - markerBrightness->setValue(50); - markerBrightness->setOrientation(Qt::Horizontal); - - hboxLayout1->addWidget(markerBrightness); - - hboxLayout1->setStretch(1, 1); - - vboxLayout->addLayout(hboxLayout1); - - markerIgnoreWithout = new QCheckBox(groupBox_5); - markerIgnoreWithout->setObjectName(QString::fromUtf8("markerIgnoreWithout")); - markerIgnoreWithout->setChecked(true); - - vboxLayout->addWidget(markerIgnoreWithout); - - - verticalLayout_19->addLayout(vboxLayout); - - - verticalLayout_16->addWidget(groupBox_5); - - colorBox = new QGroupBox(scrollAreaWidgetContents_2); - colorBox->setObjectName(QString::fromUtf8("colorBox")); - sizePolicy6.setHeightForWidth(colorBox->sizePolicy().hasHeightForWidth()); - colorBox->setSizePolicy(sizePolicy6); - colorBox->setMinimumSize(QSize(309, 631)); - colorBox->setMaximumSize(QSize(350, 631)); - verticalLayout_9 = new QVBoxLayout(colorBox); - verticalLayout_9->setObjectName(QString::fromUtf8("verticalLayout_9")); - verticalLayout_3 = new QVBoxLayout(); - verticalLayout_3->setSpacing(2); - verticalLayout_3->setObjectName(QString::fromUtf8("verticalLayout_3")); - verticalLayout_3->setSizeConstraint(QLayout::SetDefaultConstraint); - horizontalLayout_2 = new QHBoxLayout(); - horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2")); - recoShowColor = new QCheckBox(colorBox); - recoShowColor->setObjectName(QString::fromUtf8("recoShowColor")); - sizePolicy6.setHeightForWidth(recoShowColor->sizePolicy().hasHeightForWidth()); - recoShowColor->setSizePolicy(sizePolicy6); - recoShowColor->setChecked(true); - - horizontalLayout_2->addWidget(recoShowColor); - - recoOptimizeColor = new QPushButton(colorBox); - recoOptimizeColor->setObjectName(QString::fromUtf8("recoOptimizeColor")); - recoOptimizeColor->setMaximumSize(QSize(50, 16777215)); - - horizontalLayout_2->addWidget(recoOptimizeColor); - - horizontalSpacer_4 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - horizontalLayout_2->addItem(horizontalSpacer_4); - - - verticalLayout_3->addLayout(horizontalLayout_2); - - hboxLayout2 = new QHBoxLayout(); - hboxLayout2->setSpacing(6); - hboxLayout2->setObjectName(QString::fromUtf8("hboxLayout2")); - hboxLayout2->setContentsMargins(0, 0, 0, 0); - label_28 = new QLabel(colorBox); - label_28->setObjectName(QString::fromUtf8("label_28")); - sizePolicy9.setHeightForWidth(label_28->sizePolicy().hasHeightForWidth()); - label_28->setSizePolicy(sizePolicy9); - label_28->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - hboxLayout2->addWidget(label_28); - - recoColorModel = new QComboBox(colorBox); - recoColorModel->setObjectName(QString::fromUtf8("recoColorModel")); - sizePolicy4.setHeightForWidth(recoColorModel->sizePolicy().hasHeightForWidth()); - recoColorModel->setSizePolicy(sizePolicy4); - recoColorModel->setMinimumSize(QSize(50, 0)); - recoColorModel->setMaximumSize(QSize(16777215, 20)); - - hboxLayout2->addWidget(recoColorModel); - - recoAutoWB = new QCheckBox(colorBox); - recoAutoWB->setObjectName(QString::fromUtf8("recoAutoWB")); - - hboxLayout2->addWidget(recoAutoWB); - - spacerItem2 = new QSpacerItem(0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum); - - hboxLayout2->addItem(spacerItem2); - - - verticalLayout_3->addLayout(hboxLayout2); - - hboxLayout3 = new QHBoxLayout(); - hboxLayout3->setSpacing(6); - hboxLayout3->setObjectName(QString::fromUtf8("hboxLayout3")); - hboxLayout3->setContentsMargins(0, 0, 0, 0); - label_29 = new QLabel(colorBox); - label_29->setObjectName(QString::fromUtf8("label_29")); - sizePolicy9.setHeightForWidth(label_29->sizePolicy().hasHeightForWidth()); - label_29->setSizePolicy(sizePolicy9); - label_29->setMinimumSize(QSize(32, 0)); - label_29->setLayoutDirection(Qt::LeftToRight); - label_29->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - hboxLayout3->addWidget(label_29); - - recoColorX = new QComboBox(colorBox); - recoColorX->setObjectName(QString::fromUtf8("recoColorX")); - sizePolicy4.setHeightForWidth(recoColorX->sizePolicy().hasHeightForWidth()); - recoColorX->setSizePolicy(sizePolicy4); - recoColorX->setMinimumSize(QSize(35, 0)); - recoColorX->setMaximumSize(QSize(35, 20)); - - hboxLayout3->addWidget(recoColorX); - - label_30 = new QLabel(colorBox); - label_30->setObjectName(QString::fromUtf8("label_30")); - label_30->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - hboxLayout3->addWidget(label_30); - - recoColorY = new QComboBox(colorBox); - recoColorY->setObjectName(QString::fromUtf8("recoColorY")); - recoColorY->setMinimumSize(QSize(35, 0)); - recoColorY->setMaximumSize(QSize(35, 20)); - - hboxLayout3->addWidget(recoColorY); - - label_31 = new QLabel(colorBox); - label_31->setObjectName(QString::fromUtf8("label_31")); - label_31->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - hboxLayout3->addWidget(label_31); - - recoColorZ = new QScrollBar(colorBox); - recoColorZ->setObjectName(QString::fromUtf8("recoColorZ")); - recoColorZ->setMinimumSize(QSize(100, 0)); - recoColorZ->setMaximum(255); - recoColorZ->setValue(255); - recoColorZ->setOrientation(Qt::Horizontal); - - hboxLayout3->addWidget(recoColorZ); - - hboxLayout3->setStretch(5, 1); - - verticalLayout_3->addLayout(hboxLayout3); - - hboxLayout4 = new QHBoxLayout(); - hboxLayout4->setSpacing(6); - hboxLayout4->setObjectName(QString::fromUtf8("hboxLayout4")); - hboxLayout4->setContentsMargins(0, 0, 0, 0); - label_38 = new QLabel(colorBox); - label_38->setObjectName(QString::fromUtf8("label_38")); - sizePolicy6.setHeightForWidth(label_38->sizePolicy().hasHeightForWidth()); - label_38->setSizePolicy(sizePolicy6); - - hboxLayout4->addWidget(label_38); - - recoGreyLevel = new QScrollBar(colorBox); - recoGreyLevel->setObjectName(QString::fromUtf8("recoGreyLevel")); - recoGreyLevel->setValue(50); - recoGreyLevel->setOrientation(Qt::Horizontal); - - hboxLayout4->addWidget(recoGreyLevel); - - label_39 = new QLabel(colorBox); - label_39->setObjectName(QString::fromUtf8("label_39")); - sizePolicy6.setHeightForWidth(label_39->sizePolicy().hasHeightForWidth()); - label_39->setSizePolicy(sizePolicy6); - - hboxLayout4->addWidget(label_39); - - recoSymbolSize = new QScrollBar(colorBox); - recoSymbolSize->setObjectName(QString::fromUtf8("recoSymbolSize")); - recoSymbolSize->setMinimum(1); - recoSymbolSize->setMaximum(100); - recoSymbolSize->setValue(10); - recoSymbolSize->setOrientation(Qt::Horizontal); - - hboxLayout4->addWidget(recoSymbolSize); - - - verticalLayout_3->addLayout(hboxLayout4); - - colorPlot = new ColorPlot(colorBox); - colorPlot->setObjectName(QString::fromUtf8("colorPlot")); - sizePolicy5.setHeightForWidth(colorPlot->sizePolicy().hasHeightForWidth()); - colorPlot->setSizePolicy(sizePolicy5); - colorPlot->setMinimumSize(QSize(288, 350)); - colorPlot->setMaximumSize(QSize(340, 350)); - colorPlot->setFrameShape(QFrame::StyledPanel); - colorPlot->setFrameShadow(QFrame::Raised); - - verticalLayout_3->addWidget(colorPlot); - - groupBox_4 = new QGroupBox(colorBox); - groupBox_4->setObjectName(QString::fromUtf8("groupBox_4")); - QSizePolicy sizePolicy10(QSizePolicy::Expanding, QSizePolicy::Preferred); - sizePolicy10.setHorizontalStretch(0); - sizePolicy10.setVerticalStretch(0); - sizePolicy10.setHeightForWidth(groupBox_4->sizePolicy().hasHeightForWidth()); - groupBox_4->setSizePolicy(sizePolicy10); - groupBox_4->setMinimumSize(QSize(250, 110)); - groupBox_4->setMaximumSize(QSize(350, 110)); - layoutWidget11 = new QWidget(groupBox_4); - layoutWidget11->setObjectName(QString::fromUtf8("layoutWidget11")); - layoutWidget11->setGeometry(QRect(10, 20, 271, 95)); - vboxLayout1 = new QVBoxLayout(layoutWidget11); - vboxLayout1->setSpacing(6); - vboxLayout1->setObjectName(QString::fromUtf8("vboxLayout1")); - vboxLayout1->setContentsMargins(0, 0, 0, 0); - gridLayout8 = new QGridLayout(); - gridLayout8->setSpacing(6); - gridLayout8->setObjectName(QString::fromUtf8("gridLayout8")); - gridLayout8->setContentsMargins(0, 0, 0, 0); - label_44 = new QLabel(layoutWidget11); - label_44->setObjectName(QString::fromUtf8("label_44")); - sizePolicy9.setHeightForWidth(label_44->sizePolicy().hasHeightForWidth()); - label_44->setSizePolicy(sizePolicy9); - - gridLayout8->addWidget(label_44, 1, 3, 1, 1); - - label_40 = new QLabel(layoutWidget11); - label_40->setObjectName(QString::fromUtf8("label_40")); - sizePolicy9.setHeightForWidth(label_40->sizePolicy().hasHeightForWidth()); - label_40->setSizePolicy(sizePolicy9); - - gridLayout8->addWidget(label_40, 0, 1, 1, 1); - - mapX = new QScrollBar(layoutWidget11); - mapX->setObjectName(QString::fromUtf8("mapX")); - mapX->setMaximum(718); - mapX->setOrientation(Qt::Horizontal); - - gridLayout8->addWidget(mapX, 0, 2, 1, 1); - - mapH = new QScrollBar(layoutWidget11); - mapH->setObjectName(QString::fromUtf8("mapH")); - mapH->setMaximum(395); - mapH->setOrientation(Qt::Horizontal); - - gridLayout8->addWidget(mapH, 1, 4, 1, 1); - - mapW = new QScrollBar(layoutWidget11); - mapW->setObjectName(QString::fromUtf8("mapW")); - mapW->setMaximum(395); - mapW->setOrientation(Qt::Horizontal); - - gridLayout8->addWidget(mapW, 1, 2, 1, 1); - - mapY = new QScrollBar(layoutWidget11); - mapY->setObjectName(QString::fromUtf8("mapY")); - mapY->setMaximum(718); - mapY->setOrientation(Qt::Horizontal); - - gridLayout8->addWidget(mapY, 0, 4, 1, 1); - - label_43 = new QLabel(layoutWidget11); - label_43->setObjectName(QString::fromUtf8("label_43")); - sizePolicy9.setHeightForWidth(label_43->sizePolicy().hasHeightForWidth()); - label_43->setSizePolicy(sizePolicy9); - - gridLayout8->addWidget(label_43, 1, 1, 1, 1); - - label_42 = new QLabel(layoutWidget11); - label_42->setObjectName(QString::fromUtf8("label_42")); - sizePolicy9.setHeightForWidth(label_42->sizePolicy().hasHeightForWidth()); - label_42->setSizePolicy(sizePolicy9); - - gridLayout8->addWidget(label_42, 0, 3, 1, 1); - - mapNr = new QSpinBox(layoutWidget11); - mapNr->setObjectName(QString::fromUtf8("mapNr")); - sizePolicy6.setHeightForWidth(mapNr->sizePolicy().hasHeightForWidth()); - mapNr->setSizePolicy(sizePolicy6); - mapNr->setAlignment(Qt::AlignRight); - mapNr->setMaximum(0); - - gridLayout8->addWidget(mapNr, 0, 0, 1, 1); - - mapColor = new QCheckBox(layoutWidget11); - mapColor->setObjectName(QString::fromUtf8("mapColor")); - sizePolicy6.setHeightForWidth(mapColor->sizePolicy().hasHeightForWidth()); - mapColor->setSizePolicy(sizePolicy6); - mapColor->setChecked(true); - - gridLayout8->addWidget(mapColor, 1, 0, 1, 1); - - - vboxLayout1->addLayout(gridLayout8); - - hboxLayout5 = new QHBoxLayout(); - hboxLayout5->setSpacing(6); - hboxLayout5->setObjectName(QString::fromUtf8("hboxLayout5")); - hboxLayout5->setContentsMargins(0, 0, 0, 0); - label_45 = new QLabel(layoutWidget11); - label_45->setObjectName(QString::fromUtf8("label_45")); - sizePolicy9.setHeightForWidth(label_45->sizePolicy().hasHeightForWidth()); - label_45->setSizePolicy(sizePolicy9); - - hboxLayout5->addWidget(label_45); - - mapHeight = new QDoubleSpinBox(layoutWidget11); - mapHeight->setObjectName(QString::fromUtf8("mapHeight")); - sizePolicy6.setHeightForWidth(mapHeight->sizePolicy().hasHeightForWidth()); - mapHeight->setSizePolicy(sizePolicy6); - mapHeight->setAlignment(Qt::AlignRight); - mapHeight->setDecimals(1); - mapHeight->setMinimum(50.000000000000000); - mapHeight->setMaximum(250.000000000000000); - mapHeight->setValue(180.000000000000000); - - hboxLayout5->addWidget(mapHeight); - - mapAdd = new QPushButton(layoutWidget11); - mapAdd->setObjectName(QString::fromUtf8("mapAdd")); - sizePolicy4.setHeightForWidth(mapAdd->sizePolicy().hasHeightForWidth()); - mapAdd->setSizePolicy(sizePolicy4); - mapAdd->setMaximumSize(QSize(40, 16777215)); - - hboxLayout5->addWidget(mapAdd); - - mapDel = new QPushButton(layoutWidget11); - mapDel->setObjectName(QString::fromUtf8("mapDel")); - mapDel->setMaximumSize(QSize(40, 16777215)); - - hboxLayout5->addWidget(mapDel); - - mapColorRange = new QPushButton(layoutWidget11); - mapColorRange->setObjectName(QString::fromUtf8("mapColorRange")); - mapColorRange->setMaximumSize(QSize(80, 16777215)); - - hboxLayout5->addWidget(mapColorRange); - - - vboxLayout1->addLayout(hboxLayout5); - - - verticalLayout_3->addWidget(groupBox_4); - - hboxLayout6 = new QHBoxLayout(); - hboxLayout6->setSpacing(0); - hboxLayout6->setObjectName(QString::fromUtf8("hboxLayout6")); - hboxLayout6->setContentsMargins(0, 0, 0, 0); - label_46 = new QLabel(colorBox); - label_46->setObjectName(QString::fromUtf8("label_46")); - sizePolicy9.setHeightForWidth(label_46->sizePolicy().hasHeightForWidth()); - label_46->setSizePolicy(sizePolicy9); - - hboxLayout6->addWidget(label_46); - - mapDefaultHeight = new QDoubleSpinBox(colorBox); - mapDefaultHeight->setObjectName(QString::fromUtf8("mapDefaultHeight")); - sizePolicy6.setHeightForWidth(mapDefaultHeight->sizePolicy().hasHeightForWidth()); - mapDefaultHeight->setSizePolicy(sizePolicy6); - mapDefaultHeight->setAlignment(Qt::AlignRight); - mapDefaultHeight->setDecimals(1); - mapDefaultHeight->setMinimum(0.000000000000000); - mapDefaultHeight->setMaximum(250.000000000000000); - mapDefaultHeight->setValue(180.000000000000000); - - hboxLayout6->addWidget(mapDefaultHeight); - - mapDistribution = new QPushButton(colorBox); - mapDistribution->setObjectName(QString::fromUtf8("mapDistribution")); - sizePolicy6.setHeightForWidth(mapDistribution->sizePolicy().hasHeightForWidth()); - mapDistribution->setSizePolicy(sizePolicy6); - mapDistribution->setMaximumSize(QSize(40, 16777215)); - - hboxLayout6->addWidget(mapDistribution); - - mapResetHeight = new QPushButton(colorBox); - mapResetHeight->setObjectName(QString::fromUtf8("mapResetHeight")); - sizePolicy6.setHeightForWidth(mapResetHeight->sizePolicy().hasHeightForWidth()); - mapResetHeight->setSizePolicy(sizePolicy6); - - hboxLayout6->addWidget(mapResetHeight); - - mapResetPos = new QPushButton(colorBox); - mapResetPos->setObjectName(QString::fromUtf8("mapResetPos")); - sizePolicy6.setHeightForWidth(mapResetPos->sizePolicy().hasHeightForWidth()); - mapResetPos->setSizePolicy(sizePolicy6); - - hboxLayout6->addWidget(mapResetPos); - - - verticalLayout_3->addLayout(hboxLayout6); - - - verticalLayout_9->addLayout(verticalLayout_3); - - - verticalLayout_16->addWidget(colorBox); - - verticalSpacer_3 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); - - verticalLayout_16->addItem(verticalSpacer_3); - - scrollArea_2->setWidget(scrollAreaWidgetContents_2); - - horizontalLayout_16->addWidget(scrollArea_2); - - tabs->addTab(rec, QString()); - track = new QWidget(); - track->setObjectName(QString::fromUtf8("track")); - horizontalLayout_17 = new QHBoxLayout(track); - horizontalLayout_17->setObjectName(QString::fromUtf8("horizontalLayout_17")); - scrollArea_3 = new QScrollArea(track); - scrollArea_3->setObjectName(QString::fromUtf8("scrollArea_3")); - scrollArea_3->setWidgetResizable(true); - scrollAreaWidgetContents_3 = new QWidget(); - scrollAreaWidgetContents_3->setObjectName(QString::fromUtf8("scrollAreaWidgetContents_3")); - scrollAreaWidgetContents_3->setGeometry(QRect(0, 0, 337, 843)); - verticalLayout_17 = new QVBoxLayout(scrollAreaWidgetContents_3); - verticalLayout_17->setObjectName(QString::fromUtf8("verticalLayout_17")); - hboxLayout7 = new QHBoxLayout(); - hboxLayout7->setSpacing(4); - hboxLayout7->setObjectName(QString::fromUtf8("hboxLayout7")); - hboxLayout7->setContentsMargins(0, 0, 0, 0); - trackOnlineCalc = new QCheckBox(scrollAreaWidgetContents_3); - trackOnlineCalc->setObjectName(QString::fromUtf8("trackOnlineCalc")); - trackOnlineCalc->setMaximumSize(QSize(120, 16777215)); - trackOnlineCalc->setChecked(false); - - hboxLayout7->addWidget(trackOnlineCalc); - - trackRepeat = new QCheckBox(scrollAreaWidgetContents_3); - trackRepeat->setObjectName(QString::fromUtf8("trackRepeat")); - trackRepeat->setMaximumSize(QSize(130, 16777215)); - trackRepeat->setChecked(true); - - hboxLayout7->addWidget(trackRepeat); - - trackRepeatQual = new QSpinBox(scrollAreaWidgetContents_3); - trackRepeatQual->setObjectName(QString::fromUtf8("trackRepeatQual")); - sizePolicy6.setHeightForWidth(trackRepeatQual->sizePolicy().hasHeightForWidth()); - trackRepeatQual->setSizePolicy(sizePolicy6); - trackRepeatQual->setMinimumSize(QSize(40, 0)); - trackRepeatQual->setLayoutDirection(Qt::LeftToRight); - trackRepeatQual->setAlignment(Qt::AlignRight); - trackRepeatQual->setMaximum(100); - trackRepeatQual->setValue(50); - - hboxLayout7->addWidget(trackRepeatQual); - - spacerItem3 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - hboxLayout7->addItem(spacerItem3); - - - verticalLayout_17->addLayout(hboxLayout7); - - horizontalLayout_5 = new QHBoxLayout(); - horizontalLayout_5->setObjectName(QString::fromUtf8("horizontalLayout_5")); - trackExtrapolation = new QCheckBox(scrollAreaWidgetContents_3); - trackExtrapolation->setObjectName(QString::fromUtf8("trackExtrapolation")); - trackExtrapolation->setMaximumSize(QSize(150, 16777215)); - trackExtrapolation->setChecked(true); - - horizontalLayout_5->addWidget(trackExtrapolation); - - trackMerge = new QCheckBox(scrollAreaWidgetContents_3); - trackMerge->setObjectName(QString::fromUtf8("trackMerge")); - trackMerge->setMaximumSize(QSize(75, 16777215)); - - horizontalLayout_5->addWidget(trackMerge); - - trackOnlyVisible = new QCheckBox(scrollAreaWidgetContents_3); - trackOnlyVisible->setObjectName(QString::fromUtf8("trackOnlyVisible")); - trackOnlyVisible->setMaximumSize(QSize(75, 16777215)); - trackOnlyVisible->setChecked(true); - - horizontalLayout_5->addWidget(trackOnlyVisible); - - horizontalSpacer_15 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - horizontalLayout_5->addItem(horizontalSpacer_15); - - - verticalLayout_17->addLayout(horizontalLayout_5); - - gridLayout9 = new QGridLayout(); - gridLayout9->setSpacing(2); - gridLayout9->setObjectName(QString::fromUtf8("gridLayout9")); - gridLayout9->setContentsMargins(0, 0, 0, 0); - trackNumberNow = new QLabel(scrollAreaWidgetContents_3); - trackNumberNow->setObjectName(QString::fromUtf8("trackNumberNow")); - trackNumberNow->setFont(font1); - trackNumberNow->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout9->addWidget(trackNumberNow, 3, 1, 1, 1); - - label_22 = new QLabel(scrollAreaWidgetContents_3); - label_22->setObjectName(QString::fromUtf8("label_22")); - sizePolicy4.setHeightForWidth(label_22->sizePolicy().hasHeightForWidth()); - label_22->setSizePolicy(sizePolicy4); - label_22->setMinimumSize(QSize(0, 16)); - label_22->setMaximumSize(QSize(300, 16777215)); - - gridLayout9->addWidget(label_22, 1, 0, 1, 1); - - label_23 = new QLabel(scrollAreaWidgetContents_3); - label_23->setObjectName(QString::fromUtf8("label_23")); - sizePolicy4.setHeightForWidth(label_23->sizePolicy().hasHeightForWidth()); - label_23->setSizePolicy(sizePolicy4); - label_23->setMinimumSize(QSize(0, 16)); - label_23->setMaximumSize(QSize(300, 16777215)); - - gridLayout9->addWidget(label_23, 3, 0, 1, 1); - - trackNumberAll = new QLabel(scrollAreaWidgetContents_3); - trackNumberAll->setObjectName(QString::fromUtf8("trackNumberAll")); - trackNumberAll->setFont(font1); - trackNumberAll->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout9->addWidget(trackNumberAll, 1, 1, 1, 1); - - spacerItem4 = new QSpacerItem(40, 0, QSizePolicy::Expanding, QSizePolicy::Minimum); - - gridLayout9->addItem(spacerItem4, 1, 2, 1, 1); - - label_65 = new QLabel(scrollAreaWidgetContents_3); - label_65->setObjectName(QString::fromUtf8("label_65")); - sizePolicy4.setHeightForWidth(label_65->sizePolicy().hasHeightForWidth()); - label_65->setSizePolicy(sizePolicy4); - label_65->setMinimumSize(QSize(0, 16)); - label_65->setMaximumSize(QSize(300, 16777215)); - - gridLayout9->addWidget(label_65, 2, 0, 1, 1); - - trackNumberVisible = new QLabel(scrollAreaWidgetContents_3); - trackNumberVisible->setObjectName(QString::fromUtf8("trackNumberVisible")); - trackNumberVisible->setFont(font1); - trackNumberVisible->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); - - gridLayout9->addWidget(trackNumberVisible, 2, 1, 1, 1); - - - verticalLayout_17->addLayout(gridLayout9); - - gridLayout10 = new QGridLayout(); - gridLayout10->setSpacing(2); - gridLayout10->setObjectName(QString::fromUtf8("gridLayout10")); - gridLayout10->setContentsMargins(0, 0, 0, 0); - trackExport = new QPushButton(scrollAreaWidgetContents_3); - trackExport->setObjectName(QString::fromUtf8("trackExport")); - trackExport->setMaximumSize(QSize(16777215, 16777215)); - - gridLayout10->addWidget(trackExport, 1, 0, 1, 1); - - trackCalc = new QPushButton(scrollAreaWidgetContents_3); - trackCalc->setObjectName(QString::fromUtf8("trackCalc")); - trackCalc->setMaximumSize(QSize(16777215, 16777215)); - - gridLayout10->addWidget(trackCalc, 0, 0, 1, 1); - - trackImport = new QPushButton(scrollAreaWidgetContents_3); - trackImport->setObjectName(QString::fromUtf8("trackImport")); - trackImport->setMaximumSize(QSize(16777215, 16777215)); - - gridLayout10->addWidget(trackImport, 1, 1, 1, 1); - - trackReset = new QPushButton(scrollAreaWidgetContents_3); - trackReset->setObjectName(QString::fromUtf8("trackReset")); - trackReset->setMaximumSize(QSize(16777215, 16777215)); - - gridLayout10->addWidget(trackReset, 0, 1, 1, 1); - - - verticalLayout_17->addLayout(gridLayout10); - - groupBox_8 = new QGroupBox(scrollAreaWidgetContents_3); - groupBox_8->setObjectName(QString::fromUtf8("groupBox_8")); - groupBox_8->setMinimumSize(QSize(0, 44)); - trackRoiShow = new QCheckBox(groupBox_8); - trackRoiShow->setObjectName(QString::fromUtf8("trackRoiShow")); - trackRoiShow->setGeometry(QRect(10, 20, 49, 18)); - trackRoiFix = new QCheckBox(groupBox_8); - trackRoiFix->setObjectName(QString::fromUtf8("trackRoiFix")); - trackRoiFix->setGeometry(QRect(70, 20, 36, 18)); - - verticalLayout_17->addWidget(groupBox_8); - - groupBox_7 = new QGroupBox(scrollAreaWidgetContents_3); - groupBox_7->setObjectName(QString::fromUtf8("groupBox_7")); - sizePolicy10.setHeightForWidth(groupBox_7->sizePolicy().hasHeightForWidth()); - groupBox_7->setSizePolicy(sizePolicy10); - groupBox_7->setMaximumSize(QSize(324, 16777215)); - verticalLayout_6 = new QVBoxLayout(groupBox_7); - verticalLayout_6->setSpacing(2); - verticalLayout_6->setObjectName(QString::fromUtf8("verticalLayout_6")); - verticalLayout_6->setContentsMargins(2, 6, 2, 6); - gridLayout_4 = new QGridLayout(); - gridLayout_4->setSpacing(4); - gridLayout_4->setObjectName(QString::fromUtf8("gridLayout_4")); - trackMissingFrames = new QCheckBox(groupBox_7); - trackMissingFrames->setObjectName(QString::fromUtf8("trackMissingFrames")); - sizePolicy5.setHeightForWidth(trackMissingFrames->sizePolicy().hasHeightForWidth()); - trackMissingFrames->setSizePolicy(sizePolicy5); - trackMissingFrames->setMaximumSize(QSize(100, 16777215)); - trackMissingFrames->setChecked(true); - - gridLayout_4->addWidget(trackMissingFrames, 0, 0, 1, 1); - - trackRecalcHeight = new QCheckBox(groupBox_7); - trackRecalcHeight->setObjectName(QString::fromUtf8("trackRecalcHeight")); - sizePolicy5.setHeightForWidth(trackRecalcHeight->sizePolicy().hasHeightForWidth()); - trackRecalcHeight->setSizePolicy(sizePolicy5); - trackRecalcHeight->setMaximumSize(QSize(100, 16777215)); - trackRecalcHeight->setChecked(true); - - gridLayout_4->addWidget(trackRecalcHeight, 0, 1, 1, 1); - - trackAlternateHeight = new QCheckBox(groupBox_7); - trackAlternateHeight->setObjectName(QString::fromUtf8("trackAlternateHeight")); - sizePolicy5.setHeightForWidth(trackAlternateHeight->sizePolicy().hasHeightForWidth()); - trackAlternateHeight->setSizePolicy(sizePolicy5); - trackAlternateHeight->setMaximumSize(QSize(100, 16777215)); - - gridLayout_4->addWidget(trackAlternateHeight, 0, 2, 1, 1); - - exportElimTp = new QCheckBox(groupBox_7); - exportElimTp->setObjectName(QString::fromUtf8("exportElimTp")); - sizePolicy5.setHeightForWidth(exportElimTp->sizePolicy().hasHeightForWidth()); - exportElimTp->setSizePolicy(sizePolicy5); - exportElimTp->setMaximumSize(QSize(120, 16777215)); - exportElimTp->setChecked(false); - - gridLayout_4->addWidget(exportElimTp, 1, 0, 1, 1); - - exportElimTrj = new QCheckBox(groupBox_7); - exportElimTrj->setObjectName(QString::fromUtf8("exportElimTrj")); - sizePolicy5.setHeightForWidth(exportElimTrj->sizePolicy().hasHeightForWidth()); - exportElimTrj->setSizePolicy(sizePolicy5); - exportElimTrj->setMaximumSize(QSize(120, 16777215)); - exportElimTrj->setChecked(false); - - gridLayout_4->addWidget(exportElimTrj, 1, 1, 1, 1); - - exportSmooth = new QCheckBox(groupBox_7); - exportSmooth->setObjectName(QString::fromUtf8("exportSmooth")); - sizePolicy5.setHeightForWidth(exportSmooth->sizePolicy().hasHeightForWidth()); - exportSmooth->setSizePolicy(sizePolicy5); - exportSmooth->setMaximumSize(QSize(120, 16777215)); - exportSmooth->setChecked(true); - - gridLayout_4->addWidget(exportSmooth, 1, 2, 1, 1); - - exportViewDir = new QCheckBox(groupBox_7); - exportViewDir->setObjectName(QString::fromUtf8("exportViewDir")); - sizePolicy5.setHeightForWidth(exportViewDir->sizePolicy().hasHeightForWidth()); - exportViewDir->setSizePolicy(sizePolicy5); - exportViewDir->setMaximumSize(QSize(120, 16777215)); - - gridLayout_4->addWidget(exportViewDir, 2, 0, 1, 1); - - exportAngleOfView = new QCheckBox(groupBox_7); - exportAngleOfView->setObjectName(QString::fromUtf8("exportAngleOfView")); - sizePolicy5.setHeightForWidth(exportAngleOfView->sizePolicy().hasHeightForWidth()); - exportAngleOfView->setSizePolicy(sizePolicy5); - exportAngleOfView->setMaximumSize(QSize(120, 16777215)); - - gridLayout_4->addWidget(exportAngleOfView, 2, 1, 1, 1); - - exportUseM = new QCheckBox(groupBox_7); - exportUseM->setObjectName(QString::fromUtf8("exportUseM")); - sizePolicy5.setHeightForWidth(exportUseM->sizePolicy().hasHeightForWidth()); - exportUseM->setSizePolicy(sizePolicy5); - exportUseM->setMaximumSize(QSize(120, 16777215)); - - gridLayout_4->addWidget(exportUseM, 2, 2, 1, 1); - - exportComment = new QCheckBox(groupBox_7); - exportComment->setObjectName(QString::fromUtf8("exportComment")); - sizePolicy5.setHeightForWidth(exportComment->sizePolicy().hasHeightForWidth()); - exportComment->setSizePolicy(sizePolicy5); - exportComment->setMaximumSize(QSize(120, 16777215)); - - gridLayout_4->addWidget(exportComment, 3, 0, 1, 1); - - exportMarkerID = new QCheckBox(groupBox_7); - exportMarkerID->setObjectName(QString::fromUtf8("exportMarkerID")); - - gridLayout_4->addWidget(exportMarkerID, 3, 1, 1, 1); - - gridLayout_4->setColumnStretch(0, 1); - gridLayout_4->setColumnStretch(1, 1); - gridLayout_4->setColumnStretch(2, 1); - - verticalLayout_6->addLayout(gridLayout_4); - - - verticalLayout_17->addWidget(groupBox_7); - - horizontalLayout_9 = new QHBoxLayout(); - horizontalLayout_9->setObjectName(QString::fromUtf8("horizontalLayout_9")); - trackTest = new QPushButton(scrollAreaWidgetContents_3); - trackTest->setObjectName(QString::fromUtf8("trackTest")); - trackTest->setMaximumSize(QSize(60, 16777215)); - - horizontalLayout_9->addWidget(trackTest); - - testEqual = new QCheckBox(scrollAreaWidgetContents_3); - testEqual->setObjectName(QString::fromUtf8("testEqual")); - testEqual->setMaximumSize(QSize(60, 16777215)); - testEqual->setChecked(true); - - horizontalLayout_9->addWidget(testEqual); - - testVelocity = new QCheckBox(scrollAreaWidgetContents_3); - testVelocity->setObjectName(QString::fromUtf8("testVelocity")); - testVelocity->setMaximumSize(QSize(60, 16777215)); - testVelocity->setChecked(true); - - horizontalLayout_9->addWidget(testVelocity); - - testInside = new QCheckBox(scrollAreaWidgetContents_3); - testInside->setObjectName(QString::fromUtf8("testInside")); - testInside->setMaximumSize(QSize(60, 16777215)); - testInside->setChecked(true); - - horizontalLayout_9->addWidget(testInside); - - testLength = new QCheckBox(scrollAreaWidgetContents_3); - testLength->setObjectName(QString::fromUtf8("testLength")); - testLength->setMaximumSize(QSize(60, 16777215)); - testLength->setChecked(true); - - horizontalLayout_9->addWidget(testLength); - - horizontalSpacer_14 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - horizontalLayout_9->addItem(horizontalSpacer_14); - - horizontalLayout_9->setStretch(0, 1); - - verticalLayout_17->addLayout(horizontalLayout_9); - - groupBox_6 = new QGroupBox(scrollAreaWidgetContents_3); - groupBox_6->setObjectName(QString::fromUtf8("groupBox_6")); - sizePolicy8.setHeightForWidth(groupBox_6->sizePolicy().hasHeightForWidth()); - groupBox_6->setSizePolicy(sizePolicy8); - groupBox_6->setMinimumSize(QSize(0, 120)); - groupBox_6->setMaximumSize(QSize(324, 16777215)); - verticalLayout_20 = new QVBoxLayout(groupBox_6); - verticalLayout_20->setObjectName(QString::fromUtf8("verticalLayout_20")); - verticalLayout = new QVBoxLayout(); - verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); - gridLayout_17 = new QGridLayout(); - gridLayout_17->setObjectName(QString::fromUtf8("gridLayout_17")); - gridLayout_17->setVerticalSpacing(0); - label_52 = new QLabel(groupBox_6); - label_52->setObjectName(QString::fromUtf8("label_52")); - label_52->setMaximumSize(QSize(100, 16777215)); - - gridLayout_17->addWidget(label_52, 0, 0, 1, 1); - - trackRegionScale = new QScrollBar(groupBox_6); - trackRegionScale->setObjectName(QString::fromUtf8("trackRegionScale")); - trackRegionScale->setMinimum(1); - trackRegionScale->setValue(16); - trackRegionScale->setOrientation(Qt::Horizontal); - - gridLayout_17->addWidget(trackRegionScale, 0, 1, 1, 1); - - label_53 = new QLabel(groupBox_6); - label_53->setObjectName(QString::fromUtf8("label_53")); - label_53->setMaximumSize(QSize(100, 16777215)); - - gridLayout_17->addWidget(label_53, 1, 0, 1, 1); - - trackRegionLevels = new QScrollBar(groupBox_6); - trackRegionLevels->setObjectName(QString::fromUtf8("trackRegionLevels")); - trackRegionLevels->setMinimum(0); - trackRegionLevels->setMaximum(8); - trackRegionLevels->setValue(3); - trackRegionLevels->setOrientation(Qt::Horizontal); - - gridLayout_17->addWidget(trackRegionLevels, 1, 1, 1, 1); - - trackErrorExponent = new QScrollBar(groupBox_6); - trackErrorExponent->setObjectName(QString::fromUtf8("trackErrorExponent")); - trackErrorExponent->setMinimum(-10); - trackErrorExponent->setMaximum(10); - trackErrorExponent->setPageStep(3); - trackErrorExponent->setOrientation(Qt::Horizontal); - - gridLayout_17->addWidget(trackErrorExponent, 2, 1, 1, 1); - - label_66 = new QLabel(groupBox_6); - label_66->setObjectName(QString::fromUtf8("label_66")); - label_66->setMaximumSize(QSize(100, 16777215)); - - gridLayout_17->addWidget(label_66, 2, 0, 1, 1); - - gridLayout_17->setColumnStretch(1, 1); - - verticalLayout->addLayout(gridLayout_17); - - trackShowSearchSize = new QCheckBox(groupBox_6); - trackShowSearchSize->setObjectName(QString::fromUtf8("trackShowSearchSize")); - trackShowSearchSize->setMaximumSize(QSize(300, 16777215)); - - verticalLayout->addWidget(trackShowSearchSize); - - - verticalLayout_20->addLayout(verticalLayout); - - - verticalLayout_17->addWidget(groupBox_6); - - groupBox_3 = new QGroupBox(scrollAreaWidgetContents_3); - groupBox_3->setObjectName(QString::fromUtf8("groupBox_3")); - groupBox_3->setMinimumSize(QSize(0, 325)); - groupBox_3->setMaximumSize(QSize(324, 16777215)); - verticalLayout_21 = new QVBoxLayout(groupBox_3); - verticalLayout_21->setSpacing(6); - verticalLayout_21->setObjectName(QString::fromUtf8("verticalLayout_21")); - verticalLayout_21->setContentsMargins(2, 2, 2, 2); - vboxLayout2 = new QVBoxLayout(); - vboxLayout2->setSpacing(4); - vboxLayout2->setObjectName(QString::fromUtf8("vboxLayout2")); - vboxLayout2->setContentsMargins(4, 4, 4, 4); - hboxLayout8 = new QHBoxLayout(); - hboxLayout8->setSpacing(2); - hboxLayout8->setObjectName(QString::fromUtf8("hboxLayout8")); - hboxLayout8->setContentsMargins(0, 0, 0, 0); - trackShow = new QCheckBox(groupBox_3); - trackShow->setObjectName(QString::fromUtf8("trackShow")); - trackShow->setChecked(true); - - hboxLayout8->addWidget(trackShow); - - trackFix = new QCheckBox(groupBox_3); - trackFix->setObjectName(QString::fromUtf8("trackFix")); - - hboxLayout8->addWidget(trackFix); - - spacerItem5 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - hboxLayout8->addItem(spacerItem5); - - - vboxLayout2->addLayout(hboxLayout8); - - trackShowOnlyVisible = new QCheckBox(groupBox_3); - trackShowOnlyVisible->setObjectName(QString::fromUtf8("trackShowOnlyVisible")); - trackShowOnlyVisible->setMaximumSize(QSize(300, 16777215)); - - vboxLayout2->addWidget(trackShowOnlyVisible); - - horizontalLayout = new QHBoxLayout(); - horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); - trackShowOnly = new QCheckBox(groupBox_3); - trackShowOnly->setObjectName(QString::fromUtf8("trackShowOnly")); - trackShowOnly->setMaximumSize(QSize(160, 16777215)); - - horizontalLayout->addWidget(trackShowOnly); - - trackShowOnlyNr = new QSpinBox(groupBox_3); - trackShowOnlyNr->setObjectName(QString::fromUtf8("trackShowOnlyNr")); - trackShowOnlyNr->setMinimum(1); - - horizontalLayout->addWidget(trackShowOnlyNr); - - trackGotoNr = new QPushButton(groupBox_3); - trackGotoNr->setObjectName(QString::fromUtf8("trackGotoNr")); - trackGotoNr->setMaximumSize(QSize(40, 16777215)); - - horizontalLayout->addWidget(trackGotoNr); - - trackGotoStartNr = new QPushButton(groupBox_3); - trackGotoStartNr->setObjectName(QString::fromUtf8("trackGotoStartNr")); - trackGotoStartNr->setMaximumSize(QSize(40, 16777215)); - - horizontalLayout->addWidget(trackGotoStartNr); - - trackGotoEndNr = new QPushButton(groupBox_3); - trackGotoEndNr->setObjectName(QString::fromUtf8("trackGotoEndNr")); - trackGotoEndNr->setMaximumSize(QSize(40, 16777215)); - - horizontalLayout->addWidget(trackGotoEndNr); - - horizontalSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - horizontalLayout->addItem(horizontalSpacer); - - - vboxLayout2->addLayout(horizontalLayout); - - horizontalLayout_20 = new QHBoxLayout(); - horizontalLayout_20->setObjectName(QString::fromUtf8("horizontalLayout_20")); - trackShowOnlyList = new QCheckBox(groupBox_3); - trackShowOnlyList->setObjectName(QString::fromUtf8("trackShowOnlyList")); - - horizontalLayout_20->addWidget(trackShowOnlyList); - - trackShowOnlyNrList = new QLineEdit(groupBox_3); - trackShowOnlyNrList->setObjectName(QString::fromUtf8("trackShowOnlyNrList")); - trackShowOnlyNrList->setEnabled(false); - - horizontalLayout_20->addWidget(trackShowOnlyNrList); - - trackShowOnlyListButton = new QPushButton(groupBox_3); - trackShowOnlyListButton->setObjectName(QString::fromUtf8("trackShowOnlyListButton")); - trackShowOnlyListButton->setEnabled(false); - trackShowOnlyListButton->setMaximumSize(QSize(40, 16777215)); - - horizontalLayout_20->addWidget(trackShowOnlyListButton); - - - vboxLayout2->addLayout(horizontalLayout_20); - - spacerItem6 = new QSpacerItem(275, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); - - vboxLayout2->addItem(spacerItem6); - - gridLayout11 = new QGridLayout(); - gridLayout11->setObjectName(QString::fromUtf8("gridLayout11")); - gridLayout11->setHorizontalSpacing(2); - gridLayout11->setVerticalSpacing(0); - gridLayout11->setContentsMargins(0, 0, 0, 0); - trackShowPath = new QCheckBox(groupBox_3); - trackShowPath->setObjectName(QString::fromUtf8("trackShowPath")); - trackShowPath->setMaximumSize(QSize(170, 16777215)); - trackShowPath->setChecked(true); - - gridLayout11->addWidget(trackShowPath, 2, 0, 1, 1); - - trackCurrentPointSize = new QSpinBox(groupBox_3); - trackCurrentPointSize->setObjectName(QString::fromUtf8("trackCurrentPointSize")); - trackCurrentPointSize->setEnabled(false); - trackCurrentPointSize->setMaximumSize(QSize(16777215, 16777215)); - trackCurrentPointSize->setAlignment(Qt::AlignRight); - trackCurrentPointSize->setMinimum(1); - trackCurrentPointSize->setValue(60); - - gridLayout11->addWidget(trackCurrentPointSize, 0, 2, 1, 1); - - trackColColorSize = new QSpinBox(groupBox_3); - trackColColorSize->setObjectName(QString::fromUtf8("trackColColorSize")); - trackColColorSize->setAlignment(Qt::AlignRight); - trackColColorSize->setMinimum(1); - trackColColorSize->setValue(11); - - gridLayout11->addWidget(trackColColorSize, 3, 2, 1, 1); - - trackShowCurrentPoint = new QCheckBox(groupBox_3); - trackShowCurrentPoint->setObjectName(QString::fromUtf8("trackShowCurrentPoint")); - trackShowCurrentPoint->setMaximumSize(QSize(150, 16777215)); - trackShowCurrentPoint->setChecked(true); - - gridLayout11->addWidget(trackShowCurrentPoint, 0, 0, 1, 1); - - label_25 = new QLabel(groupBox_3); - label_25->setObjectName(QString::fromUtf8("label_25")); - label_25->setMaximumSize(QSize(30, 16777215)); - - gridLayout11->addWidget(label_25, 2, 1, 1, 1); - - label_36 = new QLabel(groupBox_3); - label_36->setObjectName(QString::fromUtf8("label_36")); - label_36->setMaximumSize(QSize(30, 16777215)); - - gridLayout11->addWidget(label_36, 3, 1, 1, 1); - - trackShowColColor = new QCheckBox(groupBox_3); - trackShowColColor->setObjectName(QString::fromUtf8("trackShowColColor")); - trackShowColColor->setMinimumSize(QSize(124, 0)); - trackShowColColor->setMaximumSize(QSize(170, 16777215)); - trackShowColColor->setChecked(true); - - gridLayout11->addWidget(trackShowColColor, 3, 0, 1, 1); - - trackShowColorMarker = new QCheckBox(groupBox_3); - trackShowColorMarker->setObjectName(QString::fromUtf8("trackShowColorMarker")); - trackShowColorMarker->setMaximumSize(QSize(170, 16777215)); - trackShowColorMarker->setChecked(true); - - gridLayout11->addWidget(trackShowColorMarker, 4, 0, 1, 1); - - trackShowNumber = new QCheckBox(groupBox_3); - trackShowNumber->setObjectName(QString::fromUtf8("trackShowNumber")); - trackShowNumber->setMaximumSize(QSize(170, 16777215)); - trackShowNumber->setChecked(true); - - gridLayout11->addWidget(trackShowNumber, 5, 0, 1, 1); - - label_48 = new QLabel(groupBox_3); - label_48->setObjectName(QString::fromUtf8("label_48")); - label_48->setMaximumSize(QSize(30, 16777215)); - - gridLayout11->addWidget(label_48, 5, 1, 1, 1); - - trackNumberSize = new QSpinBox(groupBox_3); - trackNumberSize->setObjectName(QString::fromUtf8("trackNumberSize")); - trackNumberSize->setAlignment(Qt::AlignRight); - trackNumberSize->setMinimum(2); - trackNumberSize->setValue(14); - - gridLayout11->addWidget(trackNumberSize, 5, 2, 1, 1); - - trackNumberBold = new QCheckBox(groupBox_3); - trackNumberBold->setObjectName(QString::fromUtf8("trackNumberBold")); - trackNumberBold->setMaximumSize(QSize(70, 16777215)); - trackNumberBold->setChecked(true); - - gridLayout11->addWidget(trackNumberBold, 5, 3, 1, 1); - - trackHeadSized = new QCheckBox(groupBox_3); - trackHeadSized->setObjectName(QString::fromUtf8("trackHeadSized")); - trackHeadSized->setMaximumSize(QSize(70, 16777215)); - trackHeadSized->setChecked(true); - - gridLayout11->addWidget(trackHeadSized, 0, 3, 1, 1); - - trackShowHeightIndividual = new QCheckBox(groupBox_3); - trackShowHeightIndividual->setObjectName(QString::fromUtf8("trackShowHeightIndividual")); - trackShowHeightIndividual->setMaximumSize(QSize(70, 16777215)); - trackShowHeightIndividual->setChecked(true); - - gridLayout11->addWidget(trackShowHeightIndividual, 3, 3, 1, 1); - - trackPathColorButton = new QPushButton(groupBox_3); - trackPathColorButton->setObjectName(QString::fromUtf8("trackPathColorButton")); - sizePolicy5.setHeightForWidth(trackPathColorButton->sizePolicy().hasHeightForWidth()); - trackPathColorButton->setSizePolicy(sizePolicy5); - trackPathColorButton->setMaximumSize(QSize(60, 20)); - trackPathColorButton->setBaseSize(QSize(0, 0)); - QPalette palette; - QBrush brush(QColor(0, 0, 0, 255)); - brush.setStyle(Qt::SolidPattern); - palette.setBrush(QPalette::Active, QPalette::WindowText, brush); - QBrush brush1(QColor(255, 0, 0, 255)); - brush1.setStyle(Qt::SolidPattern); - palette.setBrush(QPalette::Active, QPalette::Button, brush1); - QBrush brush2(QColor(255, 127, 127, 255)); - brush2.setStyle(Qt::SolidPattern); - palette.setBrush(QPalette::Active, QPalette::Light, brush2); - QBrush brush3(QColor(255, 63, 63, 255)); - brush3.setStyle(Qt::SolidPattern); - palette.setBrush(QPalette::Active, QPalette::Midlight, brush3); - QBrush brush4(QColor(127, 0, 0, 255)); - brush4.setStyle(Qt::SolidPattern); - palette.setBrush(QPalette::Active, QPalette::Dark, brush4); - QBrush brush5(QColor(170, 0, 0, 255)); - brush5.setStyle(Qt::SolidPattern); - palette.setBrush(QPalette::Active, QPalette::Mid, brush5); - palette.setBrush(QPalette::Active, QPalette::Text, brush); - QBrush brush6(QColor(255, 255, 255, 255)); - brush6.setStyle(Qt::SolidPattern); - palette.setBrush(QPalette::Active, QPalette::BrightText, brush6); - palette.setBrush(QPalette::Active, QPalette::ButtonText, brush); - palette.setBrush(QPalette::Active, QPalette::Base, brush6); - palette.setBrush(QPalette::Active, QPalette::Window, brush1); - palette.setBrush(QPalette::Active, QPalette::Shadow, brush); - palette.setBrush(QPalette::Active, QPalette::AlternateBase, brush2); - QBrush brush7(QColor(255, 255, 220, 255)); - brush7.setStyle(Qt::SolidPattern); - palette.setBrush(QPalette::Active, QPalette::ToolTipBase, brush7); - palette.setBrush(QPalette::Active, QPalette::ToolTipText, brush); - palette.setBrush(QPalette::Inactive, QPalette::WindowText, brush); - palette.setBrush(QPalette::Inactive, QPalette::Button, brush1); - palette.setBrush(QPalette::Inactive, QPalette::Light, brush2); - palette.setBrush(QPalette::Inactive, QPalette::Midlight, brush3); - palette.setBrush(QPalette::Inactive, QPalette::Dark, brush4); - palette.setBrush(QPalette::Inactive, QPalette::Mid, brush5); - palette.setBrush(QPalette::Inactive, QPalette::Text, brush); - palette.setBrush(QPalette::Inactive, QPalette::BrightText, brush6); - palette.setBrush(QPalette::Inactive, QPalette::ButtonText, brush); - palette.setBrush(QPalette::Inactive, QPalette::Base, brush6); - palette.setBrush(QPalette::Inactive, QPalette::Window, brush1); - palette.setBrush(QPalette::Inactive, QPalette::Shadow, brush); - palette.setBrush(QPalette::Inactive, QPalette::AlternateBase, brush2); - palette.setBrush(QPalette::Inactive, QPalette::ToolTipBase, brush7); - palette.setBrush(QPalette::Inactive, QPalette::ToolTipText, brush); - palette.setBrush(QPalette::Disabled, QPalette::WindowText, brush4); - palette.setBrush(QPalette::Disabled, QPalette::Button, brush1); - palette.setBrush(QPalette::Disabled, QPalette::Light, brush2); - palette.setBrush(QPalette::Disabled, QPalette::Midlight, brush3); - palette.setBrush(QPalette::Disabled, QPalette::Dark, brush4); - palette.setBrush(QPalette::Disabled, QPalette::Mid, brush5); - palette.setBrush(QPalette::Disabled, QPalette::Text, brush4); - palette.setBrush(QPalette::Disabled, QPalette::BrightText, brush6); - palette.setBrush(QPalette::Disabled, QPalette::ButtonText, brush4); - palette.setBrush(QPalette::Disabled, QPalette::Base, brush1); - palette.setBrush(QPalette::Disabled, QPalette::Window, brush1); - palette.setBrush(QPalette::Disabled, QPalette::Shadow, brush); - palette.setBrush(QPalette::Disabled, QPalette::AlternateBase, brush1); - palette.setBrush(QPalette::Disabled, QPalette::ToolTipBase, brush7); - palette.setBrush(QPalette::Disabled, QPalette::ToolTipText, brush); - trackPathColorButton->setPalette(palette); - - gridLayout11->addWidget(trackPathColorButton, 2, 3, 1, 1); - - trackPathWidth = new QSpinBox(groupBox_3); - trackPathWidth->setObjectName(QString::fromUtf8("trackPathWidth")); - trackPathWidth->setAlignment(Qt::AlignRight); - trackPathWidth->setMinimum(1); - trackPathWidth->setMaximum(20); - trackPathWidth->setValue(2); - - gridLayout11->addWidget(trackPathWidth, 2, 2, 1, 1); - - trackShowPoints = new QCheckBox(groupBox_3); - trackShowPoints->setObjectName(QString::fromUtf8("trackShowPoints")); - trackShowPoints->setMinimumSize(QSize(90, 0)); - trackShowPoints->setMaximumSize(QSize(170, 16777215)); - trackShowPoints->setChecked(false); - - gridLayout11->addWidget(trackShowPoints, 1, 0, 1, 1); - - trackShowPointsColored = new QCheckBox(groupBox_3); - trackShowPointsColored->setObjectName(QString::fromUtf8("trackShowPointsColored")); - trackShowPointsColored->setMaximumSize(QSize(70, 16777215)); - trackShowPointsColored->setChecked(true); - - gridLayout11->addWidget(trackShowPointsColored, 1, 3, 1, 1); - - label_13 = new QLabel(groupBox_3); - label_13->setObjectName(QString::fromUtf8("label_13")); - label_13->setMaximumSize(QSize(30, 16777215)); - - gridLayout11->addWidget(label_13, 1, 1, 1, 1); - - label_41 = new QLabel(groupBox_3); - label_41->setObjectName(QString::fromUtf8("label_41")); - label_41->setMaximumSize(QSize(30, 16777215)); - - gridLayout11->addWidget(label_41, 4, 1, 1, 1); - - trackColorMarkerSize = new QSpinBox(groupBox_3); - trackColorMarkerSize->setObjectName(QString::fromUtf8("trackColorMarkerSize")); - trackColorMarkerSize->setAlignment(Qt::AlignRight); - trackColorMarkerSize->setMinimum(1); - trackColorMarkerSize->setValue(14); - - gridLayout11->addWidget(trackColorMarkerSize, 4, 2, 1, 1); - - trackPointSize = new QSpinBox(groupBox_3); - trackPointSize->setObjectName(QString::fromUtf8("trackPointSize")); - trackPointSize->setAlignment(Qt::AlignRight); - trackPointSize->setMinimum(1); - trackPointSize->setValue(7); - - gridLayout11->addWidget(trackPointSize, 1, 2, 1, 1); - - label_47 = new QLabel(groupBox_3); - label_47->setObjectName(QString::fromUtf8("label_47")); - label_47->setMaximumSize(QSize(30, 16777215)); - - gridLayout11->addWidget(label_47, 0, 1, 1, 1); - - trackShowGroundPosition = new QCheckBox(groupBox_3); - trackShowGroundPosition->setObjectName(QString::fromUtf8("trackShowGroundPosition")); - trackShowGroundPosition->setMaximumSize(QSize(170, 16777215)); - trackShowGroundPosition->setChecked(false); - - gridLayout11->addWidget(trackShowGroundPosition, 6, 0, 1, 1); - - label_67 = new QLabel(groupBox_3); - label_67->setObjectName(QString::fromUtf8("label_67")); - label_67->setMaximumSize(QSize(30, 16777215)); - - gridLayout11->addWidget(label_67, 6, 1, 1, 1); - - trackGroundPositionSize = new QSpinBox(groupBox_3); - trackGroundPositionSize->setObjectName(QString::fromUtf8("trackGroundPositionSize")); - trackGroundPositionSize->setAlignment(Qt::AlignRight); - trackGroundPositionSize->setMinimum(1); - trackGroundPositionSize->setValue(1); - - gridLayout11->addWidget(trackGroundPositionSize, 6, 2, 1, 1); - - trackShowGroundPath = new QCheckBox(groupBox_3); - trackShowGroundPath->setObjectName(QString::fromUtf8("trackShowGroundPath")); - trackShowGroundPath->setMaximumSize(QSize(170, 16777215)); - trackShowGroundPath->setChecked(false); - - gridLayout11->addWidget(trackShowGroundPath, 7, 0, 1, 1); - - label_68 = new QLabel(groupBox_3); - label_68->setObjectName(QString::fromUtf8("label_68")); - label_68->setMaximumSize(QSize(30, 16777215)); - - gridLayout11->addWidget(label_68, 7, 1, 1, 1); - - trackGroundPathSize = new QSpinBox(groupBox_3); - trackGroundPathSize->setObjectName(QString::fromUtf8("trackGroundPathSize")); - trackGroundPathSize->setAlignment(Qt::AlignRight); - trackGroundPathSize->setMinimum(1); - trackGroundPathSize->setValue(1); - - gridLayout11->addWidget(trackGroundPathSize, 7, 2, 1, 1); - - trackGroundPathColorButton = new QPushButton(groupBox_3); - trackGroundPathColorButton->setObjectName(QString::fromUtf8("trackGroundPathColorButton")); - sizePolicy5.setHeightForWidth(trackGroundPathColorButton->sizePolicy().hasHeightForWidth()); - trackGroundPathColorButton->setSizePolicy(sizePolicy5); - trackGroundPathColorButton->setMaximumSize(QSize(60, 20)); - trackGroundPathColorButton->setBaseSize(QSize(0, 0)); - QPalette palette1; - palette1.setBrush(QPalette::Active, QPalette::WindowText, brush); - QBrush brush8(QColor(0, 255, 0, 255)); - brush8.setStyle(Qt::SolidPattern); - palette1.setBrush(QPalette::Active, QPalette::Button, brush8); - QBrush brush9(QColor(127, 255, 127, 255)); - brush9.setStyle(Qt::SolidPattern); - palette1.setBrush(QPalette::Active, QPalette::Light, brush9); - QBrush brush10(QColor(63, 255, 63, 255)); - brush10.setStyle(Qt::SolidPattern); - palette1.setBrush(QPalette::Active, QPalette::Midlight, brush10); - QBrush brush11(QColor(0, 127, 0, 255)); - brush11.setStyle(Qt::SolidPattern); - palette1.setBrush(QPalette::Active, QPalette::Dark, brush11); - QBrush brush12(QColor(0, 170, 0, 255)); - brush12.setStyle(Qt::SolidPattern); - palette1.setBrush(QPalette::Active, QPalette::Mid, brush12); - palette1.setBrush(QPalette::Active, QPalette::Text, brush); - palette1.setBrush(QPalette::Active, QPalette::BrightText, brush6); - palette1.setBrush(QPalette::Active, QPalette::ButtonText, brush); - palette1.setBrush(QPalette::Active, QPalette::Base, brush6); - palette1.setBrush(QPalette::Active, QPalette::Window, brush8); - palette1.setBrush(QPalette::Active, QPalette::Shadow, brush); - palette1.setBrush(QPalette::Active, QPalette::AlternateBase, brush9); - palette1.setBrush(QPalette::Active, QPalette::ToolTipBase, brush7); - palette1.setBrush(QPalette::Active, QPalette::ToolTipText, brush); - palette1.setBrush(QPalette::Inactive, QPalette::WindowText, brush); - palette1.setBrush(QPalette::Inactive, QPalette::Button, brush8); - palette1.setBrush(QPalette::Inactive, QPalette::Light, brush9); - palette1.setBrush(QPalette::Inactive, QPalette::Midlight, brush10); - palette1.setBrush(QPalette::Inactive, QPalette::Dark, brush11); - palette1.setBrush(QPalette::Inactive, QPalette::Mid, brush12); - palette1.setBrush(QPalette::Inactive, QPalette::Text, brush); - palette1.setBrush(QPalette::Inactive, QPalette::BrightText, brush6); - palette1.setBrush(QPalette::Inactive, QPalette::ButtonText, brush); - palette1.setBrush(QPalette::Inactive, QPalette::Base, brush6); - palette1.setBrush(QPalette::Inactive, QPalette::Window, brush8); - palette1.setBrush(QPalette::Inactive, QPalette::Shadow, brush); - palette1.setBrush(QPalette::Inactive, QPalette::AlternateBase, brush9); - palette1.setBrush(QPalette::Inactive, QPalette::ToolTipBase, brush7); - palette1.setBrush(QPalette::Inactive, QPalette::ToolTipText, brush); - palette1.setBrush(QPalette::Disabled, QPalette::WindowText, brush11); - palette1.setBrush(QPalette::Disabled, QPalette::Button, brush8); - palette1.setBrush(QPalette::Disabled, QPalette::Light, brush9); - palette1.setBrush(QPalette::Disabled, QPalette::Midlight, brush10); - palette1.setBrush(QPalette::Disabled, QPalette::Dark, brush11); - palette1.setBrush(QPalette::Disabled, QPalette::Mid, brush12); - palette1.setBrush(QPalette::Disabled, QPalette::Text, brush11); - palette1.setBrush(QPalette::Disabled, QPalette::BrightText, brush6); - palette1.setBrush(QPalette::Disabled, QPalette::ButtonText, brush11); - palette1.setBrush(QPalette::Disabled, QPalette::Base, brush8); - palette1.setBrush(QPalette::Disabled, QPalette::Window, brush8); - palette1.setBrush(QPalette::Disabled, QPalette::Shadow, brush); - palette1.setBrush(QPalette::Disabled, QPalette::AlternateBase, brush8); - palette1.setBrush(QPalette::Disabled, QPalette::ToolTipBase, brush7); - palette1.setBrush(QPalette::Disabled, QPalette::ToolTipText, brush); - trackGroundPathColorButton->setPalette(palette1); - - gridLayout11->addWidget(trackGroundPathColorButton, 7, 3, 1, 1); - - gridLayout11->setColumnStretch(0, 5); - gridLayout11->setColumnStretch(1, 1); - gridLayout11->setColumnStretch(2, 1); - gridLayout11->setColumnStretch(3, 2); - - vboxLayout2->addLayout(gridLayout11); - - spacerItem7 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); - - vboxLayout2->addItem(spacerItem7); - - gridLayout12 = new QGridLayout(); - gridLayout12->setSpacing(0); - gridLayout12->setObjectName(QString::fromUtf8("gridLayout12")); - gridLayout12->setContentsMargins(0, 0, 0, 0); - label_17 = new QLabel(groupBox_3); - label_17->setObjectName(QString::fromUtf8("label_17")); - label_17->setMinimumSize(QSize(150, 0)); - label_17->setMaximumSize(QSize(250, 16777215)); - - gridLayout12->addWidget(label_17, 0, 0, 1, 1); - - trackShowAfter = new QSpinBox(groupBox_3); - trackShowAfter->setObjectName(QString::fromUtf8("trackShowAfter")); - trackShowAfter->setMaximumSize(QSize(80, 16777215)); - trackShowAfter->setAlignment(Qt::AlignRight); - trackShowAfter->setMinimum(-1); - trackShowAfter->setMaximum(99999); - trackShowAfter->setValue(15); - - gridLayout12->addWidget(trackShowAfter, 1, 1, 1, 1); - - label_20 = new QLabel(groupBox_3); - label_20->setObjectName(QString::fromUtf8("label_20")); - label_20->setMaximumSize(QSize(250, 16777215)); - - gridLayout12->addWidget(label_20, 1, 0, 1, 1); - - trackShowBefore = new QSpinBox(groupBox_3); - trackShowBefore->setObjectName(QString::fromUtf8("trackShowBefore")); - trackShowBefore->setMaximumSize(QSize(80, 16777215)); - trackShowBefore->setAlignment(Qt::AlignRight); - trackShowBefore->setMinimum(-1); - trackShowBefore->setMaximum(99999); - trackShowBefore->setValue(15); - - gridLayout12->addWidget(trackShowBefore, 0, 1, 1, 1); - - spacerItem8 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - gridLayout12->addItem(spacerItem8, 0, 2, 1, 1); - - - vboxLayout2->addLayout(gridLayout12); - - - verticalLayout_21->addLayout(vboxLayout2); - - - verticalLayout_17->addWidget(groupBox_3); - - verticalSpacer_4 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); - - verticalLayout_17->addItem(verticalSpacer_4); - - scrollArea_3->setWidget(scrollAreaWidgetContents_3); - - horizontalLayout_17->addWidget(scrollArea_3); - - tabs->addTab(track, QString()); - ana = new QWidget(); - ana->setObjectName(QString::fromUtf8("ana")); - horizontalLayout_18 = new QHBoxLayout(ana); - horizontalLayout_18->setObjectName(QString::fromUtf8("horizontalLayout_18")); - scrollArea_4 = new QScrollArea(ana); - scrollArea_4->setObjectName(QString::fromUtf8("scrollArea_4")); - scrollArea_4->setWidgetResizable(true); - scrollAreaWidgetContents_4 = new QWidget(); - scrollAreaWidgetContents_4->setObjectName(QString::fromUtf8("scrollAreaWidgetContents_4")); - scrollAreaWidgetContents_4->setGeometry(QRect(0, 0, 354, 311)); - verticalLayout_18 = new QVBoxLayout(scrollAreaWidgetContents_4); - verticalLayout_18->setObjectName(QString::fromUtf8("verticalLayout_18")); - analysePlot = new AnalysePlot(scrollAreaWidgetContents_4); - analysePlot->setObjectName(QString::fromUtf8("analysePlot")); - QSizePolicy sizePolicy11(QSizePolicy::Expanding, QSizePolicy::Expanding); - sizePolicy11.setHorizontalStretch(0); - sizePolicy11.setVerticalStretch(0); - sizePolicy11.setHeightForWidth(analysePlot->sizePolicy().hasHeightForWidth()); - analysePlot->setSizePolicy(sizePolicy11); - analysePlot->setMaximumSize(QSize(16777215, 400)); - analysePlot->setFrameShape(QFrame::StyledPanel); - analysePlot->setFrameShadow(QFrame::Raised); - - verticalLayout_18->addWidget(analysePlot); - - hboxLayout9 = new QHBoxLayout(); - hboxLayout9->setObjectName(QString::fromUtf8("hboxLayout9")); - anaCalculate = new QPushButton(scrollAreaWidgetContents_4); - anaCalculate->setObjectName(QString::fromUtf8("anaCalculate")); - - hboxLayout9->addWidget(anaCalculate); - - anaMissingFrames = new QCheckBox(scrollAreaWidgetContents_4); - anaMissingFrames->setObjectName(QString::fromUtf8("anaMissingFrames")); - anaMissingFrames->setChecked(true); - - hboxLayout9->addWidget(anaMissingFrames); - - - verticalLayout_18->addLayout(hboxLayout9); - - hboxLayout10 = new QHBoxLayout(); - hboxLayout10->setObjectName(QString::fromUtf8("hboxLayout10")); - hboxLayout11 = new QHBoxLayout(); - hboxLayout11->setObjectName(QString::fromUtf8("hboxLayout11")); - label_21 = new QLabel(scrollAreaWidgetContents_4); - label_21->setObjectName(QString::fromUtf8("label_21")); - - hboxLayout11->addWidget(label_21); - - anaStep = new QSpinBox(scrollAreaWidgetContents_4); - anaStep->setObjectName(QString::fromUtf8("anaStep")); - anaStep->setMinimum(1); - anaStep->setValue(25); - - hboxLayout11->addWidget(anaStep); - - - hboxLayout10->addLayout(hboxLayout11); - - spacerItem9 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - hboxLayout10->addItem(spacerItem9); - - anaMarkAct = new QCheckBox(scrollAreaWidgetContents_4); - anaMarkAct->setObjectName(QString::fromUtf8("anaMarkAct")); - - hboxLayout10->addWidget(anaMarkAct); - - - verticalLayout_18->addLayout(hboxLayout10); - - hboxLayout12 = new QHBoxLayout(); - hboxLayout12->setObjectName(QString::fromUtf8("hboxLayout12")); - label_16 = new QLabel(scrollAreaWidgetContents_4); - label_16->setObjectName(QString::fromUtf8("label_16")); - - hboxLayout12->addWidget(label_16); - - anaConsiderX = new QCheckBox(scrollAreaWidgetContents_4); - anaConsiderX->setObjectName(QString::fromUtf8("anaConsiderX")); - - hboxLayout12->addWidget(anaConsiderX); - - anaConsiderY = new QCheckBox(scrollAreaWidgetContents_4); - anaConsiderY->setObjectName(QString::fromUtf8("anaConsiderY")); - anaConsiderY->setChecked(true); - - hboxLayout12->addWidget(anaConsiderY); - - anaConsiderAbs = new QCheckBox(scrollAreaWidgetContents_4); - anaConsiderAbs->setObjectName(QString::fromUtf8("anaConsiderAbs")); - - hboxLayout12->addWidget(anaConsiderAbs); - - anaConsiderRev = new QCheckBox(scrollAreaWidgetContents_4); - anaConsiderRev->setObjectName(QString::fromUtf8("anaConsiderRev")); - - hboxLayout12->addWidget(anaConsiderRev); - - - verticalLayout_18->addLayout(hboxLayout12); - - showVoronoiCells = new QCheckBox(scrollAreaWidgetContents_4); - showVoronoiCells->setObjectName(QString::fromUtf8("showVoronoiCells")); - - verticalLayout_18->addWidget(showVoronoiCells); - - verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); - - verticalLayout_18->addItem(verticalSpacer); - - scrollArea_4->setWidget(scrollAreaWidgetContents_4); - - horizontalLayout_18->addWidget(scrollArea_4); - - tabs->addTab(ana, QString()); - - horizontalLayout_19->addWidget(tabs); - -#if QT_CONFIG(shortcut) - label_7->setBuddy(tx); - label_3->setBuddy(cx); - label_6->setBuddy(r4); - label_8->setBuddy(ty); - label->setBuddy(fx); - label_4->setBuddy(cy); - label_2->setBuddy(fy); - label_5->setBuddy(r2); - label_64->setBuddy(r2); -#endif // QT_CONFIG(shortcut) - QWidget::setTabOrder(fx, fy); - QWidget::setTabOrder(fy, cx); - QWidget::setTabOrder(cx, cy); - QWidget::setTabOrder(cy, r2); - QWidget::setTabOrder(r2, r4); - QWidget::setTabOrder(r4, tx); - QWidget::setTabOrder(tx, ty); - QWidget::setTabOrder(ty, gridTransY_spin); - QWidget::setTabOrder(gridTransY_spin, gridScale_spin); - QWidget::setTabOrder(gridScale_spin, gridTransX_spin); - QWidget::setTabOrder(gridTransX_spin, gridRot_spin); - QWidget::setTabOrder(gridRot_spin, coordTransY_spin); - QWidget::setTabOrder(coordTransY_spin, coordScale_spin); - QWidget::setTabOrder(coordScale_spin, coordTransX_spin); - QWidget::setTabOrder(coordTransX_spin, coordRotate_spin); - QWidget::setTabOrder(coordRotate_spin, coordAltitude); - QWidget::setTabOrder(coordAltitude, coordUnit); - QWidget::setTabOrder(coordUnit, coordUseIntrinsic); - QWidget::setTabOrder(coordUseIntrinsic, filterBrightContrast); - QWidget::setTabOrder(filterBrightContrast, filterBorder); - QWidget::setTabOrder(filterBorder, filterBorderParamCol); - QWidget::setTabOrder(filterBorderParamCol, filterBg); - QWidget::setTabOrder(filterBg, filterBgReset); - QWidget::setTabOrder(filterBgReset, filterBgLoad); - QWidget::setTabOrder(filterBgLoad, filterBgSave); - QWidget::setTabOrder(filterBgSave, filterSwap); - QWidget::setTabOrder(filterSwap, filterSwapH); - QWidget::setTabOrder(filterSwapH, filterSwapV); - QWidget::setTabOrder(filterSwapV, autoCalib); - QWidget::setTabOrder(autoCalib, calibFiles); - QWidget::setTabOrder(calibFiles, fixCenter); - QWidget::setTabOrder(fixCenter, quadAspectRatio); - QWidget::setTabOrder(quadAspectRatio, tangDist); - QWidget::setTabOrder(tangDist, apply); - QWidget::setTabOrder(apply, markerIgnoreWithout); - QWidget::setTabOrder(markerIgnoreWithout, roiShow); - QWidget::setTabOrder(roiShow, roiFix); - QWidget::setTabOrder(roiFix, recoShowColor); - QWidget::setTabOrder(recoShowColor, recoOptimizeColor); - QWidget::setTabOrder(recoOptimizeColor, recoColorModel); - QWidget::setTabOrder(recoColorModel, recoAutoWB); - QWidget::setTabOrder(recoAutoWB, recoColorX); - QWidget::setTabOrder(recoColorX, recoColorY); - QWidget::setTabOrder(recoColorY, mapNr); - QWidget::setTabOrder(mapNr, mapColor); - QWidget::setTabOrder(mapColor, mapHeight); - QWidget::setTabOrder(mapHeight, mapAdd); - QWidget::setTabOrder(mapAdd, mapDel); - QWidget::setTabOrder(mapDel, mapDefaultHeight); - QWidget::setTabOrder(mapDefaultHeight, mapDistribution); - QWidget::setTabOrder(mapDistribution, mapResetHeight); - QWidget::setTabOrder(mapResetHeight, mapResetPos); - QWidget::setTabOrder(mapResetPos, performRecognition); - QWidget::setTabOrder(performRecognition, recoStep); - QWidget::setTabOrder(recoStep, recoMethod); - QWidget::setTabOrder(recoMethod, recoStereoShow); - QWidget::setTabOrder(recoStereoShow, trackOnlineCalc); - QWidget::setTabOrder(trackOnlineCalc, trackRepeat); - QWidget::setTabOrder(trackRepeat, trackRepeatQual); - QWidget::setTabOrder(trackRepeatQual, trackExtrapolation); - QWidget::setTabOrder(trackExtrapolation, trackMerge); - QWidget::setTabOrder(trackMerge, trackOnlyVisible); - QWidget::setTabOrder(trackOnlyVisible, trackExport); - QWidget::setTabOrder(trackExport, trackCalc); - QWidget::setTabOrder(trackCalc, trackImport); - QWidget::setTabOrder(trackImport, trackReset); - QWidget::setTabOrder(trackReset, trackMissingFrames); - QWidget::setTabOrder(trackMissingFrames, trackRecalcHeight); - QWidget::setTabOrder(trackRecalcHeight, trackAlternateHeight); - QWidget::setTabOrder(trackAlternateHeight, exportElimTp); - QWidget::setTabOrder(exportElimTp, exportElimTrj); - QWidget::setTabOrder(exportElimTrj, exportSmooth); - QWidget::setTabOrder(exportSmooth, trackTest); - QWidget::setTabOrder(trackTest, testEqual); - QWidget::setTabOrder(testEqual, testVelocity); - QWidget::setTabOrder(testVelocity, testInside); - QWidget::setTabOrder(testInside, testLength); - QWidget::setTabOrder(testLength, trackShowSearchSize); - QWidget::setTabOrder(trackShowSearchSize, trackShow); - QWidget::setTabOrder(trackShow, trackFix); - QWidget::setTabOrder(trackFix, trackShowOnlyVisible); - QWidget::setTabOrder(trackShowOnlyVisible, trackShowOnly); - QWidget::setTabOrder(trackShowOnly, trackGotoNr); - QWidget::setTabOrder(trackGotoNr, trackPathWidth); - QWidget::setTabOrder(trackPathWidth, trackShowPoints); - QWidget::setTabOrder(trackShowPoints, trackShowPointsColored); - QWidget::setTabOrder(trackShowPointsColored, trackColorMarkerSize); - QWidget::setTabOrder(trackColorMarkerSize, trackPointSize); - QWidget::setTabOrder(trackPointSize, trackShowPath); - QWidget::setTabOrder(trackShowPath, trackCurrentPointSize); - QWidget::setTabOrder(trackCurrentPointSize, trackColColorSize); - QWidget::setTabOrder(trackColColorSize, trackShowCurrentPoint); - QWidget::setTabOrder(trackShowCurrentPoint, trackShowColColor); - QWidget::setTabOrder(trackShowColColor, trackShowColorMarker); - QWidget::setTabOrder(trackShowColorMarker, trackShowNumber); - QWidget::setTabOrder(trackShowNumber, trackNumberSize); - QWidget::setTabOrder(trackNumberSize, trackNumberBold); - QWidget::setTabOrder(trackNumberBold, trackHeadSized); - QWidget::setTabOrder(trackHeadSized, trackShowHeightIndividual); - QWidget::setTabOrder(trackShowHeightIndividual, trackShowAfter); - QWidget::setTabOrder(trackShowAfter, trackShowBefore); - QWidget::setTabOrder(trackShowBefore, anaStep); - QWidget::setTabOrder(anaStep, anaMarkAct); - QWidget::setTabOrder(anaMarkAct, anaCalculate); - QWidget::setTabOrder(anaCalculate, anaMissingFrames); - QWidget::setTabOrder(anaMissingFrames, anaConsiderX); - QWidget::setTabOrder(anaConsiderX, anaConsiderY); - QWidget::setTabOrder(anaConsiderY, anaConsiderAbs); - QWidget::setTabOrder(anaConsiderAbs, anaConsiderRev); - - retranslateUi(Control); - QObject::connect(gridTransY, SIGNAL(valueChanged(int)), gridTransY_spin, SLOT(setValue(int))); - QObject::connect(gridTransY_spin, SIGNAL(valueChanged(int)), gridTransY, SLOT(setValue(int))); - QObject::connect(gridScale, SIGNAL(valueChanged(int)), gridScale_spin, SLOT(setValue(int))); - QObject::connect(gridTransX, SIGNAL(valueChanged(int)), gridTransX_spin, SLOT(setValue(int))); - QObject::connect(gridRot_spin, SIGNAL(valueChanged(int)), gridRotate, SLOT(setValue(int))); - QObject::connect(coordTransY, SIGNAL(valueChanged(int)), coordTransY_spin, SLOT(setValue(int))); - QObject::connect(gridRotate, SIGNAL(valueChanged(int)), gridRot_spin, SLOT(setValue(int))); - QObject::connect(coordTransX, SIGNAL(valueChanged(int)), coordTransX_spin, SLOT(setValue(int))); - QObject::connect(gridScale_spin, SIGNAL(valueChanged(int)), gridScale, SLOT(setValue(int))); - QObject::connect(gridTransX_spin, SIGNAL(valueChanged(int)), gridTransX, SLOT(setValue(int))); - QObject::connect(coordScale, SIGNAL(valueChanged(int)), coordScale_spin, SLOT(setValue(int))); - QObject::connect(coordRotate, SIGNAL(valueChanged(int)), coordRotate_spin, SLOT(setValue(int))); - QObject::connect(coordTransY_spin, SIGNAL(valueChanged(int)), coordTransY, SLOT(setValue(int))); - QObject::connect(coordTransX_spin, SIGNAL(valueChanged(int)), coordTransX, SLOT(setValue(int))); - QObject::connect(grid3DTransY, SIGNAL(valueChanged(int)), grid3DTransY_spin, SLOT(setValue(int))); - QObject::connect(coord3DTransZ_spin, SIGNAL(valueChanged(int)), coord3DTransZ, SLOT(setValue(int))); - QObject::connect(coordRotate_spin, SIGNAL(valueChanged(int)), coordRotate, SLOT(setValue(int))); - QObject::connect(coord3DAxeLen_spin, SIGNAL(valueChanged(int)), coord3DAxeLen, SLOT(setValue(int))); - QObject::connect(coordScale_spin, SIGNAL(valueChanged(int)), coordScale, SLOT(setValue(int))); - QObject::connect(grid3DTransX, SIGNAL(valueChanged(int)), grid3DTransX_spin, SLOT(setValue(int))); - QObject::connect(grid3DResolution, SIGNAL(valueChanged(int)), grid3DResolution_spin, SLOT(setValue(int))); - QObject::connect(grid3DTransZ, SIGNAL(valueChanged(int)), grid3DTransZ_spin, SLOT(setValue(int))); - QObject::connect(grid3DResolution_spin, SIGNAL(valueChanged(int)), grid3DResolution, SLOT(setValue(int))); - QObject::connect(grid3DTransY_spin, SIGNAL(valueChanged(int)), grid3DTransY, SLOT(setValue(int))); - QObject::connect(grid3DTransZ_spin, SIGNAL(valueChanged(int)), grid3DTransZ, SLOT(setValue(int))); - QObject::connect(coord3DTransY, SIGNAL(valueChanged(int)), coord3DTransY_spin, SLOT(setValue(int))); - QObject::connect(coord3DTransZ, SIGNAL(valueChanged(int)), coord3DTransZ_spin, SLOT(setValue(int))); - QObject::connect(coord3DAxeLen, SIGNAL(valueChanged(int)), coord3DAxeLen_spin, SLOT(setValue(int))); - QObject::connect(grid3DTransX_spin, SIGNAL(valueChanged(int)), grid3DTransX, SLOT(setValue(int))); - QObject::connect(coord3DTransX_spin, SIGNAL(valueChanged(int)), coord3DTransX, SLOT(setValue(int))); - QObject::connect(coord3DTransY_spin, SIGNAL(valueChanged(int)), coord3DTransY, SLOT(setValue(int))); - QObject::connect(coord3DTransX, SIGNAL(valueChanged(int)), coord3DTransX_spin, SLOT(setValue(int))); - - tabs->setCurrentIndex(2); - coordTab->setCurrentIndex(0); - gridTab->setCurrentIndex(0); - recoMethod->setCurrentIndex(-1); - - - QMetaObject::connectSlotsByName(Control); - } // setupUi - - void retranslateUi(QWidget *Control) - { - Control->setWindowTitle(QCoreApplication::translate("Control", "Form", nullptr)); - groupBox->setTitle(QCoreApplication::translate("Control", "filter before", nullptr)); - filterBorderParamCol->setText(QCoreApplication::translate("Control", "color", nullptr)); - filterBgShow->setText(QCoreApplication::translate("Control", "show", nullptr)); - filterBgUpdate->setText(QCoreApplication::translate("Control", "update", nullptr)); - filterBgReset->setText(QCoreApplication::translate("Control", "reset", nullptr)); - filterBgLoad->setText(QCoreApplication::translate("Control", "load", nullptr)); - filterBgSave->setText(QCoreApplication::translate("Control", "save", nullptr)); -#if QT_CONFIG(tooltip) - filterBgDeleteTrj->setToolTip(QCoreApplication::translate("Control", "delete trajectory after a certain number of trackpoints outside foreground", nullptr)); -#endif // QT_CONFIG(tooltip) - filterBgDeleteTrj->setText(QCoreApplication::translate("Control", "delete", nullptr)); - label_63->setText(QCoreApplication::translate("Control", "trj. after:", nullptr)); - filterSwapH->setText(QCoreApplication::translate("Control", "horizontally", nullptr)); - filterSwapV->setText(QCoreApplication::translate("Control", "vertically", nullptr)); - filterSwap->setText(QCoreApplication::translate("Control", "swap", nullptr)); - filterBorder->setText(QCoreApplication::translate("Control", "border:", nullptr)); - filterBrightContrast->setText(QCoreApplication::translate("Control", "brightness:", nullptr)); - filterBg->setText(QCoreApplication::translate("Control", "bg subtr.:", nullptr)); - label_18->setText(QCoreApplication::translate("Control", " contrast:", nullptr)); - intr->setTitle(QCoreApplication::translate("Control", "intrinsic parameters", nullptr)); - apply->setText(QCoreApplication::translate("Control", "apply", nullptr)); - label_7->setText(QCoreApplication::translate("Control", "tangential distortion: x:", nullptr)); - label_3->setText(QCoreApplication::translate("Control", "center [px]: x:", nullptr)); - label_6->setText(QCoreApplication::translate("Control", "4th:", nullptr)); - label_8->setText(QCoreApplication::translate("Control", "y:", nullptr)); - label->setText(QCoreApplication::translate("Control", "focal length [px]: x:", nullptr)); - label_4->setText(QCoreApplication::translate("Control", "y:", nullptr)); - label_2->setText(QCoreApplication::translate("Control", "y:", nullptr)); - label_5->setText(QCoreApplication::translate("Control", "radial distortion: 2nd:", nullptr)); - label_64->setText(QCoreApplication::translate("Control", "6th:", nullptr)); - fixCenter->setText(QCoreApplication::translate("Control", "fix center", nullptr)); - quadAspectRatio->setText(QCoreApplication::translate("Control", "quad. aspect ratio", nullptr)); - tangDist->setText(QCoreApplication::translate("Control", "tang. dist.", nullptr)); - autoCalib->setText(QCoreApplication::translate("Control", "auto", nullptr)); - calibFiles->setText(QCoreApplication::translate("Control", "files", nullptr)); - extr->setTitle(QCoreApplication::translate("Control", "extrinsic parameters", nullptr)); -#if QT_CONFIG(tooltip) - label_58->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in x-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_58->setText(QCoreApplication::translate("Control", "rotation:", nullptr)); -#if QT_CONFIG(tooltip) - label_59->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in x-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_59->setText(QCoreApplication::translate("Control", "translation:", nullptr)); - label_62->setText(QCoreApplication::translate("Control", "3D/2D Points:", nullptr)); -#if QT_CONFIG(tooltip) - coordLoad3DCalibPoints->setToolTip(QCoreApplication::translate("Control", "Load 3D points to corresponding 2D image points", nullptr)); -#endif // QT_CONFIG(tooltip) - coordLoad3DCalibPoints->setText(QCoreApplication::translate("Control", "load", nullptr)); -#if QT_CONFIG(tooltip) - extrCalibFetch->setToolTip(QCoreApplication::translate("Control", "Fetch marked 2D Points to loaded 3D points", nullptr)); -#endif // QT_CONFIG(tooltip) - extrCalibFetch->setText(QCoreApplication::translate("Control", "fetch", nullptr)); -#if QT_CONFIG(tooltip) - extrCalibSave->setToolTip(QCoreApplication::translate("Control", "Save 3D and/or 2D points to extrinisc calib file", nullptr)); -#endif // QT_CONFIG(tooltip) - extrCalibSave->setText(QCoreApplication::translate("Control", "save", nullptr)); -#if QT_CONFIG(tooltip) - extrCalibShowPoints->setToolTip(QCoreApplication::translate("Control", "Show the saved 2D/3D point correspondences in the file", nullptr)); -#endif // QT_CONFIG(tooltip) - extrCalibShowPoints->setText(QCoreApplication::translate("Control", "show", nullptr)); -#if QT_CONFIG(tooltip) - extrCalibShowError->setToolTip(QCoreApplication::translate("Control", "Show the reprojection error of extrinsic calibration", nullptr)); -#endif // QT_CONFIG(tooltip) - extrCalibShowError->setText(QCoreApplication::translate("Control", "error", nullptr)); - align_2->setTitle(QCoreApplication::translate("Control", "coordinate system", nullptr)); -#if QT_CONFIG(tooltip) - coordShow->setToolTip(QCoreApplication::translate("Control", "Show the coordinate system.", nullptr)); -#endif // QT_CONFIG(tooltip) - coordShow->setText(QCoreApplication::translate("Control", "show", nullptr)); -#if QT_CONFIG(tooltip) - coordFix->setToolTip(QCoreApplication::translate("Control", "Fix the coordinate system", nullptr)); -#endif // QT_CONFIG(tooltip) - coordFix->setText(QCoreApplication::translate("Control", "fix", nullptr)); -#if QT_CONFIG(tooltip) - label_54->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in x-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_54->setText(QCoreApplication::translate("Control", "translate [cm] x:", nullptr)); -#if QT_CONFIG(tooltip) - coord3DTransX->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in x-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - coord3DTransX_spin->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in x-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_55->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in y-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_55->setText(QCoreApplication::translate("Control", "y:", nullptr)); -#if QT_CONFIG(tooltip) - coord3DTransY->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in y-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - coord3DTransY_spin->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in y-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_57->setToolTip(QCoreApplication::translate("Control", "2D: Rotate the coordinate system clockwise. 3D: Translate the coordinate system in z-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_57->setText(QCoreApplication::translate("Control", "z:", nullptr)); -#if QT_CONFIG(tooltip) - coord3DTransZ->setToolTip(QCoreApplication::translate("Control", "2D: Rotate the coordinate system clockwise. 3D: Translate the coordinate system in z-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - coord3DTransZ_spin->setToolTip(QCoreApplication::translate("Control", "2D: Rotate the coordinate system clockwise. 3D: Translate the coordinate system in z-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_56->setToolTip(QCoreApplication::translate("Control", "Scale the coordinate system.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_56->setText(QCoreApplication::translate("Control", "axis length:", nullptr)); -#if QT_CONFIG(tooltip) - coord3DAxeLen->setToolTip(QCoreApplication::translate("Control", "Scale the coordinate system.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - coord3DAxeLen_spin->setToolTip(QCoreApplication::translate("Control", "Scale the coordinate system.", nullptr)); -#endif // QT_CONFIG(tooltip) - coord3DAxeLen_spin->setSuffix(QCoreApplication::translate("Control", " cm", nullptr)); -#if QT_CONFIG(tooltip) - label_60->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in x-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_60->setText(QCoreApplication::translate("Control", "swap axis:", nullptr)); - coord3DSwapX->setText(QCoreApplication::translate("Control", "X-axis", nullptr)); - coord3DSwapY->setText(QCoreApplication::translate("Control", "Y-axis", nullptr)); - coord3DSwapZ->setText(QCoreApplication::translate("Control", "Z-axis", nullptr)); -#if QT_CONFIG(tooltip) - label_61->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in x-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_61->setText(QCoreApplication::translate("Control", " show:", nullptr)); - extCalibPointsShow->setText(QCoreApplication::translate("Control", "calibration points", nullptr)); - extVanishPointsShow->setText(QCoreApplication::translate("Control", "vanish points", nullptr)); - coordTab->setTabText(coordTab->indexOf(coordTab3D), QCoreApplication::translate("Control", " 3D ", nullptr)); -#if QT_CONFIG(tooltip) - coordTab->setTabToolTip(coordTab->indexOf(coordTab3D), QCoreApplication::translate("Control", "Select for 3D coordinatesystem", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - coordTransX_spin->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in x-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_34->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in x-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_34->setText(QCoreApplication::translate("Control", "translate x:", nullptr)); -#if QT_CONFIG(tooltip) - coordTransX->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in x-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_32->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in y-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_32->setText(QCoreApplication::translate("Control", "y:", nullptr)); -#if QT_CONFIG(tooltip) - coordTransY->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in y-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_33->setToolTip(QCoreApplication::translate("Control", "Scale the coordinate system.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_33->setText(QCoreApplication::translate("Control", "scale:", nullptr)); -#if QT_CONFIG(tooltip) - coordScale->setToolTip(QCoreApplication::translate("Control", "Scale the coordinate system.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - coordTransY_spin->setToolTip(QCoreApplication::translate("Control", "Translate the coordinate system in y-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - coordScale_spin->setToolTip(QCoreApplication::translate("Control", "Scale the coordinate system.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_35->setToolTip(QCoreApplication::translate("Control", "2D: Rotate the coordinate system clockwise. 3D: Translate the coordinate system in z-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_35->setText(QCoreApplication::translate("Control", "rotate:", nullptr)); -#if QT_CONFIG(tooltip) - coordRotate->setToolTip(QCoreApplication::translate("Control", "2D: Rotate the coordinate system clockwise. 3D: Translate the coordinate system in z-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - coordRotate_spin->setToolTip(QCoreApplication::translate("Control", "2D: Rotate the coordinate system clockwise. 3D: Translate the coordinate system in z-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_14->setText(QCoreApplication::translate("Control", "camera altitude [cm]:", nullptr)); - coordAltitude->setSuffix(QString()); - coordAltitudeMeasured->setText(QCoreApplication::translate("Control", "(measured: 535.0)", nullptr)); - label_37->setText(QCoreApplication::translate("Control", "unit [cm]:", nullptr)); - coordUnit->setSuffix(QString()); - coordUseIntrinsic->setText(QCoreApplication::translate("Control", "use intrinsic center for calculating real position", nullptr)); - coordTab->setTabText(coordTab->indexOf(coordTab2D), QCoreApplication::translate("Control", " 2D ", nullptr)); -#if QT_CONFIG(tooltip) - coordTab->setTabToolTip(coordTab->indexOf(coordTab2D), QCoreApplication::translate("Control", "Select for 2D coordinatesystem", nullptr)); -#endif // QT_CONFIG(tooltip) - align->setTitle(QCoreApplication::translate("Control", "alignment grid", nullptr)); -#if QT_CONFIG(tooltip) - gridShow->setToolTip(QCoreApplication::translate("Control", "Show the grid.", nullptr)); -#endif // QT_CONFIG(tooltip) - gridShow->setText(QCoreApplication::translate("Control", "show", nullptr)); -#if QT_CONFIG(tooltip) - gridFix->setToolTip(QCoreApplication::translate("Control", "Fix the grid.", nullptr)); -#endif // QT_CONFIG(tooltip) - gridFix->setText(QCoreApplication::translate("Control", "fix", nullptr)); -#if QT_CONFIG(tooltip) - label_15->setToolTip(QCoreApplication::translate("Control", "Translate the grid in x-direction", nullptr)); -#endif // QT_CONFIG(tooltip) - label_15->setText(QCoreApplication::translate("Control", "translate [cm] x:", nullptr)); -#if QT_CONFIG(tooltip) - grid3DTransX->setToolTip(QCoreApplication::translate("Control", "Translate the grid in x-direction", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - grid3DTransX_spin->setToolTip(QCoreApplication::translate("Control", "Translate the grid in x-direction", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_49->setToolTip(QCoreApplication::translate("Control", "Translate the grid in y-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_49->setText(QCoreApplication::translate("Control", "y:", nullptr)); -#if QT_CONFIG(tooltip) - grid3DTransY->setToolTip(QCoreApplication::translate("Control", "Translate the grid in y-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - grid3DTransY_spin->setToolTip(QCoreApplication::translate("Control", "Translate the grid in y-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_50->setToolTip(QCoreApplication::translate("Control", "2D: Rotate the grid clockwise. 3D: Translate the grid in z-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_50->setText(QCoreApplication::translate("Control", "z:", nullptr)); -#if QT_CONFIG(tooltip) - grid3DTransZ->setToolTip(QCoreApplication::translate("Control", "2D: Rotate the grid clockwise. 3D: Translate the grid in z-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - grid3DTransZ_spin->setToolTip(QCoreApplication::translate("Control", "2D: Rotate the grid clockwise. 3D: Translate the grid in z-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - grid3DTransZ_spin->setSuffix(QString()); -#if QT_CONFIG(tooltip) - label_51->setToolTip(QCoreApplication::translate("Control", "Scale the gridcells", nullptr)); -#endif // QT_CONFIG(tooltip) - label_51->setText(QCoreApplication::translate("Control", "resolution [cm]:", nullptr)); -#if QT_CONFIG(tooltip) - grid3DResolution->setToolTip(QCoreApplication::translate("Control", "Scale the gridcells", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - grid3DResolution_spin->setToolTip(QCoreApplication::translate("Control", "Scale the gridcells", nullptr)); -#endif // QT_CONFIG(tooltip) - grid3DResolution_spin->setSuffix(QCoreApplication::translate("Control", " cm", nullptr)); - grid3DResolution_spin->setPrefix(QString()); - gridTab->setTabText(gridTab->indexOf(gridTab3D), QCoreApplication::translate("Control", " 3D ", nullptr)); -#if QT_CONFIG(tooltip) - gridTab->setTabToolTip(gridTab->indexOf(gridTab3D), QCoreApplication::translate("Control", "Select for 3D grid", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_10->setToolTip(QCoreApplication::translate("Control", "Translate the grid in x-direction", nullptr)); -#endif // QT_CONFIG(tooltip) - label_10->setText(QCoreApplication::translate("Control", "translate x:", nullptr)); -#if QT_CONFIG(tooltip) - gridTransX->setToolTip(QCoreApplication::translate("Control", "Translate the grid in x-direction", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - gridTransX_spin->setToolTip(QCoreApplication::translate("Control", "Translate the grid in x-direction", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_11->setToolTip(QCoreApplication::translate("Control", "Translate the grid in y-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_11->setText(QCoreApplication::translate("Control", "y:", nullptr)); -#if QT_CONFIG(tooltip) - gridTransY->setToolTip(QCoreApplication::translate("Control", "Translate the grid in y-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - gridTransY_spin->setToolTip(QCoreApplication::translate("Control", "Translate the grid in y-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_9->setToolTip(QCoreApplication::translate("Control", "2D: Rotate the grid clockwise. 3D: Translate the grid in z-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) - label_9->setText(QCoreApplication::translate("Control", "rotate:", nullptr)); -#if QT_CONFIG(tooltip) - gridRotate->setToolTip(QCoreApplication::translate("Control", "2D: Rotate the grid clockwise. 3D: Translate the grid in z-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - gridRot_spin->setToolTip(QCoreApplication::translate("Control", "2D: Rotate the grid clockwise. 3D: Translate the grid in z-direction.", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - label_12->setToolTip(QCoreApplication::translate("Control", "Scale the gridcells", nullptr)); -#endif // QT_CONFIG(tooltip) - label_12->setText(QCoreApplication::translate("Control", "scale:", nullptr)); -#if QT_CONFIG(tooltip) - gridScale->setToolTip(QCoreApplication::translate("Control", "Scale the gridcells", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(tooltip) - gridScale_spin->setToolTip(QCoreApplication::translate("Control", "Scale the gridcells", nullptr)); -#endif // QT_CONFIG(tooltip) - gridTab->setTabText(gridTab->indexOf(gridTab2D), QCoreApplication::translate("Control", " 2D ", nullptr)); -#if QT_CONFIG(tooltip) - gridTab->setTabToolTip(gridTab->indexOf(gridTab2D), QCoreApplication::translate("Control", "Select for 2D grid", nullptr)); -#endif // QT_CONFIG(tooltip) - tabs->setTabText(tabs->indexOf(calib), QCoreApplication::translate("Control", "calibration", nullptr)); - performRecognition->setText(QCoreApplication::translate("Control", "perform", nullptr)); - label_27->setText(QCoreApplication::translate("Control", "step:", nullptr)); - label_26->setText(QCoreApplication::translate("Control", "number of recognized people by now:", nullptr)); - recoNumberNow->setText(QCoreApplication::translate("Control", "0", nullptr)); - recoStereoShow->setText(QCoreApplication::translate("Control", "parameter", nullptr)); - groupBox_2->setTitle(QCoreApplication::translate("Control", "region of interest", nullptr)); - roiShow->setText(QCoreApplication::translate("Control", "show", nullptr)); - roiFix->setText(QCoreApplication::translate("Control", "fix", nullptr)); - groupBox_5->setTitle(QCoreApplication::translate("Control", "marker", nullptr)); - label_19->setText(QCoreApplication::translate("Control", "marker brightness: ", nullptr)); - markerIgnoreWithout->setText(QCoreApplication::translate("Control", "ignore head without marker", nullptr)); - colorBox->setTitle(QCoreApplication::translate("Control", "size and color", nullptr)); - recoShowColor->setText(QCoreApplication::translate("Control", "show recognition color", nullptr)); - recoOptimizeColor->setText(QCoreApplication::translate("Control", "optimize", nullptr)); - label_28->setText(QCoreApplication::translate("Control", "model:", nullptr)); - recoAutoWB->setText(QCoreApplication::translate("Control", "auto white balance and brigtness", nullptr)); - label_29->setText(QCoreApplication::translate("Control", "x:", nullptr)); - label_30->setText(QCoreApplication::translate("Control", "y:", nullptr)); - label_31->setText(QCoreApplication::translate("Control", "z:", nullptr)); - label_38->setText(QCoreApplication::translate("Control", "grey level:", nullptr)); - label_39->setText(QCoreApplication::translate("Control", "symbol size:", nullptr)); - groupBox_4->setTitle(QCoreApplication::translate("Control", "map", nullptr)); - label_44->setText(QCoreApplication::translate("Control", "h:", nullptr)); - label_40->setText(QCoreApplication::translate("Control", "x:", nullptr)); - label_43->setText(QCoreApplication::translate("Control", "w:", nullptr)); - label_42->setText(QCoreApplication::translate("Control", "y:", nullptr)); - mapColor->setText(QCoreApplication::translate("Control", "color", nullptr)); - label_45->setText(QCoreApplication::translate("Control", "height:", nullptr)); - mapAdd->setText(QCoreApplication::translate("Control", "add", nullptr)); - mapDel->setText(QCoreApplication::translate("Control", "delete", nullptr)); - mapColorRange->setText(QCoreApplication::translate("Control", "color range", nullptr)); -#if QT_CONFIG(tooltip) - label_46->setToolTip(QCoreApplication::translate("Control", "default height, if no height is measured through color marker or disparity", nullptr)); -#endif // QT_CONFIG(tooltip) - label_46->setText(QCoreApplication::translate("Control", "def. height:", nullptr)); -#if QT_CONFIG(tooltip) - mapDistribution->setToolTip(QCoreApplication::translate("Control", "print out distribution of height", nullptr)); -#endif // QT_CONFIG(tooltip) - mapDistribution->setText(QCoreApplication::translate("Control", "dist.", nullptr)); -#if QT_CONFIG(tooltip) - mapResetHeight->setToolTip(QCoreApplication::translate("Control", "reset height of every person measured over time, so that default value will be choosen", nullptr)); -#endif // QT_CONFIG(tooltip) - mapResetHeight->setText(QCoreApplication::translate("Control", "res. height", nullptr)); -#if QT_CONFIG(tooltip) - mapResetPos->setToolTip(QCoreApplication::translate("Control", "reset position of every trackpoint (from disparity)", nullptr)); -#endif // QT_CONFIG(tooltip) - mapResetPos->setText(QCoreApplication::translate("Control", "res. pos.", nullptr)); - tabs->setTabText(tabs->indexOf(rec), QCoreApplication::translate("Control", "recognition", nullptr)); - trackOnlineCalc->setText(QCoreApplication::translate("Control", "online calculation", nullptr)); -#if QT_CONFIG(shortcut) - trackOnlineCalc->setShortcut(QCoreApplication::translate("Control", "Shift+T", nullptr)); -#endif // QT_CONFIG(shortcut) -#if QT_CONFIG(tooltip) - trackRepeat->setToolTip(QCoreApplication::translate("Control", "repeat tracking below existing quality of trackpoint ", nullptr)); -#endif // QT_CONFIG(tooltip) - trackRepeat->setText(QCoreApplication::translate("Control", "repeat below quality:", nullptr)); - trackExtrapolation->setText(QCoreApplication::translate("Control", "extrapolation for big diff.", nullptr)); - trackMerge->setText(QCoreApplication::translate("Control", "merge", nullptr)); -#if QT_CONFIG(tooltip) - trackOnlyVisible->setToolTip(QCoreApplication::translate("Control", "online tracking and manual deletion and moving only for trajectories, which are visable (see \"show only people\")", nullptr)); -#endif // QT_CONFIG(tooltip) - trackOnlyVisible->setText(QCoreApplication::translate("Control", "only visible", nullptr)); - trackNumberNow->setText(QCoreApplication::translate("Control", "0", nullptr)); - label_22->setText(QCoreApplication::translate("Control", "number of all tracked and recognized people:", nullptr)); - label_23->setText(QCoreApplication::translate("Control", "number of tracked people by now:", nullptr)); - trackNumberAll->setText(QCoreApplication::translate("Control", "0", nullptr)); - label_65->setText(QCoreApplication::translate("Control", "number of visible people:", nullptr)); - trackNumberVisible->setText(QCoreApplication::translate("Control", "0", nullptr)); - trackExport->setText(QCoreApplication::translate("Control", "export", nullptr)); - trackCalc->setText(QCoreApplication::translate("Control", "calculate all", nullptr)); - trackImport->setText(QCoreApplication::translate("Control", "import", nullptr)); - trackReset->setText(QCoreApplication::translate("Control", "reset", nullptr)); - groupBox_8->setTitle(QCoreApplication::translate("Control", "Region of interest", nullptr)); - trackRoiShow->setText(QCoreApplication::translate("Control", "show", nullptr)); - trackRoiFix->setText(QCoreApplication::translate("Control", "fix", nullptr)); - groupBox_7->setTitle(QCoreApplication::translate("Control", "export options", nullptr)); -#if QT_CONFIG(tooltip) - trackMissingFrames->setToolTip(QCoreApplication::translate("Control", "search and insert missing frames", nullptr)); -#endif // QT_CONFIG(tooltip) - trackMissingFrames->setText(QCoreApplication::translate("Control", "insert miss. frames", nullptr)); -#if QT_CONFIG(tooltip) - trackRecalcHeight->setToolTip(QCoreApplication::translate("Control", "recalculate median height", nullptr)); -#endif // QT_CONFIG(tooltip) - trackRecalcHeight->setText(QCoreApplication::translate("Control", "recalc. height", nullptr)); -#if QT_CONFIG(tooltip) - trackAlternateHeight->setToolTip(QCoreApplication::translate("Control", "allow alternate height", nullptr)); -#endif // QT_CONFIG(tooltip) - trackAlternateHeight->setText(QCoreApplication::translate("Control", "alt. height", nullptr)); -#if QT_CONFIG(tooltip) - exportElimTp->setToolTip(QCoreApplication::translate("Control", "eliminate trackpoints at outer margins without calculated height", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(statustip) - exportElimTp->setStatusTip(QString()); -#endif // QT_CONFIG(statustip) - exportElimTp->setText(QCoreApplication::translate("Control", "elim. tp. wo. hgt.", nullptr)); -#if QT_CONFIG(tooltip) - exportElimTrj->setToolTip(QCoreApplication::translate("Control", "eliminate trajectories without calculated height", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(statustip) - exportElimTrj->setStatusTip(QString()); -#endif // QT_CONFIG(statustip) - exportElimTrj->setText(QCoreApplication::translate("Control", "elim. trj. wo. hgt.", nullptr)); -#if QT_CONFIG(tooltip) - exportSmooth->setToolTip(QCoreApplication::translate("Control", "smooth trajectories (Attention: original trajectories are changed)", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(statustip) - exportSmooth->setStatusTip(QString()); -#endif // QT_CONFIG(statustip) - exportSmooth->setText(QCoreApplication::translate("Control", "smooth", nullptr)); -#if QT_CONFIG(tooltip) - exportViewDir->setToolTip(QCoreApplication::translate("Control", "add direction of head (corresponding to view direction; possible with Japan and casern marker)", nullptr)); -#endif // QT_CONFIG(tooltip) - exportViewDir->setText(QCoreApplication::translate("Control", "add head direction", nullptr)); -#if QT_CONFIG(tooltip) - exportAngleOfView->setToolTip(QCoreApplication::translate("Control", "add angle of view of camera to person", nullptr)); -#endif // QT_CONFIG(tooltip) - exportAngleOfView->setText(QCoreApplication::translate("Control", "add angle of view", nullptr)); -#if QT_CONFIG(tooltip) - exportUseM->setToolTip(QCoreApplication::translate("Control", "use meter instead of cm", nullptr)); -#endif // QT_CONFIG(tooltip) - exportUseM->setText(QCoreApplication::translate("Control", "use meter", nullptr)); - exportComment->setText(QCoreApplication::translate("Control", "add comment", nullptr)); - exportMarkerID->setText(QCoreApplication::translate("Control", "add marker ID", nullptr)); - trackTest->setText(QCoreApplication::translate("Control", "test", nullptr)); -#if QT_CONFIG(tooltip) - testEqual->setToolTip(QCoreApplication::translate("Control", "search for trajectories with similar trackpoints", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(whatsthis) - testEqual->setWhatsThis(QString()); -#endif // QT_CONFIG(whatsthis) - testEqual->setText(QCoreApplication::translate("Control", "equal", nullptr)); -#if QT_CONFIG(tooltip) - testVelocity->setToolTip(QCoreApplication::translate("Control", "search for hight velocity variations", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(whatsthis) - testVelocity->setWhatsThis(QString()); -#endif // QT_CONFIG(whatsthis) - testVelocity->setText(QCoreApplication::translate("Control", "velocity", nullptr)); -#if QT_CONFIG(tooltip) - testInside->setToolTip(QCoreApplication::translate("Control", "search for trajectories which start or end outside recognition area", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(whatsthis) - testInside->setWhatsThis(QString()); -#endif // QT_CONFIG(whatsthis) - testInside->setText(QCoreApplication::translate("Control", "inside", nullptr)); -#if QT_CONFIG(tooltip) - testLength->setToolTip(QCoreApplication::translate("Control", "search for short trajectories", nullptr)); -#endif // QT_CONFIG(tooltip) -#if QT_CONFIG(whatsthis) - testLength->setWhatsThis(QString()); -#endif // QT_CONFIG(whatsthis) - testLength->setText(QCoreApplication::translate("Control", "length", nullptr)); - groupBox_6->setTitle(QCoreApplication::translate("Control", "search region", nullptr)); - label_52->setText(QCoreApplication::translate("Control", "scale:", nullptr)); - label_53->setText(QCoreApplication::translate("Control", "levels:", nullptr)); - label_66->setText(QCoreApplication::translate("Control", "max. error:", nullptr)); - trackShowSearchSize->setText(QCoreApplication::translate("Control", "show pyramidal search size", nullptr)); - groupBox_3->setTitle(QCoreApplication::translate("Control", "path", nullptr)); - trackShow->setText(QCoreApplication::translate("Control", "show", nullptr)); - trackFix->setText(QCoreApplication::translate("Control", "fix", nullptr)); - trackShowOnlyVisible->setText(QCoreApplication::translate("Control", "only for visible people", nullptr)); - trackShowOnly->setText(QCoreApplication::translate("Control", "show only people:", nullptr)); - trackGotoNr->setText(QCoreApplication::translate("Control", "goto", nullptr)); - trackGotoStartNr->setText(QCoreApplication::translate("Control", "start", nullptr)); - trackGotoEndNr->setText(QCoreApplication::translate("Control", "end", nullptr)); - trackShowOnlyList->setText(QCoreApplication::translate("Control", "show only people list: ", nullptr)); - trackShowOnlyListButton->setText(QCoreApplication::translate("Control", "list", nullptr)); - trackShowPath->setText(QCoreApplication::translate("Control", "show path", nullptr)); - trackShowCurrentPoint->setText(QCoreApplication::translate("Control", "show current point", nullptr)); - label_25->setText(QCoreApplication::translate("Control", "size:", nullptr)); - label_36->setText(QCoreApplication::translate("Control", "size:", nullptr)); - trackShowColColor->setText(QCoreApplication::translate("Control", "show height/col. color", nullptr)); - trackShowColorMarker->setText(QCoreApplication::translate("Control", "show color marker", nullptr)); - trackShowNumber->setText(QCoreApplication::translate("Control", "show number", nullptr)); - label_48->setText(QCoreApplication::translate("Control", "size:", nullptr)); - trackNumberBold->setText(QCoreApplication::translate("Control", "bold", nullptr)); - trackHeadSized->setText(QCoreApplication::translate("Control", "head size", nullptr)); - trackShowHeightIndividual->setText(QCoreApplication::translate("Control", "individual", nullptr)); - trackPathColorButton->setText(QCoreApplication::translate("Control", "color", nullptr)); - trackShowPoints->setText(QCoreApplication::translate("Control", "show points", nullptr)); - trackShowPointsColored->setText(QCoreApplication::translate("Control", "colored", nullptr)); - label_13->setText(QCoreApplication::translate("Control", "size:", nullptr)); - label_41->setText(QCoreApplication::translate("Control", "size:", nullptr)); - label_47->setText(QCoreApplication::translate("Control", "size:", nullptr)); - trackShowGroundPosition->setText(QCoreApplication::translate("Control", "show ground position", nullptr)); - label_67->setText(QCoreApplication::translate("Control", "size:", nullptr)); - trackShowGroundPath->setText(QCoreApplication::translate("Control", "show ground path", nullptr)); - label_68->setText(QCoreApplication::translate("Control", "size:", nullptr)); - trackGroundPathColorButton->setText(QCoreApplication::translate("Control", "color", nullptr)); - label_17->setText(QCoreApplication::translate("Control", "frames before actual position:", nullptr)); - label_20->setText(QCoreApplication::translate("Control", "frames after actual position:", nullptr)); - tabs->setTabText(tabs->indexOf(track), QCoreApplication::translate("Control", "tracking", nullptr)); - anaCalculate->setText(QCoreApplication::translate("Control", "calculate", nullptr)); - anaMissingFrames->setText(QCoreApplication::translate("Control", "search and insert missing frames", nullptr)); - label_21->setText(QCoreApplication::translate("Control", "averaging step size:", nullptr)); - anaMarkAct->setText(QCoreApplication::translate("Control", "mark actual frame", nullptr)); - label_16->setText(QCoreApplication::translate("Control", "consider:", nullptr)); - anaConsiderX->setText(QCoreApplication::translate("Control", "x", nullptr)); - anaConsiderY->setText(QCoreApplication::translate("Control", "y", nullptr)); - anaConsiderAbs->setText(QCoreApplication::translate("Control", "absolute", nullptr)); - anaConsiderRev->setText(QCoreApplication::translate("Control", "reverse", nullptr)); - showVoronoiCells->setText(QCoreApplication::translate("Control", "show voronoi cells", nullptr)); - tabs->setTabText(tabs->indexOf(ana), QCoreApplication::translate("Control", "analysis", nullptr)); - } // retranslateUi - -}; - -namespace Ui { - class Control: public Ui_Control {}; -} // namespace Ui - -QT_END_NAMESPACE - -#endif // UI_CONTROL_H diff --git a/ui/ui_multiColorMarker.h b/ui/ui_multiColorMarker.h deleted file mode 100644 index d1c42bfb7e8c57eeb5de22b01c8e6252fb7f2f54..0000000000000000000000000000000000000000 --- a/ui/ui_multiColorMarker.h +++ /dev/null @@ -1,308 +0,0 @@ -/******************************************************************************** -** Form generated from reading UI file 'multiColorMarker.ui' -** -** Created by: Qt User Interface Compiler version 5.14.1 -** -** WARNING! All changes made in this file will be lost when recompiling UI file! -********************************************************************************/ - -#ifndef UI_MULTICOLORMARKER_H -#define UI_MULTICOLORMARKER_H - -#include <QtCore/QVariant> -#include <QtWidgets/QApplication> -#include <QtWidgets/QCheckBox> -#include <QtWidgets/QDoubleSpinBox> -#include <QtWidgets/QGridLayout> -#include <QtWidgets/QHBoxLayout> -#include <QtWidgets/QLabel> -#include <QtWidgets/QSpacerItem> -#include <QtWidgets/QSpinBox> -#include <QtWidgets/QVBoxLayout> -#include <QtWidgets/QWidget> - -QT_BEGIN_NAMESPACE - -class Ui_MultiColorMarker -{ -public: - QVBoxLayout *verticalLayout; - QVBoxLayout *verticalLayout_2; - QGridLayout *gridLayout_3; - QCheckBox *useDot; - QDoubleSpinBox *dotSize; - QSpacerItem *horizontalSpacer_2; - QGridLayout *gridLayout_2; - QCheckBox *ignoreWithoutDot; - QSpacerItem *horizontalSpacer; - QCheckBox *useColor; - QCheckBox *restrictPosition; - QHBoxLayout *horizontalLayout; - QCheckBox *autoCorrect; - QCheckBox *autoCorrectOnlyExport; - QHBoxLayout *horizontalLayout_2; - QCheckBox *showMask; - QGridLayout *gridLayout; - QLabel *label; - QSpinBox *closeRadius; - QLabel *label_2; - QSpinBox *openRadius; - QCheckBox *useOpen; - QLabel *label_3; - QSpinBox *minArea; - QLabel *label_4; - QLabel *label_5; - QSpinBox *opacity; - QCheckBox *maskMask; - QDoubleSpinBox *maxRatio; - QCheckBox *useClose; - QSpinBox *maxArea; - QCheckBox *useHeadSize; - - void setupUi(QWidget *MultiColorMarker) - { - if (MultiColorMarker->objectName().isEmpty()) - MultiColorMarker->setObjectName(QString::fromUtf8("MultiColorMarker")); - MultiColorMarker->resize(369, 370); - verticalLayout = new QVBoxLayout(MultiColorMarker); - verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); - verticalLayout_2 = new QVBoxLayout(); - verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); - gridLayout_3 = new QGridLayout(); - gridLayout_3->setObjectName(QString::fromUtf8("gridLayout_3")); - useDot = new QCheckBox(MultiColorMarker); - useDot->setObjectName(QString::fromUtf8("useDot")); - useDot->setChecked(true); - - gridLayout_3->addWidget(useDot, 0, 0, 1, 1); - - dotSize = new QDoubleSpinBox(MultiColorMarker); - dotSize->setObjectName(QString::fromUtf8("dotSize")); - dotSize->setMinimum(0.100000000000000); - dotSize->setValue(5.000000000000000); - - gridLayout_3->addWidget(dotSize, 0, 1, 1, 1); - - horizontalSpacer_2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - - gridLayout_3->addItem(horizontalSpacer_2, 0, 2, 1, 1); - - - verticalLayout_2->addLayout(gridLayout_3); - - gridLayout_2 = new QGridLayout(); - gridLayout_2->setObjectName(QString::fromUtf8("gridLayout_2")); - ignoreWithoutDot = new QCheckBox(MultiColorMarker); - ignoreWithoutDot->setObjectName(QString::fromUtf8("ignoreWithoutDot")); - ignoreWithoutDot->setChecked(true); - - gridLayout_2->addWidget(ignoreWithoutDot, 0, 1, 1, 1); - - horizontalSpacer = new QSpacerItem(20, 20, QSizePolicy::Fixed, QSizePolicy::Minimum); - - gridLayout_2->addItem(horizontalSpacer, 0, 0, 1, 1); - - useColor = new QCheckBox(MultiColorMarker); - useColor->setObjectName(QString::fromUtf8("useColor")); - - gridLayout_2->addWidget(useColor, 1, 1, 1, 1); - - restrictPosition = new QCheckBox(MultiColorMarker); - restrictPosition->setObjectName(QString::fromUtf8("restrictPosition")); - - gridLayout_2->addWidget(restrictPosition, 2, 1, 1, 1); - - - verticalLayout_2->addLayout(gridLayout_2); - - - verticalLayout->addLayout(verticalLayout_2); - - horizontalLayout = new QHBoxLayout(); - horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); - autoCorrect = new QCheckBox(MultiColorMarker); - autoCorrect->setObjectName(QString::fromUtf8("autoCorrect")); - - horizontalLayout->addWidget(autoCorrect); - - autoCorrectOnlyExport = new QCheckBox(MultiColorMarker); - autoCorrectOnlyExport->setObjectName(QString::fromUtf8("autoCorrectOnlyExport")); - - horizontalLayout->addWidget(autoCorrectOnlyExport); - - - verticalLayout->addLayout(horizontalLayout); - - horizontalLayout_2 = new QHBoxLayout(); - horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2")); - showMask = new QCheckBox(MultiColorMarker); - showMask->setObjectName(QString::fromUtf8("showMask")); - - horizontalLayout_2->addWidget(showMask); - - - verticalLayout->addLayout(horizontalLayout_2); - - gridLayout = new QGridLayout(); - gridLayout->setObjectName(QString::fromUtf8("gridLayout")); - label = new QLabel(MultiColorMarker); - label->setObjectName(QString::fromUtf8("label")); - - gridLayout->addWidget(label, 1, 0, 1, 1); - - closeRadius = new QSpinBox(MultiColorMarker); - closeRadius->setObjectName(QString::fromUtf8("closeRadius")); - closeRadius->setKeyboardTracking(false); - closeRadius->setMinimum(0); - closeRadius->setMaximum(99); - closeRadius->setSingleStep(1); - closeRadius->setValue(5); - - gridLayout->addWidget(closeRadius, 1, 1, 1, 1); - - label_2 = new QLabel(MultiColorMarker); - label_2->setObjectName(QString::fromUtf8("label_2")); - - gridLayout->addWidget(label_2, 2, 0, 1, 1); - - openRadius = new QSpinBox(MultiColorMarker); - openRadius->setObjectName(QString::fromUtf8("openRadius")); - openRadius->setKeyboardTracking(false); - openRadius->setMinimum(0); - openRadius->setMaximum(99); - openRadius->setSingleStep(1); - openRadius->setValue(5); - - gridLayout->addWidget(openRadius, 2, 1, 1, 1); - - useOpen = new QCheckBox(MultiColorMarker); - useOpen->setObjectName(QString::fromUtf8("useOpen")); - useOpen->setChecked(true); - - gridLayout->addWidget(useOpen, 2, 2, 1, 1); - - label_3 = new QLabel(MultiColorMarker); - label_3->setObjectName(QString::fromUtf8("label_3")); - - gridLayout->addWidget(label_3, 3, 0, 1, 1); - - minArea = new QSpinBox(MultiColorMarker); - minArea->setObjectName(QString::fromUtf8("minArea")); - minArea->setKeyboardTracking(false); - minArea->setMinimum(1); - minArea->setMaximum(100000); - minArea->setSingleStep(100); - minArea->setValue(1000); - - gridLayout->addWidget(minArea, 3, 1, 1, 1); - - label_4 = new QLabel(MultiColorMarker); - label_4->setObjectName(QString::fromUtf8("label_4")); - - gridLayout->addWidget(label_4, 4, 0, 1, 1); - - label_5 = new QLabel(MultiColorMarker); - label_5->setObjectName(QString::fromUtf8("label_5")); - - gridLayout->addWidget(label_5, 8, 0, 1, 1); - - opacity = new QSpinBox(MultiColorMarker); - opacity->setObjectName(QString::fromUtf8("opacity")); - opacity->setMaximum(100); - opacity->setValue(100); - - gridLayout->addWidget(opacity, 8, 1, 1, 1); - - maskMask = new QCheckBox(MultiColorMarker); - maskMask->setObjectName(QString::fromUtf8("maskMask")); - maskMask->setChecked(true); - - gridLayout->addWidget(maskMask, 8, 2, 1, 1); - - maxRatio = new QDoubleSpinBox(MultiColorMarker); - maxRatio->setObjectName(QString::fromUtf8("maxRatio")); - maxRatio->setMinimum(1.000000000000000); - maxRatio->setValue(2.000000000000000); - - gridLayout->addWidget(maxRatio, 4, 1, 1, 1); - - useClose = new QCheckBox(MultiColorMarker); - useClose->setObjectName(QString::fromUtf8("useClose")); - useClose->setChecked(true); - - gridLayout->addWidget(useClose, 1, 2, 1, 1); - - maxArea = new QSpinBox(MultiColorMarker); - maxArea->setObjectName(QString::fromUtf8("maxArea")); - maxArea->setMinimum(1); - maxArea->setMaximum(100000); - maxArea->setSingleStep(100); - maxArea->setValue(5000); - - gridLayout->addWidget(maxArea, 3, 2, 1, 1); - - useHeadSize = new QCheckBox(MultiColorMarker); - useHeadSize->setObjectName(QString::fromUtf8("useHeadSize")); - - gridLayout->addWidget(useHeadSize, 3, 3, 1, 1); - - - verticalLayout->addLayout(gridLayout); - - - retranslateUi(MultiColorMarker); - - QMetaObject::connectSlotsByName(MultiColorMarker); - } // setupUi - - void retranslateUi(QWidget *MultiColorMarker) - { -#if QT_CONFIG(tooltip) - useDot->setToolTip(QCoreApplication::translate("MultiColorMarker", "using black dot on top of the hat for tracking", nullptr)); -#endif // QT_CONFIG(tooltip) - useDot->setText(QCoreApplication::translate("MultiColorMarker", "use black dot, size [cm]:", nullptr)); -#if QT_CONFIG(tooltip) - ignoreWithoutDot->setToolTip(QCoreApplication::translate("MultiColorMarker", "ignore head without black dot, if not visible / surrounded by color", nullptr)); -#endif // QT_CONFIG(tooltip) - ignoreWithoutDot->setText(QCoreApplication::translate("MultiColorMarker", "ignore head without black dot", nullptr)); -#if QT_CONFIG(tooltip) - useColor->setToolTip(QCoreApplication::translate("MultiColorMarker", "use color marker while tracking for big tracking error", nullptr)); -#endif // QT_CONFIG(tooltip) - useColor->setText(QCoreApplication::translate("MultiColorMarker", "use color marker for big error", nullptr)); -#if QT_CONFIG(tooltip) - restrictPosition->setToolTip(QCoreApplication::translate("MultiColorMarker", "restrict position of black dot on centre of head according to viewing angle", nullptr)); -#endif // QT_CONFIG(tooltip) - restrictPosition->setText(QCoreApplication::translate("MultiColorMarker", "restrict position of black dot", nullptr)); -#if QT_CONFIG(tooltip) - autoCorrect->setToolTip(QCoreApplication::translate("MultiColorMarker", "automatically correct the position of the person according to angle of view", nullptr)); -#endif // QT_CONFIG(tooltip) - autoCorrect->setText(QCoreApplication::translate("MultiColorMarker", "auto correct perspective view", nullptr)); -#if QT_CONFIG(tooltip) - autoCorrectOnlyExport->setToolTip(QCoreApplication::translate("MultiColorMarker", "if auto correct is enabled only the exported real trajectories will be corrected", nullptr)); -#endif // QT_CONFIG(tooltip) - autoCorrectOnlyExport->setText(QCoreApplication::translate("MultiColorMarker", "only for export", nullptr)); -#if QT_CONFIG(tooltip) - showMask->setToolTip(QCoreApplication::translate("MultiColorMarker", "show mask in main window", nullptr)); -#endif // QT_CONFIG(tooltip) - showMask->setText(QCoreApplication::translate("MultiColorMarker", "show mask", nullptr)); - label->setText(QCoreApplication::translate("MultiColorMarker", "close radius", nullptr)); - label_2->setText(QCoreApplication::translate("MultiColorMarker", "open radius", nullptr)); - useOpen->setText(QCoreApplication::translate("MultiColorMarker", "use", nullptr)); - label_3->setText(QCoreApplication::translate("MultiColorMarker", "area", nullptr)); - label_4->setText(QCoreApplication::translate("MultiColorMarker", "max ratio", nullptr)); - label_5->setText(QCoreApplication::translate("MultiColorMarker", "opacity", nullptr)); - maskMask->setText(QCoreApplication::translate("MultiColorMarker", "mask", nullptr)); - useClose->setText(QCoreApplication::translate("MultiColorMarker", "use", nullptr)); - useHeadSize->setText(QCoreApplication::translate("MultiColorMarker", "head size", nullptr)); - (void)MultiColorMarker; - } // retranslateUi - -}; - -namespace Ui { - class MultiColorMarker: public Ui_MultiColorMarker {}; -} // namespace Ui - -QT_END_NAMESPACE - -#endif // UI_MULTICOLORMARKER_H diff --git a/ui/ui_stereo.h b/ui/ui_stereo.h deleted file mode 100644 index 057644cf36b78c72fd53c58670727d48b2e6cbe8..0000000000000000000000000000000000000000 --- a/ui/ui_stereo.h +++ /dev/null @@ -1,263 +0,0 @@ -/******************************************************************************** -** Form generated from reading UI file 'stereo.ui' -** -** Created by: Qt User Interface Compiler version 5.14.1 -** -** WARNING! All changes made in this file will be lost when recompiling UI file! -********************************************************************************/ - -#ifndef UI_STEREO_H -#define UI_STEREO_H - -#include <QtCore/QVariant> -#include <QtWidgets/QApplication> -#include <QtWidgets/QCheckBox> -#include <QtWidgets/QComboBox> -#include <QtWidgets/QGridLayout> -#include <QtWidgets/QHBoxLayout> -#include <QtWidgets/QLabel> -#include <QtWidgets/QPushButton> -#include <QtWidgets/QSpinBox> -#include <QtWidgets/QVBoxLayout> -#include <QtWidgets/QWidget> - -QT_BEGIN_NAMESPACE - -class Ui_Stereo -{ -public: - QVBoxLayout *verticalLayout; - QHBoxLayout *horizontalLayout; - QCheckBox *stereoShowDisparity; - QComboBox *stereoColor; - QHBoxLayout *horizontalLayout_4; - QCheckBox *stereoUseForReco; - QComboBox *stereoDispAlgo; - QHBoxLayout *horizontalLayout_2; - QCheckBox *stereoUseForHeight; - QCheckBox *stereoUseForHeightEver; - QHBoxLayout *horizontalLayout_3; - QCheckBox *stereoUseForExport; - QCheckBox *stereoUseCalibrationCenter; - QGridLayout *gridLayout; - QLabel *label; - QLabel *label_2; - QLabel *label_4; - QSpinBox *stereoMaskSize; - QSpinBox *edgeMaskSize; - QSpinBox *maxDisparity; - QSpinBox *minDisparity; - QLabel *label_3; - QCheckBox *useEdge; - QLabel *label_5; - QSpinBox *opacity; - QCheckBox *hideWrong; - QPushButton *stereoExport; - - void setupUi(QWidget *Stereo) - { - if (Stereo->objectName().isEmpty()) - Stereo->setObjectName(QString::fromUtf8("Stereo")); - Stereo->resize(267, 274); - verticalLayout = new QVBoxLayout(Stereo); - verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); - horizontalLayout = new QHBoxLayout(); - horizontalLayout->setSpacing(2); - horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); - stereoShowDisparity = new QCheckBox(Stereo); - stereoShowDisparity->setObjectName(QString::fromUtf8("stereoShowDisparity")); - - horizontalLayout->addWidget(stereoShowDisparity); - - stereoColor = new QComboBox(Stereo); - stereoColor->setObjectName(QString::fromUtf8("stereoColor")); - - horizontalLayout->addWidget(stereoColor); - - - verticalLayout->addLayout(horizontalLayout); - - horizontalLayout_4 = new QHBoxLayout(); - horizontalLayout_4->setSpacing(2); - horizontalLayout_4->setObjectName(QString::fromUtf8("horizontalLayout_4")); - stereoUseForReco = new QCheckBox(Stereo); - stereoUseForReco->setObjectName(QString::fromUtf8("stereoUseForReco")); - - horizontalLayout_4->addWidget(stereoUseForReco); - - stereoDispAlgo = new QComboBox(Stereo); - stereoDispAlgo->setObjectName(QString::fromUtf8("stereoDispAlgo")); - - horizontalLayout_4->addWidget(stereoDispAlgo); - - - verticalLayout->addLayout(horizontalLayout_4); - - horizontalLayout_2 = new QHBoxLayout(); - horizontalLayout_2->setSpacing(6); - horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2")); - stereoUseForHeight = new QCheckBox(Stereo); - stereoUseForHeight->setObjectName(QString::fromUtf8("stereoUseForHeight")); - - horizontalLayout_2->addWidget(stereoUseForHeight); - - stereoUseForHeightEver = new QCheckBox(Stereo); - stereoUseForHeightEver->setObjectName(QString::fromUtf8("stereoUseForHeightEver")); - stereoUseForHeightEver->setEnabled(true); - stereoUseForHeightEver->setChecked(true); - - horizontalLayout_2->addWidget(stereoUseForHeightEver); - - - verticalLayout->addLayout(horizontalLayout_2); - - horizontalLayout_3 = new QHBoxLayout(); - horizontalLayout_3->setObjectName(QString::fromUtf8("horizontalLayout_3")); - stereoUseForExport = new QCheckBox(Stereo); - stereoUseForExport->setObjectName(QString::fromUtf8("stereoUseForExport")); - - horizontalLayout_3->addWidget(stereoUseForExport); - - stereoUseCalibrationCenter = new QCheckBox(Stereo); - stereoUseCalibrationCenter->setObjectName(QString::fromUtf8("stereoUseCalibrationCenter")); - stereoUseCalibrationCenter->setChecked(true); - - horizontalLayout_3->addWidget(stereoUseCalibrationCenter); - - - verticalLayout->addLayout(horizontalLayout_3); - - gridLayout = new QGridLayout(); - gridLayout->setObjectName(QString::fromUtf8("gridLayout")); - label = new QLabel(Stereo); - label->setObjectName(QString::fromUtf8("label")); - - gridLayout->addWidget(label, 1, 0, 1, 1); - - label_2 = new QLabel(Stereo); - label_2->setObjectName(QString::fromUtf8("label_2")); - - gridLayout->addWidget(label_2, 2, 0, 1, 1); - - label_4 = new QLabel(Stereo); - label_4->setObjectName(QString::fromUtf8("label_4")); - - gridLayout->addWidget(label_4, 4, 0, 1, 1); - - stereoMaskSize = new QSpinBox(Stereo); - stereoMaskSize->setObjectName(QString::fromUtf8("stereoMaskSize")); - stereoMaskSize->setKeyboardTracking(false); - stereoMaskSize->setMinimum(1); - stereoMaskSize->setMaximum(23); - stereoMaskSize->setSingleStep(2); - stereoMaskSize->setValue(7); - - gridLayout->addWidget(stereoMaskSize, 1, 1, 1, 1); - - edgeMaskSize = new QSpinBox(Stereo); - edgeMaskSize->setObjectName(QString::fromUtf8("edgeMaskSize")); - edgeMaskSize->setKeyboardTracking(false); - edgeMaskSize->setMinimum(3); - edgeMaskSize->setMaximum(11); - edgeMaskSize->setSingleStep(2); - edgeMaskSize->setValue(5); - - gridLayout->addWidget(edgeMaskSize, 2, 1, 1, 1); - - maxDisparity = new QSpinBox(Stereo); - maxDisparity->setObjectName(QString::fromUtf8("maxDisparity")); - maxDisparity->setKeyboardTracking(false); - maxDisparity->setMaximum(999); - maxDisparity->setValue(100); - - gridLayout->addWidget(maxDisparity, 3, 1, 1, 1); - - minDisparity = new QSpinBox(Stereo); - minDisparity->setObjectName(QString::fromUtf8("minDisparity")); - minDisparity->setKeyboardTracking(false); - minDisparity->setMaximum(999); - - gridLayout->addWidget(minDisparity, 4, 1, 1, 1); - - label_3 = new QLabel(Stereo); - label_3->setObjectName(QString::fromUtf8("label_3")); - - gridLayout->addWidget(label_3, 3, 0, 1, 1); - - useEdge = new QCheckBox(Stereo); - useEdge->setObjectName(QString::fromUtf8("useEdge")); - - gridLayout->addWidget(useEdge, 2, 2, 1, 1); - - label_5 = new QLabel(Stereo); - label_5->setObjectName(QString::fromUtf8("label_5")); - - gridLayout->addWidget(label_5, 5, 0, 1, 1); - - opacity = new QSpinBox(Stereo); - opacity->setObjectName(QString::fromUtf8("opacity")); - opacity->setMaximum(100); - opacity->setValue(100); - - gridLayout->addWidget(opacity, 5, 1, 1, 1); - - hideWrong = new QCheckBox(Stereo); - hideWrong->setObjectName(QString::fromUtf8("hideWrong")); - hideWrong->setChecked(true); - - gridLayout->addWidget(hideWrong, 5, 2, 1, 1); - - - verticalLayout->addLayout(gridLayout); - - stereoExport = new QPushButton(Stereo); - stereoExport->setObjectName(QString::fromUtf8("stereoExport")); - - verticalLayout->addWidget(stereoExport); - - - retranslateUi(Stereo); - - QMetaObject::connectSlotsByName(Stereo); - } // setupUi - - void retranslateUi(QWidget *Stereo) - { - stereoShowDisparity->setText(QCoreApplication::translate("Stereo", "show disparity", nullptr)); -#if QT_CONFIG(tooltip) - stereoUseForReco->setToolTip(QCoreApplication::translate("Stereo", "the recognition is not only done by markers; the height profile of a person is searched inside the disparity map", nullptr)); -#endif // QT_CONFIG(tooltip) - stereoUseForReco->setText(QCoreApplication::translate("Stereo", "use for recognition", nullptr)); -#if QT_CONFIG(tooltip) - stereoUseForHeight->setToolTip(QCoreApplication::translate("Stereo", "enable, if the disparity should be used to measure the position in 3D space and use it for height measurement", nullptr)); -#endif // QT_CONFIG(tooltip) - stereoUseForHeight->setText(QCoreApplication::translate("Stereo", "use for height/pos measurement", nullptr)); - stereoUseForHeightEver->setText(QCoreApplication::translate("Stereo", "ever", nullptr)); -#if QT_CONFIG(tooltip) - stereoUseForExport->setToolTip(QCoreApplication::translate("Stereo", "the calculated 3D data is directly used for trajectory export; values in the calibration tab are ignored (for uneven videos)", nullptr)); -#endif // QT_CONFIG(tooltip) - stereoUseForExport->setText(QCoreApplication::translate("Stereo", "use for trajectory export", nullptr)); -#if QT_CONFIG(tooltip) - stereoUseCalibrationCenter->setToolTip(QCoreApplication::translate("Stereo", "while exporting pointGrey data directly, the coordinate center of calibration tab is used", nullptr)); -#endif // QT_CONFIG(tooltip) - stereoUseCalibrationCenter->setText(QCoreApplication::translate("Stereo", "use calib center", nullptr)); - label->setText(QCoreApplication::translate("Stereo", "stereo mask size: ", nullptr)); - label_2->setText(QCoreApplication::translate("Stereo", "edge mask size: ", nullptr)); - label_4->setText(QCoreApplication::translate("Stereo", "min disparity", nullptr)); - label_3->setText(QCoreApplication::translate("Stereo", "max disparity", nullptr)); - useEdge->setText(QCoreApplication::translate("Stereo", "use", nullptr)); - label_5->setText(QCoreApplication::translate("Stereo", "opacity", nullptr)); - hideWrong->setText(QCoreApplication::translate("Stereo", "hide", nullptr)); - stereoExport->setText(QCoreApplication::translate("Stereo", "export point cloud", nullptr)); - (void)Stereo; - } // retranslateUi - -}; - -namespace Ui { - class Stereo: public Ui_Stereo {}; -} // namespace Ui - -QT_END_NAMESPACE - -#endif // UI_STEREO_H