Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Q
qgroundcontrol
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Valentin Platzgummer
qgroundcontrol
Commits
0877c5b7
Commit
0877c5b7
authored
Nov 13, 2020
by
Valentin Platzgummer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
clearup temp commit 2
parent
458ab210
Changes
99
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
99 changed files
with
67 additions
and
18465 deletions
+67
-18465
qgroundcontrol.pro
qgroundcontrol.pro
+66
-103
qgroundcontrol.qrc
qgroundcontrol.qrc
+0
-1
QGCApplication.cc
src/QGCApplication.cc
+0
-4
FlightPathSegment.h
src/QmlControls/FlightPathSegment.h
+1
-1
.directory
src/Wima/.directory
+0
-4
CircularSurvey.cc
src/Wima/CircularSurvey.cc
+0
-646
CircularSurvey.h
src/Wima/CircularSurvey.h
+0
-131
GenericSingelton.cpp
src/Wima/GenericSingelton.cpp
+0
-0
GenericSingelton.h
src/Wima/GenericSingelton.h
+0
-59
GenericCircle.h
src/Wima/Geometry/GenericCircle.h
+0
-154
GenericPolygon.h
src/Wima/Geometry/GenericPolygon.h
+0
-29
GenericPolygonArray.h
src/Wima/Geometry/GenericPolygonArray.h
+0
-58
GeoPoint3D.cpp
src/Wima/Geometry/GeoPoint3D.cpp
+0
-37
GeoPoint3D.h
src/Wima/Geometry/GeoPoint3D.h
+0
-32
PlanimetryCalculus.cc
src/Wima/Geometry/PlanimetryCalculus.cc
+0
-774
PlanimetryCalculus.h
src/Wima/Geometry/PlanimetryCalculus.h
+0
-124
PolygonCalculus.cc
src/Wima/Geometry/PolygonCalculus.cc
+0
-578
PolygonCalculus.h
src/Wima/Geometry/PolygonCalculus.h
+0
-45
TestPolygonCalculus.cpp
src/Wima/Geometry/TestPolygonCalculus.cpp
+0
-33
TestPolygonCalculus.h
src/Wima/Geometry/TestPolygonCalculus.h
+0
-9
WimaArea.cc
src/Wima/Geometry/WimaArea.cc
+0
-548
WimaArea.h
src/Wima/Geometry/WimaArea.h
+0
-114
WimaAreaData.cc
src/Wima/Geometry/WimaAreaData.cc
+0
-138
WimaAreaData.h
src/Wima/Geometry/WimaAreaData.h
+0
-62
WimaCorridor.cc
src/Wima/Geometry/WimaCorridor.cc
+0
-58
WimaCorridor.h
src/Wima/Geometry/WimaCorridor.h
+0
-31
WimaMeasurementArea.cc
src/Wima/Geometry/WimaMeasurementArea.cc
+0
-404
WimaMeasurementArea.h
src/Wima/Geometry/WimaMeasurementArea.h
+0
-116
WimaMeasurementAreaData.cc
src/Wima/Geometry/WimaMeasurementAreaData.cc
+0
-137
WimaMeasurementAreaData.h
src/Wima/Geometry/WimaMeasurementAreaData.h
+0
-65
WimaServiceArea.cc
src/Wima/Geometry/WimaServiceArea.cc
+0
-119
WimaServiceArea.h
src/Wima/Geometry/WimaServiceArea.h
+0
-46
WimaServiceAreaData.cc
src/Wima/Geometry/WimaServiceAreaData.cc
+0
-66
WimaServiceAreaData.h
src/Wima/Geometry/WimaServiceAreaData.h
+0
-37
WimaArea.SettingsGroup.json
src/Wima/Geometry/json/WimaArea.SettingsGroup.json
+0
-17
WimaMeasurementArea.SettingsGroup.json
...Wima/Geometry/json/WimaMeasurementArea.SettingsGroup.json
+0
-45
testplanimetrycalculus.h
src/Wima/Geometry/testplanimetrycalculus.h
+0
-12
OptimisationTools.cc
src/Wima/OptimisationTools.cc
+0
-105
OptimisationTools.h
src/Wima/OptimisationTools.h
+0
-12
RoutingThread.cpp
src/Wima/RoutingThread.cpp
+0
-129
RoutingThread.h
src/Wima/RoutingThread.h
+0
-63
CircularGenerator.cpp
src/Wima/Snake/CircularGenerator.cpp
+0
-465
CircularGenerator.h
src/Wima/Snake/CircularGenerator.h
+0
-63
GeneratorBase.cc
src/Wima/Snake/GeneratorBase.cc
+0
-31
GeneratorBase.h
src/Wima/Snake/GeneratorBase.h
+0
-47
LinearGenerator.cpp
src/Wima/Snake/LinearGenerator.cpp
+0
-336
LinearGenerator.h
src/Wima/Snake/LinearGenerator.h
+0
-46
NemoInterface.cpp
src/Wima/Snake/NemoInterface.cpp
+0
-468
NemoInterface.h
src/Wima/Snake/NemoInterface.h
+0
-57
QNemoHeartbeat.h
src/Wima/Snake/QNemoHeartbeat.h
+0
-5
QNemoProgress.cc
src/Wima/Snake/QNemoProgress.cc
+0
-2
QNemoProgress.h
src/Wima/Snake/QNemoProgress.h
+0
-8
SnakeThread.cc
src/Wima/Snake/SnakeThread.cc
+0
-540
SnakeThread.h
src/Wima/Snake/SnakeThread.h
+0
-73
SnakeTile.cpp
src/Wima/Snake/SnakeTile.cpp
+0
-23
SnakeTile.h
src/Wima/Snake/SnakeTile.h
+0
-21
SnakeTileLocal.h
src/Wima/Snake/SnakeTileLocal.h
+0
-4
SnakeTiles.h
src/Wima/Snake/SnakeTiles.h
+0
-5
SnakeTilesLocal.h
src/Wima/Snake/SnakeTilesLocal.h
+0
-6
WimaAreaNoVisual.qml
src/Wima/Snake/WimaAreaNoVisual.qml
+0
-12
clipper.cpp
src/Wima/Snake/clipper/clipper.cpp
+0
-4629
clipper.hpp
src/Wima/Snake/clipper/clipper.hpp
+0
-406
CircularGenerator.SettingsGroup.json
src/Wima/Snake/json/CircularGenerator.SettingsGroup.json
+0
-35
LinearGenerator.SettingsGroup.json
src/Wima/Snake/json/LinearGenerator.SettingsGroup.json
+0
-35
feature.hpp
src/Wima/Snake/mapbox/feature.hpp
+0
-113
geometry.hpp
src/Wima/Snake/mapbox/geometry.hpp
+0
-12
box.hpp
src/Wima/Snake/mapbox/geometry/box.hpp
+0
-36
empty.hpp
src/Wima/Snake/mapbox/geometry/empty.hpp
+0
-18
envelope.hpp
src/Wima/Snake/mapbox/geometry/envelope.hpp
+0
-33
for_each_point.hpp
src/Wima/Snake/mapbox/geometry/for_each_point.hpp
+0
-51
geometry.hpp
src/Wima/Snake/mapbox/geometry/geometry.hpp
+0
-56
line_string.hpp
src/Wima/Snake/mapbox/geometry/line_string.hpp
+0
-28
multi_line_string.hpp
src/Wima/Snake/mapbox/geometry/multi_line_string.hpp
+0
-28
multi_point.hpp
src/Wima/Snake/mapbox/geometry/multi_point.hpp
+0
-28
multi_polygon.hpp
src/Wima/Snake/mapbox/geometry/multi_polygon.hpp
+0
-28
point.hpp
src/Wima/Snake/mapbox/geometry/point.hpp
+0
-42
point_arithmetic.hpp
src/Wima/Snake/mapbox/geometry/point_arithmetic.hpp
+0
-119
polygon.hpp
src/Wima/Snake/mapbox/geometry/polygon.hpp
+0
-45
geometry_io.hpp
src/Wima/Snake/mapbox/geometry_io.hpp
+0
-98
optional.hpp
src/Wima/Snake/mapbox/optional.hpp
+0
-74
polylabel.hpp
src/Wima/Snake/mapbox/polylabel.hpp
+0
-178
recursive_wrapper.hpp
src/Wima/Snake/mapbox/recursive_wrapper.hpp
+0
-122
variant.hpp
src/Wima/Snake/mapbox/variant.hpp
+0
-901
variant_io.hpp
src/Wima/Snake/mapbox/variant_io.hpp
+0
-45
snake.cpp
src/Wima/Snake/snake.cpp
+0
-1169
snake.h
src/Wima/Snake/snake.h
+0
-268
Utils.cpp
src/Wima/Utils.cpp
+0
-196
Utils.h
src/Wima/Utils.h
+0
-192
WimaBridge.cc
src/Wima/WimaBridge.cc
+0
-30
WimaBridge.h
src/Wima/WimaBridge.h
+0
-37
WimaPlanData.cc
src/Wima/WimaPlanData.cc
+0
-137
WimaPlanData.h
src/Wima/WimaPlanData.h
+0
-64
WimaPlaner.cc
src/Wima/WimaPlaner.cc
+0
-1002
WimaPlaner.h
src/Wima/WimaPlaner.h
+0
-196
WimaStateMachine.cpp
src/Wima/WimaStateMachine.cpp
+0
-380
WimaStateMachine.h
src/Wima/WimaStateMachine.h
+0
-64
call_once.h
src/Wima/call_once.h
+0
-48
CircularSurvey.SettingsGroup.json
src/Wima/json/CircularSurvey.SettingsGroup.json
+0
-60
WimaController.SettingsGroup.json
src/Wima/json/WimaController.SettingsGroup.json
+0
-104
No files found.
qgroundcontrol.pro
View file @
0877c5b7
...
...
@@ -416,7 +416,6 @@ INCLUDEPATH += \
src
/
QtLocationPlugin
\
src
/
QtLocationPlugin
/
QMLControl
\
src
/
Settings
\
src
/
Wima
/
Snake
\
src
/
Wima
\
src
/
Terrain
\
src
/
Vehicle
\
...
...
@@ -447,74 +446,58 @@ contains (DEFINES, QGC_ENABLE_PAIRING) {
HEADERS
+=
\
src
/
QmlControls
/
QmlUnitsConversion
.
h
\
src
/
Vehicle
/
VehicleEscStatusFactGroup
.
h
\
src
/
Wima
/
CircularSurvey
.
h
\
src
/
Wima
/
GenericSingelton
.
h
\
src
/
Wima
/
Geometry
/
GenericCircle
.
h
\
src
/
Wima
/
RoutingThread
.
h
\
src
/
Wima
/
Snake
/
CircularGenerator
.
h
\
src
/
Wima
/
Snake
/
GeneratorBase
.
h
\
src
/
Wima
/
Snake
/
LinearGenerator
.
h
\
src
/
Wima
/
Snake
/
clipper
/
clipper
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
feature
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
/
box
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
/
empty
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
/
envelope
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
/
for_each_point
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
/
geometry
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
/
line_string
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
/
multi_line_string
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
/
multi_point
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
/
multi_polygon
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
/
point
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
/
point_arithmetic
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry
/
polygon
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
geometry_io
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
optional
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
polylabel
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
recursive_wrapper
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
variant
.
hpp
\
src
/
Wima
/
Snake
/
mapbox
/
variant_io
.
hpp
\
src
/
Wima
/
Snake
/
snake
.
h
\
src
/
Wima
/
Geometry
/
GenericPolygon
.
h
\
src
/
Wima
/
Geometry
/
GenericPolygonArray
.
h
\
src
/
Wima
/
Geometry
/
GeoPoint3D
.
h
\
src
/
Wima
/
Snake
/
NemoInterface
.
h
\
src
/
Wima
/
Snake
/
QNemoHeartbeat
.
h
\
src
/
Wima
/
Snake
/
QNemoProgress
.
h
\
src
/
Wima
/
Snake
/
QNemoProgress
.
h
\
src
/
Wima
/
Snake
/
SnakeTile
.
h
\
src
/
Wima
/
Snake
/
SnakeTileLocal
.
h
\
src
/
Wima
/
Snake
/
SnakeTiles
.
h
\
src
/
Wima
/
Snake
/
SnakeTilesLocal
.
h
\
src
/
Wima
/
Utils
.
h
\
src
/
Wima
/
WimaBridge
.
h
\
src
/
Wima
/
WimaStateMachine
.
h
\
src
/
Wima
/
call_once
.
h
\
src
/
RouteMissionItem
/
RouteComplexItem
.
h
\
src
/
RouteMissionItem
/
GenericSingelton
.
h
\
src
/
RouteMissionItem
/
geometry
/
GenericCircle
.
h
\
src
/
RouteMissionItem
/
RoutingThread
.
h
\
src
/
RouteMissionItem
/
CircularGenerator
.
h
\
src
/
RouteMissionItem
/
GeneratorBase
.
h
\
src
/
RouteMissionItem
/
LinearGenerator
.
h
\
src
/
RouteMissionItem
/
geometry
/
clipper
/
clipper
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
feature
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
/
box
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
/
empty
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
/
envelope
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
/
for_each_point
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
/
geometry
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
/
line_string
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
/
multi_line_string
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
/
multi_point
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
/
multi_polygon
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
/
point
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
/
point_arithmetic
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry
/
polygon
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
geometry_io
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
optional
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
polylabel
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
recursive_wrapper
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
variant
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
mapbox
/
variant_io
.
hpp
\
src
/
RouteMissionItem
/
geometry
/
snake
.
h
\
src
/
RouteMissionItem
/
geometry
/
GenericPolygon
.
h
\
src
/
RouteMissionItem
/
geometry
/
GenericPolygonArray
.
h
\
src
/
RouteMissionItem
/
geometry
/
GeoPoint3D
.
h
\
src
/
RouteMissionItem
/
NemoInterface
.
h
\
src
/
RouteMissionItem
/
nemo_interface
/
QNemoHeartbeat
.
h
\
src
/
RouteMissionItem
/
nemo_interface
/
QNemoProgress
.
h
\
src
/
RouteMissionItem
/
nemo_interface
/
QNemoProgress
.
h
\
src
/
RouteMissionItem
/
nemo_interface
/
SnakeTile
.
h
\
src
/
RouteMissionItem
/
nemo_interface
/
SnakeTileLocal
.
h
\
src
/
RouteMissionItem
/
nemo_interface
/
SnakeTiles
.
h
\
src
/
RouteMissionItem
/
nemo_interface
/
SnakeTilesLocal
.
h
\
src
/
RouteMissionItem
/
call_once
.
h
\
src
/
api
/
QGCCorePlugin
.
h
\
src
/
api
/
QGCOptions
.
h
\
src
/
api
/
QGCSettings
.
h
\
src
/
api
/
QmlComponentInfo
.
h
\
src
/
GPS
/
Drivers
/
src
/
base_station
.
h
\
src
/
Wima
/
Geometry
/
WimaArea
.
h
\
src
/
Wima
/
Geometry
/
WimaServiceArea
.
h
\
src
/
Wima
/
Geometry
/
WimaTrackerPolyline
.
h
\
src
/
Wima
/
WimaPlaner
.
h
\
src
/
Wima
/
Geometry
/
WimaMeasurementArea
.
h
\
src
/
Wima
/
Geometry
/
WimaCorridor
.
h
\
src
/
Wima
/
Geometry
/
WimaAreaData
.
h
\
src
/
Wima
/
Geometry
/
WimaServiceAreaData
.
h
\
src
/
Wima
/
Geometry
/
WimaCorridorData
.
h
\
src
/
Wima
/
Geometry
/
WimaMeasurementAreaData
.
h
\
src
/
Wima
/
WimaPlanData
.
h
\
src
/
Wima
/
Geometry
/
WimaJoinedArea
.
h
\
src
/
Wima
/
Geometry
/
WimaJoinedAreaData
.
h
\
src
/
Wima
/
Geometry
/
PlanimetryCalculus
.
h
\
src
/
Wima
/
Geometry
/
PolygonCalculus
.
h
\
src
/
Wima
/
OptimisationTools
.
h
\
src
/
Wima
/
Geometry
/
GeoUtilities
.
h
\
src
/
Wima
/
Geometry
/
TestPolygonCalculus
.
h
\
src
/
Wima
/
Geometry
/
testplanimetrycalculus
.
h
\
src
/
RouteMissionItem
/
geometry
/
WimaArea
.
h
\
src
/
RouteMissionItem
/
geometry
/
WimaServiceArea
.
h
\
src
/
RouteMissionItem
/
geometry
/
WimaMeasurementArea
.
h
\
src
/
RouteMissionItem
/
geometry
/
PlanimetryCalculus
.
h
\
src
/
RouteMissionItem
/
geometry
/
PolygonCalculus
.
h
\
src
/
RouteMissionItem
/
OptimisationTools
.
h
\
src
/
Settings
/
WimaSettings
.
h
\
src
/
comm
/
ros_bridge
/
include
/
RosBridgeClient
.
h
\
src
/
comm
/
ros_bridge
/
include
/
com_private
.
h
\
...
...
@@ -540,25 +523,23 @@ contains (DEFINES, QGC_ENABLE_PAIRING) {
SOURCES
+=
\
src
/
Vehicle
/
VehicleEscStatusFactGroup
.
cc
\
src
/
Wima
/
WimaStateMachine
.
cpp
\
src
/
RouteMissionItem
/
AreaData
.
cc
\
src
/
api
/
QGCCorePlugin
.
cc
\
src
/
api
/
QGCOptions
.
cc
\
src
/
api
/
QGCSettings
.
cc
\
src
/
api
/
QmlComponentInfo
.
cc
\
src
/
Wima
/
CircularSurvey
.
cc
\
src
/
Wima
/
GenericSingelton
.
cpp
\
src
/
Wima
/
RoutingThread
.
cpp
\
src
/
Wima
/
Snake
/
CircularGenerator
.
cpp
\
src
/
Wima
/
Snake
/
GeneratorBase
.
cc
\
src
/
Wima
/
Snake
/
LinearGenerator
.
cpp
\
src
/
Wima
/
Snake
/
clipper
/
clipper
.
cpp
\
src
/
Wima
/
Snake
/
snake
.
cpp
\
src
/
Wima
/
Geometry
/
GeoPoint3D
.
cpp
\
src
/
Wima
/
Snake
/
NemoInterface
.
cpp
\
src
/
Wima
/
Snake
/
QNemoProgress
.
cc
\
src
/
Wima
/
Snake
/
SnakeTile
.
cpp
\
src
/
Wima
/
Utils
.
cpp
\
src
/
Wima
/
WimaBridge
.
cc
\
src
/
RouteMissionItem
/
RouteComplexItem
.
cc
\
src
/
RouteMissionItem
/
GenericSingelton
.
cpp
\
src
/
RouteMissionItem
/
RoutingThread
.
cpp
\
src
/
RouteMissionItem
/
CircularGenerator
.
cpp
\
src
/
RouteMissionItem
/
GeneratorBase
.
cc
\
src
/
RouteMissionItem
/
LinearGenerator
.
cpp
\
src
/
RouteMissionItem
/
geometry
/
clipper
/
clipper
.
cpp
\
src
/
RouteMissionItem
/
geometry
/
snake
.
cpp
\
src
/
RouteMissionItem
/
geometry
/
GeoPoint3D
.
cpp
\
src
/
RouteMissionItem
/
NemoInterface
.
cpp
\
src
/
RouteMissionItem
/
nemo_interface
/
QNemoProgress
.
cc
\
src
/
RouteMissionItem
/
nemo_interface
/
SnakeTile
.
cpp
\
src
/
comm
/
ros_bridge
/
include
/
RosBridgeClient
.
cpp
\
src
/
comm
/
ros_bridge
/
include
/
com_private
.
cpp
\
src
/
comm
/
ros_bridge
/
include
/
messages
/
geographic_msgs
/
geopoint
.
cpp
\
...
...
@@ -573,25 +554,12 @@ SOURCES += \
src
/
comm
/
ros_bridge
/
include
/
server
.
cpp
\
src
/
comm
/
ros_bridge
/
include
/
topic_publisher
.
cpp
\
src
/
comm
/
ros_bridge
/
include
/
topic_subscriber
.
cpp
\
src
/
Wima
/
Geometry
/
WimaArea
.
cc
\
src
/
Wima
/
Geometry
/
WimaServiceArea
.
cc
\
src
/
Wima
/
Geometry
/
WimaTrackerPolyline
.
cc
\
src
/
Wima
/
WimaPlaner
.
cc
\
src
/
Wima
/
Geometry
/
WimaMeasurementArea
.
cc
\
src
/
Wima
/
Geometry
/
WimaCorridor
.
cc
\
src
/
Wima
/
Geometry
/
WimaAreaData
.
cc
\
src
/
Wima
/
Geometry
/
WimaServiceAreaData
.
cc
\
src
/
Wima
/
Geometry
/
WimaCorridorData
.
cpp
\
src
/
Wima
/
WimaPlanData
.
cc
\
src
/
Wima
/
Geometry
/
WimaMeasurementAreaData
.
cc
\
src
/
Wima
/
Geometry
/
WimaJoinedArea
.
cc
\
src
/
Wima
/
Geometry
/
WimaJoinedAreaData
.
cc
\
src
/
Wima
/
Geometry
/
PlanimetryCalculus
.
cc
\
src
/
Wima
/
OptimisationTools
.
cc
\
src
/
Wima
/
Geometry
/
GeoUtilities
.
cc
\
src
/
Wima
/
Geometry
/
PolygonCalculus
.
cc
\
src
/
Wima
/
Geometry
/
TestPolygonCalculus
.
cpp
\
src
/
Wima
/
Geometry
/
testplanimetrycalculus
.
cpp
\
src
/
RouteMissionItem
/
geometry
/
WimaArea
.
cc
\
src
/
RouteMissionItem
/
geometry
/
WimaServiceArea
.
cc
\
src
/
RouteMissionItem
/
geometry
/
WimaMeasurementArea
.
cc
\
src
/
RouteMissionItem
/
geometry
/
PlanimetryCalculus
.
cc
\
src
/
RouteMissionItem
/
OptimisationTools
.
cc
\
src
/
RouteMissionItem
/
geometry
/
PolygonCalculus
.
cc
\
src
/
Settings
/
WimaSettings
.
cc
\
src
/
comm
/
ros_bridge
/
src
/
ros_bridge
.
cpp
...
...
@@ -1586,9 +1554,4 @@ contains (CONFIG, QGC_DISABLE_INSTALLER_SETUP) {
}
DISTFILES
+=
\
src
/
Wima
/
Routing
/
json
/
CircularGenerator
.
SettingsGroup
.
json
\
src
/
Wima
/
Snake
/
json
/
LinearGenerator
.
SettingsGroup
.
json
\
src
/
Wima
/
json
/
CircularSurvey
.
SettingsGroup
.
json
\
src
/
WimaView
/
WimaMeasurementAreaEditor
.
qml
\
src
/
Settings
/
Wima
.
SettingsGroup
.
json
\
src
/
QmlControls
/
QGroundControl
/
Specific
/
qmldir
qgroundcontrol.qrc
View file @
0877c5b7
...
...
@@ -289,7 +289,6 @@
<file alias="Wima/WimaServiceAreaEditor.qml">src/WimaView/WimaServiceAreaEditor.qml</file>
<file alias="Wima/WimaServiceAreaMapVisual.qml">src/WimaView/WimaServiceAreaMapVisual.qml</file>
<file alias="Wima/WimaToolBar.qml">src/WimaView/WimaToolBar.qml</file>
<file alias="WimaView.qml">src/WimaView/WimaView.qml</file>
<file alias="SetupParameterEditor.qml">src/VehicleSetup/SetupParameterEditor.qml</file>
<file alias="SetupView.qml">src/VehicleSetup/SetupView.qml</file>
<file alias="SimpleItemEditor.qml">src/PlanView/SimpleItemEditor.qml</file>
...
...
src/QGCApplication.cc
View file @
0877c5b7
...
...
@@ -112,8 +112,6 @@
#include "Wima/Snake/CircularGenerator.h"
#include "Wima/Snake/LinearGenerator.h"
#include "Wima/Snake/NemoInterface.h"
#include "Wima/WimaController.h"
#include "Wima/WimaPlaner.h"
#if defined(QGC_ENABLE_PAIRING)
#include "PairingManager.h"
...
...
@@ -596,8 +594,6 @@ void QGCApplication::_initCommon()
#endif
// Wima
qmlRegisterType
<
WimaController
>
(
"Wima"
,
1
,
0
,
"WimaController"
);
qmlRegisterType
<
WimaPlaner
>
(
"Wima"
,
1
,
0
,
"WimaPlaner"
);
qmlRegisterType
<
NemoInterface
>
(
"Wima"
,
1
,
0
,
"NemoInterface"
);
qmlRegisterInterface
<
routing
::
GeneratorBase
>
(
"GeneratorBase"
);
qmlRegisterType
<
routing
::
CircularGenerator
>
(
"Wima"
,
1
,
0
,
...
...
src/QmlControls/FlightPathSegment.h
View file @
0877c5b7
...
...
@@ -35,7 +35,7 @@ public:
Q_PROPERTY
(
double
distanceBetween
MEMBER
_distanceBetween
NOTIFY
distanceBetweenChanged
)
Q_PROPERTY
(
double
finalDistanceBetween
MEMBER
_finalDistanceBetween
NOTIFY
finalDistanceBetweenChanged
)
Q_PROPERTY
(
double
totalDistance
MEMBER
_totalDistance
NOTIFY
totalDistanceChanged
)
Q_PROPERTY
(
bool
terrainCollision
MEMBER
_terrainCollision
NOTIFY
terrainCollisionChanged
)
;
Q_PROPERTY
(
bool
terrainCollision
MEMBER
_terrainCollision
NOTIFY
terrainCollisionChanged
)
QGeoCoordinate
coordinate1
(
void
)
const
{
return
_coord1
;
}
QGeoCoordinate
coordinate2
(
void
)
const
{
return
_coord2
;
}
...
...
src/Wima/.directory
deleted
100644 → 0
View file @
458ab210
[Dolphin]
Timestamp=2020,7,8,11,13,28
Version=4
ViewMode=1
src/Wima/CircularSurvey.cc
deleted
100644 → 0
View file @
458ab210
This diff is collapsed.
Click to expand it.
src/Wima/CircularSurvey.h
deleted
100644 → 0
View file @
458ab210
#pragma once
#include <QFutureWatcher>
#include <QVector>
#include <memory>
#include "SettingsFact.h"
#include "TransectStyleComplexItem.h"
#include "Geometry/WimaJoinedAreaData.h"
#include "Geometry/WimaMeasurementAreaData.h"
#include "WimaPlanData.h"
class
RoutingThread
;
class
RoutingData
;
namespace
routing
{
class
GeneratorBase
;
}
class
CircularSurvey
:
public
TransectStyleComplexItem
{
Q_OBJECT
using
PtrGenerator
=
std
::
shared_ptr
<
routing
::
GeneratorBase
>
;
using
PtrRoutingData
=
std
::
shared_ptr
<
RoutingData
>
;
using
PtrWorker
=
std
::
unique_ptr
<
RoutingThread
>
;
using
Transects
=
QList
<
QList
<
CoordInfo_t
>>
;
using
Variant
=
Transects
;
enum
class
STATE
{
IDLE
,
ROUTING
,
SKIPP
,
REVERSE
,
VARIANT_CHANGE
};
public:
CircularSurvey
(
PlanMasterController
*
masterController
,
bool
flyView
,
const
QString
&
kmlOrShpFile
,
QObject
*
parent
);
~
CircularSurvey
();
Q_PROPERTY
(
Fact
*
variant
READ
variant
CONSTANT
)
Q_PROPERTY
(
QStringList
variantNames
READ
variantNames
NOTIFY
variantNamesChanged
)
Q_PROPERTY
(
QStringList
generatorNameList
READ
generatorNameList
NOTIFY
generatorNameListChanged
)
Q_PROPERTY
(
bool
calculating
READ
calculating
NOTIFY
calculatingChanged
)
Q_PROPERTY
(
routing
::
GeneratorBase
*
generator
READ
generator
NOTIFY
generatorChanged
)
Q_PROPERTY
(
int
generatorIndex
READ
generatorIndex
NOTIFY
generatorChanged
)
Q_INVOKABLE
void
reverse
(
void
);
// Property setters
void
setPlanData
(
const
WimaPlanData
&
d
);
// Property getters
const
WimaPlanData
&
planData
()
const
;
WimaPlanData
&
planData
();
Fact
*
variant
();
QStringList
variantNames
()
const
;
bool
calculating
()
const
;
// Overrides
virtual
bool
load
(
const
QJsonObject
&
complexObject
,
int
sequenceNumber
,
QString
&
errorString
)
override
final
;
virtual
QString
mapVisualQML
(
void
)
const
override
final
;
virtual
void
save
(
QJsonArray
&
planItems
)
override
final
;
virtual
bool
specifiesCoordinate
(
void
)
const
override
final
;
virtual
double
timeBetweenShots
(
void
)
override
final
;
virtual
QString
commandDescription
(
void
)
const
override
final
;
virtual
QString
commandName
(
void
)
const
override
final
;
virtual
QString
abbreviation
(
void
)
const
override
final
;
virtual
ReadyForSaveState
readyForSaveState
(
void
)
const
override
final
;
virtual
double
additionalTimeDelay
(
void
)
const
override
final
;
virtual
QString
patternName
(
void
)
const
override
;
// Generator
bool
registerGenerator
(
const
QString
&
name
,
std
::
shared_ptr
<
routing
::
GeneratorBase
>
g
);
bool
unregisterGenerator
(
const
QString
&
name
);
bool
unregisterGenerator
(
int
index
);
Q_INVOKABLE
bool
switchToGenerator
(
const
QString
&
name
);
Q_INVOKABLE
bool
switchToGenerator
(
int
index
);
QStringList
generatorNameList
();
routing
::
GeneratorBase
*
generator
();
int
generatorIndex
();
static
const
char
*
settingsGroup
;
static
const
char
*
variantName
;
static
const
char
*
jsonComplexItemTypeValue
;
static
const
QString
name
;
signals:
void
calculatingChanged
();
void
variantNamesChanged
();
void
generatorNameListChanged
();
void
generatorChanged
();
private
slots
:
// Overrides from TransectStyleComplexItem
virtual
void
_rebuildTransectsPhase1
(
void
)
override
final
;
virtual
void
_recalcCameraShots
(
void
)
override
final
;
// Worker functions.
void
_setTransects
(
PtrRoutingData
pRoute
);
void
_changeVariant
();
bool
_updateWorker
();
void
_changeVariantWorker
();
void
_reverseWorker
();
private:
bool
_switchToGenerator
(
const
PtrGenerator
&
newG
);
void
_setState
(
STATE
state
);
bool
_calculating
(
STATE
state
)
const
;
// State.
STATE
_state
;
// center of the circular lanes, e.g. base station
QMap
<
QString
,
FactMetaData
*>
_metaDataMap
;
SettingsFact
_variant
;
QStringList
_variantNames
;
// Area data
std
::
shared_ptr
<
WimaPlanData
>
_pAreaData
;
// Generators
QList
<
PtrGenerator
>
_generatorList
;
QStringList
_generatorNameList
;
PtrGenerator
_pGenerator
;
// Routing.
QVector
<
Variant
>
_variantVector
;
PtrWorker
_pWorker
;
};
src/Wima/GenericSingelton.cpp
deleted
100644 → 0
View file @
458ab210
src/Wima/GenericSingelton.h
deleted
100644 → 0
View file @
458ab210
#pragma once
#include "call_once.h"
#include <QScopedPointer>
#include <QtGlobal>
template
<
class
T
>
class
GenericSingelton
{
private:
typedef
T
*
(
*
CreateInstanceFunction
)();
public:
static
T
*
instance
(
CreateInstanceFunction
create
);
private:
static
void
init
();
GenericSingelton
();
~
GenericSingelton
();
Q_DISABLE_COPY
(
GenericSingelton
)
static
QBasicAtomicPointer
<
void
>
create
;
static
QBasicAtomicInt
flag
;
static
QBasicAtomicPointer
<
void
>
tptr
;
bool
inited
;
};
template
<
class
T
>
T
*
GenericSingelton
<
T
>::
instance
(
CreateInstanceFunction
create
)
{
GenericSingelton
::
create
.
store
(
reinterpret_cast
<
void
*>
(
create
));
qCallOnce
(
init
,
flag
);
return
(
T
*
)
tptr
.
load
();
}
template
<
class
T
>
void
GenericSingelton
<
T
>::
init
()
{
static
GenericSingelton
singleton
;
if
(
singleton
.
inited
)
{
CreateInstanceFunction
createFunction
=
(
CreateInstanceFunction
)
GenericSingelton
::
create
.
load
();
tptr
.
store
(
createFunction
());
}
}
template
<
class
T
>
GenericSingelton
<
T
>::
GenericSingelton
()
{
inited
=
true
;
}
template
<
class
T
>
GenericSingelton
<
T
>::~
GenericSingelton
()
{
T
*
createdTptr
=
(
T
*
)
tptr
.
fetchAndStoreOrdered
(
nullptr
);
if
(
createdTptr
)
{
delete
createdTptr
;
}
create
.
store
(
nullptr
);
}
template
<
class
T
>
QBasicAtomicPointer
<
void
>
GenericSingelton
<
T
>::
create
=
Q_BASIC_ATOMIC_INITIALIZER
(
nullptr
);
template
<
class
T
>
QBasicAtomicInt
GenericSingelton
<
T
>::
flag
=
Q_BASIC_ATOMIC_INITIALIZER
(
CallOnce
::
CO_Request
);
template
<
class
T
>
QBasicAtomicPointer
<
void
>
GenericSingelton
<
T
>::
tptr
=
Q_BASIC_ATOMIC_INITIALIZER
(
nullptr
);
src/Wima/Geometry/GenericCircle.h
deleted
100644 → 0
View file @
458ab210
#pragma once
#include <QObject>
#include <QPointF>
#include <cmath>
#include "boost/units/systems/angle/degrees.hpp"
#include "boost/units/systems/si.hpp"
template
<
int
k
,
class
Point
>
auto
get
(
const
Point
&
p
);
namespace
bu
=
boost
::
units
;
namespace
qty
{
using
Length
=
bu
::
quantity
<
bu
::
si
::
length
>
;
using
Angle
=
bu
::
quantity
<
bu
::
si
::
plane_angle
>
;
using
Degree
=
bu
::
quantity
<
bu
::
degree
::
plane_angle
>
;
using
Radian
=
bu
::
quantity
<
bu
::
si
::
plane_angle
>
;
}
// namespace qty
template
<
class
NumberType
,
class
Point
>
class
GenericCircle
{
public:
GenericCircle
();
GenericCircle
(
NumberType
rad
,
Point
ori
);
// Property setters
void
setRadius
(
NumberType
rad
);
void
setOrigin
(
const
Point
&
ori
);
// Property getters
NumberType
radius
()
const
;
const
Point
&
origin
()
const
;
Point
&
origin
();
private:
NumberType
_r
;
Point
_origin
;
};
// Free functions.
template
<
class
Circle
,
class
Container
>
void
approximate
(
Circle
&
circ
,
long
n
,
qty
::
Angle
alpha1
,
qty
::
Angle
alpha2
,
Container
&
c
);
template
<
class
Circle
,
class
Container
>
void
approximate
(
Circle
&
circ
,
long
n
,
Container
&
c
);
// Impl.
template
<
class
NumberType
,
class
Point
>
GenericCircle
<
NumberType
,
Point
>::
GenericCircle
()
:
_r
(
0
),
_origin
(
0
,
0
)
{}
template
<
class
NumberType
,
class
Point
>
GenericCircle
<
NumberType
,
Point
>::
GenericCircle
(
NumberType
rad
,
Point
ori
)
:
_r
(
rad
),
_origin
(
ori
)
{}
/*!
* Returns a polygon with \a n corners which approximates the
* circle.
*
* \sa Point
*/
template
<
class
NumberType
,
class
Point
>
void
GenericCircle
<
NumberType
,
Point
>::
setRadius
(
NumberType
rad
)
{
if
(
rad
>=
0
)
{
this
->
_r
=
rad
;
}
}
template
<
class
NumberType
,
class
Point
>
void
GenericCircle
<
NumberType
,
Point
>::
setOrigin
(
const
Point
&
ori
)
{
this
->
_origin
=
ori
;
}
template
<
class
NumberType
,
class
Point
>
NumberType
GenericCircle
<
NumberType
,
Point
>::
radius
()
const
{
return
this
->
_r
;
}
template
<
class
NumberType
,
class
Point
>
const
Point
&
GenericCircle
<
NumberType
,
Point
>::
origin
()
const
{
return
this
->
_origin
;
}
template
<
class
NumberType
,
class
Point
>
Point
&
GenericCircle
<
NumberType
,
Point
>::
origin
()
{
return
this
->
_origin
;
}
template
<
class
Circle
,
class
Container
>
void
approximate
(
Circle
&
circ
,
long
n
,
qty
::
Angle
alpha1
,
qty
::
Angle
alpha2
,
Container
&
c
)
{
auto
clipp
=
[](
double
angle
)
{
while
(
angle
<
0
)
{
angle
+=
2
*
M_PI
;
}
while
(
angle
>
2
*
M_PI
)
{
angle
-=
2
*
M_PI
;
}
return
angle
;
};
double
a1
=
clipp
(
alpha1
.
value
());
double
a2
=
clipp
(
alpha2
.
value
());
double
angleDisc
=
0
;
if
(
n
>
0
)
{
angleDisc
=
(
a2
-
a1
)
/
(
n
-
1
);
}
else
{
angleDisc
=
(
a2
-
a1
)
/
(
n
+
1
);
n
=
n
*
(
-
1
);
}
double
a
=
a1
;
using
Point
=
std
::
remove_cv_t
<
std
::
remove_reference_t
<
decltype
(
circ
.
origin
())
>>
;
auto
x0
=
get
<
0
>
(
circ
.
origin
());
auto
y0
=
get
<
1
>
(
circ
.
origin
());
auto
r
=
circ
.
radius
();
using
NumberType
=
std
::
remove_cv_t
<
std
::
remove_reference_t
<
decltype
(
x0
)
>>
;
while
(
n
--
)
{
auto
x
=
NumberType
(
x0
+
r
*
std
::
cos
(
a
));
auto
y
=
NumberType
(
y0
+
r
*
std
::
sin
(
a
));
c
.
push_back
(
Point
(
x
,
y
));
a
+=
angleDisc
;
}
}
template
<
class
Circle
,
class
Container
>
void
approximate
(
Circle
&
circ
,
long
n
,
Container
&
c
)
{
using
namespace
bu
;
double
angleDisc
=
0
;
if
(
n
>
0
)
{
angleDisc
=
2
*
M_PI
/
(
n
-
1
);
}
else
{
angleDisc
=
2
*
M_PI
/
(
n
+
1
);
n
=
n
*
(
-
1
);
}
double
a
=
0
;
using
Point
=
std
::
remove_cv_t
<
std
::
remove_reference_t
<
decltype
(
circ
.
origin
())
>>
;
auto
x0
=
get
<
0
>
(
circ
.
origin
());
auto
y0
=
get
<
1
>
(
circ
.
origin
());
auto
r
=
circ
.
radius
();
using
NumberType
=
std
::
remove_cv_t
<
std
::
remove_reference_t
<
decltype
(
x0
)
>>
;
while
(
n
--
)
{
auto
x
=
NumberType
(
x0
+
r
*
std
::
cos
(
a
));
auto
y
=
NumberType
(
y0
+
r
*
std
::
sin
(
a
));
c
.
push_back
(
Point
(
x
,
y
));
a
+=
angleDisc
;
}
}
src/Wima/Geometry/GenericPolygon.h
deleted
100644 → 0
View file @
458ab210
#pragma once
#include <QPolygonF>
#include <QPointF>
#include "ros_bridge/include/messages/geometry_msgs/polygon_stamped.h"
template
<
class
PointType
=
QPointF
,
template
<
class
,
class
...
>
class
ContainerType
=
QVector
>
class
GenericPolygon
{
//
typedef
ros_bridge
::
messages
::
geometry_msgs
::
polygon
::
GenericPolygon
<
PointType
,
ContainerType
>
Polygon
;
public:
GenericPolygon
(){}
GenericPolygon
(
const
GenericPolygon
&
other
)
:
_polygon
(
other
.
_polygon
){}
GenericPolygon
&
operator
=
(
const
GenericPolygon
&
other
)
{
this
->
_polygon
=
other
.
_polygon
;
return
*
this
;
}
const
Polygon
&
polygon
()
const
{
return
_polygon
;}
Polygon
&
polygon
()
{
return
_polygon
;}
const
ContainerType
<
PointType
>
&
path
()
const
{
return
_polygon
.
points
();}
ContainerType
<
PointType
>
&
path
()
{
return
_polygon
.
points
();}
private:
Polygon
_polygon
;
};
src/Wima/Geometry/GenericPolygonArray.h
deleted
100644 → 0
View file @
458ab210
#pragma once
#include "QmlObjectListModel.h"
#include <QVector>
#include <QString>
template
<
class
PolygonType
,
template
<
class
,
class
...
>
class
ContainerType
=
QVector
>
class
GenericPolygonArray
{
public:
GenericPolygonArray
()
{}
GenericPolygonArray
(
const
GenericPolygonArray
&
other
)
:
_polygons
(
other
.
_polygons
),
_dirty
(
true
)
{}
~
GenericPolygonArray
(){
_objs
.
clearAndDeleteContents
();
}
class
QmlObjectListModel
*
QmlObjectListModel
(){
if
(
_dirty
)
_updateObjects
();
_dirty
=
false
;
return
&
_objs
;
}
const
ContainerType
<
PolygonType
>
&
polygons
()
const
{
return
_polygons
;
}