1 // Created on: 1993-12-23
2 // Created by: Isabelle GRIGNON
3 // Copyright (c) 1993-1999 Matra Datavision
4 // Copyright (c) 1999-2014 OPEN CASCADE SAS
6 // This file is part of Open CASCADE Technology software library.
8 // This library is free software; you can redistribute it and/or modify it under
9 // the terms of the GNU Lesser General Public License version 2.1 as published
10 // by the Free Software Foundation, with special exception defined in the file
11 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 // distribution for complete text of the license and disclaimer of any warranty.
14 // Alternatively, this file may be used under the terms of Open CASCADE
15 // commercial license or contractual agreement.
17 #ifndef _ChFiKPart_ComputeData_HeaderFile
18 #define _ChFiKPart_ComputeData_HeaderFile
20 #include <Adaptor3d_Surface.hxx>
21 #include <TopAbs_Orientation.hxx>
23 class TopOpeBRepDS_DataStructure;
24 class ChFiDS_SurfData;
29 //! Methodes de classe permettant de remplir une
30 //! SurfData dans les cas particuliers de conges
32 //! - cylindre entre 2 surfaces planes,
33 //! - tore/sphere entre un plan et un cylindre othogonal,
34 //! - tore/sphere entre un plan et un cone othogonal,
36 //! - tore entre un plan et une droite orthogonale (rotule).
37 class ChFiKPart_ComputeData
44 //! Computes a simple fillet in several particular
46 Standard_EXPORT static Standard_Boolean Compute (TopOpeBRepDS_DataStructure& DStr, Handle(ChFiDS_SurfData)& Data, const Handle(Adaptor3d_Surface)& S1, const Handle(Adaptor3d_Surface)& S2, const TopAbs_Orientation Or1, const TopAbs_Orientation Or2, const Handle(ChFiDS_Spine)& Sp, const Standard_Integer Iedge);
48 //! Computes a toric or spheric corner fillet.
49 Standard_EXPORT static Standard_Boolean ComputeCorner (TopOpeBRepDS_DataStructure& DStr, const Handle(ChFiDS_SurfData)& Data, const Handle(Adaptor3d_Surface)& S1, const Handle(Adaptor3d_Surface)& S2, const TopAbs_Orientation OrFace1, const TopAbs_Orientation OrFace2, const TopAbs_Orientation Or1, const TopAbs_Orientation Or2, const Standard_Real minRad, const Standard_Real majRad, const gp_Pnt2d& P1S1, const gp_Pnt2d& P2S1, const gp_Pnt2d& P1S2, const gp_Pnt2d& P2S2);
51 //! Computes spheric corner fillet with non iso pcurve on S2.
52 Standard_EXPORT static Standard_Boolean ComputeCorner (TopOpeBRepDS_DataStructure& DStr, const Handle(ChFiDS_SurfData)& Data, const Handle(Adaptor3d_Surface)& S1, const Handle(Adaptor3d_Surface)& S2, const TopAbs_Orientation OrFace1, const TopAbs_Orientation OrFace2, const TopAbs_Orientation Or1, const TopAbs_Orientation Or2, const Standard_Real Rad, const gp_Pnt2d& PS1, const gp_Pnt2d& P1S2, const gp_Pnt2d& P2S2);
54 //! Computes a toric corner rotule.
55 Standard_EXPORT static Standard_Boolean ComputeCorner (TopOpeBRepDS_DataStructure& DStr, const Handle(ChFiDS_SurfData)& Data, const Handle(Adaptor3d_Surface)& S, const Handle(Adaptor3d_Surface)& S1, const Handle(Adaptor3d_Surface)& S2, const TopAbs_Orientation OfS, const TopAbs_Orientation OS, const TopAbs_Orientation OS1, const TopAbs_Orientation OS2, const Standard_Real Radius);
80 #endif // _ChFiKPart_ComputeData_HeaderFile