🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
FieldOfView.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstUtil/Object.hpp"
25#include "AstUtil/ObjectNamed.hpp"
27
28AST_NAMESPACE_BEGIN
29
31enum class EFOVType
32{
34 eConical,
37 eSAR,
38 eCustom
39};
40
42class AST_CORE_API FieldOfView: public ObjectNamed
43{
44public:
46 FieldOfView() = default;
47
49 virtual ~FieldOfView() = default;
50
53 virtual EFOVType getFOVType() const = 0;
54
57 virtual void accept(FieldOfViewVisitor& visitor) = 0;
58
61 void setDetailedTerrainHorizon(bool value) { detailedTerrainHorizon_ = value; }
62
65 bool getDetailedTerrainHorizon() const { return detailedTerrainHorizon_; }
66
67protected:
68 bool detailedTerrainHorizon_{false};
69};
70
71AST_NAMESPACE_END
视场访问者接口
定义 FieldOfViewVisitor.hpp:41
视场基类
定义 FieldOfView.hpp:43
FieldOfView()=default
构造函数
bool getDetailedTerrainHorizon() const
获取详细地形地平线设置
定义 FieldOfView.hpp:65
virtual ~FieldOfView()=default
析构函数
void setDetailedTerrainHorizon(bool value)
设置详细地形地平线
定义 FieldOfView.hpp:61
virtual EFOVType getFOVType() const =0
获取视场类型
virtual void accept(FieldOfViewVisitor &visitor)=0
接受访问者
命名对象
定义 ObjectNamed.hpp:36
EFOVType
视场类型枚举
定义 FieldOfView.hpp:32
@ eConical
复杂圆锥视场
@ eSimpleCone
简单圆锥视场
@ eCustom
自定义视场
@ eSAR
合成孔径雷达视场
@ eRectangular
矩形视场
@ eHalfPower
半功率视场