0033661: Data Exchange, Step Import - Tessellated GDTs are not imported
[occt.git] / src / TopCnx / TopCnx_EdgeFaceTransition.hxx
CommitLineData
42cf5bc1 1// Created on: 1992-08-11
2// Created by: Remi LEQUETTE
3// Copyright (c) 1992-1999 Matra Datavision
4// Copyright (c) 1999-2014 OPEN CASCADE SAS
5//
6// This file is part of Open CASCADE Technology software library.
7//
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.
13//
14// Alternatively, this file may be used under the terms of Open CASCADE
15// commercial license or contractual agreement.
16
17#ifndef _TopCnx_EdgeFaceTransition_HeaderFile
18#define _TopCnx_EdgeFaceTransition_HeaderFile
19
20#include <Standard.hxx>
21#include <Standard_DefineAlloc.hxx>
22#include <Standard_Handle.hxx>
23
24#include <TopTrans_CurveTransition.hxx>
42cf5bc1 25#include <TopAbs_Orientation.hxx>
26class gp_Dir;
27
28
29//! TheEdgeFaceTransition is an algorithm to compute
30//! the cumulated transition for interferences on an
31//! edge.
32class TopCnx_EdgeFaceTransition
33{
34public:
35
36 DEFINE_STANDARD_ALLOC
37
38
39 //! Creates an empty algorithm.
40 Standard_EXPORT TopCnx_EdgeFaceTransition();
41
42 //! Initialize the algorithm with the local
43 //! description of the edge.
44 Standard_EXPORT void Reset (const gp_Dir& Tgt, const gp_Dir& Norm, const Standard_Real Curv);
45
46 //! Initialize the algorithm with a linear Edge.
47 Standard_EXPORT void Reset (const gp_Dir& Tgt);
48
49 //! Add a curve element to the boundary. Or is the
50 //! orientation of the interference on the boundary
51 //! curve. Tr is the transition of the interference.
52 //! BTr is the boundary transition of the
53 //! interference.
54 Standard_EXPORT void AddInterference (const Standard_Real Tole, const gp_Dir& Tang, const gp_Dir& Norm, const Standard_Real Curv, const TopAbs_Orientation Or, const TopAbs_Orientation Tr, const TopAbs_Orientation BTr);
55
56 //! Returns the current cumulated transition.
57 Standard_EXPORT TopAbs_Orientation Transition() const;
58
59 //! Returns the current cumulated BoundaryTransition.
60 Standard_EXPORT TopAbs_Orientation BoundaryTransition() const;
61
62
63
64
65protected:
66
67
68
69
70
71private:
72
73
74
75 TopTrans_CurveTransition myCurveTransition;
76 Standard_Integer nbBoundForward;
77 Standard_Integer nbBoundReversed;
78
79
80};
81
82
83
84
85
86
87
88#endif // _TopCnx_EdgeFaceTransition_HeaderFile