File indexing completed on 2024-11-15 09:47:05
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _HLRBRep_FaceData_HeaderFile
0018 #define _HLRBRep_FaceData_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <HLRBRep_Surface.hxx>
0025 #include <TopAbs_Orientation.hxx>
0026 #include <Standard_Integer.hxx>
0027 class HLRAlgo_WiresBlock;
0028 class TopoDS_Face;
0029
0030
0031
0032 class HLRBRep_FaceData
0033 {
0034 public:
0035
0036 DEFINE_STANDARD_ALLOC
0037
0038
0039 Standard_EXPORT HLRBRep_FaceData();
0040
0041
0042
0043
0044
0045 Standard_EXPORT void Set (const TopoDS_Face& FG, const TopAbs_Orientation Or, const Standard_Boolean Cl, const Standard_Integer NW);
0046
0047
0048
0049 Standard_EXPORT void SetWire (const Standard_Integer WI, const Standard_Integer NE);
0050
0051
0052 Standard_EXPORT void SetWEdge (const Standard_Integer WI, const Standard_Integer EWI, const Standard_Integer EI, const TopAbs_Orientation Or, const Standard_Boolean OutL, const Standard_Boolean Inte, const Standard_Boolean Dble, const Standard_Boolean IsoL);
0053
0054 Standard_Boolean Selected() const;
0055
0056 void Selected (const Standard_Boolean B);
0057
0058 Standard_Boolean Back() const;
0059
0060 void Back (const Standard_Boolean B);
0061
0062 Standard_Boolean Side() const;
0063
0064 void Side (const Standard_Boolean B);
0065
0066 Standard_Boolean Closed() const;
0067
0068 void Closed (const Standard_Boolean B);
0069
0070 Standard_Boolean Hiding() const;
0071
0072 void Hiding (const Standard_Boolean B);
0073
0074 Standard_Boolean Simple() const;
0075
0076 void Simple (const Standard_Boolean B);
0077
0078 Standard_Boolean Cut() const;
0079
0080 void Cut (const Standard_Boolean B);
0081
0082 Standard_Boolean WithOutL() const;
0083
0084 void WithOutL (const Standard_Boolean B);
0085
0086 Standard_Boolean Plane() const;
0087
0088 void Plane (const Standard_Boolean B);
0089
0090 Standard_Boolean Cylinder() const;
0091
0092 void Cylinder (const Standard_Boolean B);
0093
0094 Standard_Boolean Cone() const;
0095
0096 void Cone (const Standard_Boolean B);
0097
0098 Standard_Boolean Sphere() const;
0099
0100 void Sphere (const Standard_Boolean B);
0101
0102 Standard_Boolean Torus() const;
0103
0104 void Torus (const Standard_Boolean B);
0105
0106 Standard_Real Size() const;
0107
0108 void Size (const Standard_Real S);
0109
0110 TopAbs_Orientation Orientation() const;
0111
0112 void Orientation (const TopAbs_Orientation O);
0113
0114 Handle(HLRAlgo_WiresBlock)& Wires();
0115
0116 HLRBRep_Surface& Geometry();
0117
0118 Standard_ShortReal Tolerance() const;
0119
0120 protected:
0121
0122 enum EMaskFlags
0123 {
0124 EMaskOrient = 15,
0125 FMaskSelected = 16,
0126 FMaskBack = 32,
0127 FMaskSide = 64,
0128 FMaskClosed = 128,
0129 FMaskHiding = 256,
0130 FMaskSimple = 512,
0131 FMaskCut = 1024,
0132 FMaskWithOutL = 2048,
0133 FMaskPlane = 4096,
0134 FMaskCylinder = 8192,
0135 FMaskCone = 16384,
0136 FMaskSphere = 32768,
0137 FMaskTorus = 65536
0138 };
0139
0140 private:
0141
0142 Standard_Integer myFlags;
0143 Handle(HLRAlgo_WiresBlock) myWires;
0144 HLRBRep_Surface myGeometry;
0145 Standard_Real mySize;
0146 Standard_ShortReal myTolerance;
0147
0148 };
0149
0150 #include <HLRBRep_FaceData.lxx>
0151
0152 #endif