QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
StructureScanComplexItem Class Reference

#include <StructureScanComplexItem.h>

+ Inheritance diagram for StructureScanComplexItem:
+ Collaboration diagram for StructureScanComplexItem:

Signals

void cameraShotsChanged (int cameraShots)
 
void timeBetweenShotsChanged (void)
 
void bottomFlightAltChanged (void)
 
void topFlightAltChanged (void)
 
void _updateFlightPathSegmentsSignal (void)
 
- Signals inherited from ComplexMissionItem
void patternNameChanged (void)
 
void complexDistanceChanged (void)
 
void boundingCubeChanged (void)
 
void greatestDistanceToChanged (void)
 
void presetNamesChanged (void)
 
void isIncompleteChanged (void)
 
void minAMSLAltitudeChanged (void)
 
void maxAMSLAltitudeChanged (void)
 
void terrainCollisionChanged (bool terrainCollision)
 
- Signals inherited from VisualMissionItem
void altDifferenceChanged (double altDifference)
 
void altPercentChanged (double altPercent)
 
void terrainPercentChanged (double terrainPercent)
 
void terrainCollisionChanged (bool terrainCollision)
 
void azimuthChanged (double azimuth)
 
void commandDescriptionChanged (void)
 
void commandNameChanged (void)
 
void abbreviationChanged (void)
 
void coordinateChanged (const QGeoCoordinate &coordinate)
 
void entryCoordinateChanged (const QGeoCoordinate &entryCoordinate)
 
void exitCoordinateChanged (const QGeoCoordinate &exitCoordinate)
 
void dirtyChanged (bool dirty)
 
void distanceChanged (double distance)
 
void distanceFromStartChanged (double distanceFromStart)
 
void isCurrentItemChanged (bool isCurrentItem)
 
void hasCurrentChildItemChanged (bool hasCurrentChildItem)
 
void sequenceNumberChanged (int sequenceNumber)
 
void isSimpleItemChanged (bool isSimpleItem)
 
void isTakeoffItemChanged (bool isTakeoffItem)
 
void isLandCommandChanged (void)
 
void specifiesCoordinateChanged (void)
 
void isStandaloneCoordinateChanged (void)
 
void specifiesAltitudeOnlyChanged (void)
 
void specifiedFlightSpeedChanged (void)
 
void specifiedGimbalYawChanged (void)
 
void specifiedGimbalPitchChanged (void)
 
void specifiedVehicleYawChanged (void)
 
void lastSequenceNumberChanged (int sequenceNumber)
 
void missionGimbalYawChanged (double missionGimbalYaw)
 
void missionVehicleYawChanged (double missionVehicleYaw)
 
void terrainAltitudeChanged (double terrainAltitude)
 
void additionalTimeDelayChanged (void)
 
void boundingCubeChanged (void)
 
void readyForSaveStateChanged (void)
 
void wizardModeChanged (bool wizardMode)
 
void parentItemChanged (VisualMissionItem *parentItem)
 
void amslEntryAltChanged (double alt)
 
void amslExitAltChanged (double alt)
 
void previousVTOLModeChanged (void)
 
void currentVTOLModeChanged (void)
 Signals that this item has changed the VTOL mode (MAV_CMD_DO_VTOL_TRANSITION)
 
void exitCoordinateSameAsEntryChanged (bool exitCoordinateSameAsEntry)
 

Public Member Functions

 StructureScanComplexItem (PlanMasterController *masterController, bool flyView, const QString &kmlOrSHPFile)
 
CameraCalc *cameraCalc READ cameraCalc CONSTANT (Fact *entranceAlt READ entranceAlt CONSTANT) 1(Fact *structureHeight READ structureHeight CONSTANT) 1(Fact *scanBottomAlt READ scanBottomAlt CONSTANT) 1(Fact *layers READ layers CONSTANT) 1(Fact *gimbalPitch READ gimbalPitch CONSTANT) 1(Fact *startFromTop READ startFromTop CONSTANT) 1(double bottomFlightAlt READ bottomFlightAlt NOTIFY bottomFlightAltChanged) 1(double topFlightAlt READ topFlightAlt NOTIFY topFlightAltChanged) 1(int cameraShots READ cameraShots NOTIFY cameraShotsChanged) 1(double timeBetweenShots READ timeBetweenShots NOTIFY timeBetweenShotsChanged) 1(QGCMapPolygon *structurePolygon READ structurePolygon CONSTANT) 1(QGCMapPolygon *flightPolygon READ flightPolygon CONSTANT) CameraCalc *cameraCalc(void)
 
