727b5ad9 |
1 | // Created on: 2015-09-10 |
2 | // Created by: Irina Krylova |
3 | // Copyright (c) 1999-2015 OPEN CASCADE SAS |
1c9d3225 |
4 | // |
5 | // This file is part of Open CASCADE Technology software library. |
6 | // |
7 | // This library is free software; you can redistribute it and/or modify it under |
8 | // the terms of the GNU Lesser General Public License version 2.1 as published |
9 | // by the Free Software Foundation, with special exception defined in the file |
10 | // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT |
11 | // distribution for complete text of the license and disclaimer of any warranty. |
12 | // |
13 | // Alternatively, this file may be used under the terms of Open CASCADE |
14 | // commercial license or contractual agreement. |
15 | |
727b5ad9 |
16 | #ifndef _STEPCAFControl_GDTProperty_HeaderFile |
17 | #define _STEPCAFControl_GDTProperty_HeaderFile |
1c9d3225 |
18 | |
19 | #include <Standard.hxx> |
20 | #include <Standard_DefineAlloc.hxx> |
21 | #include <Standard_Handle.hxx> |
22 | |
6595eee7 |
23 | #include <gp_Ax2.hxx> |
1c9d3225 |
24 | #include <STEPConstruct_Tool.hxx> |
25 | #include <Standard_Boolean.hxx> |
26 | #include <Standard_CString.hxx> |
6595eee7 |
27 | #include <StepBasic_Unit.hxx> |
28 | #include <StepDimTol_GeometricTolerance.hxx> |
29 | #include <StepDimTol_GeometricToleranceModifier.hxx> |
30 | #include <StepDimTol_GeometricToleranceType.hxx> |
31 | #include <StepDimTol_HArray1OfDatumReferenceModifier.hxx> |
32 | #include <StepGeom_Axis2Placement3d.hxx> |
1c9d3225 |
33 | #include <StepRepr_CompoundRepresentationItem.hxx> |
b0cef606 |
34 | #include <StepVisual_TessellatedGeometricSet.hxx> |
1c9d3225 |
35 | #include <XCAFDimTolObjects_DimensionModifiersSequence.hxx> |
36 | #include <StepShape_LimitsAndFits.hxx> |
6595eee7 |
37 | #include <XCAFDimTolObjects_DatumModifiersSequence.hxx> |
38 | #include <XCAFDimTolObjects_DatumModifWithValue.hxx> |
1c9d3225 |
39 | #include <XCAFDimTolObjects_DimensionFormVariance.hxx> |
40 | #include <XCAFDimTolObjects_DimensionGrade.hxx> |
41 | #include <XCAFDimTolObjects_DimensionType.hxx> |
42 | #include <XCAFDimTolObjects_DatumTargetType.hxx> |
43 | #include <XCAFDimTolObjects_DimensionQualifier.hxx> |
6595eee7 |
44 | #include <XCAFDimTolObjects_GeomToleranceModif.hxx> |
45 | #include <XCAFDimTolObjects_GeomToleranceType.hxx> |
1c9d3225 |
46 | #include <XCAFDimTolObjects_GeomToleranceTypeValue.hxx> |
47 | |
48 | //! This class provides tools for access (read) |
49 | //! the GDT properties. |
727b5ad9 |
50 | class STEPCAFControl_GDTProperty |
1c9d3225 |
51 | { |
52 | public: |
53 | |
54 | DEFINE_STANDARD_ALLOC |
55 | |
727b5ad9 |
56 | Standard_EXPORT STEPCAFControl_GDTProperty(); |
1c9d3225 |
57 | Standard_EXPORT static void GetDimModifiers(const Handle(StepRepr_CompoundRepresentationItem)& theCRI, |
58 | XCAFDimTolObjects_DimensionModifiersSequence& theModifiers); |
59 | |
60 | Standard_EXPORT static void GetDimClassOfTolerance(const Handle(StepShape_LimitsAndFits)& theLAF, |
04e93070 |
61 | Standard_Boolean& theHolle, |
62 | XCAFDimTolObjects_DimensionFormVariance& theFV, |
63 | XCAFDimTolObjects_DimensionGrade& theG); |
1c9d3225 |
64 | |
65 | Standard_EXPORT static Standard_Boolean GetDimType(const Handle(TCollection_HAsciiString)& theName, |
66 | XCAFDimTolObjects_DimensionType& theType); |
67 | |
68 | Standard_EXPORT static Standard_Boolean GetDatumTargetType(const Handle(TCollection_HAsciiString)& theDescription, |
69 | XCAFDimTolObjects_DatumTargetType& theType); |
70 | |
71 | Standard_EXPORT static Standard_Boolean GetDimQualifierType(const Handle(TCollection_HAsciiString)& theDescription, |
72 | XCAFDimTolObjects_DimensionQualifier& theType); |
73 | |
74 | Standard_EXPORT static Standard_Boolean GetTolValueType(const Handle(TCollection_HAsciiString)& theDescription, |
75 | XCAFDimTolObjects_GeomToleranceTypeValue& theType); |
76 | |
6595eee7 |
77 | Standard_EXPORT static Handle(TCollection_HAsciiString) GetTolValueType(const XCAFDimTolObjects_GeomToleranceTypeValue& theType); |
78 | |
79 | Standard_EXPORT static Handle(TCollection_HAsciiString) GetDimTypeName(const XCAFDimTolObjects_DimensionType theType); |
80 | |
81 | Standard_EXPORT static Handle(TCollection_HAsciiString) GetDimQualifierName(const XCAFDimTolObjects_DimensionQualifier theQualifier); |
82 | |
83 | Standard_EXPORT static Handle(TCollection_HAsciiString) GetDimModifierName(const XCAFDimTolObjects_DimensionModif theModifier); |
84 | |
85 | Standard_EXPORT static Handle(StepShape_LimitsAndFits) GetLimitsAndFits(Standard_Boolean theHole, |
86 | XCAFDimTolObjects_DimensionFormVariance theFormVariance, |
87 | XCAFDimTolObjects_DimensionGrade theGrade); |
88 | |
89 | Standard_EXPORT static Handle(TCollection_HAsciiString) GetDatumTargetName(const XCAFDimTolObjects_DatumTargetType theDatumType); |
90 | |
6595eee7 |
91 | Standard_EXPORT static Standard_Boolean IsDimensionalLocation(const XCAFDimTolObjects_DimensionType theType); |
92 | |
93 | Standard_EXPORT static Standard_Boolean IsDimensionalSize(const XCAFDimTolObjects_DimensionType theType); |
94 | |
95 | Standard_EXPORT static StepDimTol_GeometricToleranceType GetGeomToleranceType(const XCAFDimTolObjects_GeomToleranceType theType); |
96 | |
97 | Standard_EXPORT static XCAFDimTolObjects_GeomToleranceType GetGeomToleranceType(const StepDimTol_GeometricToleranceType theType); |
98 | |
99 | Standard_EXPORT static Handle(StepDimTol_GeometricTolerance) GetGeomTolerance(const XCAFDimTolObjects_GeomToleranceType theType); |
100 | |
101 | Standard_EXPORT static StepDimTol_GeometricToleranceModifier GetGeomToleranceModifier(const XCAFDimTolObjects_GeomToleranceModif theModifier); |
102 | |
103 | Standard_EXPORT static Handle(StepDimTol_HArray1OfDatumReferenceModifier) GetDatumRefModifiers(const XCAFDimTolObjects_DatumModifiersSequence theModifiers, |
104 | const XCAFDimTolObjects_DatumModifWithValue theModifWithVal, |
105 | const Standard_Real theValue, |
106 | const StepBasic_Unit theUnit); |
107 | |
b0cef606 |
108 | Standard_EXPORT static Handle(StepVisual_TessellatedGeometricSet) GetTessellation(const TopoDS_Shape theShape); |
109 | |
1c9d3225 |
110 | }; |
111 | |
727b5ad9 |
112 | #endif // _STEPCAFControl_GDTProperty_HeaderFile |