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.
AppFlow/FITK_Component/FITKGeoCompOCC/FITKOCCModelOperSolid.h

247 lines
6.9 KiB
C

/*****************************************************************//**
* @file FITKOCCModelOperSolid.h
* @brief OCC
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-26
*********************************************************************/
#ifndef FITKOCCMODELOPERSOLID_H
#define FITKOCCMODELOPERSOLID_H
#include "FITKAbstractOCCModel.h"
#include "FITK_Interface/FITKInterfaceGeometry/FITKAbsGeoModelOperSolid.h"
class TopoDS_Shape;
namespace OCC
{
/**
* @brief OCC
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-20
*/
class FITKGeoCompOCCAPI FITKOCCModelChamferSolid : public Interface::FITKAbsGeoModelChamferSolid, public OCCShapeAgent
{
public:
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-20
*/
FITKOCCModelChamferSolid();
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-20
*/
~FITKOCCModelChamferSolid() = default;
/**
* @brief []
* @return
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-20
*/
bool update() override;
};
/**
* @brief OCC
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-20
*/
class FITKGeoCompOCCAPI FITKOCCModelFilletSolid : public Interface::FITKAbsGeoModelFilletSolid, public OCCShapeAgent
{
public:
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-20
*/
FITKOCCModelFilletSolid();
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-20
*/
~FITKOCCModelFilletSolid() = default;
/**
* @brief []
* @return
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-20
*/
bool update() override;
};
/**
* @brief OCC
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-27
*/
class FITKOCCDefeatureTool
{
public:
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-27
*/
FITKOCCDefeatureTool() {}
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-27
*/
~FITKOCCDefeatureTool() {}
/**
* @brief []
* @param cmdIdID
* @param faceIdsID
* @param outputShape[]
* @return
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-27
*/
static bool Defeature(int cmdId, QList<int> faceIds, TopoDS_Shape & outputShape);
};
/**
* @brief OCC
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-29
*/
class FITKGeoCompOCCAPI FITKOCCModelDefeatureSolid : public Interface::FITKAbsGeoModelDefeatureSolid, public OCCShapeAgent
{
public:
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-29
*/
FITKOCCModelDefeatureSolid();
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-29
*/
~FITKOCCModelDefeatureSolid() = default;
/**
* @brief []
* @return
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-29
*/
bool update() override;
};
/**
* @brief OCC
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-27
*/
class FITKGeoCompOCCAPI FITKOCCModelRemoveChamferSolid : public Interface::FITKAbsGeoModelRemoveChamferSolid, public OCCShapeAgent
{
public:
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-27
*/
FITKOCCModelRemoveChamferSolid();
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-27
*/
~FITKOCCModelRemoveChamferSolid() = default;
/**
* @brief []
* @return
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-27
*/
bool update() override;
};
/**
* @brief OCC
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-27
*/
class FITKGeoCompOCCAPI FITKOCCModelRemoveFilletSolid : public Interface::FITKAbsGeoModelRemoveFilletSolid, public OCCShapeAgent
{
public:
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-27
*/
FITKOCCModelRemoveFilletSolid();
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-27
*/
~FITKOCCModelRemoveFilletSolid() = default;
/**
* @brief []
* @return
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-27
*/
bool update() override;
};
/**
* @brief OCC
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-26
*/
class FITKGeoCompOCCAPI FITKOCCModelFillHoleSolid : public Interface::FITKAbsGeoModelFillHoleSolid, public OCCShapeAgent
{
public:
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-26
*/
FITKOCCModelFillHoleSolid();
/**
* @brief
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-26
*/
~FITKOCCModelFillHoleSolid() = default;
/**
* @brief []
* @return
* @author ChengHaotian (yeguangbaozi@foxmail.com)
* @date 2024-08-26
*/
bool update() override;
};
}
#endif // !FITKOCCMODELOPERSOLID_H