FactentranceAlt (void)
 
FactscanBottomAlt (void)
 
FactstructureHeight (void)
 
Factlayers (void)
 
FactgimbalPitch (void)
 
FactstartFromTop (void)
 
double bottomFlightAlt (void) const
 
double topFlightAlt (void) const
 
int cameraShots (void) const
 
double timeBetweenShots (void)
 
QGCMapPolygonstructurePolygon (void)
 
QGCMapPolygonflightPolygon (void)
 
void rotateEntryPoint (void)
 
QString patternName (void) const final
 
double complexDistance (void) const final
 
int lastSequenceNumber (void) const final
 
bool load (const QJsonObject &complexObject, int sequenceNumber, QString &errorString) final
 
double greatestDistanceTo (const QGeoCoordinate &other) const final
 
QString mapVisualQML (void) const final
 
bool dirty (void) const final
 
bool isSimpleItem (void) const final
 
bool isStandaloneCoordinate (void) const final
 
bool specifiesCoordinate (void) const final
 
bool specifiesAltitudeOnly (void) const final
 
QString commandDescription (void) const final
 
QString commandName (void) const final
 
QString abbreviation (void) const final
 
QGeoCoordinate coordinate (void) const final
 
QGeoCoordinate entryCoordinate (void) const final
 
QGeoCoordinate exitCoordinate (void) const final
 
int sequenceNumber (void) const final
 
double specifiedFlightSpeed (void) final
 
double specifiedGimbalYaw (void) final
 
double specifiedGimbalPitch (void) final
 
void appendMissionItems (QList< MissionItem * > &items, QObject *missionItemParent) final
 
void setMissionFlightStatus (MissionController::MissionFlightStatus_t &missionFlightStatus) final
 
void applyNewAltitude (double newAltitude) final
 Adjust the altitude of the item if appropriate to the new altitude.
 
double additionalTimeDelay (void) const final
 
ReadyForSaveState readyForSaveState (void) const final
 
bool exitCoordinateSameAsEntry (void) const final
 
void setDirty (bool dirty) final
 
void setCoordinate (const QGeoCoordinate &coordinate) final
 
void setSequenceNumber (int sequenceNumber) final
 
void save (QJsonArray &missionItems) final
 
double editableAlt (void) const final
 
double amslEntryAlt (void) const final
 
double amslExitAlt (void) const final
 
double minAMSLAltitude (void) const final
 
double maxAMSLAltitude (void) const final
 
- Public Member Functions inherited from ComplexMissionItem
 ComplexMissionItem (PlanMasterController *masterController, bool flyView)
 
const ComplexMissionItemoperator= (const ComplexMissionItem &other)
 
QString patternName READ patternName NOTIFY patternNameChanged (double complexDistance READ complexDistance NOTIFY complexDistanceChanged) 1(bool presetsSupported READ presetsSupported CONSTANT) 1(QStringList presetNames READ presetNames NOTIFY presetNamesChanged) 1(bool isIncomplete READ isIncomplete NOTIFY isIncompleteChanged) 1(double minAMSLAltitude READ minAMSLAltitude NOTIFY minAMSLAltitudeChanged) 1(double maxAMSLAltitude READ maxAMSLAltitude NOTIFY maxAMSLAltitudeChanged) 1(bool isSingleItem READ isSingleItem CONSTANT) 1(QmlObjectListModel *flightPathSegments READ flightPathSegments CONSTANT) 1(bool terrainCollision READ terrainCollision NOTIFY terrainCollisionChanged) QmlObjectListModel *flightPathSegments(void)
 < Minimum altitude of all coordinates in item
 
