WSF
WsfRectangularFieldOfView.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 2016 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 WSFRECTANGULARFIELDOFVIEW_HPP
13#define WSFRECTANGULARFIELDOFVIEW_HPP
14
15#include "wsf_export.h"
16
17class UtInput;
18#include "UtMath.hpp"
19#include "WsfFieldOfView.hpp"
20
23{
24public:
26
27 bool operator==(const WsfRectangularFieldOfView& aRhs) const;
28 bool operator!=(const WsfRectangularFieldOfView& aRhs) const;
29
30 bool ProcessInput(UtInput& aInput) override;
31 const char* GetScriptClassName() const override { return "WsfRectangularFieldOfView"; }
32
33 WsfFieldOfView* Clone() const override { return new WsfRectangularFieldOfView(*this); }
34
35 bool WithinFieldOfView(double aThisToTgtAz, double aThisToTgtEl) override;
36
37 bool GetAzimuthFieldOfView(double& aMinAzFOV, double& aMaxAzFOV) const override
38 {
39 aMinAzFOV = mMinAzFOV;
40 aMaxAzFOV = mMaxAzFOV;
41 return true;
42 }
43
44 bool SetAzimuthFieldOfView(double aMinAzFOV, double aMaxAzFOV) override;
45
46 bool GetElevationFieldOfView(double& aMinElFOV, double& aMaxElFOV) const override
47 {
48 aMinElFOV = mMinElFOV;
49 aMaxElFOV = mMaxElFOV;
50 return true;
51 }
52
53 bool SetElevationFieldOfView(double aMinElFOV, double aMaxElFOV) override;
54
55private:
59
60 double mMinAzFOV{-UtMath::cPI}; // radians
61 double mMaxAzFOV{UtMath::cPI}; // radians
62 double mMinElFOV{-UtMath::cPI_OVER_2}; // radians
63 double mMaxElFOV{UtMath::cPI_OVER_2}; // radians
65};
66
67#endif
bool operator!=(int aId, const WsfStringInt &aRhs)
Not equal relational operator for the case of an integer on the LHS and a StringId on the RHS.
Definition WsfStringId.hpp:75
bool operator==(int aId, const WsfStringInt &aRhs)
Equal relational operator for the case of an integer on the LHS and a StringId on the RHS.
Definition WsfStringId.hpp:69
#define WSF_EXPORT
Definition WsfXIO_Export.hpp:35
Definition WsfFieldOfView.hpp:36
virtual bool WithinFieldOfView(double aThisToTgtAz, double aThisToTgtEl)=0
virtual bool SetElevationFieldOfView(double aMinElFOV, double aMaxElFOV)
Definition WsfFieldOfView.hpp:103
virtual bool SetAzimuthFieldOfView(double aMinAzFOV, double aMaxAzFOV)
Definition WsfFieldOfView.hpp:96
virtual bool ProcessInput(UtInput &aInput)
Definition WsfFieldOfView.cpp:29
WsfRectangularFieldOfView()
Definition WsfRectangularFieldOfView.cpp:17
WsfFieldOfView * Clone() const override
Definition WsfRectangularFieldOfView.hpp:33
const char * GetScriptClassName() const override
Definition WsfRectangularFieldOfView.hpp:31
bool GetAzimuthFieldOfView(double &aMinAzFOV, double &aMaxAzFOV) const override
Definition WsfRectangularFieldOfView.hpp:37
bool GetElevationFieldOfView(double &aMinElFOV, double &aMaxElFOV) const override
Definition WsfRectangularFieldOfView.hpp:46
Copyrights Multiple, All Rights Reserved