File indexing completed on 2025-01-18 10:04:56
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _ShapeFix_WireSegment_HeaderFile
0018 #define _ShapeFix_WireSegment_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <TopoDS_Vertex.hxx>
0025 #include <TopAbs_Orientation.hxx>
0026 #include <TColStd_HSequenceOfInteger.hxx>
0027 #include <Standard_Integer.hxx>
0028 class ShapeExtend_WireData;
0029 class TopoDS_Wire;
0030 class TopoDS_Edge;
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045
0046
0047
0048
0049
0050
0051
0052
0053
0054
0055
0056 class ShapeFix_WireSegment
0057 {
0058 public:
0059
0060 DEFINE_STANDARD_ALLOC
0061
0062
0063
0064 Standard_EXPORT ShapeFix_WireSegment();
0065
0066
0067 Standard_EXPORT ShapeFix_WireSegment(const Handle(ShapeExtend_WireData)& wire, const TopAbs_Orientation ori = TopAbs_EXTERNAL);
0068
0069
0070 Standard_EXPORT ShapeFix_WireSegment(const TopoDS_Wire& wire, const TopAbs_Orientation ori = TopAbs_EXTERNAL);
0071
0072
0073 Standard_EXPORT void Clear();
0074
0075
0076 Standard_EXPORT void Load (const Handle(ShapeExtend_WireData)& wire);
0077
0078
0079 Standard_EXPORT const Handle(ShapeExtend_WireData)& WireData() const;
0080
0081
0082 Standard_EXPORT void Orientation (const TopAbs_Orientation ori);
0083
0084
0085 Standard_EXPORT TopAbs_Orientation Orientation() const;
0086
0087
0088
0089 Standard_EXPORT TopoDS_Vertex FirstVertex() const;
0090
0091
0092
0093 Standard_EXPORT TopoDS_Vertex LastVertex() const;
0094
0095
0096 Standard_EXPORT Standard_Boolean IsClosed() const;
0097
0098
0099 Standard_EXPORT Standard_Integer NbEdges() const;
0100
0101
0102 Standard_EXPORT TopoDS_Edge Edge (const Standard_Integer i) const;
0103
0104
0105 Standard_EXPORT void SetEdge (const Standard_Integer i, const TopoDS_Edge& edge);
0106
0107
0108
0109
0110 Standard_EXPORT void AddEdge (const Standard_Integer i, const TopoDS_Edge& edge);
0111
0112
0113
0114 Standard_EXPORT void AddEdge (const Standard_Integer i, const TopoDS_Edge& edge, const Standard_Integer iumin, const Standard_Integer iumax, const Standard_Integer ivmin, const Standard_Integer ivmax);
0115
0116
0117 Standard_EXPORT void SetPatchIndex (const Standard_Integer i, const Standard_Integer iumin, const Standard_Integer iumax, const Standard_Integer ivmin, const Standard_Integer ivmax);
0118
0119 Standard_EXPORT void DefineIUMin (const Standard_Integer i, const Standard_Integer iumin);
0120
0121 Standard_EXPORT void DefineIUMax (const Standard_Integer i, const Standard_Integer iumax);
0122
0123 Standard_EXPORT void DefineIVMin (const Standard_Integer i, const Standard_Integer ivmin);
0124
0125
0126
0127
0128 Standard_EXPORT void DefineIVMax (const Standard_Integer i, const Standard_Integer ivmax);
0129
0130
0131 Standard_EXPORT void GetPatchIndex (const Standard_Integer i, Standard_Integer& iumin, Standard_Integer& iumax, Standard_Integer& ivmin, Standard_Integer& ivmax) const;
0132
0133
0134
0135 Standard_EXPORT Standard_Boolean CheckPatchIndex (const Standard_Integer i) const;
0136
0137 Standard_EXPORT void SetVertex (const TopoDS_Vertex& theVertex);
0138
0139 Standard_EXPORT TopoDS_Vertex GetVertex() const;
0140
0141 Standard_EXPORT Standard_Boolean IsVertex() const;
0142
0143
0144
0145
0146 protected:
0147
0148
0149
0150
0151
0152 private:
0153
0154
0155
0156 Handle(ShapeExtend_WireData) myWire;
0157 TopoDS_Vertex myVertex;
0158 TopAbs_Orientation myOrient;
0159 Handle(TColStd_HSequenceOfInteger) myIUMin;
0160 Handle(TColStd_HSequenceOfInteger) myIUMax;
0161 Handle(TColStd_HSequenceOfInteger) myIVMin;
0162 Handle(TColStd_HSequenceOfInteger) myIVMax;
0163
0164
0165 };
0166
0167
0168
0169
0170
0171
0172
0173 #endif