virtual bool terrainCollision (void) const
 
virtual bool isSingleItem (void) const
 
virtual void loadPreset (const QString &name)
 
virtual void savePreset (const QString &name)
 
void deletePreset (const QString &name)
 
virtual QStringList presetNames (void)
 
virtual QString presetsSettingsGroup (void)
 
virtual void addKMLVisuals (KMLPlanDomDocument &domDocument)
 
bool presetsSupported (void)
 
bool isIncomplete (void) const
 
- Public Member Functions inherited from VisualMissionItem
 VisualMissionItem (PlanMasterController *masterController, bool flyView)
 
 VisualMissionItem (const VisualMissionItem &other, bool flyView)
 
 ~VisualMissionItem ()
 
const VisualMissionItemoperator= (const VisualMissionItem &other)
 
bool homePosition READ homePosition CONSTANT (QGeoCoordinate coordinate READ coordinate WRITE setCoordinate NOTIFY coordinateChanged) 1(double amslEntryAlt READ amslEntryAlt NOTIFY amslEntryAltChanged) 1(double terrainAltitude READ terrainAltitude NOTIFY terrainAltitudeChanged) 1(QGeoCoordinate entryCoordinate READ entryCoordinate NOTIFY entryCoordinateChanged) 1(QGeoCoordinate exitCoordinate READ exitCoordinate NOTIFY exitCoordinateChanged) 1(double amslExitAlt READ amslExitAlt NOTIFY amslExitAltChanged) 1(bool exitCoordinateSameAsEntry READ exitCoordinateSameAsEntry NOTIFY exitCoordinateSameAsEntryChanged) 1(QString commandDescription READ commandDescription NOTIFY commandDescriptionChanged) 1(QString commandName READ commandName NOTIFY commandNameChanged) 1(QString abbreviation READ abbreviation NOTIFY abbreviationChanged) 1(bool dirty READ dirty WRITE setDirty NOTIFY dirtyChanged) 1(bool isCurrentItem READ isCurrentItem WRITE setIsCurrentItem NOTIFY isCurrentItemChanged) 1(bool hasCurrentChildItem READ hasCurrentChildItem WRITE setHasCurrentChildItem NOTIFY hasCurrentChildItemChanged) 1(int sequenceNumber READ sequenceNumber WRITE setSequenceNumber NOTIFY sequenceNumberChanged) 1(int lastSequenceNumber READ lastSequenceNumber NOTIFY lastSequenceNumberChanged) 1(bool specifiesCoordinate READ specifiesCoordinate NOTIFY specifiesCoordinateChanged) 1(bool isStandaloneCoordinate READ isStandaloneCoordinate NOTIFY isStandaloneCoordinateChanged) 1(bool specifiesAltitudeOnly READ specifiesAltitudeOnly NOTIFY specifiesAltitudeOnlyChanged) 1(bool isSimpleItem READ isSimpleItem NOTIFY isSimpleItemChanged) 1(bool isTakeoffItem READ isTakeoffItem NOTIFY isTakeoffItemChanged) 1(bool isLandCommand READ isLandCommand NOTIFY isLandCommandChanged) 1(bool isSurveyItem READ isSurveyItem) 1(QString editorQml MEMBER _editorQml CONSTANT) 1(QString mapVisualQML READ mapVisualQML CONSTANT) 1(double specifiedFlightSpeed READ specifiedFlightSpeed NOTIFY specifiedFlightSpeedChanged) 1(double specifiedGimbalYaw READ specifiedGimbalYaw NOTIFY specifiedGimbalYawChanged) 1(double specifiedGimbalPitch READ specifiedGimbalPitch NOTIFY specifiedGimbalPitchChanged) 1(double specifiedVehicleYaw READ specifiedVehicleYaw NOTIFY specifiedVehicleYawChanged) 1(double missionGimbalYaw READ missionGimbalYaw NOTIFY missionGimbalYawChanged) 1(double missionVehicleYaw READ missionVehicleYaw NOTIFY missionVehicleYawChanged) 1(bool flyView READ flyView CONSTANT) 1(bool wizardMode READ wizardMode WRITE setWizardMode NOTIFY wizardModeChanged) 1(int previousVTOLMode MEMBER _previousVTOLMode NOTIFY previousVTOLModeChanged) 1(PlanMasterController *masterController READ masterController CONSTANT) 1(ReadyForSaveState readyForSaveState READ readyForSaveState NOTIFY readyForSaveStateChanged) 1(VisualMissionItem *parentItem READ parentItem WRITE setParentItem NOTIFY parentItemChanged) 1(QmlObjectListModel *childItems READ childItems CONSTANT) 1(QGCGeoBoundingCube *boundingCube READ boundingCube NOTIFY boundingCubeChanged) 1(double altDifference READ altDifference WRITE setAltDifference NOTIFY altDifferenceChanged) 1(double altPercent READ altPercent WRITE setAltPercent NOTIFY altPercentChanged) 1(double terrainPercent READ terrainPercent WRITE setTerrainPercent NOTIFY terrainPercentChanged) 1(bool terrainCollision READ terrainCollision WRITE setTerrainCollision NOTIFY terrainCollisionChanged) 1(double azimuth READ azimuth WRITE setAzimuth NOTIFY azimuthChanged) 1(double distance READ distance WRITE setDistance NOTIFY distanceChanged) 1(double distanceFromStart READ distanceFromStart WRITE setDistanceFromStart NOTIFY distanceFromStartChanged) bool homePosition(void) const
 < true: This item is being used as a home position indicator
 
