WSF
WsfCoverageGridPoint.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI
3//
4// The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
5//
6// Copyright 2020 Infoscitex, a DCS Company. All rights reserved.
7//
8// The use, dissemination or disclosure of data in this file is subject to
9// limitation or restriction. See accompanying README and LICENSE for details.
10// ****************************************************************************
11
12#ifndef WSFCOVERAGEGRIDPOINT_HPP
13#define WSFCOVERAGEGRIDPOINT_HPP
14
15#include "wsf_coverage_export.h"
16
17#include <cstdint>
18
19#include "UtLLAPos.hpp"
20#include "UtVec3.hpp"
21
22namespace wsf
23{
24namespace coverage
25{
26
27class Grid;
28
33using PointId = std::uint64_t;
34
37
39class WSF_COVERAGE_EXPORT Point
40{
41public:
42 Point(PointId aPointId, double aLatitudeDeg, double aLongitudeDeg, double aAltitude);
43 Point(const Point& aOther) = default;
44 Point(Point&& aOther) = default;
45 ~Point() = default;
46
47 Point& operator=(const Point& aOther) = default;
48 Point& operator=(Point&& aOther) = default;
49
51 PointId GetID() const { return mId; }
52
54 double GetLatitude() const { return mLocationLLA.GetLat(); }
55
57 double GetLongitude() const { return mLocationLLA.GetLon(); }
58
60 double GetAltitude() const { return mLocationLLA.GetAlt(); }
61
63 const UtLLAPos& GetLLA() const { return mLocationLLA; }
64
65 void SetLLA(double aLatitudeDeg, double aLongitudeDeg, double aAltitude);
66 void SetLLA(const UtLLAPos& aLocationLLA);
67
68private:
69 PointId mId;
70 UtLLAPos mLocationLLA;
71};
72
73} // namespace coverage
74} // namespace wsf
75
76#endif // WSFCOVERAGEGRIDPOINT_HPP
The Grid object defines the region over which coverage can be computed.
Definition WsfCoverageGrid.hpp:38
Point & operator=(Point &&aOther)=default
PointId GetID() const
Return the ID of the Point.
Definition WsfCoverageGridPoint.hpp:51
double GetAltitude() const
Return the altitude in meters of the point.
Definition WsfCoverageGridPoint.hpp:60
double GetLatitude() const
Return the latitude in degrees of the point.
Definition WsfCoverageGridPoint.hpp:54
Point(PointId aPointId, double aLatitudeDeg, double aLongitudeDeg, double aAltitude)
Definition WsfCoverageGridPoint.cpp:22
double GetLongitude() const
Return the longitude in degrees of the point.
Definition WsfCoverageGridPoint.hpp:57
const UtLLAPos & GetLLA() const
Return the point's LLA position.
Definition WsfCoverageGridPoint.hpp:63
Point & operator=(const Point &aOther)=default
Point(Point &&aOther)=default
Point(const Point &aOther)=default
Definition WsfCoverage.cpp:35
std::uint64_t PointId
Definition WsfCoverageGridPoint.hpp:33
constexpr PointId cINVALID_POINT_ID
Zero is used everywhere to indicate an invalid point Id.
Definition WsfCoverageGridPoint.hpp:36
Function definitions for those who need run-time access to the version.
Definition WsfComm.cpp:32
Copyrights Multiple, All Rights Reserved