1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
|
// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to
// this header file considered to be the "object code" form of the original source.
#ifndef _Intf_TangentZone_HeaderFile
#define _Intf_TangentZone_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Macro.hxx>
#include <Intf_SeqOfSectionPoint.hxx>
#include <Standard_Real.hxx>
#include <Standard_Integer.hxx>
#include <Standard_Boolean.hxx>
class Standard_OutOfRange;
class Intf_SectionPoint;
//! Describes a zone of tangence between polygons or
//! polyhedra as a sequence of points of intersection.
class Intf_TangentZone
{
public:
DEFINE_STANDARD_ALLOC
//! Returns number of SectionPoint in this TangentZone.
Standard_Integer NumberOfPoints() const;
//! Gives the SectionPoint of address <Index> in the
//! TangentZone.
Standard_EXPORT const Intf_SectionPoint& GetPoint (const Standard_Integer Index) const;
//! Compares two TangentZones.
Standard_EXPORT Standard_Boolean IsEqual (const Intf_TangentZone& Other) const;
Standard_Boolean operator == (const Intf_TangentZone& Other) const
{
return IsEqual(Other);
}
//! Checks if <ThePI> is in TangentZone.
Standard_EXPORT Standard_Boolean Contains (const Intf_SectionPoint& ThePI) const;
//! Gives the parameter range of the TangentZone on the first
//! argument of the Interference. (Usable only for polygon)
void ParamOnFirst (Standard_Real& paraMin, Standard_Real& paraMax) const;
//! Gives the parameter range of the TangentZone on the second
//! argument of the Interference. (Usable only for polygon)
void ParamOnSecond (Standard_Real& paraMin, Standard_Real& paraMax) const;
//! Gives information about the first argument of the
//! Interference. (Usable only for polygon)
Standard_EXPORT void InfoFirst (Standard_Integer& segMin, Standard_Real& paraMin, Standard_Integer& segMax, Standard_Real& paraMax) const;
//! Gives informations about the second argument of the
//! Interference. (Usable only for polygon)
Standard_EXPORT void InfoSecond (Standard_Integer& segMin, Standard_Real& paraMin, Standard_Integer& segMax, Standard_Real& paraMax) const;
//! Returns True if <ThePI> is in the parameter range of the
//! TangentZone.
Standard_EXPORT Standard_Boolean RangeContains (const Intf_SectionPoint& ThePI) const;
//! Returns True if the TangentZone <Other> has a common part
//! with <me>.
Standard_EXPORT Standard_Boolean HasCommonRange (const Intf_TangentZone& Other) const;
//! Builds an empty tangent zone.
Standard_EXPORT Intf_TangentZone();
//! Copies a Tangent zone.
Standard_EXPORT Intf_TangentZone(const Intf_TangentZone& Other);
//! Adds a SectionPoint to the TangentZone.
Standard_EXPORT void Append (const Intf_SectionPoint& Pi) ;
//! Adds the TangentZone <Tzi> to <me>.
Standard_EXPORT void Append (const Intf_TangentZone& Tzi) ;
//! Inserts a SectionPoint in the TangentZone.
Standard_EXPORT Standard_Boolean Insert (const Intf_SectionPoint& Pi) ;
//! Inserts a point in the polygonal TangentZone.
Standard_EXPORT void PolygonInsert (const Intf_SectionPoint& Pi) ;
//! Inserts a SectionPoint before <Index> in the TangentZone.
Standard_EXPORT void InsertBefore (const Standard_Integer Index, const Intf_SectionPoint& Pi) ;
//! Inserts a SectionPoint after <Index> in the TangentZone.
Standard_EXPORT void InsertAfter (const Standard_Integer Index, const Intf_SectionPoint& Pi) ;
Standard_EXPORT void Dump (const Standard_Integer Indent) const;
protected:
private:
Intf_SeqOfSectionPoint Result;
Standard_Real ParamOnFirstMin;
Standard_Real ParamOnFirstMax;
Standard_Real ParamOnSecondMin;
Standard_Real ParamOnSecondMax;
};
#include <Intf_TangentZone.lxx>
#endif // _Intf_TangentZone_HeaderFile
|