double altDifference (void) const
 
double altPercent (void) const
 
double terrainPercent (void) const
 
bool terrainCollision (void) const
 
double azimuth (void) const
 
double distance (void) const
 
double distanceFromStart (void) const
 
bool isCurrentItem (void) const
 
bool hasCurrentChildItem (void) const
 
double terrainAltitude (void) const
 
bool flyView (void) const
 
bool wizardMode (void) const
 
VisualMissionItemparentItem (void)
 
QmlObjectListModelchildItems (void)
 
void setIsCurrentItem (bool isCurrentItem)
 
void setHasCurrentChildItem (bool hasCurrentChildItem)
 
void setAltDifference (double altDifference)
 
void setAltPercent (double altPercent)
 
void setTerrainPercent (double terrainPercent)
 
void setTerrainCollision (bool terrainCollision)
 
void setAzimuth (double azimuth)
 
void setDistance (double distance)
 
void setDistanceFromStart (double distanceFromStart)
 
void setWizardMode (bool wizardMode)
 
void setParentItem (VisualMissionItem *parentItem)
 
void setHomePositionSpecialCase (bool homePositionSpecialCase)
 
FlightPathSegmentsimpleFlightPathSegment (void)
 
void setSimpleFlighPathSegment (FlightPathSegment *segment)
 
void clearSimpleFlighPathSegment (void)
 
PlanMasterControllermasterController (void)
 
virtual bool isTakeoffItem (void) const
 
virtual bool isLandCommand (void) const
 
virtual bool isSurveyItem (void) const
 
virtual double specifiedVehicleYaw (void)
 
virtual QGCGeoBoundingCubeboundingCube (void)
 
double missionGimbalYaw (void) const
 
double missionVehicleYaw (void) const
 
void setMissionVehicleYaw (double vehicleYaw)
 

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"
 

Detailed Description

Definition at line 15 of file StructureScanComplexItem.h.

Constructor & Destructor Documentation

◆ StructureScanComplexItem()

Member Function Documentation

◆ _updateFlightPathSegmentsSignal

void StructureScanComplexItem::_updateFlightPathSegmentsSignal ( void  )
signal

◆ abbreviation()

QString StructureScanComplexItem::abbreviation ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 71 of file StructureScanComplexItem.h.

◆ additionalTimeDelay()

double StructureScanComplexItem::additionalTimeDelay ( void  ) const
inlinefinalvirtual
Returns
Amount of additional time delay in seconds needed to fly this item

Implements VisualMissionItem.

Definition at line 82 of file StructureScanComplexItem.h.

