-- File: IntCurveSurface_PolyhedronTool.cdl -- Created: Fri Mar 12 11:05:50 1993 -- Author: Laurent BUCHARD -- ---Copyright: Matra Datavision 1993 generic class PolyhedronTool from IntCurveSurface (ThePolyhedron as any) -- as Polyhedron from IntCurveSurface ---Purpose: Describe the signature of a polyhedral surface with -- only triangular facets and the necessary informations -- to compute the interferences. uses XYZ from gp, Pnt from gp, Box from Bnd, HArray1OfBox from Bnd raises OutOfRange from Standard is Bounding (myclass; thePolyh : ThePolyhedron) ---Purpose: Give the bounding box of the PolyhedronTool. ---C++: return const & ---C++: inline returns Box from Bnd; ComponentsBounding (myclass; thePolyh : ThePolyhedron) ---Purpose: Give the array of boxes. The box corresponding -- to the triangle . ---C++: return const & ---C++: inline returns HArray1OfBox from Bnd; DeflectionOverEstimation (myclass; thePolyh : ThePolyhedron) ---Purpose: Give the tolerance of the polygon. ---C++: inline returns Real from Standard; -- Structure needings : NbTriangles (myclass; thePolyh : ThePolyhedron) returns Integer from Standard; ---Purpose: Give the number of triangles in this polyedral surface. ---C++: inline Triangle (myclass; thePolyh : ThePolyhedron; Index : in Integer from Standard; P1,P2,P3 : out Integer from Standard) raises OutOfRange from Standard; ---Purpose: Give the indices of the 3 points of the triangle of -- address Index in the PolyhedronTool. ---C++: inline Point (myclass; thePolyh : ThePolyhedron; Index : in Integer) returns Pnt from gp raises OutOfRange from Standard; ---Purpose: Give the point of index i in the polyedral surface. ---C++: return const & ---C++: inline TriConnex (myclass; thePolyh : ThePolyhedron; Triang : in Integer; Pivot,Pedge : in Integer; TriCon : out Integer; OtherP : out Integer) returns Integer raises OutOfRange from Standard; ---Purpose: Give the addresse Tricon of the triangle connexe to -- the triangle of address Triang by the edge Pivot Pedge -- and the third point of this connexe triangle. When we -- are on a free edge TriCon==0 but the function return -- the value of the triangle in the other side of Pivot -- on the free edge. Used to turn around a vertex. ---C++: inline -- Modified by Sergey KHROMOV - Fri Dec 7 13:25:47 2001 Begin IsOnBound(myclass; thePolyh: ThePolyhedron; Index1 : Integer from Standard; Index2 : Integer from Standard) ---Purpose: This method returns true if the edge based on points with -- indices Index1 and Index2 represents a boundary edge. It is -- necessary to take into account the boundary deflection for -- this edge. ---C++: inline returns Boolean from Standard; GetBorderDeflection(myclass; thePolyh : ThePolyhedron) ---Purpose: This method returns a border deflection of the polyhedron. ---C++: inline returns Real from Standard; -- Modified by Sergey KHROMOV - Fri Dec 7 13:25:53 2001 End Dump (myclass; thePolyh: ThePolyhedron); end PolyhedronTool;