// 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 _Poly_HeaderFile #define _Poly_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _Handle_Poly_Triangulation_HeaderFile #include #endif #ifndef _Poly_ListOfTriangulation_HeaderFile #include #endif #ifndef _Standard_OStream_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Handle_Poly_Polygon3D_HeaderFile #include #endif #ifndef _Handle_Poly_Polygon2D_HeaderFile #include #endif #ifndef _Standard_IStream_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif class Poly_Triangulation; class Poly_Polygon3D; class Poly_Polygon2D; class gp_XY; class Poly_Triangle; class Poly_Array1OfTriangle; class Poly_HArray1OfTriangle; class Poly_Triangulation; class Poly_Polygon3D; class Poly_Polygon2D; class Poly_PolygonOnTriangulation; class Poly_Connect; //! This package provides classes and services to
//! handle :
class Poly { 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); } //! Join several triangulations to one new triangulation object.
//! The new triangulation is just a mechanical sum of input
//! triangulations, without node sharing. UV coordinates are
//! dropped in the result.
Standard_EXPORT static Handle_Poly_Triangulation Catenate(const Poly_ListOfTriangulation& lstTri) ; //! Writes the content of the triangulation on the
//! stream . If is true this is a "save"
//! format intended to be read back with the Read
//! method. If compact is False it is a "Dump" format
//! intended to be informative.
Standard_EXPORT static void Write(const Handle(Poly_Triangulation)& T,Standard_OStream& OS,const Standard_Boolean Compact = Standard_True) ; //! Writes the content of the 3D polygon

on the
//! stream . If is true this is a "save"
//! format intended to be read back with the Read
//! method. If compact is False it is a "Dump" format
//! intended to be informative.
Standard_EXPORT static void Write(const Handle(Poly_Polygon3D)& P,Standard_OStream& OS,const Standard_Boolean Compact = Standard_True) ; //! Writes the content of the 2D polygon

on the
//! stream . If is true this is a "save"
//! format intended to be read back with the Read
//! method. If compact is False it is a "Dump" format
//! intended to be informative.
Standard_EXPORT static void Write(const Handle(Poly_Polygon2D)& P,Standard_OStream& OS,const Standard_Boolean Compact = Standard_True) ; //! Dumps the triangulation. This is a call to the
//! previous method with Comapct set to False.
Standard_EXPORT static void Dump(const Handle(Poly_Triangulation)& T,Standard_OStream& OS) ; //! Dumps the 3D polygon. This is a call to the
//! previous method with Comapct set to False.
Standard_EXPORT static void Dump(const Handle(Poly_Polygon3D)& P,Standard_OStream& OS) ; //! Dumps the 2D polygon. This is a call to the
//! previous method with Comapct set to False.
Standard_EXPORT static void Dump(const Handle(Poly_Polygon2D)& P,Standard_OStream& OS) ; //! Reads a triangulation from the stream .
Standard_EXPORT static Handle_Poly_Triangulation ReadTriangulation(Standard_IStream& IS) ; //! Reads a 3d polygon from the stream .
Standard_EXPORT static Handle_Poly_Polygon3D ReadPolygon3D(Standard_IStream& IS) ; //! Reads a 2D polygon from the stream .
Standard_EXPORT static Handle_Poly_Polygon2D ReadPolygon2D(Standard_IStream& IS) ; //! Compute node normals for face triangulation
//! as mean normal of surrounding triangles
Standard_EXPORT static void ComputeNormals(const Handle(Poly_Triangulation)& Tri) ; //! Computes parameters of the point P on triangle
//! defined by points P1, P2, and P3, in 2d.
//! The parameters U and V are defined so that
//! P = P1 + U * (P2 - P1) + V * (P3 - P1),
//! with U >= 0, V >= 0, U + V <= 1.
//! If P is located outside of triangle, or triangle
//! is degenerated, the returned parameters correspond
//! to closest point, and returned value is square of
//! the distance from original point to triangle (0 if
//! point is inside).
Standard_EXPORT static Standard_Real PointOnTriangle(const gp_XY& P1,const gp_XY& P2,const gp_XY& P3,const gp_XY& P,gp_XY& UV) ; protected: private: friend class Poly_Triangle; friend class Poly_Array1OfTriangle; friend class Poly_HArray1OfTriangle; friend class Poly_Triangulation; friend class Poly_Polygon3D; friend class Poly_Polygon2D; friend class Poly_PolygonOnTriangulation; friend class Poly_Connect; }; // other Inline functions and methods (like "C++: function call" methods) #endif