◆ amslEntryAlt()

double StructureScanComplexItem::amslEntryAlt ( void  ) const
finalvirtual

◆ amslExitAlt()

double StructureScanComplexItem::amslExitAlt ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 91 of file StructureScanComplexItem.h.

References amslEntryAlt().

◆ appendMissionItems()

void StructureScanComplexItem::appendMissionItems ( QList< MissionItem * > &  items,
QObject *  missionItemParent 
)
finalvirtual

Returns the mission items associated with the complex item. Caller is responsible for freeing.

Parameters
itemsList to append to
missionItemParentParent 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().

◆ applyNewAltitude()

void StructureScanComplexItem::applyNewAltitude ( double  newAltitude)
finalvirtual

Adjust the altitude of the item if appropriate to the new altitude.

Implements VisualMissionItem.

Definition at line 466 of file StructureScanComplexItem.cc.

◆ bottomFlightAlt()

double StructureScanComplexItem::bottomFlightAlt ( void  ) const

Definition at line 590 of file StructureScanComplexItem.cc.

References CameraCalc::adjustedFootprintFrontal().

Referenced by minAMSLAltitude().

◆ bottomFlightAltChanged

void StructureScanComplexItem::bottomFlightAltChanged ( void  )
signal

◆ cameraShots()

int StructureScanComplexItem::cameraShots ( void  ) const

Definition at line 447 of file StructureScanComplexItem.cc.

◆ cameraShotsChanged

void StructureScanComplexItem::cameraShotsChanged ( int  cameraShots)
signal

◆ commandDescription()

QString StructureScanComplexItem::commandDescription ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 69 of file StructureScanComplexItem.h.

◆ commandName()

QString StructureScanComplexItem::commandName ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 70 of file StructureScanComplexItem.h.

◆ complexDistance()

double StructureScanComplexItem::complexDistance ( void  ) const
inlinefinalvirtual
Returns
The distance covered the complex mission item in meters. Signals complexDistanceChanged

Implements ComplexMissionItem.

Definition at line 57 of file StructureScanComplexItem.h.

◆ CONSTANT()

CameraCalc *cameraCalc READ cameraCalc StructureScanComplexItem::CONSTANT ( Fact *entranceAlt READ entranceAlt  CONSTANT)
inline

Definition at line 24 of file StructureScanComplexItem.h.

◆ coordinate()

QGeoCoordinate StructureScanComplexItem::coordinate ( void  ) const
finalvirtual

◆ dirty()

bool StructureScanComplexItem::dirty ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 64 of file StructureScanComplexItem.h.

References VisualMissionItem::_dirty.

Referenced by setDirty().

◆ editableAlt()

double StructureScanComplexItem::editableAlt ( void  ) const
finalvirtual

Implements VisualMissionItem.

Definition at line 662 of file StructureScanComplexItem.cc.

◆ entranceAlt()

Fact * StructureScanComplexItem::entranceAlt ( void  )
inline

Definition at line 39 of file StructureScanComplexItem.h.

◆ entryCoordinate()

QGeoCoordinate StructureScanComplexItem::entryCoordinate ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 73 of file StructureScanComplexItem.h.

References coordinate().

◆ exitCoordinate()

QGeoCoordinate StructureScanComplexItem::exitCoordinate ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 74 of file StructureScanComplexItem.h.

References coordinate().

◆ exitCoordinateSameAsEntry()

bool StructureScanComplexItem::exitCoordinateSameAsEntry ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 84 of file StructureScanComplexItem.h.

◆ flightPolygon()

QGCMapPolygon * StructureScanComplexItem::flightPolygon ( void  )
inline

Definition at line 51 of file StructureScanComplexItem.h.

◆ gimbalPitch()

Fact * StructureScanComplexItem::gimbalPitch ( void  )
inline

Definition at line 43 of file StructureScanComplexItem.h.

◆ greatestDistanceTo()

double StructureScanComplexItem::greatestDistanceTo ( const QGeoCoordinate &  other) const
finalvirtual

Get the point of complex mission item furthest away from a coordinate

