Conscience Core
CommandAreaPathGenerateForPictures.h
Go to the documentation of this file.
1 #include "./Command.h"
4 #include "CommandCommons.h"
5 
6 
8 
10 
12 public:
15  ptr<CscEntityReflexion> entityReflexion,
16  vector<const CscPoint3d *> areaVertices, vector<vector<const CscPoint3d *>> holes,
17  double fovWidth, double fovHeight, int flightHeight, float overlapPercentage, const CscPoint3d *entityPosition, optional<bool> doNotPlay);
18 
20  const vector<const CscPoint3d *> areaVertices;
21  const vector<vector<const CscPoint3d *>> holes;
22  const double fovWidth;
23  const double fovHeight;
24  const int flightHeight;
25  const float overlapPercentage;
26  const CscPoint3d *const entityPosition;
27  const optional<bool> doNotPlay;
28 };
29 
35 
36 public:
37  inline static const CommandTypeId COMMAND_ID = "AREA_PATH_GENERATE_FOR_PICTURES";
38 
41 
43 
44 protected:
45  ptr<CscEntityReflexion> getEntityReflexion() const override;
46  const CscCommandExecutionResultSequence * doExecute(CscEnvironmentSimulator &environmentSimulator) override;
47 };
48 
50 COMMAND_TYPE_BUILDER(CommandAreaPathGenerateForPictures, CommandAreaPathGenerateForPicturesParams, ptr<CscEntityReflexion>, vector<const CscPoint3d *>, vector<vector<const CscPoint3d *>>, double, double, int, float, const CscPoint3d *, optional<bool>)
52 
54 vector<CscPoint3d *> computeWaypoints(int numberOfLines, int numberOfColumns, const std::vector<const CscPoint3d*>& areaVertices, const vector<vector<const CscPoint3d *>>& holes, double photoAreaWidth, double photoAreaHeight);
55 CscPoint3d *createPoint(CscPoint3d* originPoint, int column, int line, double photoAreaWidth, double photoAreaHeight, bool goNorth);
56 bool isPointInExclusionArea(vector<vector<const CscPoint3d *>> holes, CscPoint3d *pathPoint);
57 }
conscience_core::axiomes::CscPoint3d
The CscPoint3d class represents a point in three-dimensional space. It is primarily used to denote a ...
Definition: Csc3dTypes.h:24
conscience_core::bridging::commands::area_path_generate_for_pictures
Definition: CommandAreaPathGenerateForPictures.cpp:9
CSC_DLL_IMPORTEXPORT
#define CSC_DLL_IMPORTEXPORT
Definition: os.h:31
conscience_core::bridging::commands::area_path_generate_for_pictures::computeEntityPath
CscSequencePositions * computeEntityPath(ptr< CommandAreaPathGenerateForPicturesParams > parameters, CscEnvironmentSimulator &environmentSimulator)
Definition: CommandAreaPathGenerateForPictures.cpp:31
conscience_core::bridging::commands::area_path_generate_for_pictures::CommandAreaPathGenerateForPicturesParams::entityReflexion
const ptr< CscEntityReflexion > entityReflexion
Definition: CommandAreaPathGenerateForPictures.h:19
CscSequencePositions
Definition: CscSequencePositions.h:23
Command.h
conscience_core::bridging::commands::area_path_generate_for_pictures::CommandAreaPathGenerateForPicturesParams::areaVertices
const vector< const CscPoint3d * > areaVertices
Definition: CommandAreaPathGenerateForPictures.h:20
conscience_core::bridging::commands::result::CscCommandExecutionResultSequence
Definition: CommandExecutionResultSequence.h:15
conscience_core::bridging::commands::CommandTypeId
string CommandTypeId
Definition: Command.h:29
conscience_core::bridging::commands::area_path_generate_for_pictures::isPointInExclusionArea
bool isPointInExclusionArea(vector< vector< const CscPoint3d * >> holes, CscPoint3d *pathPoint)
Definition: CommandAreaPathGenerateForPictures.cpp:135
CscEntityReflexion.h
conscience_core::bridging::commands::area_path_generate_for_pictures::CommandAreaPathGenerateForPicturesParams::overlapPercentage
const float overlapPercentage
Definition: CommandAreaPathGenerateForPictures.h:25
conscience_core::bridging::commands
Definition: cartographyCommands.cpp:4
conscience_core::bridging::commands::CscCommand
Definition: Command.h:40
conscience_core::bridging::commands::area_path_generate_for_pictures::CommandAreaPathGenerateForPicturesParams::doNotPlay
const optional< bool > doNotPlay
Definition: CommandAreaPathGenerateForPictures.h:27
conscience_core::bridging::commands::area_path_generate_for_pictures::CommandAreaPathGenerateForPicturesParams
Definition: CommandAreaPathGenerateForPictures.h:11
environmentEntitiesCommands.h
conscience_core::bridging::commands::area_path_generate_for_pictures::CommandAreaPathGenerateForPicturesParams::fovWidth
const double fovWidth
Definition: CommandAreaPathGenerateForPictures.h:22
conscience_core::bridging::commands::area_path_generate_for_pictures::CommandAreaPathGenerateForPicturesParams::flightHeight
const int flightHeight
Definition: CommandAreaPathGenerateForPictures.h:24
conscience_core::bridging::commands::area_path_generate_for_pictures::computeWaypoints
vector< CscPoint3d * > computeWaypoints(int numberOfLines, int numberOfColumns, const vector< const CscPoint3d * > &areaVertices, const vector< vector< const CscPoint3d * >> &holes, double photoAreaWidth, double photoAreaHeight)
Definition: CommandAreaPathGenerateForPictures.cpp:119
conscience_core::bridging::commands::area_path_generate_for_pictures::CommandAreaPathGenerateForPicturesParams::holes
const vector< vector< const CscPoint3d * > > holes
Definition: CommandAreaPathGenerateForPictures.h:21
COMMAND_TYPE_BUILDER
#define COMMAND_TYPE_BUILDER(PREFIX, COMMAND_REGISTER_className,...)
Definition: CscCommandAutoParse.h:505
conscience_core::bridging::commands::area_path_generate_for_pictures::CommandAreaPathGenerateForPicturesParams::entityPosition
const CscPoint3d *const entityPosition
Definition: CommandAreaPathGenerateForPictures.h:26
conscience_core::bridging::commands::area_path_generate_for_pictures::createPoint
CscPoint3d * createPoint(CscPoint3d *originPoint, int column, int line, double photoAreaWidth, double photoAreaHeight, bool goNorth)
Definition: CommandAreaPathGenerateForPictures.cpp:144
CscEnvironmentSimulator
Definition: CscEnvironmentSimulator.h:35
conscience_core::bridging::commands::COMMAND_REGISTER
COMMAND_REGISTER(CommandFollowKinematicTrajectory, ptr< CscEntityReflexion >, int, const CscState *, string, string, string, string, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float)
CommandCommons.h
conscience_core::bridging::commands::area_path_generate_for_pictures::CommandAreaPathGenerateForPicturesParams::fovHeight
const double fovHeight
Definition: CommandAreaPathGenerateForPictures.h:23
conscience_core::bridging::commands::area_path_generate_for_pictures::CommandAreaPathGenerateForPictures::params
const ptr< CommandAreaPathGenerateForPicturesParams > params
Definition: CommandAreaPathGenerateForPictures.h:42
ptr
std::shared_ptr< T > ptr
Definition: CscCommon.h:29
conscience_core::bridging::commands::area_path_generate_for_pictures::CommandAreaPathGenerateForPictures
Definition: CommandAreaPathGenerateForPictures.h:34