|
|
|
|
|
#ifndef __FITK_ABSGEO_MODEL_BOX_H__
|
|
|
#define __FITK_ABSGEO_MODEL_BOX_H__
|
|
|
|
|
|
#include "FITKInterfaceGeometryAPI.h"
|
|
|
#include "FITKAbsGeoCommand.h"
|
|
|
|
|
|
namespace Interface
|
|
|
{
|
|
|
/**
|
|
|
* @brief 长方体
|
|
|
* @author LiBaojun (libaojunqd@foxmail.com)
|
|
|
* @date 2024-06-05
|
|
|
*/
|
|
|
class FITKInterfaceGeometryAPI FITKAbsGeoModelBox :
|
|
|
public FITKAbsGeoCommand
|
|
|
{
|
|
|
// FITKCLASS(Interface, FITKAbsGeoModelBox);
|
|
|
public:
|
|
|
/**
|
|
|
* @brief Construct a new FITKOCCModelBox object
|
|
|
* @author LiBaojun (libaojunqd@foxmail.com)
|
|
|
* @date 2024-06-05
|
|
|
*/
|
|
|
explicit FITKAbsGeoModelBox() = default;
|
|
|
/**
|
|
|
* @brief Destroy the FITKOCCModelBox object
|
|
|
* @author LiBaojun (libaojunqd@foxmail.com)
|
|
|
* @date 2024-06-05
|
|
|
*/
|
|
|
virtual ~FITKAbsGeoModelBox() = 0;
|
|
|
/**
|
|
|
* @brief 设置第一点坐标,xyz最小点
|
|
|
* @param[i] p1 坐标值
|
|
|
* @author LiBaojun (libaojunqd@foxmail.com)
|
|
|
* @date 2024-06-05
|
|
|
*/
|
|
|
void setPoint1(double* p1);
|
|
|
/**
|
|
|
* @brief 设置长度
|
|
|
* @param[i] length 长度
|
|
|
* @author LiBaojun (libaojunqd@foxmail.com)
|
|
|
* @date 2024-06-05
|
|
|
*/
|
|
|
void setLength(double* length);
|
|
|
/**
|
|
|
* @brief 获取第一点坐标,xyz最小点
|
|
|
* @param[i] p1 坐标值
|
|
|
* @author LiBaojun (libaojunqd@foxmail.com)
|
|
|
* @date 2024-06-05
|
|
|
*/
|
|
|
void getPoint1(double* p1);
|
|
|
/**
|
|
|
* @brief 获取长度,x y z
|
|
|
* @param[o] length 长度值
|
|
|
* @author LiBaojun (libaojunqd@foxmail.com)
|
|
|
* @date 2024-06-05
|
|
|
*/
|
|
|
void getLength(double* length);
|
|
|
|
|
|
/**
|
|
|
* @brief 获取几何命令类型
|
|
|
* @return FITKGeoEnum::FITKGeometryComType
|
|
|
* @author LiBaojun (libaojunqd@foxmail.com)
|
|
|
* @date 2024-07-12
|
|
|
*/
|
|
|
FITKGeoEnum::FITKGeometryComType getGeometryCommandType() override;
|
|
|
|
|
|
protected:
|
|
|
/**
|
|
|
* @brief 第一点坐标,xyz最小点
|
|
|
* @author LiBaojun (libaojunqd@foxmail.com)
|
|
|
* @date 2024-06-05
|
|
|
*/
|
|
|
double _point1[3] = { 0,0,0 };
|
|
|
/**
|
|
|
* @brief 第二点坐标,xyz最大点
|
|
|
* @author LiBaojun (libaojunqd@foxmail.com)
|
|
|
* @date 2024-06-05
|
|
|
*/
|
|
|
double _lengthParam[3] = { 0,0,0 };
|
|
|
};
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
#endif
|