Parameters
otherQGeoCoordinate to which distance is calculated
Returns
the greatest distance from any point of the complex item to some coordinate Signals greatestDistanceToChanged

Implements ComplexMissionItem.

Definition at line 284 of file StructureScanComplexItem.cc.

References QGCMapPolygon::coordinateList(), and VisualMissionItem::distance().

◆ isSimpleItem()

bool StructureScanComplexItem::isSimpleItem ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 65 of file StructureScanComplexItem.h.

◆ isStandaloneCoordinate()

bool StructureScanComplexItem::isStandaloneCoordinate ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 66 of file StructureScanComplexItem.h.

◆ lastSequenceNumber()

int StructureScanComplexItem::lastSequenceNumber ( void  ) const
finalvirtual

Implements VisualMissionItem.

Definition at line 134 of file StructureScanComplexItem.cc.

References QGCMapPolygon::count().

Referenced by setSequenceNumber().

◆ layers()

Fact * StructureScanComplexItem::layers ( void  )
inline

Definition at line 42 of file StructureScanComplexItem.h.

◆ load()

bool StructureScanComplexItem::load ( const QJsonObject &  complexObject,
int  sequenceNumber,
QString &  errorString 
)
finalvirtual

Load the complex mission item from Json

Parameters
complexObjectComplex mission item json object
sequenceNumberSequence number for first MISSION_ITEM in survey
[out]errorStringError if load fails
Returns
true: load success, false: load failed, errorString set

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().

◆ mapVisualQML()

QString StructureScanComplexItem::mapVisualQML ( void  ) const
inlinefinalvirtual
Returns
The QML resource file which contains the control which visualizes the item on the map.

Implements VisualMissionItem.

Definition at line 61 of file StructureScanComplexItem.h.

◆ maxAMSLAltitude()

double StructureScanComplexItem::maxAMSLAltitude ( void  ) const
finalvirtual
Returns
Maximum altitude for the items within this complex items.

Implements ComplexMissionItem.

Definition at line 761 of file StructureScanComplexItem.cc.

References VisualMissionItem::_missionController, MissionController::plannedHomePosition(), and topFlightAlt().

◆ minAMSLAltitude()

double StructureScanComplexItem::minAMSLAltitude ( void  ) const
finalvirtual
Returns
Minimum altitude for the items within this complex items.

Implements ComplexMissionItem.

Definition at line 755 of file StructureScanComplexItem.cc.

References VisualMissionItem::_missionController, bottomFlightAlt(), and MissionController::plannedHomePosition().

◆ patternName()

QString StructureScanComplexItem::patternName ( void  ) const
inlinefinalvirtual

Implements ComplexMissionItem.

Definition at line 56 of file StructureScanComplexItem.h.

References name.

◆ readyForSaveState()

StructureScanComplexItem::ReadyForSaveState StructureScanComplexItem::readyForSaveState ( void  ) const
finalvirtual
Returns
Returns whether the item is ready for save and if not, why

Reimplemented from VisualMissionItem.

Definition at line 650 of file StructureScanComplexItem.cc.

References VisualMissionItem::_wizardMode, QGCMapPolygon::isValid(), VisualMissionItem::NotReadyForSaveData, and VisualMissionItem::ReadyForSave.

◆ rotateEntryPoint()

void StructureScanComplexItem::rotateEntryPoint ( void  )

◆ save()

void StructureScanComplexItem::save ( QJsonArray &  missionItems)
finalvirtual

◆ scanBottomAlt()

Fact * StructureScanComplexItem::scanBottomAlt ( void  )
inline

Definition at line 40 of file StructureScanComplexItem.h.

◆ sequenceNumber()

int StructureScanComplexItem::sequenceNumber ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 75 of file StructureScanComplexItem.h.

Referenced by load(), and setSequenceNumber().

◆ setCoordinate()

void StructureScanComplexItem::setCoordinate ( const QGeoCoordinate &  coordinate)
finalvirtual

◆ setDirty()

void StructureScanComplexItem::setDirty ( bool  dirty)
finalvirtual

◆ setMissionFlightStatus()

