You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

88 lines
2.7 KiB
C++

/**********************************************************************
* @file FITKCFDPostClipCylinder.h
* @brief 后处理圆柱型切割数据类
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-06
*********************************************************************/
#ifndef _FITKCFDPostClipCylinder_H
#define _FITKCFDPostClipCylinder_H
#include "FITKInterfaceCFDPostAPI.h"
#include "FITKAbstractCFDPostData.h"
class vtkClipDataSet;
class vtkCylinder;
namespace Interface
{
class FITKCFDPost3DManager;
/**
* @brief 后处理圆柱型切割数据类
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-06
*/
class FITKInterfaceCFDPostAPI FITKCFDPostClipCylinder : public FITKAbstractCFDPostData
{
public:
/**
* @brief 构造函数
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-06
*/
FITKCFDPostClipCylinder(int parentID);
/**
* @brief 析构函数
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-06
*/
virtual ~FITKCFDPostClipCylinder();
/**
* @brief 获取后处理数据类型
* @return FITKPostDataType 后处理数据类型
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-14
*/
virtual FITKPostDataType getPostDataType() override;
/**
* @brief 获取数据对象
* @return vtkDataSet* vtk数据对象
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-18
*/
vtkDataSet* getOutput() override;
/**
* @brief 设置数据
* @param[i] center 中心点[3]
* @param[i] axis 方向[3]
* @param[i] radius 半径
* @author BaGuijun (baguijun@163.com)
* @date 2024-10-11
*/
void setValue(double* center, double* axis, double radius);
/**
* @brief 获取数据
* @param[o] center 中心点[3]
* @param[o] axis 方向[3]
* @param[o] radius 半径
* @author BaGuijun (baguijun@163.com)
* @date 2024-10-11
*/
void getValue(double* center, double* axis, double& radius);
private:
/**
* @brief 切割数据对象
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-18
*/
vtkClipDataSet* _clipDataSet = nullptr;
/**
* @brief cylinder
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-18
*/
vtkCylinder* _cylinder = nullptr;
};
}
#endif