0024096: Eliminate compiler warning C4505 in MSVC++ with warning level 4
[occt.git] / src / Extrema / Extrema_GenLocateExtCC.cdl
CommitLineData
b311480e 1-- Created on: 1995-07-18
2-- Created by: Modelistation
3-- Copyright (c) 1995-1999 Matra Datavision
4-- Copyright (c) 1999-2012 OPEN CASCADE SAS
5--
6-- The content of this file is subject to the Open CASCADE Technology Public
7-- License Version 6.5 (the "License"). You may not use the content of this file
8-- except in compliance with the License. Please obtain a copy of the License
9-- at http://www.opencascade.org and read it completely before using this file.
10--
11-- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12-- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13--
14-- The Original Code and all software distributed under the License is
15-- distributed on an "AS IS" basis, without warranty of any kind, and the
16-- Initial Developer hereby disclaims all such warranties, including without
17-- limitation, any warranties of merchantability, fitness for a particular
18-- purpose or non-infringement. Please see the License for the specific terms
19-- and conditions governing the rights and limitations under the License.
20
7fd59977 21
22generic class GenLocateExtCC from Extrema
23(Curve1 as any;
24 Tool1 as any; -- as ToolCurve(Curve1);
25 Curve2 as any;
26 Tool2 as any; -- as ToolCurve(Curve2);
27 POnC as any;
28 Pnt as any;
29 Vec as any)
30
31 ---Purpose: It calculates the distance between two curves with
32 -- a close point; these distances can be maximum or
33 -- minimum.
34
35
36raises DomainError from Standard,
37 NotDone from StdFail
38
39private class CCLocF instantiates FuncExtCC (Curve1, Tool1,
40 Curve2, Tool2,
41 POnC, Pnt, Vec);
42
43is
44 Create (C1: Curve1; C2: Curve2; U0,V0: Real; TolU,TolV: Real)
45 returns GenLocateExtCC
46 ---Purpose: Calculates the distance with a close point. The
47 -- close point is defined by a parameter value on each
48 -- curve.
49 -- The function F(u,v)=distance(C1(u),C2(v)) has an
50 -- extremun when gradient(f)=0. The algorithm searchs
51 -- the zero near the close point.
52 raises DomainError;
53 -- if U0 and V0 are outside the definition ranges of the
54 -- curves.
55
56 IsDone (me) returns Boolean
57 ---Purpose: Returns True if the distance is found.
58 is static;
59
60 SquareDistance (me) returns Real
61 ---Purpose: Returns the value of the extremum square distance.
62 raises NotDone from StdFail
63 -- if IsDone(me)=False.
64 is static;
65
66 Point (me; P1, P2: out POnC)
67 ---Purpose: Returns the points of the extremum distance.
68 -- P1 is on the first curve, P2 on the second one.
69 raises NotDone from StdFail
70 -- if IsDone(me)=False.
71 is static;
72
73
74fields
75 myDone : Boolean;
76 mySqDist: Real;
77 myPoint1: POnC;
78 myPoint2: POnC;
79
80end GenLocateExtCC;