File indexing completed on 2025-01-18 10:04:08
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Intf_TangentZone_HeaderFile
0018 #define _Intf_TangentZone_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <Intf_SeqOfSectionPoint.hxx>
0025 #include <Standard_Boolean.hxx>
0026 class Intf_SectionPoint;
0027
0028
0029
0030
0031 class Intf_TangentZone
0032 {
0033 public:
0034
0035 DEFINE_STANDARD_ALLOC
0036
0037
0038
0039 Standard_Integer NumberOfPoints() const;
0040
0041
0042
0043 Standard_EXPORT const Intf_SectionPoint& GetPoint (const Standard_Integer Index) const;
0044
0045
0046 Standard_EXPORT Standard_Boolean IsEqual (const Intf_TangentZone& Other) const;
0047 Standard_Boolean operator == (const Intf_TangentZone& Other) const
0048 {
0049 return IsEqual(Other);
0050 }
0051
0052
0053 Standard_EXPORT Standard_Boolean Contains (const Intf_SectionPoint& ThePI) const;
0054
0055
0056
0057 void ParamOnFirst (Standard_Real& paraMin, Standard_Real& paraMax) const;
0058
0059
0060
0061 void ParamOnSecond (Standard_Real& paraMin, Standard_Real& paraMax) const;
0062
0063
0064
0065 Standard_EXPORT void InfoFirst (Standard_Integer& segMin, Standard_Real& paraMin, Standard_Integer& segMax, Standard_Real& paraMax) const;
0066
0067
0068
0069 Standard_EXPORT void InfoSecond (Standard_Integer& segMin, Standard_Real& paraMin, Standard_Integer& segMax, Standard_Real& paraMax) const;
0070
0071
0072
0073 Standard_EXPORT Standard_Boolean RangeContains (const Intf_SectionPoint& ThePI) const;
0074
0075
0076
0077 Standard_EXPORT Standard_Boolean HasCommonRange (const Intf_TangentZone& Other) const;
0078
0079
0080 Standard_EXPORT Intf_TangentZone();
0081
0082
0083 Standard_EXPORT void Append (const Intf_SectionPoint& Pi);
0084
0085
0086 Standard_EXPORT void Append (const Intf_TangentZone& Tzi);
0087
0088
0089 Standard_EXPORT Standard_Boolean Insert (const Intf_SectionPoint& Pi);
0090
0091
0092 Standard_EXPORT void PolygonInsert (const Intf_SectionPoint& Pi);
0093
0094
0095 Standard_EXPORT void InsertBefore (const Standard_Integer Index, const Intf_SectionPoint& Pi);
0096
0097
0098 Standard_EXPORT void InsertAfter (const Standard_Integer Index, const Intf_SectionPoint& Pi);
0099
0100 Standard_EXPORT void Dump (const Standard_Integer Indent) const;
0101
0102
0103
0104
0105 protected:
0106
0107
0108
0109
0110
0111 private:
0112
0113
0114
0115 Intf_SeqOfSectionPoint Result;
0116 Standard_Real ParamOnFirstMin;
0117 Standard_Real ParamOnFirstMax;
0118 Standard_Real ParamOnSecondMin;
0119 Standard_Real ParamOnSecondMax;
0120
0121
0122 };
0123
0124
0125 #include <Intf_TangentZone.lxx>
0126
0127
0128
0129
0130
0131 #endif