1 -- Created on: 1994-05-19
2 -- Created by: Yves FRICAUD
3 -- Copyright (c) 1994-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.
17 class BisecAna from Bisector
19 --- Purpose : This class provides the bisecting line between two
20 -- geometric elements.The elements are Circles,Lines or
29 CurveType from GeomAbs,
32 TrimmedCurve from Geom2d,
39 raises DomainError from Standard,
40 RangeError from Standard
43 Create returns BisecAna;
45 Perform(me : mutable ;
46 Cu1 : Curve from Geom2d ;
47 Cu2 : Curve from Geom2d ;
51 Sense : Real from Standard ;
52 Tolerance : Real from Standard ;
53 oncurve : Boolean from Standard = Standard_True );
55 --- Purpose : Performs the bisecting line between the curves
57 -- <oncurve> is True if the point <P> is common to <Cu1>
60 Perform(me : mutable ;
61 Cu : Curve from Geom2d ;
62 Pnt : Point from Geom2d ;
66 Sense : Real from Standard ;
67 Tolerance : Real from Standard ;
68 oncurve : Boolean from Standard = Standard_True);
70 --- Purpose : Performs the bisecting line between the curve
71 -- <Cu1> and the point <Pnt>.
72 -- <oncurve> is True if the point <P> is the point <Pnt>.
74 Perform(me : mutable ;
75 Pnt : Point from Geom2d ;
76 Cu : Curve from Geom2d ;
80 Sense : Real from Standard ;
81 Tolerance : Real from Standard ;
82 oncurve : Boolean from Standard = Standard_True );
84 --- Purpose : Performs the bisecting line between the curve
85 -- <Cu> and the point <Pnt>.
86 -- <oncurve> is True if the point <P> is the point <Pnt>.
89 Perform(me : mutable ;
90 Pnt1 : Point from Geom2d ;
91 Pnt2 : Point from Geom2d ;
95 Sense : Real from Standard ;
96 Tolerance : Real from Standard = 0.0 ;
97 oncurve : Boolean from Standard = Standard_True ) ;
99 --- Purpose : Performs the bisecting line between the two points
100 -- <Pnt1> and <Pnt2>.
103 bisector : TrimmedCurve from Geom2d)
106 IsExtendAtStart (me) returns Boolean from Standard
109 IsExtendAtEnd (me) returns Boolean from Standard
112 SetTrim(me : mutable ; Cu : Curve from Geom2d);
113 --- Purpose : Trim <me> by a domain defined by the curve <Cu>.
114 -- This domain is the set of the points which are
115 -- nearest from <Cu> than the extremitis of <Cu>.
117 SetTrim(me : mutable ; uf, ul : Real from Standard);
118 --- Purpose : Trim <me> by a domain defined by uf and ul
120 Distance(me : mutable ;
122 Bis : Bisec from GccInt ;
125 Sense : Real from Standard ;
126 U : out Real from Standard ;
127 sense : out Boolean from Standard ;
128 ok : out Boolean from Standard )
130 --- Purpose : Returns the distance between the point <P> and
131 -- the bisecting <Bis>.
136 Reverse (me : mutable)
139 ReversedParameter(me; U : Real) returns Real
142 IsCN (me; N : Integer) returns Boolean
143 --- Purpose : Returns the order of continuity of the curve.
145 --- Purpose : Raised if N < 0.
148 Copy (me) returns like me
151 Transform (me : mutable; T : Trsf2d)
154 FirstParameter(me) returns Real
157 LastParameter(me) returns Real
160 IsClosed (me) returns Boolean
163 IsPeriodic (me) returns Boolean
166 Continuity (me) returns Shape from GeomAbs
169 D0(me; U : Real; P : out Pnt2d)
172 D1 (me; U : Real; P : out Pnt2d; V1 : out Vec2d)
175 D2 (me; U : Real; P : out Pnt2d; V1, V2 : out Vec2d)
178 D3 (me; U : Real; P : out Pnt2d; V1, V2, V3 : out Vec2d)
181 DN (me; U : Real; N : Integer) returns Vec2d
184 Geom2dCurve (me) returns Curve from Geom2d
187 Parameter (me ; P : Pnt2d from gp) returns Real
190 ParameterOfStartPoint (me) returns Real
193 ParameterOfEndPoint (me) returns Real
196 NbIntervals (me) returns Integer
197 ---Purpose: If necessary, breaks the curve in intervals of
198 -- continuity <C1>. And returns the number of
202 IntervalFirst(me ; Index : Integer from Standard) returns Real
203 ---Purpose: Returns the first parameter of the current
207 IntervalLast(me ; Index : Integer from Standard) returns Real
208 ---Purpose: Returns the last parameter of the current
212 Dump (me; Deep : Integer = 0; Offset : Integer = 0) is static;
216 thebisector : TrimmedCurve from Geom2d;