#pragma once #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "BaseConstVariable.h" #include "LogInfoCls.h" struct SigmaParam { double p1; double p2; double p3; double p4; double p5; double p6; }; double getSigma(double& theta, SigmaParam& param); class SigmaDatabase { public: SigmaDatabase(); ~SigmaDatabase(); public: /// /// /// /// /// 弧度值 /// double getAmpHH(long cls, double angle); /// /// /// /// /// 弧度值 /// double getAmpHV(long cls, double angle); /// /// /// /// /// 弧度值 /// double getAmpVH(long cls, double angle); /// /// /// /// /// 弧度值 /// double getAmpVV(long cls, double angle); double getAmp(long cls, double angle, POLARTYPEENUM polartype); std::map getsigmaParams( POLARTYPEENUM polartype); /// /// 从文件读取参数 /// /// 文件名 void readParamsFromFile(const std::string& filename); /// /// 将参数写入文件 /// /// 文件名 void writeParamsToFile(const std::string& filename); private: std::map HH_sigmaParam; std::map HV_sigmaParam; std::map VH_sigmaParam; std::map VV_sigmaParam; private: // 新增私有辅助函数 void writePolarData(std::ofstream& outfile, const std::string& polarType, const std::map& params); };