0024830: Remove redundant keyword 'mutable' in CDL declarations
[occt.git] / src / Graphic3d / Graphic3d_ArrayOfTriangles.cdl
1 -- Created on: 2001-01-04
2 -- Copyright (c) 2001-2014 OPEN CASCADE SAS
3 --
4 -- This file is part of Open CASCADE Technology software library.
5 --
6 -- This library is free software; you can redistribute it and/or modify it under
7 -- the terms of the GNU Lesser General Public License version 2.1 as published
8 -- by the Free Software Foundation, with special exception defined in the file
9 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
10 -- distribution for complete text of the license and disclaimer of any warranty.
11 --
12 -- Alternatively, this file may be used under the terms of Open CASCADE
13 -- commercial license or contractual agreement.
14
15 class ArrayOfTriangles from Graphic3d inherits ArrayOfPrimitives from Graphic3d 
16
17 is
18
19         -- constructor
20         Create (
21                 maxVertexs: Integer from Standard;
22                 maxEdges: Integer from Standard = 0;
23                 hasVNormals: Boolean from Standard = Standard_False;
24                 hasVColors: Boolean from Standard = Standard_False;
25                 hasTexels: Boolean from Standard = Standard_False)
26         returns ArrayOfTriangles from Graphic3d;
27         ---Purpose: Creates an array of triangles,
28         -- a triangle can be filled as:
29         -- 1) creating a set of triangles defined with his vertexs.
30         --    i.e:
31         --    myArray = Graphic3d_ArrayOfTriangles(6)
32         --    myArray->AddVertex(x1,y1,z1)
33         --      ....
34         --    myArray->AddVertex(x6,y6,z6)
35         -- 3) creating a set of indexed triangles defined with his vertex
36         --    ans edges.
37         --    i.e:
38         --    myArray = Graphic3d_ArrayOfTriangles(4,6)
39         --    myArray->AddVertex(x1,y1,z1)
40         --      ....
41         --    myArray->AddVertex(x4,y4,z4)
42         --    myArray->AddEdge(1)
43         --    myArray->AddEdge(2)
44         --    myArray->AddEdge(3)
45         --    myArray->AddEdge(2)
46         --    myArray->AddEdge(3)
47         --    myArray->AddEdge(4)
48         --
49         -- <maxVertexs> defined the maximun allowed vertex number in the array.
50         -- <maxEdges> defined the maximun allowed edge number in the array.
51         --  Warning:
52         -- When <hasVNormals> is TRUE , you must use one of
53         --      AddVertex(Point,Normal)
54         --  or  AddVertex(Point,Normal,Color)
55         --  or  AddVertex(Point,Normal,Texel) methods.
56         -- When <hasVColors> is TRUE , you must use one of
57         --      AddVertex(Point,Color)
58         --  or  AddVertex(Point,Normal,Color) methods.
59         -- When <hasTexels> is TRUE , you must use one of
60         --      AddVertex(Point,Texel)
61         --  or  AddVertex(Point,Normal,Texel) methods.
62         --  Warning:
63         -- the user is responsible about the orientation of the triangle
64         -- depending of the order of the created vertex or edges and this
65         -- orientation must be coherent with the vertex normal optionnaly
66         -- given at each vertex (See the Orientate() methods).
67
68 end;