0026827: Position and orientation for GD&T frames
[occt.git] / src / StepDimTol / StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol.cxx
1 // Copyright (c) 1999-2014 OPEN CASCADE SAS
2 //
3 // This file is part of Open CASCADE Technology software library.
4 //
5 // This library is free software; you can redistribute it and/or modify it under
6 // the terms of the GNU Lesser General Public License version 2.1 as published
7 // by the Free Software Foundation, with special exception defined in the file
8 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9 // distribution for complete text of the license and disclaimer of any warranty.
10 //
11 // Alternatively, this file may be used under the terms of Open CASCADE
12 // commercial license or contractual agreement.
13
14
15 #include <Standard_Type.hxx>
16 #include <StepBasic_MeasureWithUnit.hxx>
17 #include <StepDimTol_GeometricToleranceTarget.hxx>
18 #include <StepDimTol_GeometricToleranceWithDatumReference.hxx>
19 #include <StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol.hxx>
20 #include <StepDimTol_ModifiedGeometricTolerance.hxx>
21 #include <StepDimTol_PositionTolerance.hxx>
22 #include <StepRepr_ShapeAspect.hxx>
23 #include <TCollection_HAsciiString.hxx>
24
25 IMPLEMENT_STANDARD_RTTIEXT(StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol,StepDimTol_GeometricTolerance)
26
27 //=======================================================================
28 //function : StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol
29 //purpose  : 
30 //=======================================================================
31 StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol()
32 {
33 }
34
35
36 //=======================================================================
37 //function : Init
38 //purpose  : 
39 //=======================================================================
40
41 void StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::Init
42   (const Handle(TCollection_HAsciiString)& aName,
43    const Handle(TCollection_HAsciiString)& aDescription,
44    const Handle(StepBasic_MeasureWithUnit)& aMagnitude,
45    const Handle(StepRepr_ShapeAspect)& aTolerancedShapeAspect,
46    const Handle(StepDimTol_GeometricToleranceWithDatumReference)& aGTWDR,
47    const Handle(StepDimTol_ModifiedGeometricTolerance)& aMGT)
48 {
49   SetName(aName);
50   SetDescription(aDescription);
51   SetMagnitude(aMagnitude);
52   SetTolerancedShapeAspect(aTolerancedShapeAspect);
53   myGeometricToleranceWithDatumReference = aGTWDR;
54   myModifiedGeometricTolerance = aMGT;
55 }
56
57 //=======================================================================
58 //function : Init
59 //purpose  : 
60 //=======================================================================
61
62 void StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::Init
63   (const Handle(TCollection_HAsciiString)& aName,
64    const Handle(TCollection_HAsciiString)& aDescription,
65    const Handle(StepBasic_MeasureWithUnit)& aMagnitude,
66    const StepDimTol_GeometricToleranceTarget& aTolerancedShapeAspect,
67    const Handle(StepDimTol_GeometricToleranceWithDatumReference)& aGTWDR,
68    const Handle(StepDimTol_ModifiedGeometricTolerance)& aMGT)
69 {
70   SetName(aName);
71   SetDescription(aDescription);
72   SetMagnitude(aMagnitude);
73   SetTolerancedShapeAspect(aTolerancedShapeAspect);
74   myGeometricToleranceWithDatumReference = aGTWDR;
75   myModifiedGeometricTolerance = aMGT;
76 }
77
78
79 //=======================================================================
80 //function : SetGeometricToleranceWithDatumReference
81 //purpose  : 
82 //=======================================================================
83
84 void StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::SetGeometricToleranceWithDatumReference
85   (const Handle(StepDimTol_GeometricToleranceWithDatumReference)& aGTWDR) 
86 {
87   myGeometricToleranceWithDatumReference = aGTWDR;
88 }
89
90
91 //=======================================================================
92 //function : GetGeometricToleranceWithDatumReference
93 //purpose  : 
94 //=======================================================================
95
96 Handle(StepDimTol_GeometricToleranceWithDatumReference) StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::GetGeometricToleranceWithDatumReference() const
97 {
98   return myGeometricToleranceWithDatumReference;
99 }
100
101
102 //=======================================================================
103 //function : SetModifiedGeometricTolerance
104 //purpose  : 
105 //=======================================================================
106
107 void StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::SetModifiedGeometricTolerance
108   (const Handle(StepDimTol_ModifiedGeometricTolerance)& aMGT) 
109 {
110   myModifiedGeometricTolerance = aMGT;
111 }
112
113
114 //=======================================================================
115 //function : GetModifiedGeometricTolerance
116 //purpose  : 
117 //=======================================================================
118
119 Handle(StepDimTol_ModifiedGeometricTolerance) StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::GetModifiedGeometricTolerance() const
120 {
121   return myModifiedGeometricTolerance;
122 }
123
124
125 //=======================================================================
126 //function : SetPositionTolerance
127 //purpose  : 
128 //=======================================================================
129
130 void StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::SetPositionTolerance
131   (const Handle(StepDimTol_PositionTolerance)& aPT) 
132 {
133   myPositionTolerance = aPT;
134 }
135
136
137 //=======================================================================
138 //function : GetPositionTolerance
139 //purpose  : 
140 //=======================================================================
141
142 Handle(StepDimTol_PositionTolerance) StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::GetPositionTolerance() const
143 {
144   return myPositionTolerance;
145 }
146