🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
FOVHalfPower.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "FieldOfView.hpp"
24
25AST_NAMESPACE_BEGIN
26
28class AST_CORE_API FOVHalfPower: public FieldOfView
29{
30public:
32 FOVHalfPower() = default;
33
35 ~FOVHalfPower() override = default;
36
39 EFOVType getFOVType() const override { return EFOVType::eHalfPower; }
40
43 void accept(FieldOfViewVisitor& visitor) override { visitor.visit(*this); }
44
48 double angularMargin(const Vector3d& direction) const override;
49
52 void setHalfAngle(double angle) { halfAngle_ = angle; }
53
56 double getHalfAngle() const { return halfAngle_; }
57
60 void setFrequency(double frequency) { frequency_ = frequency; }
61
64 double getFrequency() const { return frequency_; }
65
68 void setAntennaDiameter(double diameter) { antennaDiameter_ = diameter; }
69
72 double getAntennaDiameter() const { return antennaDiameter_; }
73
74private:
75 double halfAngle_{0.0};
76 double frequency_{0.0};
77 double antennaDiameter_{0.0};
78};
79
80AST_NAMESPACE_END
视场基类
半功率视场类
定义 FOVHalfPower.hpp:29
double getFrequency() const
获取频率
定义 FOVHalfPower.hpp:64
void setFrequency(double frequency)
设置频率
定义 FOVHalfPower.hpp:60
FOVHalfPower()=default
构造函数
void setHalfAngle(double angle)
设置半角
定义 FOVHalfPower.hpp:52
void accept(FieldOfViewVisitor &visitor) override
接受访问者
定义 FOVHalfPower.hpp:43
void setAntennaDiameter(double diameter)
设置天线直径
定义 FOVHalfPower.hpp:68
double getHalfAngle() const
获取半角
定义 FOVHalfPower.hpp:56
EFOVType getFOVType() const override
获取视场类型
定义 FOVHalfPower.hpp:39
~FOVHalfPower() override=default
析构函数
double getAntennaDiameter() const
获取天线直径
定义 FOVHalfPower.hpp:72
定义 FieldOfViewVisitor.hpp:41
视场基类
定义 FieldOfView.hpp:43
virtual double angularMargin(const Vector3d &direction) const =0
计算方向向量到 FOV 边界的角度余量(弧度)
EFOVType
视场类型枚举
定义 FieldOfView.hpp:32
@ eHalfPower
半功率视场