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
fd28bf03
Commit
fd28bf03
authored
Sep 30, 2016
by
Don Gagne
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Major rework of Survey ui
parent
23e95926
Changes
4
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
784 additions
and
467 deletions
+784
-467
SurveyItemEditor.qml
src/MissionEditor/SurveyItemEditor.qml
+404
-352
Survey.FactMetaData.json
src/MissionManager/Survey.FactMetaData.json
+66
-1
SurveyMissionItem.cc
src/MissionManager/SurveyMissionItem.cc
+213
-72
SurveyMissionItem.h
src/MissionManager/SurveyMissionItem.h
+101
-42
No files found.
src/MissionEditor/SurveyItemEditor.qml
View file @
fd28bf03
This diff is collapsed.
Click to expand it.
src/MissionManager/Survey.FactMetaData.json
View file @
fd28bf03
...
@@ -18,20 +18,85 @@
...
@@ -18,20 +18,85 @@
"shortDescription"
:
"Amount of spacing in between parallel grid lines."
,
"shortDescription"
:
"Amount of spacing in between parallel grid lines."
,
"type"
:
"double"
,
"type"
:
"double"
,
"decimalPlaces"
:
2
,
"decimalPlaces"
:
2
,
"min"
:
0.1
,
"units"
:
"m"
"units"
:
"m"
},
},
{
{
"name"
:
"Turnaround dist
.
"
,
"name"
:
"Turnaround dist"
,
"shortDescription"
:
"Amount of additional distance to add outside the grid area for vehicle turnaround."
,
"shortDescription"
:
"Amount of additional distance to add outside the grid area for vehicle turnaround."
,
"type"
:
"double"
,
"type"
:
"double"
,
"decimalPlaces"
:
2
,
"decimalPlaces"
:
2
,
"min"
:
0
,
"units"
:
"m"
"units"
:
"m"
},
},
{
"name"
:
"Ground resolution"
,
"shortDescription"
:
"Resolution of image in relationship to ground distance."
,
"type"
:
"double"
,
"decimalPlaces"
:
2
,
"min"
:
0
,
"units"
:
"cm/px"
},
{
"name"
:
"Frontal overlap"
,
"shortDescription"
:
"Amount of overlap between images in the forward facing direction."
,
"type"
:
"double"
,
"decimalPlaces"
:
0
,
"max"
:
75
,
"units"
:
"%"
},
{
"name"
:
"Side overlap"
,
"shortDescription"
:
"Amount of overlap between images in the side facing direction."
,
"type"
:
"double"
,
"decimalPlaces"
:
0
,
"max"
:
75
,
"units"
:
"%"
},
{
"name"
:
"Camera sensor width"
,
"shortDescription"
:
"Amount of overlap between images in the side facing direction."
,
"type"
:
"double"
,
"decimalPlaces"
:
2
,
"min"
:
1
,
"units"
:
"mm"
},
{
"name"
:
"Camera sensor height"
,
"shortDescription"
:
"Amount of overlap between images in the side facing direction."
,
"type"
:
"double"
,
"decimalPlaces"
:
2
,
"min"
:
1
,
"units"
:
"mm"
},
{
"name"
:
"Camera resolution width"
,
"shortDescription"
:
"Amount of overlap between images in the side facing direction."
,
"type"
:
"uint32"
,
"min"
:
1
,
"units"
:
"px"
},
{
"name"
:
"Camera resolution height"
,
"shortDescription"
:
"Amount of overlap between images in the side facing direction."
,
"type"
:
"uint32"
,
"min"
:
1
,
"units"
:
"px"
},
{
"name"
:
"Focal length"
,
"shortDescription"
:
"Amount of overlap between images in the side facing direction."
,
"type"
:
"double"
,
"decimalPlaces"
:
1
,
"min"
:
1
,
"units"
:
"mm"
},
{
{
"name"
:
"Camera trigger distance"
,
"name"
:
"Camera trigger distance"
,
"shortDescription"
:
"Distance between each triggering of the camera."
,
"shortDescription"
:
"Distance between each triggering of the camera."
,
"type"
:
"double"
,
"type"
:
"double"
,
"decimalPlaces"
:
2
,
"decimalPlaces"
:
2
,
"min"
:
0.1
,
"units"
:
"m"
"units"
:
"m"
}
}
]
]
src/MissionManager/SurveyMissionItem.cc
View file @
fd28bf03
This diff is collapsed.
Click to expand it.
src/MissionManager/SurveyMissionItem.h
View file @
fd28bf03
...
@@ -25,8 +25,6 @@ class SurveyMissionItem : public ComplexMissionItem
...
@@ -25,8 +25,6 @@ class SurveyMissionItem : public ComplexMissionItem
public:
public:
SurveyMissionItem
(
Vehicle
*
vehicle
,
QObject
*
parent
=
NULL
);
SurveyMissionItem
(
Vehicle
*
vehicle
,
QObject
*
parent
=
NULL
);
const
SurveyMissionItem
&
operator
=
(
const
SurveyMissionItem
&
other
);
Q_PROPERTY
(
Fact
*
gridAltitude
READ
gridAltitude
CONSTANT
)
Q_PROPERTY
(
Fact
*
gridAltitude
READ
gridAltitude
CONSTANT
)
Q_PROPERTY
(
bool
gridAltitudeRelative
MEMBER
_gridAltitudeRelative
NOTIFY
gridAltitudeRelativeChanged
)
Q_PROPERTY
(
bool
gridAltitudeRelative
MEMBER
_gridAltitudeRelative
NOTIFY
gridAltitudeRelativeChanged
)
Q_PROPERTY
(
Fact
*
gridAngle
READ
gridAngle
CONSTANT
)
Q_PROPERTY
(
Fact
*
gridAngle
READ
gridAngle
CONSTANT
)
...
@@ -34,10 +32,22 @@ public:
...
@@ -34,10 +32,22 @@ public:
Q_PROPERTY
(
Fact
*
turnaroundDist
READ
turnaroundDist
CONSTANT
)
Q_PROPERTY
(
Fact
*
turnaroundDist
READ
turnaroundDist
CONSTANT
)
Q_PROPERTY
(
bool
cameraTrigger
MEMBER
_cameraTrigger
NOTIFY
cameraTriggerChanged
)
Q_PROPERTY
(
bool
cameraTrigger
MEMBER
_cameraTrigger
NOTIFY
cameraTriggerChanged
)
Q_PROPERTY
(
Fact
*
cameraTriggerDistance
READ
cameraTriggerDistance
CONSTANT
)
Q_PROPERTY
(
Fact
*
cameraTriggerDistance
READ
cameraTriggerDistance
CONSTANT
)
Q_PROPERTY
(
Fact
*
groundResolution
READ
groundResolution
CONSTANT
)
Q_PROPERTY
(
Fact
*
frontalOverlap
READ
frontalOverlap
CONSTANT
)
Q_PROPERTY
(
Fact
*
sideOverlap
READ
sideOverlap
CONSTANT
)
Q_PROPERTY
(
Fact
*
cameraSensorWidth
READ
cameraSensorWidth
CONSTANT
)
Q_PROPERTY
(
Fact
*
cameraSensorHeight
READ
cameraSensorHeight
CONSTANT
)
Q_PROPERTY
(
Fact
*
cameraResolutionWidth
READ
cameraResolutionWidth
CONSTANT
)
Q_PROPERTY
(
Fact
*
cameraResolutionHeight
READ
cameraResolutionHeight
CONSTANT
)
Q_PROPERTY
(
Fact
*
cameraFocalLength
READ
cameraFocalLength
CONSTANT
)
Q_PROPERTY
(
QVariantList
polygonPath
READ
polygonPath
NOTIFY
polygonPathChanged
)
Q_PROPERTY
(
QVariantList
polygonPath
READ
polygonPath
NOTIFY
polygonPathChanged
)
Q_PROPERTY
(
QVariantList
gridPoints
READ
gridPoints
NOTIFY
gridPointsChanged
)
Q_PROPERTY
(
QVariantList
gridPoints
READ
gridPoints
NOTIFY
gridPointsChanged
)
Q_PROPERTY
(
int
cameraShots
READ
cameraShots
NOTIFY
cameraShotsChanged
)
Q_PROPERTY
(
int
cameraShots
READ
cameraShots
NOTIFY
cameraShotsChanged
)
Q_PROPERTY
(
double
coveredArea
READ
coveredArea
NOTIFY
coveredAreaChanged
)
Q_PROPERTY
(
double
coveredArea
READ
coveredArea
NOTIFY
coveredAreaChanged
)
Q_PROPERTY
(
bool
fixedValueIsAltitude
MEMBER
_fixedValueIsAltitude
NOTIFY
fixedValueIsAltitudeChanged
)
Q_PROPERTY
(
bool
cameraOrientationLandscape
MEMBER
_cameraOrientationLandscape
NOTIFY
cameraOrientationLandscapeChanged
)
Q_PROPERTY
(
bool
manualGrid
MEMBER
_manualGrid
NOTIFY
manualGridChanged
)
Q_PROPERTY
(
QString
camera
MEMBER
_camera
NOTIFY
cameraChanged
)
Q_INVOKABLE
void
clearPolygon
(
void
);
Q_INVOKABLE
void
clearPolygon
(
void
);
Q_INVOKABLE
void
addPolygonCoordinate
(
const
QGeoCoordinate
coordinate
);
Q_INVOKABLE
void
addPolygonCoordinate
(
const
QGeoCoordinate
coordinate
);
...
@@ -46,11 +56,19 @@ public:
...
@@ -46,11 +56,19 @@ public:
QVariantList
polygonPath
(
void
)
{
return
_polygonPath
;
}
QVariantList
polygonPath
(
void
)
{
return
_polygonPath
;
}
QVariantList
gridPoints
(
void
)
{
return
_gridPoints
;
}
QVariantList
gridPoints
(
void
)
{
return
_gridPoints
;
}
Fact
*
gridAltitude
(
void
)
{
return
&
_gridAltitudeFact
;
}
Fact
*
gridAltitude
(
void
)
{
return
&
_gridAltitudeFact
;
}
Fact
*
gridAngle
(
void
)
{
return
&
_gridAngleFact
;
}
Fact
*
gridAngle
(
void
)
{
return
&
_gridAngleFact
;
}
Fact
*
gridSpacing
(
void
)
{
return
&
_gridSpacingFact
;
}
Fact
*
gridSpacing
(
void
)
{
return
&
_gridSpacingFact
;
}
Fact
*
turnaroundDist
(
void
)
{
return
&
_turnaroundDistFact
;
}
Fact
*
turnaroundDist
(
void
)
{
return
&
_turnaroundDistFact
;
}
Fact
*
cameraTriggerDistance
(
void
)
{
return
&
_cameraTriggerDistanceFact
;
}
Fact
*
cameraTriggerDistance
(
void
)
{
return
&
_cameraTriggerDistanceFact
;
}
Fact
*
groundResolution
(
void
)
{
return
&
_groundResolutionFact
;
}
Fact
*
frontalOverlap
(
void
)
{
return
&
_frontalOverlapFact
;
}
Fact
*
sideOverlap
(
void
)
{
return
&
_sideOverlapFact
;
}
Fact
*
cameraSensorWidth
(
void
)
{
return
&
_cameraSensorWidthFact
;
}
Fact
*
cameraSensorHeight
(
void
)
{
return
&
_cameraSensorHeightFact
;
}
Fact
*
cameraResolutionWidth
(
void
)
{
return
&
_cameraResolutionWidthFact
;
}
Fact
*
cameraResolutionHeight
(
void
)
{
return
&
_cameraResolutionHeightFact
;
}
Fact
*
cameraFocalLength
(
void
)
{
return
&
_cameraFocalLengthFact
;
}
int
cameraShots
(
void
)
const
;
int
cameraShots
(
void
)
const
;
double
coveredArea
(
void
)
const
{
return
_coveredArea
;
}
double
coveredArea
(
void
)
const
{
return
_coveredArea
;
}
...
@@ -95,6 +113,12 @@ signals:
...
@@ -95,6 +113,12 @@ signals:
void
gridAltitudeRelativeChanged
(
bool
gridAltitudeRelative
);
void
gridAltitudeRelativeChanged
(
bool
gridAltitudeRelative
);
void
cameraShotsChanged
(
int
cameraShots
);
void
cameraShotsChanged
(
int
cameraShots
);
void
coveredAreaChanged
(
double
coveredArea
);
void
coveredAreaChanged
(
double
coveredArea
);
void
cameraValueChanged
(
void
);
void
fixedValueIsAltitudeChanged
(
bool
fixedValueIsAltitude
);
void
gridTypeChanged
(
QString
gridType
);
void
cameraOrientationLandscapeChanged
(
bool
cameraOrientationLandscape
);
void
cameraChanged
(
QString
camera
);
void
manualGridChanged
(
bool
manualGrid
);
private
slots
:
private
slots
:
void
_cameraTriggerChanged
(
void
);
void
_cameraTriggerChanged
(
void
);
...
@@ -113,6 +137,7 @@ private:
...
@@ -113,6 +137,7 @@ private:
void
_setSurveyDistance
(
double
surveyDistance
);
void
_setSurveyDistance
(
double
surveyDistance
);
void
_setCameraShots
(
int
cameraShots
);
void
_setCameraShots
(
int
cameraShots
);
void
_setCoveredArea
(
double
coveredArea
);
void
_setCoveredArea
(
double
coveredArea
);
void
_cameraValueChanged
(
void
);
int
_sequenceNumber
;
int
_sequenceNumber
;
bool
_dirty
;
bool
_dirty
;
...
@@ -121,9 +146,12 @@ private:
...
@@ -121,9 +146,12 @@ private:
QGeoCoordinate
_coordinate
;
QGeoCoordinate
_coordinate
;
QGeoCoordinate
_exitCoordinate
;
QGeoCoordinate
_exitCoordinate
;
double
_altitude
;
double
_altitude
;
double
_gridAngle
;
bool
_cameraTrigger
;
bool
_cameraTrigger
;
bool
_gridAltitudeRelative
;
bool
_gridAltitudeRelative
;
bool
_manualGrid
;
QString
_camera
;
bool
_cameraOrientationLandscape
;
bool
_fixedValueIsAltitude
;
double
_surveyDistance
;
double
_surveyDistance
;
int
_cameraShots
;
int
_cameraShots
;
...
@@ -134,12 +162,21 @@ private:
...
@@ -134,12 +162,21 @@ private:
Fact
_gridSpacingFact
;
Fact
_gridSpacingFact
;
Fact
_turnaroundDistFact
;
Fact
_turnaroundDistFact
;
Fact
_cameraTriggerDistanceFact
;
Fact
_cameraTriggerDistanceFact
;
Fact
_groundResolutionFact
;
Fact
_frontalOverlapFact
;
Fact
_sideOverlapFact
;
Fact
_cameraSensorWidthFact
;
Fact
_cameraSensorHeightFact
;
Fact
_cameraResolutionWidthFact
;
Fact
_cameraResolutionHeightFact
;
Fact
_cameraFocalLengthFact
;
static
QMap
<
QString
,
FactMetaData
*>
_metaDataMap
;
static
QMap
<
QString
,
FactMetaData
*>
_metaDataMap
;
static
const
char
*
_jsonTypeKey
;
static
const
char
*
_jsonTypeKey
;
static
const
char
*
_jsonPolygonKey
;
static
const
char
*
_jsonPolygon
Object
Key
;
static
const
char
*
_jsonIdKey
;
static
const
char
*
_jsonIdKey
;
static
const
char
*
_jsonGridObjectKey
;
static
const
char
*
_jsonGridAltitudeKey
;
static
const
char
*
_jsonGridAltitudeKey
;
static
const
char
*
_jsonGridAltitudeRelativeKey
;
static
const
char
*
_jsonGridAltitudeRelativeKey
;
static
const
char
*
_jsonGridAngleKey
;
static
const
char
*
_jsonGridAngleKey
;
...
@@ -147,12 +184,34 @@ private:
...
@@ -147,12 +184,34 @@ private:
static
const
char
*
_jsonTurnaroundDistKey
;
static
const
char
*
_jsonTurnaroundDistKey
;
static
const
char
*
_jsonCameraTriggerKey
;
static
const
char
*
_jsonCameraTriggerKey
;
static
const
char
*
_jsonCameraTriggerDistanceKey
;
static
const
char
*
_jsonCameraTriggerDistanceKey
;
static
const
char
*
_jsonGroundResolutionKey
;
static
const
char
*
_jsonFrontalOverlapKey
;
static
const
char
*
_jsonSideOverlapKey
;
static
const
char
*
_jsonCameraSensorWidthKey
;
static
const
char
*
_jsonCameraSensorHeightKey
;
static
const
char
*
_jsonCameraResolutionWidthKey
;
static
const
char
*
_jsonCameraResolutionHeightKey
;
static
const
char
*
_jsonCameraFocalLengthKey
;
static
const
char
*
_jsonManualGridKey
;
static
const
char
*
_jsonCameraObjectKey
;
static
const
char
*
_jsonCameraNameKey
;
static
const
char
*
_jsonCameraOrientationLandscapeKey
;
static
const
char
*
_jsonFixedValueIsAltitudeKey
;
static
const
char
*
_gridAltitudeFactName
;
static
const
char
*
_gridAltitudeFactName
;
static
const
char
*
_gridAngleFactName
;
static
const
char
*
_gridAngleFactName
;
static
const
char
*
_gridSpacingFactName
;
static
const
char
*
_gridSpacingFactName
;
static
const
char
*
_turnaroundDistFactName
;
static
const
char
*
_turnaroundDistFactName
;
static
const
char
*
_cameraTriggerDistanceFactName
;
static
const
char
*
_cameraTriggerDistanceFactName
;
static
const
char
*
_groundResolutionFactName
;
static
const
char
*
_frontalOverlapFactName
;
static
const
char
*
_sideOverlapFactName
;
static
const
char
*
_cameraSensorWidthFactName
;
static
const
char
*
_cameraSensorHeightFactName
;
static
const
char
*
_cameraResolutionWidthFactName
;
static
const
char
*
_cameraResolutionHeightFactName
;
static
const
char
*
_cameraFocalLengthFactName
;
static
const
char
*
_complexType
;
static
const
char
*
_complexType
;
};
};
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment