|
QGroundControl
Ground Control Station for MAVLink Drones
|
#include <StructureScanComplexItem.h>
Inheritance diagram for StructureScanComplexItem:
Collaboration diagram for StructureScanComplexItem:Static Public Attributes | |
| static const QString | name |
| static constexpr const char * | settingsGroup = "StructureScan" |
| static constexpr const char * | scanBottomAltName = "ScanBottomAlt" |
| static constexpr const char * | structureHeightName = "StructureHeight" |
| static constexpr const char * | layersName = "Layers" |
| static constexpr const char * | gimbalPitchName = "GimbalPitch" |
| static constexpr const char * | startFromTopName = "StartFromTop" |
| static constexpr const char * | jsonComplexItemTypeValue = "StructureScan" |
Static Public Attributes inherited from ComplexMissionItem | |
| static constexpr const char * | jsonComplexItemTypeKey = "complexItemType" |
| This mission item attribute specifies the type of the complex item. | |
Static Public Attributes inherited from VisualMissionItem | |
| static constexpr const char * | jsonTypeKey = "type" |
| Json file attribute which specifies the item type. | |
| static constexpr const char * | jsonTypeSimpleItemValue = "SimpleItem" |
| Item type is MISSION_ITEM. | |
| static constexpr const char * | jsonTypeComplexItemValue = "ComplexItem" |
| Item type is Complex Item. | |
Additional Inherited Members | |
Public Types inherited from VisualMissionItem | |
| enum | ReadyForSaveState { ReadyForSave , NotReadyForSaveTerrain , NotReadyForSaveData } |
Protected Slots inherited from ComplexMissionItem | |
| virtual void | _segmentTerrainCollisionChanged (bool terrainCollision) |
Protected Slots inherited from VisualMissionItem | |
| void | _amslEntryAltChanged (void) |
| void | _amslExitAltChanged (void) |
Protected Member Functions inherited from ComplexMissionItem | |
| void | _savePresetJson (const QString &name, QJsonObject &presetObject) |
| QJsonObject | _loadPresetJson (const QString &name) |
| void | _appendFlightPathSegment (FlightPathSegment::SegmentType segmentType, const QGeoCoordinate &coord1, double coord1AMSLAlt, const QGeoCoordinate &coord2, double coord2AMSLAlt) |
Protected Member Functions inherited from VisualMissionItem | |
| void | _setBoundingCube (QGCGeoBoundingCube bc) |
Protected Attributes inherited from ComplexMissionItem | |
| bool | _isIncomplete = true |
| int | _cTerrainCollisionSegments = 0 |
| QmlObjectListModel | _flightPathSegments |
| QMap< QString, FactMetaData * > | _metaDataMap |
Protected Attributes inherited from VisualMissionItem | |
| bool | _flyView = false |
| bool | _isCurrentItem = false |
| bool | _hasCurrentChildItem = false |
| bool | _dirty = false |
| bool | _homePositionSpecialCase = false |
| true: This item is being used as a ui home position indicator | |
| bool | _wizardMode = false |
| true: Item editor is showing wizard completion panel | |
| double | _terrainAltitude = qQNaN() |
| Altitude of terrain at coordinate position, NaN for not known. | |
| double | _altDifference = 0 |
| Difference in altitude from previous waypoint. | |
| double | _altPercent = 0 |
| Percent of total altitude change in mission. | |
| double | _terrainPercent = qQNaN() |
| Percent of terrain altitude for coordinate. | |
| bool | _terrainCollision = false |
| true: item collides with terrain | |
| double | _azimuth = 0 |
| Azimuth to previous waypoint. | |
| double | _distance = 0 |
| Distance to previous waypoint. | |
| double | _distanceFromStart = 0 |
| Flight path cumalative horizontal distance from home point to this item. | |
| QString | _editorQml |
| Qml resource for editing item. | |
| double | _missionGimbalYaw = qQNaN() |
| double | _missionVehicleYaw = qQNaN() |
| QGCMAVLink::VehicleClass_t | _previousVTOLMode = QGCMAVLink::VehicleClassGeneric |
| Generic == unknown. | |
| PlanMasterController * | _masterController = nullptr |
| MissionController * | _missionController = nullptr |
| Vehicle * | _controllerVehicle = nullptr |
| FlightPathSegment * | _simpleFlightPathSegment = nullptr |
| The simple item flight segment (if any) which starts with this visual item. | |
| VisualMissionItem * | _parentItem = nullptr |
| QGCGeoBoundingCube | _boundingCube |
| The bounding "cube" of this element. | |
| QmlObjectListModel | _childItems |
| This is used to reference any subsequent mission items which do not specify a coordinate. | |
Static Protected Attributes inherited from ComplexMissionItem | |
| static constexpr const char * | _presetSettingsKey = "_presets" |
Definition at line 15 of file StructureScanComplexItem.h.
| StructureScanComplexItem::StructureScanComplexItem | ( | PlanMasterController * | masterController, |
| bool | flyView, | ||
| const QString & | kmlOrSHPFile | ||
| ) |
| flyView | true: Created for use in the Fly View, false: Created for use in the Plan View |
| kmlOrSHPFile | Polygon comes from this file, empty for default polygon |
Definition at line 18 of file StructureScanComplexItem.cc.
References VisualMissionItem::_amslEntryAltChanged(), _updateFlightPathSegmentsSignal(), VisualMissionItem::amslEntryAltChanged(), VisualMissionItem::amslExitAltChanged(), bottomFlightAltChanged(), VisualMissionItem::coordinateChanged(), QGCMapPolygon::countChanged(), QGCMapPolygon::dirtyChanged(), VisualMissionItem::entryCoordinateChanged(), VisualMissionItem::exitCoordinateChanged(), CameraCalc::isManualCameraChanged(), QGCMapPolygon::isValidChanged(), ComplexMissionItem::maxAMSLAltitudeChanged(), ComplexMissionItem::minAMSLAltitudeChanged(), QGCMapPolygon::pathChanged(), MissionController::plannedHomePositionChanged(), qgcApp, VisualMissionItem::readyForSaveStateChanged(), topFlightAltChanged(), QGCMapPolygon::traceModeChanged(), Fact::valueChanged(), and VisualMissionItem::wizardModeChanged().
|
signal |
Referenced by StructureScanComplexItem().
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 71 of file StructureScanComplexItem.h.
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 82 of file StructureScanComplexItem.h.
|
finalvirtual |
Implements VisualMissionItem.
Definition at line 667 of file StructureScanComplexItem.cc.
References VisualMissionItem::_missionController, and MissionController::plannedHomePosition().
Referenced by amslExitAlt().
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 91 of file StructureScanComplexItem.h.
References amslEntryAlt().
|
finalvirtual |
Returns the mission items associated with the complex item. Caller is responsible for freeing.
| items | List to append to |
| missionItemParent | Parent object for newly created MissionItems |
Implements VisualMissionItem.
Definition at line 300 of file StructureScanComplexItem.cc.
References CameraCalc::adjustedFootprintFrontal(), CameraCalc::adjustedFootprintSide(), QGCMapPolygon::count(), startFromTop(), and QGCMapPolygon::vertexCoordinate().
|
finalvirtual |
Adjust the altitude of the item if appropriate to the new altitude.
Implements VisualMissionItem.
Definition at line 466 of file StructureScanComplexItem.cc.
| double StructureScanComplexItem::bottomFlightAlt | ( | void | ) | const |
Definition at line 590 of file StructureScanComplexItem.cc.
References CameraCalc::adjustedFootprintFrontal().
Referenced by minAMSLAltitude().
|
signal |
Referenced by StructureScanComplexItem().
| int StructureScanComplexItem::cameraShots | ( | void | ) | const |
Definition at line 447 of file StructureScanComplexItem.cc.
|
signal |
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 69 of file StructureScanComplexItem.h.
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 70 of file StructureScanComplexItem.h.
|
inlinefinalvirtual |
Implements ComplexMissionItem.
Definition at line 57 of file StructureScanComplexItem.h.
|
inline |
Definition at line 24 of file StructureScanComplexItem.h.
|
finalvirtual |
Implements VisualMissionItem.
Definition at line 503 of file StructureScanComplexItem.cc.
References QGCMapPolygon::count(), and QGCMapPolygon::vertexCoordinate().
Referenced by entryCoordinate(), exitCoordinate(), rotateEntryPoint(), and setCoordinate().
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 64 of file StructureScanComplexItem.h.
References VisualMissionItem::_dirty.
Referenced by setDirty().
|
finalvirtual |
Implements VisualMissionItem.
Definition at line 662 of file StructureScanComplexItem.cc.
|
inline |
Definition at line 39 of file StructureScanComplexItem.h.
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 73 of file StructureScanComplexItem.h.
References coordinate().
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 74 of file StructureScanComplexItem.h.
References coordinate().
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 84 of file StructureScanComplexItem.h.
|
inline |
Definition at line 51 of file StructureScanComplexItem.h.
|
inline |
Definition at line 43 of file StructureScanComplexItem.h.
|
finalvirtual |
Get the point of complex mission item furthest away from a coordinate
| other | QGeoCoordinate to which distance is calculated |
Implements ComplexMissionItem.
Definition at line 284 of file StructureScanComplexItem.cc.
References QGCMapPolygon::coordinateList(), and VisualMissionItem::distance().
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 65 of file StructureScanComplexItem.h.
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 66 of file StructureScanComplexItem.h.
|
finalvirtual |
Implements VisualMissionItem.
Definition at line 134 of file StructureScanComplexItem.cc.
References QGCMapPolygon::count().
Referenced by setSequenceNumber().
|
inline |
Definition at line 42 of file StructureScanComplexItem.h.
|
finalvirtual |
Load the complex mission item from Json
| complexObject | Complex mission item json object | |
| sequenceNumber | Sequence number for first MISSION_ITEM in survey | |
| [out] | errorString | Error if load fails |
Implements ComplexMissionItem.
Definition at line 193 of file StructureScanComplexItem.cc.
References errorString, gimbalPitchName, ComplexMissionItem::jsonComplexItemTypeKey, jsonComplexItemTypeValue, QGCMapPolygon::jsonPolygonKey, VisualMissionItem::jsonTypeComplexItemValue, VisualMissionItem::jsonTypeKey, JsonHelper::jsonVersionKey, layersName, CameraCalc::load(), QGCMapPolygon::loadFromJson(), qgcApp, scanBottomAltName, sequenceNumber(), setSequenceNumber(), startFromTopName, structureHeightName, and JsonHelper::validateKeys().
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 61 of file StructureScanComplexItem.h.
|
finalvirtual |
Implements ComplexMissionItem.
Definition at line 761 of file StructureScanComplexItem.cc.
References VisualMissionItem::_missionController, MissionController::plannedHomePosition(), and topFlightAlt().
|
finalvirtual |
Implements ComplexMissionItem.
Definition at line 755 of file StructureScanComplexItem.cc.
References VisualMissionItem::_missionController, bottomFlightAlt(), and MissionController::plannedHomePosition().
|
inlinefinalvirtual |
Implements ComplexMissionItem.
Definition at line 56 of file StructureScanComplexItem.h.
References name.
|
finalvirtual |
Reimplemented from VisualMissionItem.
Definition at line 650 of file StructureScanComplexItem.cc.
References VisualMissionItem::_wizardMode, QGCMapPolygon::isValid(), VisualMissionItem::NotReadyForSaveData, and VisualMissionItem::ReadyForSave.
| void StructureScanComplexItem::rotateEntryPoint | ( | void | ) |
Definition at line 518 of file StructureScanComplexItem.cc.
References coordinate(), VisualMissionItem::coordinateChanged(), and QGCMapPolygon::count().
|
finalvirtual |
Save the item(s) in Json format
| missionItems | Current set of mission items, new items should be appended to the end |
Implements VisualMissionItem.
Definition at line 159 of file StructureScanComplexItem.cc.
References gimbalPitchName, ComplexMissionItem::jsonComplexItemTypeKey, jsonComplexItemTypeValue, VisualMissionItem::jsonTypeComplexItemValue, VisualMissionItem::jsonTypeKey, JsonHelper::jsonVersionKey, layersName, CameraCalc::save(), QGCMapPolygon::saveToJson(), scanBottomAltName, startFromTopName, and structureHeightName.
|
inline |
Definition at line 40 of file StructureScanComplexItem.h.
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 75 of file StructureScanComplexItem.h.
Referenced by load(), and setSequenceNumber().
|
finalvirtual |
Implements VisualMissionItem.
Definition at line 471 of file StructureScanComplexItem.cc.
References coordinate(), QGCMapPolygon::coordinateList(), QGCMapPolygon::count(), and QGCMapPolygon::setPath().
|
finalvirtual |
Implements VisualMissionItem.
Definition at line 151 of file StructureScanComplexItem.cc.
References VisualMissionItem::_dirty, dirty(), and VisualMissionItem::dirtyChanged().
|
finalvirtual |
Update item to mission flight status at point where this item appears in mission. IMPORTANT: Overrides must call base class implementation
Reimplemented from VisualMissionItem.
Definition at line 452 of file StructureScanComplexItem.cc.
References QGC::fuzzyCompare(), VisualMissionItem::setMissionFlightStatus(), timeBetweenShotsChanged(), and MissionController::MissionFlightStatus_t::vehicleSpeed.
|
finalvirtual |
Implements VisualMissionItem.
Definition at line 184 of file StructureScanComplexItem.cc.
References lastSequenceNumber(), VisualMissionItem::lastSequenceNumberChanged(), sequenceNumber(), and VisualMissionItem::sequenceNumberChanged().
Referenced by load().
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 76 of file StructureScanComplexItem.h.
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 78 of file StructureScanComplexItem.h.
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 77 of file StructureScanComplexItem.h.
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 68 of file StructureScanComplexItem.h.
|
inlinefinalvirtual |
Implements VisualMissionItem.
Definition at line 67 of file StructureScanComplexItem.h.
|
inline |
Definition at line 44 of file StructureScanComplexItem.h.
Referenced by appendMissionItems().
|
inline |
Definition at line 41 of file StructureScanComplexItem.h.
|
inline |
Definition at line 50 of file StructureScanComplexItem.h.
| double StructureScanComplexItem::timeBetweenShots | ( | void | ) |
Definition at line 498 of file StructureScanComplexItem.cc.
References CameraCalc::adjustedFootprintSide().
|
signal |
Referenced by setMissionFlightStatus().
| double StructureScanComplexItem::topFlightAlt | ( | void | ) | const |
Definition at line 603 of file StructureScanComplexItem.cc.
References CameraCalc::adjustedFootprintFrontal().
Referenced by maxAMSLAltitude().
|
signal |
Referenced by StructureScanComplexItem().
|
staticconstexpr |
Definition at line 101 of file StructureScanComplexItem.h.
|
staticconstexpr |
Definition at line 104 of file StructureScanComplexItem.h.
|
staticconstexpr |
Definition at line 100 of file StructureScanComplexItem.h.
|
static |
Definition at line 95 of file StructureScanComplexItem.h.
Referenced by MissionController::complexMissionItemNames(), StructureScanPlanCreator::createPlan(), MissionController::insertComplexMissionItem(), MissionController::insertComplexMissionItemFromKMLOrSHP(), patternName(), and MissionController::structureScanComplexItemName().
|
staticconstexpr |
Definition at line 98 of file StructureScanComplexItem.h.
|
staticconstexpr |
Definition at line 97 of file StructureScanComplexItem.h.
|
staticconstexpr |
Definition at line 102 of file StructureScanComplexItem.h.
|
staticconstexpr |
Definition at line 99 of file StructureScanComplexItem.h.