summaryrefslogtreecommitdiff
path: root/src/HatchGen/HatchGen_Domain.cdl
blob: d46398c947b52cb79c0e969dbad50f547e17f979 (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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
-- File:	HatchGen_Domain.cdl
-- Created:	Fri Nov  5 18:15:21 1993
-- Author:	Jean Marc LACHAUME
--		<jml@sdsun1>
-- Copyright:   Matra Datavision 1993

class Domain from HatchGen

uses
    PointOnHatching from HatchGen

raises
    DomainError from Standard

is

    Create
    
    	---Purpose: Creates an infinite domain.

        returns Domain from HatchGen ;
	

    Create (P1, P2 : PointOnHatching from HatchGen)
    
    	---Purpose: Creates a domain for the curve associated to a hatching.

    	returns Domain from HatchGen ;


    Create (P : PointOnHatching from HatchGen ; First : Boolean from Standard)
    
    	---Purpose: Creates a semi-infinite domain for the curve associated
    	--          to a hatching. The `First' flag means that the given
    	--          point is the first one.

    	returns Domain from HatchGen ;


    SetPoints (me : in out ; P1, P2 : PointOnHatching from HatchGen)
    
    	---Purpose: Sets the first and the second points of the domain.

      	---C++: inline
	is static ;


    SetPoints (me : in out)
    
    	---Purpose: Sets the first and the second points of the domain
    	--          as the infinite.

    	---C++: inline
	is static ;


    SetFirstPoint (me : in out ; P : PointOnHatching from HatchGen)
    
    	---Purpose: Sets the first point of the domain.

    	---C++: inline
	is static ;


    SetFirstPoint (me : in out)
    
    	---Purpose: Sets the first point of the domain at the
    	--          infinite.

    	---C++: inline
	is static ;


    SetSecondPoint (me : in out ; P : PointOnHatching from HatchGen)
    
    	---Purpose: Sets the second point of the domain.

    	---C++: inline
	is static ;


    SetSecondPoint (me : in out)
    
    	---Purpose: Sets the second point of the domain at the
    	--          infinite.

    	---C++: inline
	is static ;


    HasFirstPoint (me)

    	---Purpose: Returns True if the domain has a first point.
 
    	---C++: inline
   	returns Boolean from Standard
	is static ;


    FirstPoint (me)
    
    	---Purpose: Returns the first point of the domain.
    	--          The exception DomainError is raised if
    	--          HasFirstPoint returns False.

    	---C++: inline
    	---C++: return const &

    	returns PointOnHatching from HatchGen
	raises DomainError from Standard
	is static ;


    HasSecondPoint (me)

    	---Purpose: Returns True if the domain has a second point.

    	---C++: inline
    	returns Boolean from Standard
	is static ;


    SecondPoint (me)
    
    	---Purpose: Returns the second point of the domain.
    	--          The exception DomainError is raised if
    	--          HasSecondPoint returns False.

    	---C++: inline
    	---C++: return const &

    	returns PointOnHatching from HatchGen
	raises DomainError from Standard
	is static ;


    Dump (me; Index : Integer from Standard = 0)
    
    	---Purpose: Dump of the domain.

    	is static ;
	

fields

    myHasFirstPoint  : Boolean         from Standard ;
    myFirstPoint     : PointOnHatching from HatchGen ;
    myHasSecondPoint : Boolean         from Standard ;
    mySecondPoint    : PointOnHatching from HatchGen ;
    
end Domain from HatchGen ;