Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:05:05

0001 // Created on: 2015-09-10
0002 // Created by: Irina Krylova
0003 // Copyright (c) 1999-2015 OPEN CASCADE SAS
0004 //
0005 // This file is part of Open CASCADE Technology software library.
0006 //
0007 // This library is free software; you can redistribute it and/or modify it under
0008 // the terms of the GNU Lesser General Public License version 2.1 as published
0009 // by the Free Software Foundation, with special exception defined in the file
0010 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0011 // distribution for complete text of the license and disclaimer of any warranty.
0012 //
0013 // Alternatively, this file may be used under the terms of Open CASCADE
0014 // commercial license or contractual agreement.
0015 
0016 #ifndef _STEPCAFControl_GDTProperty_HeaderFile
0017 #define _STEPCAFControl_GDTProperty_HeaderFile
0018 
0019 #include <Standard.hxx>
0020 #include <Standard_DefineAlloc.hxx>
0021 #include <Standard_Handle.hxx>
0022 
0023 #include <STEPConstruct_Tool.hxx>
0024 #include <Standard_CString.hxx>
0025 #include <StepDimTol_GeometricTolerance.hxx>
0026 #include <StepDimTol_GeometricToleranceModifier.hxx>
0027 #include <StepDimTol_GeometricToleranceType.hxx>
0028 #include <StepDimTol_HArray1OfDatumReferenceModifier.hxx>
0029 #include <StepRepr_CompoundRepresentationItem.hxx>
0030 #include <StepVisual_TessellatedGeometricSet.hxx>
0031 #include <XCAFDimTolObjects_DimensionModifiersSequence.hxx>
0032 #include <StepShape_LimitsAndFits.hxx>
0033 #include <XCAFDimTolObjects_DatumModifiersSequence.hxx>
0034 #include <XCAFDimTolObjects_DatumModifWithValue.hxx>
0035 #include <XCAFDimTolObjects_DimensionFormVariance.hxx>
0036 #include <XCAFDimTolObjects_DimensionGrade.hxx>
0037 #include <XCAFDimTolObjects_DimensionType.hxx>
0038 #include <XCAFDimTolObjects_DatumTargetType.hxx>
0039 #include <XCAFDimTolObjects_DimensionQualifier.hxx>
0040 #include <XCAFDimTolObjects_GeomToleranceModif.hxx>
0041 #include <XCAFDimTolObjects_GeomToleranceType.hxx>
0042 #include <XCAFDimTolObjects_GeomToleranceTypeValue.hxx>
0043 
0044 //! This class provides tools for access (read)
0045 //! the GDT properties.
0046 class STEPCAFControl_GDTProperty
0047 {
0048 public:
0049 
0050   DEFINE_STANDARD_ALLOC
0051 
0052   Standard_EXPORT STEPCAFControl_GDTProperty();
0053   Standard_EXPORT static void GetDimModifiers(const Handle(StepRepr_CompoundRepresentationItem)& theCRI,
0054                                               XCAFDimTolObjects_DimensionModifiersSequence& theModifiers);
0055 
0056   Standard_EXPORT static void GetDimClassOfTolerance(const Handle(StepShape_LimitsAndFits)& theLAF,
0057                                                      Standard_Boolean& theHolle,
0058                                                      XCAFDimTolObjects_DimensionFormVariance& theFV,
0059                                                      XCAFDimTolObjects_DimensionGrade& theG);
0060 
0061   Standard_EXPORT static Standard_Boolean GetDimType(const Handle(TCollection_HAsciiString)& theName,
0062                                                      XCAFDimTolObjects_DimensionType& theType);
0063 
0064   Standard_EXPORT static Standard_Boolean GetDatumTargetType(const Handle(TCollection_HAsciiString)& theDescription,
0065                                                      XCAFDimTolObjects_DatumTargetType& theType);
0066 
0067   Standard_EXPORT static Standard_Boolean GetDimQualifierType(const Handle(TCollection_HAsciiString)& theDescription,
0068                                                      XCAFDimTolObjects_DimensionQualifier& theType);
0069 
0070   Standard_EXPORT static Standard_Boolean GetTolValueType(const Handle(TCollection_HAsciiString)& theDescription,
0071                                                      XCAFDimTolObjects_GeomToleranceTypeValue& theType);
0072 
0073   Standard_EXPORT static Handle(TCollection_HAsciiString) GetTolValueType(const XCAFDimTolObjects_GeomToleranceTypeValue& theType);
0074 
0075   Standard_EXPORT static Handle(TCollection_HAsciiString) GetDimTypeName(const XCAFDimTolObjects_DimensionType theType);
0076 
0077   Standard_EXPORT static Handle(TCollection_HAsciiString) GetDimQualifierName(const XCAFDimTolObjects_DimensionQualifier theQualifier);
0078 
0079   Standard_EXPORT static Handle(TCollection_HAsciiString) GetDimModifierName(const XCAFDimTolObjects_DimensionModif theModifier);
0080 
0081   Standard_EXPORT static Handle(StepShape_LimitsAndFits) GetLimitsAndFits(Standard_Boolean theHole,
0082                                                      XCAFDimTolObjects_DimensionFormVariance theFormVariance,
0083                                                      XCAFDimTolObjects_DimensionGrade theGrade);
0084 
0085   Standard_EXPORT static Handle(TCollection_HAsciiString) GetDatumTargetName(const XCAFDimTolObjects_DatumTargetType theDatumType);
0086 
0087   Standard_EXPORT static Standard_Boolean IsDimensionalLocation(const XCAFDimTolObjects_DimensionType theType);
0088 
0089   Standard_EXPORT static Standard_Boolean IsDimensionalSize(const XCAFDimTolObjects_DimensionType theType);
0090 
0091   Standard_EXPORT static StepDimTol_GeometricToleranceType GetGeomToleranceType(const XCAFDimTolObjects_GeomToleranceType theType);
0092 
0093   Standard_EXPORT static XCAFDimTolObjects_GeomToleranceType GetGeomToleranceType(const StepDimTol_GeometricToleranceType theType);
0094 
0095   Standard_EXPORT static Handle(StepDimTol_GeometricTolerance) GetGeomTolerance(const XCAFDimTolObjects_GeomToleranceType theType);
0096 
0097   Standard_EXPORT static StepDimTol_GeometricToleranceModifier GetGeomToleranceModifier(const XCAFDimTolObjects_GeomToleranceModif theModifier);
0098 
0099   Standard_EXPORT static Handle(StepDimTol_HArray1OfDatumReferenceModifier) GetDatumRefModifiers(const XCAFDimTolObjects_DatumModifiersSequence& theModifiers,
0100                                                                                                  const XCAFDimTolObjects_DatumModifWithValue& theModifWithVal,
0101                                                                                                  const Standard_Real theValue,
0102                                                                                                  const StepBasic_Unit& theUnit);
0103 
0104   Standard_EXPORT static Handle(StepVisual_TessellatedGeometricSet) GetTessellation(const TopoDS_Shape& theShape);
0105 
0106 };
0107 
0108 #endif // _STEPCAFControl_GDTProperty_HeaderFile