#ifndef MenuUIFunction_H #define MenuUIFunction_H //#include #include #include #include #include "UIFunctionBase.h" #include "FIFOContainer.h" #include "MenuShipUIFunction.h" #include "MenuToolUIFunction.h" class ImportIGESOption { ImportIGESOption() { m_szFilePath = ""; //导入模型所在路径 m_bIsAddMode = false; //导入模式,true为新建模式,false为合并模式 m_nImportType = 0; //导入点、线、面类型 m_fScalse = 0; //导入模型的缩放比例 m_fTranslateX = 0; //导入模型X偏移量 m_fTranslateY = 0; //导入模型Y偏移量 m_fTranslateZ = 0; //导入模型Z偏移量 m_fRotateX = 0; //导入模型绕X轴旋转角度 m_fRotateY = 0; //导入模型绕Y轴旋转角度 m_fRotateZ = 0; //导入模型绕Z轴旋转角度 } public: QString m_szFilePath; //导入模型所在路径 bool m_bIsAddMode; //导入模式,true为新建模式,false为合并模式 int m_nImportType; //导入点、线、面类型 float m_fScalse; //导入模型的缩放比例 float m_fTranslateX; //导入模型X偏移量 float m_fTranslateY; //导入模型Y偏移量 float m_fTranslateZ; //导入模型Z偏移量 float m_fRotateX; //导入模型绕X轴旋转角度 float m_fRotateY; //导入模型绕Y轴旋转角度 float m_fRotateZ; //导入模型绕Z轴旋转角度 }; class MenuUIFunction:public UIFunctionBase { public: MenuUIFunction(); ~MenuUIFunction(); void from(const json& j); void to(json); void new_file(const QString& message); void update_3d_json(const QString& message ); void open_file(const QString& message); void save_file(const QString& message); void save_as_file(const QString& message); void import_xls(const QString& message); void import_xls_ok(const QString& message); void import_iges(const QString& message); void import_iges_ok(const QString& message); void import_dxf(const QString& message); void import_ship(const QString& message); void export_iges(const QString& message); void export_iges_ok(const QString& message); void load_recent_file(const QString& message); void init_recent_file_list(const QString& message); void init_color_setting(const QString& message); private: json createRecentFilesJson(); void update_recent_file(const QString& path); private: MenuShipUIFunction m_menu_shipUIFunction; MenuToolUIFunction m_menu_toolUIFunction; FIFOContainer m_vRecentOpenFileObj; //最近加载文件记录 }; #endif // MessageHandle_H