summaryrefslogtreecommitdiff
path: root/src/Prs2d/Prs2d_Point.cdl
blob: c351e00b3f56627c1ace9b7fedecfb9b59163f20 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
-- File     : Prs2d_Point.cdl
-- Created  : April  2000
-- Author   : Tanya COOL
---Copyright: Matra Datavision 2000

class Point from Prs2d inherits Line from Graphic2d

  ---Purpose: Constructs presentable and selectable Point. 
  --          It's displayed as a definite type Marker from 
  --          Aspect_TypeOfMarker
  
uses 

  Pnt2d          from gp,
  PlaneAngle     from Quantity,
  Length         from Quantity,
  GraphicObject  from Graphic2d,    
  Drawer         from Graphic2d,
  TypeOfMarker   from Aspect,
  FStream        from Aspect 
    
is
  
  Create( aGO     : GraphicObject from Graphic2d;
          aPnt    : Pnt2d         from gp; 
		  aTOM    : TypeOfMarker  from Aspect;
		  aWSize  : Length        from Quantity = 2.0;
          aHSize  : Length        from Quantity = 2.0;
		  anAngle : PlaneAngle    from Quantity = 0.0  ) 
       returns mutable Point from Prs2d;
  ---Purpose: Initializes the Point defined <aPnt>

  --------------------------
  -- Category: Draw and Pick
  --------------------------

  Draw( me : mutable; aDrawer: Drawer from Graphic2d )
      is static protected;
  ---Level: Internal
  ---Purpose: Draws the angle <me>.

  DrawElement( me : mutable; aDrawer: Drawer from Graphic2d;
                 anIndex: Integer from Standard)
        is redefined protected;
  ---Level: Internal
  ---Purpose: Draws element <anIndex> of the point <me>.

  DrawVertex( me : mutable; aDrawer: Drawer from Graphic2d;
                anIndex: Integer from Standard)
        is redefined protected;
  ---Level: Internal
  ---Purpose: Draws vertex <anIndex> of the point <me>.

  Pick( me: mutable; X, Y      : ShortReal from Standard;
		             aPrecision: ShortReal from Standard;
		             aDrawer   : Drawer from Graphic2d)
	 returns Boolean from Standard is static protected;
  ---Level: Internal
  ---Purpose: Returns Standard_True if the point <me> is picked,
  --	    Standard_False if not.
  
  --------------------------------------------------------------------- 
  ---Category: Modifications of the class properties

  SetPoint( me: mutable; aPnt: Pnt2d from gp );
  ---Level: Public
  ---Purpose: Modifies the Point by redefining location <aPnt>

  SetMarker( me: mutable; aTOM: TypeOfMarker from Aspect );
  ---Level: Public
  ---Purpose: Modifies the Point by redefining type of marker

  SetIndex( me: mutable; anInd: Integer from Standard );
  ---Level: Internal
  ---Purpose: Sets the map index of the marker

  --------------------------------------------------------------------- 
  ---Category: Inquire methods
    
  Point( me ) returns Pnt2d from gp;
  ---Level: Public
  ---Purpose: Returns the location of the Point

  Marker( me ) returns TypeOfMarker from Aspect;
  ---Level: Public
  ---Purpose: Returns the type of marker of the Point

  Save( me; aFStream: in out FStream from Aspect ) is virtual;

fields
	
  myPoint   : Pnt2d        from gp;
  myTOM     : TypeOfMarker from Aspect;
  myIndMark : Integer      from Standard;
  myWSize   : Length       from Quantity;
  myHSize   : Length       from Quantity;
  myAngle   : PlaneAngle   from Quantity;
  
end Point;