1 -- Created on: 1993-12-02
2 -- Created by: Jacques GOUSSARD
3 -- Copyright (c) 1993-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 under
9 -- the terms of the GNU Lesser General Public License 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.
18 class Line from BRepBlend inherits TShared from MMgt
21 uses Point from Blend,
22 SequenceOfPoint from Blend,
23 Extremity from BRepBlend,
24 TypeTrans from IntSurf
27 raises OutOfRange from Standard
34 returns Line from BRepBlend;
40 ---Purpose: Clears the content of the line.
46 Append(me: mutable; P: Point from Blend)
48 ---Purpose: Adds a point in the line.
54 Prepend(me: mutable; P: Point from Blend)
56 ---Purpose: Adds a point in the line at the first place.
61 InsertBefore(me : mutable;
62 Index : Integer from Standard;
65 ---Purpose: Adds a point in the line at the first place.
71 Remove(me: mutable; FromIndex,ToIndex: Integer from Standard)
73 ---Purpose: Removes from <me> all the items of
74 -- positions between <FromIndex> and <ToIndex>.
75 -- Raises an exception if the indices are out of bounds.
77 raises OutOfRange from Standard
81 Set(me: mutable; TranS1,TranS2: TypeTrans from IntSurf)
83 ---Purpose: Sets the value of the transition of the line on S1 and
89 Set(me: mutable; Trans: TypeTrans from IntSurf)
91 ---Purpose: Sets the value of the transition of the line on a surface
96 SetStartPoints(me: mutable; StartPt1,StartPt2: Extremity from BRepBlend)
98 ---Purpose: Sets the values of the start points for the line.
104 SetEndPoints(me: mutable; EndPt1,EndPt2: Extremity from BRepBlend)
106 ---Purpose: Sets tne values of the end points for the line.
115 ---Purpose: Returns the number of points in the line.
117 returns Integer from Standard
123 Point(me; Index: Integer from Standard)
125 ---Purpose: Returns the point of range Index.
127 returns Point from Blend
129 ---C++: return const&
131 raises OutOfRange from Standard
132 --- The exception OutOfRange is raised when Index <=0 or
140 ---Purpose: Returns the type of the transition of the line defined
141 -- on the first surface. The transition is "constant"
143 -- The transition is IN if the line is oriented in such
144 -- a way that the system of vectors (N,DRac,T) is
145 -- right-handed, where
146 -- N is the normal to the first surface at a point P,
147 -- DRac is a vector tangent to the blending patch,
148 -- oriented towards the valid part of this patch,
149 -- T is the tangent to the line on S1 at P.
150 -- The transitioon is OUT when the system of vectors is
153 returns TypeTrans from IntSurf
161 ---Purpose: Returns the type of the transition of the line defined
162 -- on the second surface. The transition is "constant"
165 returns TypeTrans from IntSurf
171 StartPointOnFirst(me)
173 ---Purpose: Returns the start point on S1.
175 returns Extremity from BRepBlend
177 ---C++: return const&
182 StartPointOnSecond(me)
184 ---Purpose: Returns the start point on S2
186 returns Extremity from BRepBlend
188 ---C++: return const&
195 ---Purpose: Returns the end point on S1.
197 returns Extremity from BRepBlend
199 ---C++: return const&
206 ---Purpose: Returns the point on S2.
208 returns Extremity from BRepBlend
210 ---C++: return const&
217 ---Purpose: Returns the type of the transition of the line defined
220 returns TypeTrans from IntSurf
227 seqpt : SequenceOfPoint from Blend;
228 tras1 : TypeTrans from IntSurf;
229 tras2 : TypeTrans from IntSurf;
230 stp1 : Extremity from BRepBlend;
231 stp2 : Extremity from BRepBlend;
232 endp1 : Extremity from BRepBlend;
233 endp2 : Extremity from BRepBlend;
234 hass1 : Boolean from Standard;
235 hass2 : Boolean from Standard;