0023596: Extending XCAFPrs_AISObject to enable customization of default color
[occt.git] / src / XCAFPrs / XCAFPrs_AISObject.cdl
1 -- Created on: 2000-08-11
2 -- Created by: Andrey BETENEV
3 -- Copyright (c) 2000-2012 OPEN CASCADE SAS
4 --
5 -- The content of this file is subject to the Open CASCADE Technology Public
6 -- License Version 6.5 (the "License"). You may not use the content of this file
7 -- except in compliance with the License. Please obtain a copy of the License
8 -- at http://www.opencascade.org and read it completely before using this file.
9 --
10 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
11 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
12 --
13 -- The Original Code and all software distributed under the License is
14 -- distributed on an "AS IS" basis, without warranty of any kind, and the
15 -- Initial Developer hereby disclaims all such warranties, including without
16 -- limitation, any warranties of merchantability, fitness for a particular
17 -- purpose or non-infringement. Please see the License for the specific terms
18 -- and conditions governing the rights and limitations under the License.
19
20
21
22 class AISObject from XCAFPrs inherits Shape from AIS
23
24     ---Purpose: Implements AIS_InteractiveObject functionality
25     --          for shape in DECAF document
26
27 uses
28     Shape from TopoDS,
29     PresentationManager3d from PrsMgr,
30     Presentation from Prs3d,
31     Label from TDF,
32     Color from Quantity,
33     NameOfMaterial from Graphic3d,
34     MaterialAspect from Graphic3d,
35     Style from XCAFPrs
36     
37 is
38
39     Create (lab: Label from TDF);
40         ---Purpose: Creates an object to visualise the shape label
41
42     SetColor(me:mutable;aColor:Color from Quantity) is redefined virtual;
43
44     UnsetColor(me:mutable) is redefined virtual;
45         
46     SetMaterial(me:mutable;aName:NameOfMaterial from Graphic3d) is redefined virtual;
47
48     SetMaterial(me:mutable;aName:MaterialAspect from Graphic3d) is redefined virtual;
49         
50     UnsetMaterial(me:mutable) is redefined virtual;
51         
52     SetTransparency(me:mutable;aValue : Real from Standard=0.6) is redefined virtual;  
53     
54     UnsetTransparency(me:mutable) is redefined virtual;
55  
56     AddStyledItem (me: mutable; style: Style from XCAFPrs;
57                    shape: Shape from TopoDS;
58                    aPresentationManager : PresentationManager3d from PrsMgr;
59                    aPresentation        : mutable Presentation from Prs3d;
60                    aMode                : Integer from Standard = 0) 
61     is private;
62
63     Compute (me                   : mutable;
64              aPresentationManager : PresentationManager3d from PrsMgr;
65              aPresentation        : mutable Presentation from Prs3d;
66              aMode                : Integer from Standard = 0) 
67     is redefined virtual protected;
68         ---Purpose: Redefined method to compute presentation
69
70     DefaultStyle (me;
71                   aStyle: out Style from XCAFPrs)
72     is virtual protected;
73     ---Purpose: Fills out a default style object which is used when styles are
74     --          not explicitly defined in the document.
75     --          By default, the style uses white color for curves and surfaces.
76
77 fields
78     myLabel : Label from TDF;
79
80 end AISObject;