File indexing completed on 2025-01-18 10:03:52
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _HLRBRep_ShapeBounds_HeaderFile
0018 #define _HLRBRep_ShapeBounds_HeaderFile
0019
0020 #include <HLRAlgo_EdgesBlock.hxx>
0021
0022 #include <Standard.hxx>
0023 #include <Standard_DefineAlloc.hxx>
0024 #include <Standard_Handle.hxx>
0025
0026 #include <Standard_Integer.hxx>
0027 class HLRTopoBRep_OutLiner;
0028
0029
0030
0031
0032 class HLRBRep_ShapeBounds
0033 {
0034 public:
0035
0036 DEFINE_STANDARD_ALLOC
0037
0038
0039 HLRBRep_ShapeBounds();
0040
0041 Standard_EXPORT HLRBRep_ShapeBounds(const Handle(HLRTopoBRep_OutLiner)& S, const Handle(Standard_Transient)& SData, const Standard_Integer nbIso, const Standard_Integer V1, const Standard_Integer V2, const Standard_Integer E1, const Standard_Integer E2, const Standard_Integer F1, const Standard_Integer F2);
0042
0043 Standard_EXPORT HLRBRep_ShapeBounds(const Handle(HLRTopoBRep_OutLiner)& S, const Standard_Integer nbIso, const Standard_Integer V1, const Standard_Integer V2, const Standard_Integer E1, const Standard_Integer E2, const Standard_Integer F1, const Standard_Integer F2);
0044
0045 Standard_EXPORT void Translate (const Standard_Integer NV, const Standard_Integer NE, const Standard_Integer NF);
0046
0047 void Shape (const Handle(HLRTopoBRep_OutLiner)& S);
0048
0049 const Handle(HLRTopoBRep_OutLiner)& Shape() const;
0050
0051 void ShapeData (const Handle(Standard_Transient)& SD);
0052
0053 const Handle(Standard_Transient)& ShapeData() const;
0054
0055 void NbOfIso (const Standard_Integer nbIso);
0056
0057 Standard_Integer NbOfIso() const;
0058
0059 Standard_EXPORT void Sizes (Standard_Integer& NV, Standard_Integer& NE, Standard_Integer& NF) const;
0060
0061 Standard_EXPORT void Bounds (Standard_Integer& V1, Standard_Integer& V2, Standard_Integer& E1, Standard_Integer& E2, Standard_Integer& F1, Standard_Integer& F2) const;
0062
0063 void UpdateMinMax (const HLRAlgo_EdgesBlock::MinMaxIndices& theTotMinMax)
0064 {
0065 myMinMax = theTotMinMax;
0066 }
0067
0068 HLRAlgo_EdgesBlock::MinMaxIndices& MinMax()
0069 {
0070 return myMinMax;
0071 }
0072
0073
0074
0075
0076 protected:
0077
0078
0079
0080
0081
0082 private:
0083
0084
0085
0086 Handle(HLRTopoBRep_OutLiner) myShape;
0087 Handle(Standard_Transient) myShapeData;
0088 Standard_Integer myNbIso;
0089 Standard_Integer myVertStart;
0090 Standard_Integer myVertEnd;
0091 Standard_Integer myEdgeStart;
0092 Standard_Integer myEdgeEnd;
0093 Standard_Integer myFaceStart;
0094 Standard_Integer myFaceEnd;
0095 HLRAlgo_EdgesBlock::MinMaxIndices myMinMax;
0096
0097
0098 };
0099
0100
0101 #include <HLRBRep_ShapeBounds.lxx>
0102
0103
0104
0105
0106
0107 #endif