// 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 _LocOpe_CSIntersector_HeaderFile #define _LocOpe_CSIntersector_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _TopoDS_Shape_HeaderFile #include #endif #ifndef _Standard_Address_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif #ifndef _TopAbs_Orientation_HeaderFile #include #endif class StdFail_NotDone; class Standard_OutOfRange; class TopoDS_Shape; class LocOpe_SequenceOfLin; class LocOpe_SequenceOfCirc; class TColGeom_SequenceOfCurve; class LocOpe_PntFace; //! This class provides the intersection between a set
//! of axis or a circle and the faces of a shape. The
//! intersection points are sorted in increasing
//! parameter along each axis or circle.
class LocOpe_CSIntersector { public: void* operator new(size_t,void* anAddress) { return anAddress; } void* operator new(size_t size) { return Standard::Allocate(size); } void operator delete(void *anAddress) { if (anAddress) Standard::Free((Standard_Address&)anAddress); } //! Empty constructor.
LocOpe_CSIntersector(); //! Creates and performs the intersection betwwen
//! and .
LocOpe_CSIntersector(const TopoDS_Shape& S); //! Performs the intersection between .
Standard_EXPORT void Init(const TopoDS_Shape& S) ; Standard_EXPORT void Perform(const LocOpe_SequenceOfLin& Slin) ; Standard_EXPORT void Perform(const LocOpe_SequenceOfCirc& Scir) ; Standard_EXPORT void Perform(const TColGeom_SequenceOfCurve& Scur) ; //! Returns if the intersection has
//! been done.
Standard_Boolean IsDone() const; //! Returns the number of intersection point on the
//! element of range .
Standard_EXPORT Standard_Integer NbPoints(const Standard_Integer I) const; //! Returns the intersection point of range on
//! element of range . The points are sorted in
//! increasing order of parameter along the axis.
Standard_EXPORT const LocOpe_PntFace& Point(const Standard_Integer I,const Standard_Integer Index) const; //! On the element of range , searches the first
//! intersection point located after the parameter
//! , wich orientation is not TopAbs_EXTERNAL.
//! If found, returns . contains
//! the orientation of the point, and
//! represents the interval of index in the
//! sequence of intersection point corresponding to
//! the point. (IndFrom <= IndTo). is used to
//! determine if 2 parameters are equal.
//!
//! Otherwise, returns .
Standard_EXPORT Standard_Boolean LocalizeAfter(const Standard_Integer I,const Standard_Real From,const Standard_Real Tol,TopAbs_Orientation& Or,Standard_Integer& IndFrom,Standard_Integer& IndTo) const; //! On the element of range , searches the first
//! intersection point located before the parameter
//! , wich orientation is not TopAbs_EXTERNAL.
//! If found, returns . contains
//! the orientation of the point, and
//! represents the interval of index in the
//! sequence of intersection point corresponding to
//! the point (IndFrom <= IndTo). is used to
//! determine if 2 parameters are equal.
//!
//! Otherwise, returns .
Standard_EXPORT Standard_Boolean LocalizeBefore(const Standard_Integer I,const Standard_Real From,const Standard_Real Tol,TopAbs_Orientation& Or,Standard_Integer& IndFrom,Standard_Integer& IndTo) const; //! On the element of range , searches the first
//! intersection point located after the index
//! ( >= FromInd + 1), wich orientation is
//! not TopAbs_EXTERNAL. If found, returns
//! . contains the orientation of
//! the point, and represents the
//! interval of index in the sequence of intersection
//! point corresponding to the point. (IndFrom <=
//! IndTo). is used to determine if 2 parameters
//! are equal.
//!
//! Otherwise, returns .
Standard_EXPORT Standard_Boolean LocalizeAfter(const Standard_Integer I,const Standard_Integer FromInd,const Standard_Real Tol,TopAbs_Orientation& Or,Standard_Integer& IndFrom,Standard_Integer& IndTo) const; //! On the element of range , searches the first
//! intersection point located before the index
//! ( <= FromInd -1), wich orientation is
//! not TopAbs_EXTERNAL. If found, returns
//! . contains the orientation of
//! the point, and represents the
//! interval of index in the sequence of intersection
//! point corresponding to the point (IndFrom <=
//! IndTo). is used to determine if 2 parameters
//! are equal.
//!
//! Otherwise, returns .
Standard_EXPORT Standard_Boolean LocalizeBefore(const Standard_Integer I,const Standard_Integer FromInd,const Standard_Real Tol,TopAbs_Orientation& Or,Standard_Integer& IndFrom,Standard_Integer& IndTo) const; Standard_EXPORT void Destroy() ; ~LocOpe_CSIntersector() { Destroy(); } protected: private: Standard_Boolean myDone; TopoDS_Shape myShape; Standard_Address myPoints; Standard_Integer myNbelem; }; #include // other Inline functions and methods (like "C++: function call" methods) #endif