0024157: Parallelization of assembly part of BO
[occt.git] / src / Prs3d / Prs3d_PointAspect.cdl
1 -- Created on: 1993-04-26
2 -- Created by: Jean-Louis Frenkel
3 -- Copyright (c) 1993-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
5 --
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
10 --
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 --
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
20
21 --   GG  : GER61351 17/11/1999 Change SetColor() with a compatible Quantity_Color instead
22 --                                     the restricted NameOfColor.
23
24
25 class PointAspect from Prs3d inherits BasicAspect from Prs3d
26  
27         ---Purpose: This  class  defines  attributes for the points
28         --  The points are drawn using markers, whose size does not depend on
29         --  the zoom value of the views. 
30
31 uses 
32
33     AspectMarker3d      from Graphic3d,
34     NameOfColor         from Quantity,
35     Color               from Quantity,
36     TypeOfMarker        from Aspect,
37     HArray1OfByte       from TColStd,
38     MarkerImage_Handle from Graphic3d
39
40
41 is
42
43
44    Create ( aType: TypeOfMarker from Aspect;
45            aColor: Color from Quantity;
46              aScale: Real from Standard)
47              returns mutable PointAspect from Prs3d;
48
49     Create ( aType: TypeOfMarker from Aspect;  
50            aColor: NameOfColor from Quantity;
51              aScale: Real from Standard)
52              returns mutable PointAspect from Prs3d;
53
54     Create ( AColor         : Color from Quantity;
55              AWidth         : Integer from Standard;
56              AHeight        : Integer from Standard;
57              ATexture       : HArray1OfByte from TColStd)
58              returns mutable PointAspect from Prs3d;
59         ---Purpose: defines only the urer defined marker point.
60
61              
62     SetColor (me: mutable; aColor: Color from Quantity) is static;
63  
64     SetColor (me: mutable; aColor: NameOfColor from Quantity) 
65         ---Purpose: defines the color to be used when drawing a point.
66         --          Default value: Quantity_NOC_YELLOW
67     is static;
68
69     SetTypeOfMarker (me: mutable; aType: TypeOfMarker from Aspect) 
70         ---Purpose: defines the type of representation to be used when drawing a point.
71         --          Default value: Aspect_TOM_PLUS
72     is static;
73     
74     SetScale (me: mutable; aScale: Real from Standard) 
75         ---Purpose: defines the size of the marker used when drawing a point.
76         --          Default value: 1.
77     is static;
78     
79     Aspect(me) returns AspectMarker3d from Graphic3d 
80     is static;
81     
82     GetTextureSize (me:mutable; AWidth     : out Integer from Standard;
83                                     AHeight    : out Integer from Standard);
84         ---Level: Public
85         ---Purpose: Returns marker's texture size.                  
86
87     GetTexture (me:mutable)
88          returns MarkerImage_Handle from Graphic3d;
89         ---Level: Public
90         ---Purpose: Returns marker's texture. 
91         ---C++: return const &
92
93     
94 fields
95
96     myAspect: AspectMarker3d from Graphic3d;
97
98 end PointAspect from Prs3d;