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.

87 lines
2.5 KiB
C

/**********************************************************************
* @file FITKCFDPostSlicePlane.h
* @brief
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-06
*********************************************************************/
#ifndef _FITKCFDPostSlicePlane_H
#define _FITKCFDPostSlicePlane_H
#include "FITKInterfaceCFDPostAPI.h"
#include "FITKAbstractCFDPostData.h"
class vtkClipDataSet;
class vtkPlane;
class vtkCutter;
namespace Interface
{
class FITKCFDPost3DManager;
/**
* @brief
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-06
*/
class FITKInterfaceCFDPostAPI FITKCFDPostSlicePlane : public FITKAbstractCFDPostData
{
public:
/**
* @brief
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-06
*/
FITKCFDPostSlicePlane(int parentID);
/**
* @brief
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-06
*/
virtual ~FITKCFDPostSlicePlane();
/**
* @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] origin
* @param[i] normal
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-18
*/
void setValue(double* origin, double* normal);
/**
* @brief
* @param[o] origin [3]
* @param[o] normal [3]
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-18
*/
void getValue(double* origin, double* normal);
private:
/**
* @brief
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-18
*/
vtkCutter* _slice = nullptr;
/**
* @brief plane
* @author BaGuijun (baguijun@163.com)
* @date 2024-09-18
*/
vtkPlane* _plane = nullptr;
};
}
#endif