void StructureScanComplexItem::setMissionFlightStatus ( MissionController::MissionFlightStatus_t missionFlightStatus)
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.

◆ setSequenceNumber()

void StructureScanComplexItem::setSequenceNumber ( int  sequenceNumber)
finalvirtual

◆ specifiedFlightSpeed()

double StructureScanComplexItem::specifiedFlightSpeed ( void  )
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 76 of file StructureScanComplexItem.h.

◆ specifiedGimbalPitch()

double StructureScanComplexItem::specifiedGimbalPitch ( void  )
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 78 of file StructureScanComplexItem.h.

◆ specifiedGimbalYaw()

double StructureScanComplexItem::specifiedGimbalYaw ( void  )
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 77 of file StructureScanComplexItem.h.

◆ specifiesAltitudeOnly()

bool StructureScanComplexItem::specifiesAltitudeOnly ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 68 of file StructureScanComplexItem.h.

◆ specifiesCoordinate()

bool StructureScanComplexItem::specifiesCoordinate ( void  ) const
inlinefinalvirtual

Implements VisualMissionItem.

Definition at line 67 of file StructureScanComplexItem.h.

◆ startFromTop()

Fact * StructureScanComplexItem::startFromTop ( void  )
inline

Definition at line 44 of file StructureScanComplexItem.h.

Referenced by appendMissionItems().

◆ structureHeight()

Fact * StructureScanComplexItem::structureHeight ( void  )
inline

Definition at line 41 of file StructureScanComplexItem.h.

◆ structurePolygon()

QGCMapPolygon * StructureScanComplexItem::structurePolygon ( void  )
inline

Definition at line 50 of file StructureScanComplexItem.h.

◆ timeBetweenShots()

double StructureScanComplexItem::timeBetweenShots ( void  )

Definition at line 498 of file StructureScanComplexItem.cc.

References CameraCalc::adjustedFootprintSide().

◆ timeBetweenShotsChanged

void StructureScanComplexItem::timeBetweenShotsChanged ( void  )
signal

Referenced by setMissionFlightStatus().

◆ topFlightAlt()

double StructureScanComplexItem::topFlightAlt ( void  ) const

Definition at line 603 of file StructureScanComplexItem.cc.

References CameraCalc::adjustedFootprintFrontal().

Referenced by maxAMSLAltitude().

◆ topFlightAltChanged

void StructureScanComplexItem::topFlightAltChanged ( void  )
signal

Member Data Documentation

◆ gimbalPitchName

constexpr const char* StructureScanComplexItem::gimbalPitchName = "GimbalPitch"
staticconstexpr

Definition at line 101 of file StructureScanComplexItem.h.

Referenced by load(), and save().

◆ jsonComplexItemTypeValue

constexpr const char* StructureScanComplexItem::jsonComplexItemTypeValue = "StructureScan"
staticconstexpr

Definition at line 104 of file StructureScanComplexItem.h.

Referenced by load(), and save().

◆ layersName

constexpr const char* StructureScanComplexItem::layersName = "Layers"
staticconstexpr

Definition at line 100 of file StructureScanComplexItem.h.

Referenced by load(), and save().

◆ name

◆ scanBottomAltName

constexpr const char* StructureScanComplexItem::scanBottomAltName = "ScanBottomAlt"
staticconstexpr

Definition at line 98 of file StructureScanComplexItem.h.

Referenced by load(), and save().

◆ settingsGroup

constexpr const char* StructureScanComplexItem::settingsGroup = "StructureScan"
staticconstexpr

Definition at line 97 of file StructureScanComplexItem.h.

◆ startFromTopName

constexpr const char* StructureScanComplexItem::startFromTopName = "StartFromTop"
staticconstexpr

Definition at line 102 of file StructureScanComplexItem.h.

Referenced by load(), and save().

◆ structureHeightName

constexpr const char* StructureScanComplexItem::structureHeightName = "StructureHeight"
staticconstexpr

Definition at line 99 of file StructureScanComplexItem.h.

Referenced by load(), and save().


The documentation for this class was generated from the following files: