1 // Copyright (c) 1995-1999 Matra Datavision
2 // Copyright (c) 1999-2014 OPEN CASCADE SAS
4 // This file is part of Open CASCADE Technology software library.
6 // This library is free software; you can redistribute it and/or modify it under
7 // the terms of the GNU Lesser General Public License version 2.1 as published
8 // by the Free Software Foundation, with special exception defined in the file
9 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
10 // distribution for complete text of the license and disclaimer of any warranty.
12 // Alternatively, this file may be used under the terms of Open CASCADE
13 // commercial license or contractual agreement.
15 #include <BRepBlend_Extremity.ixx>
16 #include <BRepBlend_PointOnRst.hxx>
18 BRepBlend_Extremity::BRepBlend_Extremity ():
21 param(0.0), u(0.0), v(0.0), tol(0.0),
22 isvtx(Standard_False), hastang(Standard_False)
26 BRepBlend_Extremity::BRepBlend_Extremity (const gp_Pnt& P,
27 const Standard_Real U,
28 const Standard_Real V,
29 const Standard_Real Param,
30 const Standard_Real Tol) :
33 param(Param),u(U),v(V),tol(Tol),isvtx(Standard_False),
34 hastang(Standard_False)
39 BRepBlend_Extremity::BRepBlend_Extremity (const gp_Pnt& P,
40 const Standard_Real U,
41 const Standard_Real V,
42 const Standard_Real Param,
43 const Standard_Real Tol,
44 const Handle(Adaptor3d_HVertex)& Vtx) :
47 param(Param),u(U),v(V),tol(Tol),isvtx(Standard_True),
48 hastang(Standard_False)
52 BRepBlend_Extremity::BRepBlend_Extremity (const gp_Pnt& P,
53 const Standard_Real W,
54 const Standard_Real Param,
55 const Standard_Real Tol) :
58 param(Param),u(W),tol(Tol),isvtx(Standard_False),
59 hastang(Standard_False)
63 void BRepBlend_Extremity::SetValue (const gp_Pnt& P,
64 const Standard_Real U,
65 const Standard_Real V,
66 const Standard_Real Param,
67 const Standard_Real Tol)
74 isvtx = Standard_False;
79 void BRepBlend_Extremity::SetValue (const gp_Pnt& P,
80 const Standard_Real U,
81 const Standard_Real V,
82 const Standard_Real Param,
83 const Standard_Real Tol,
84 const Handle(Adaptor3d_HVertex)& Vtx)
91 isvtx = Standard_True;
96 void BRepBlend_Extremity::SetValue (const gp_Pnt& P,
97 const Standard_Real W,
98 const Standard_Real Param,
99 const Standard_Real Tol)
105 isvtx = Standard_False;
110 void BRepBlend_Extremity::SetVertex (const Handle(Adaptor3d_HVertex)& V)
112 isvtx = Standard_True;
116 void BRepBlend_Extremity::AddArc (const Handle(Adaptor2d_HCurve2d)& A,
117 const Standard_Real Param,
118 const IntSurf_Transition& TLine,
119 const IntSurf_Transition& TArc)
121 seqpt.Append(BRepBlend_PointOnRst(A,Param,TLine,TArc));