36 lines
1.2 KiB
C
36 lines
1.2 KiB
C
|
#pragma once
|
||
|
#include "Stdafx.h"
|
||
|
class OCCCabin
|
||
|
{
|
||
|
public:
|
||
|
TopoDS_Shape sld; //20170601 by czb,TopoDS_Solid sld;
|
||
|
TopoDS_Solid sld2;
|
||
|
TopoDS_Solid sld3;
|
||
|
TopoDS_Shape frontFace;//位置面 前
|
||
|
TopoDS_Shape backFace;//位置面 后 x > 前
|
||
|
TopoDS_Shape splitFace;
|
||
|
gp_Pnt cutPoint;
|
||
|
bool isDone;
|
||
|
TopoDS_Shape result;
|
||
|
|
||
|
public:
|
||
|
OCCCabin(void);
|
||
|
//OCCCabin(TopoDS_Solid sld, TopoDS_Shape front, TopoDS_Shape back, TopoDS_Shape sliptFace, gp_Pnt cutPoint);
|
||
|
OCCCabin(TopoDS_Shape sld, TopoDS_Shape front, TopoDS_Shape back, TopoDS_Shape sliptFace, gp_Pnt cutPoint);
|
||
|
~OCCCabin(void);
|
||
|
public:
|
||
|
bool Init(TopoDS_Shape sld, TopoDS_Shape front, TopoDS_Shape back, TopoDS_Shape sliptFace, gp_Pnt cutPoint);
|
||
|
TopoDS_Shape SplitSolidByFront(TopoDS_Shape solid);
|
||
|
TopoDS_Shape SplitSolidByBack(TopoDS_Shape solid);
|
||
|
TopoDS_Shape SplitSolidByFront_bool(TopoDS_Shape solid);
|
||
|
TopoDS_Shape SplitSolidByBack_bool(TopoDS_Shape solid);
|
||
|
TopoDS_Shape SplitSolid(TopoDS_Shape solid, TopoDS_Shape shell, gp_Pnt cPoint);
|
||
|
TopoDS_Shape SplitSolid_bool(TopoDS_Shape solid, TopoDS_Shape shell, gp_Pnt cPoint);
|
||
|
void Build();
|
||
|
TopoDS_Shape GetResult();
|
||
|
void SetSecondSolid(TopoDS_Solid solid);
|
||
|
TopoDS_Solid CreateSecondSolid();
|
||
|
void SetThirdSolid(TopoDS_Solid solid);
|
||
|
};
|
||
|
|