1 -- Created on: 1992-04-03
2 -- Created by: Laurent BUCHARD
3 -- Copyright (c) 1992-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
6 -- This file is part of Open CASCADE Technology software library.
8 -- This library is free software; you can redistribute it and / or modify it
9 -- under the terms of the GNU Lesser General Public 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.
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
17 class IntersectionSegment from IntRes2d
19 ---Purpose: Definition of an intersection curve between
23 inherits Storable from Standard
25 uses IntersectionPoint from IntRes2d
27 raises DomainError from Standard
33 ---Purpose: Empty constructor.
35 returns IntersectionSegment from IntRes2d;
38 Create(P1,P2 : IntersectionPoint from IntRes2d;
39 Oppos : Boolean from Standard;
40 ReverseFlag : Boolean from Standard)
42 --Purpose: Creates an IntersectionSegment from two
43 -- IntersectionPoint. Oppos is True if the 2 curves
44 -- have the same orientation. if ReverseFlag is True,
45 -- P1 and P2 are the point on the first curve, and on
46 -- the second curve. else, P1 is the point on the
47 -- second curve and P2 the intersection point on the
52 returns IntersectionSegment from IntRes2d;
55 Create(P : IntersectionPoint from IntRes2d;
56 First : Boolean from Standard;
57 Oppos : Boolean from Standard;
58 ReverseFlag: Boolean from Standard)
60 --Purpose: Creates a semi-infinite segment of intersection.
61 -- if First is set to True, P is the first point of
62 -- the segment. Otherwise P is the last point of the
63 -- segment. P belongs to the first curve if
64 -- ReversedFlag is set to False; otherwise it belongs
65 -- to the second curve.
69 returns IntersectionSegment from IntRes2d;
72 Create(Oppos: Boolean from Standard)
74 ---Purpose: Creates an infinite segment of intersection.
78 returns IntersectionSegment from IntRes2d;
83 ---Purpose: Returns TRUE if the intersection segment has got
84 -- the same orientation on both curves.
88 returns Boolean from Standard
94 ---Purpose: Returns True if the segment is limited by a first
95 -- point. This point defines the lowest parameter
96 -- admitted on the first curve for the segment. If
97 -- IsOpposite returns False, it defines the lowest
98 -- parameter on the second curve, otherwise, it is
99 -- the highest parameter on the second curve.
103 returns Boolean from Standard
109 ---Purpose: Returns the first point of the segment as an
110 -- IntersectionPoint (with a transition). The
111 -- exception DomainError is raised if HasFirstPoint
115 ---C++: return const &
117 returns IntersectionPoint from IntRes2d
118 raises DomainError from Standard
124 ---Purpose: Returns True if the segment is limited by a last
125 -- point. This point defines the highest parameter
126 -- admitted on the first curve for the segment. If
127 -- IsOpposite returns False, it defines the highest
128 -- parameter on the second curve, otherwise, it is
129 -- the lowest parameter on the second curve.
133 returns Boolean from Standard
139 ---Purpose: Returns the last point of the segment as an
140 -- IntersectionPoint (with a transition). The
141 -- exception DomainError is raised if
142 -- HasLastExtremity returns False.
145 ---C++: return const &
147 returns IntersectionPoint from IntRes2d
148 raises DomainError from Standard
154 oppos : Boolean from Standard;
155 first : Boolean from Standard;
156 last : Boolean from Standard;
157 ptfirst : IntersectionPoint from IntRes2d;
158 ptlast : IntersectionPoint from IntRes2d;
160 end IntersectionSegment;