🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
FOVSAR.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "FieldOfView.hpp"
24
25AST_NAMESPACE_BEGIN
26
28class AST_CORE_API FOVSAR: public FieldOfView
29{
30public:
36 FOVSAR() = default;
37
39 ~FOVSAR() override = default;
40
43 EFOVType getFOVType() const override { return EFOVType::eSAR; }
44
47 void accept(FieldOfViewVisitor& visitor) override { visitor.visit(*this); }
48
52 double angularMargin(const Vector3d& direction) const override;
53
56 void setMinElevAngle(double angle) { minElevAngle_ = angle; }
57
60 double getMinElevAngle() const { return minElevAngle_; }
61
64 void setMaxElevAngle(double angle) { maxElevAngle_ = angle; }
65
68 double getMaxElevAngle() const { return maxElevAngle_; }
69
72 void setForwardExcludeAngle(double angle) { forwardExcludeAngle_ = angle; }
73
76 double getForwardExcludeAngle() const { return forwardExcludeAngle_; }
77
80 void setBackwardExcludeAngle(double angle) { backwardExcludeAngle_ = angle; }
81
84 double getBackwardExcludeAngle() const { return backwardExcludeAngle_; }
85
88 void setAltitude(double altitude) { altitude_ = altitude; }
89
92 double getAltitude() const { return altitude_; }
93
96 void setUpdateMode(EUpdateMode mode) { updateMode_ = mode; }
97
100 EUpdateMode getUpdateMode() const { return updateMode_; }
101
102private:
103 double minElevAngle_{0.0};
104 double maxElevAngle_{0.0};
105 double forwardExcludeAngle_{0.0};
106 double backwardExcludeAngle_{0.0};
107 double altitude_{0.0};
108 EUpdateMode updateMode_{EUpdateMode::eConstant};
109};
110
111AST_NAMESPACE_END
视场基类
合成孔径雷达视场类
定义 FOVSAR.hpp:29
double getMinElevAngle() const
获取最小仰角
定义 FOVSAR.hpp:60
double getBackwardExcludeAngle() const
获取后向方位排除角
定义 FOVSAR.hpp:84
void setMinElevAngle(double angle)
设置最小仰角
定义 FOVSAR.hpp:56
double getMaxElevAngle() const
获取最大仰角
定义 FOVSAR.hpp:68
double getAltitude() const
获取海拔高度
定义 FOVSAR.hpp:92
EUpdateMode getUpdateMode() const
获取更新模式
定义 FOVSAR.hpp:100
void setBackwardExcludeAngle(double angle)
设置后向方位排除角
定义 FOVSAR.hpp:80
~FOVSAR() override=default
析构函数
double getForwardExcludeAngle() const
获取前向方位排除角
定义 FOVSAR.hpp:76
FOVSAR()=default
构造函数
void setMaxElevAngle(double angle)
设置最大仰角
定义 FOVSAR.hpp:64
void setUpdateMode(EUpdateMode mode)
设置更新模式
定义 FOVSAR.hpp:96
void setForwardExcludeAngle(double angle)
设置前向方位排除角
定义 FOVSAR.hpp:72
EFOVType getFOVType() const override
获取视场类型
定义 FOVSAR.hpp:43
EUpdateMode
定义 FOVSAR.hpp:31
@ eDynamic
动态更新模式
定义 FOVSAR.hpp:33
@ eConstant
常量模式
定义 FOVSAR.hpp:32
void setAltitude(double altitude)
设置海拔高度
定义 FOVSAR.hpp:88
void accept(FieldOfViewVisitor &visitor) override
接受访问者
定义 FOVSAR.hpp:47
定义 FieldOfViewVisitor.hpp:41
视场基类
定义 FieldOfView.hpp:43
virtual double angularMargin(const Vector3d &direction) const =0
计算方向向量到 FOV 边界的角度余量(弧度)
EFOVType
视场类型枚举
定义 FieldOfView.hpp:32
@ eSAR
合成孔径雷达视场