Integration of OCCT 6.5.0 from SVN
[occt.git] / src / PPoly / PPoly_Triangulation.cdl
1 -- File:        PPoly_Triangulation.cdl
2 -- Created:     Tue Oct 24 10:37:04 1995
3 -- Author:      Mister rmi
4 --              <rmi@pronox>
5 ---Copyright:    Matra Datavision 1995
6
7
8 class Triangulation from PPoly inherits Persistent from Standard
9
10         ---Purpose: This class represents a 3d polyhedral triangulation.
11         --          
12         --          It is defined by :
13         --          
14         --          * A Deflection : This  is the distance between the
15         --          triangulation and the "ideal" surface.
16         --          
17         --          *  An  Array1 of 3d   nodes  values : Contains the
18         --          Points for the 3d  nodes. Two different  nodes may
19         --          have the same  3d point if  they are differents in
20         --          UV space.
21         --          
22         --          * An  Array1 of 2d nodes  values : Contains the UV
23         --          coordinates  for   the   nodes   in the    surface
24         --          parametric  space. This is optionnal.
25         --          
26         --          * The  Array of  triangles,   each triangle  is  a
27         --          triplet of  node indices.  A  triangle is oriented
28         --          and the  whole triangulation  must have a coherent
29         --          orientation.
30
31 uses
32    HArray1OfPnt2d    from PColgp,
33    HArray1OfPnt      from PColgp,
34    HArray1OfTriangle from PPoly
35
36 is
37
38     Create(Defl:       Real              from Standard;
39            Nodes:      HArray1OfPnt      from PColgp;
40            Triangles:  HArray1OfTriangle from PPoly)
41     returns mutable Triangulation from PPoly;
42         ---Purpose: Defaults with allocation of Nodes and Triangles.
43
44     Create(Defl:       Real              from Standard;
45            Nodes:      HArray1OfPnt      from PColgp;
46            UVNodes:    HArray1OfPnt2d    from PColgp;
47            Triangles:  HArray1OfTriangle from PPoly)
48     returns mutable Triangulation from PPoly;
49         ---Purpose: Defaults with allocation of Nodes and Triangles.
50
51     Deflection(me) returns Real;
52     
53     Deflection(me : mutable; D : Real);
54
55     NbNodes(me) returns Integer;
56         ---Purpose: Null if the nodes are not yet defined.
57
58     NbTriangles(me) returns Integer;
59         ---Purpose: Null if the Triangles are not yet defined.
60
61     HasUVNodes(me) returns Boolean;
62
63     Nodes(me) returns HArray1OfPnt from PColgp;
64         ---Purpose: Const reference on the 3d nodes values.
65         
66     UVNodes(me) returns HArray1OfPnt2d from PColgp;
67         ---Purpose: Const reference on the 2d nodes values.
68
69     Triangles(me) returns HArray1OfTriangle from PPoly;
70         ---Purpose: Const reference on the triangles.
71
72 fields
73
74     myDeflection  : Real;
75     myNodes       : HArray1OfPnt      from PColgp;
76     myUVNodes     : HArray1OfPnt2d    from PColgp;
77     myTriangles   : HArray1OfTriangle from PPoly;
78
79 end Triangulation;