summaryrefslogtreecommitdiff
path: root/inc/ShapeAnalysis_FreeBoundsProperties.lxx
blob: 729594d8a788eb3d167317c4c9b104f0b8069374 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
// File:	ShapeAnalysis_FreeBoundsProperties.lxx
// Created:	Mon Aug 17 17:52:47 1998
// Author:	Pavel DURANDIN
//		<pdn@nnov.matra-dtv.fr>

#include <ShapeAnalysis_HSequenceOfFreeBounds.hxx>

//=======================================================================
//function : Shape
//purpose  : Returns shape
//=======================================================================

inline  TopoDS_Shape ShapeAnalysis_FreeBoundsProperties::Shape() const
{
  return myShape;
}

 
//=======================================================================
//function : IsLoaded
//purpose  : Returns True if shape is loaded 
//=======================================================================

inline  Standard_Boolean ShapeAnalysis_FreeBoundsProperties::IsLoaded() const
{
  return !(myShape.IsNull());
}

 
//=======================================================================
//function : Tolerance
//purpose  : Returns tolerance
//=======================================================================

inline  Standard_Real ShapeAnalysis_FreeBoundsProperties::Tolerance() const
{
  return myTolerance;
}

 
//=======================================================================
//function : NbFreeBounds
//purpose  : Returns number of free bounds
//=======================================================================

inline  Standard_Integer ShapeAnalysis_FreeBoundsProperties::NbFreeBounds() const
{
  return (myClosedFreeBounds->Length() + myOpenFreeBounds->Length());
}


//=======================================================================
//function : NbClosedFreeBounds
//purpose  : Returns number of closed free bounds
//=======================================================================

inline  Standard_Integer ShapeAnalysis_FreeBoundsProperties::NbClosedFreeBounds() const
{
  return myClosedFreeBounds->Length();
}


//=======================================================================
//function : NbOpenFreeBounds
//purpose  : Returns number of open free bounds
//=======================================================================

inline  Standard_Integer ShapeAnalysis_FreeBoundsProperties::NbOpenFreeBounds() const
{
  return myOpenFreeBounds->Length();
}


//=======================================================================
//function : ClosedFreeBounds
//purpose  : Returns all closed free bounds
//=======================================================================

inline  Handle(ShapeAnalysis_HSequenceOfFreeBounds) ShapeAnalysis_FreeBoundsProperties::ClosedFreeBounds() const
{
  return myClosedFreeBounds;
}

//=======================================================================
//function : OpenFreeBounds
//purpose  : Returns all open free bounds
//=======================================================================

inline  Handle(ShapeAnalysis_HSequenceOfFreeBounds) ShapeAnalysis_FreeBoundsProperties::OpenFreeBounds() const
{
  return myOpenFreeBounds;
}

//=======================================================================
//function : ClosedFreeBound
//purpose  : Returns properties of closed free bound specified by its rank
//           number
//=======================================================================

inline Handle(ShapeAnalysis_FreeBoundData) ShapeAnalysis_FreeBoundsProperties::ClosedFreeBound(const Standard_Integer index) const
{
  return myClosedFreeBounds->Value(index);
}

//=======================================================================
//function : OpenFreeBound
//purpose  : Returns properties of open free bound specified by its rank
//           number
//=======================================================================

inline Handle(ShapeAnalysis_FreeBoundData) ShapeAnalysis_FreeBoundsProperties::OpenFreeBound(const Standard_Integer index) const
{
  return myOpenFreeBounds->Value(index);
}