0023710: Simplification of presentation managment classes
[occt.git] / src / PrsMgr / PrsMgr_Prs.cdl
1 -- Created on: 1995-01-31
2 -- Created by: Mister rmi
3 -- Copyright (c) 1995-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
5 --
6 -- This file is part of Open CASCADE Technology software library.
7 --
8 -- This library is free software; you can redistribute it and/or modify it under
9 -- the terms of the GNU Lesser General Public License version 2.1 as published
10 -- by the Free Software Foundation, with special exception defined in the file
11 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 -- distribution for complete text of the license and disclaimer of any warranty.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 --Modified by   rob 11-mar-98 : Implement virtual methods from Graphic3d_Structure
18 --                              to optimize HLR Display...
19
20 class Prs from PrsMgr inherits Presentation from Prs3d
21
22 uses
23     Array2OfReal          from TColStd,
24     StructureManager      from Graphic3d,
25     Structure             from Graphic3d,
26     DataStructureManager  from Graphic3d,
27     TypeOfPresentation3d  from PrsMgr,
28     PresentationPointer   from PrsMgr
29     
30 is
31     Create (theStructManager        : StructureManager from Graphic3d;
32             thePresentation         : PresentationPointer from PrsMgr;
33             theTypeOfPresentation3d : TypeOfPresentation3d from PrsMgr)
34     returns mutable Prs from PrsMgr;
35
36     Compute (me: mutable)
37     is redefined static;
38
39     Compute(me : mutable; aProjector: DataStructureManager from Graphic3d)
40     returns Structure from Graphic3d
41     is redefined static;
42
43     Compute ( me        : mutable;
44               aProjector: DataStructureManager from Graphic3d;
45               AMatrix   : Array2OfReal from TColStd )
46     returns Structure from Graphic3d is 
47     redefined static;
48     ---Purpose: the "degenerated" Structure is displayed with
49     --          a transformation defined by <AMatrix>
50     --          which is not a Pure Translation.
51     --          We have to take in account this Transformation
52     --          in the computation of hidden line removal...
53     --          returns a filled Graphic Structure.
54
55
56
57     Compute(me              : mutable; 
58             aProjector      : DataStructureManager from Graphic3d;
59             ComputedStruct  : in out Structure from Graphic3d)
60     is redefined static;
61     ---Purpose: No need to return a structure, just to fill
62     --          <ComputedStruct> ....
63
64
65     Compute ( me        : mutable;
66               aProjector: DataStructureManager from Graphic3d;
67               AMatrix   : Array2OfReal from TColStd ;
68               aStructure: in out Structure from Graphic3d )
69     is redefined static;
70     ---Purpose: No Need to return a Structure, just to
71     --          Fill <aStructure>. The Trsf has to be taken in account
72     --          in the computation (Rotation Part....)
73
74     
75
76 fields 
77     myPresentation3d: PresentationPointer from PrsMgr;
78 end Prs from PrsMgr;