summaryrefslogtreecommitdiff
path: root/inc/Contap_SurfFunction.lxx
blob: 1846078a9002cd849b19faf5519e89bd6b5eae5c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#include <StdFail_UndefinedDerivative.hxx>

inline void Contap_SurfFunction::Set(const gp_Pnt& Eye)
{
  myType = Contap_ContourPrs; // pers
  myEye = Eye;
  myAng = 0.;
}

inline void Contap_SurfFunction::Set(const gp_Dir& Direction)
{
  myType = Contap_ContourStd; // Contour app
  myDir = Direction;
  myAng = 0.;
}

inline void Contap_SurfFunction::Set(const gp_Dir& Direction,
				     const Standard_Real Angle)
{
  myType = Contap_DraftStd; // Contour vu
  myDir = Direction;
  myAng = Angle;
  myCosAng = Cos(PI/2.+Angle);
}

inline void Contap_SurfFunction::Set(const gp_Pnt& Eye,
				     const Standard_Real Angle)
{
  myType = Contap_DraftPrs; // Contour vu "conique"...
  myEye = Eye;
  myAng = Angle;
  myCosAng = Cos(PI/2.+Angle);
}

inline void Contap_SurfFunction::Set(const Standard_Real Tolerance)
{
  tol = Max(Tolerance, 1.e-12);
}

inline const gp_Pnt& Contap_SurfFunction::Point () const
{
  return solpt;
}

inline Standard_Real Contap_SurfFunction::Root () const
{
  return valf;
}

inline Standard_Real Contap_SurfFunction::Tolerance () const
{
  return tol;
}

inline const gp_Vec& Contap_SurfFunction::Direction3d()
{
  if (IsTangent()) StdFail_UndefinedDerivative::Raise();       
  return d3d;
}

inline const gp_Dir2d& Contap_SurfFunction::Direction2d()
{
  if (IsTangent()) StdFail_UndefinedDerivative::Raise();       
  return d2d;
}

inline const TheSurface& Contap_SurfFunction::Surface() const
{
  return mySurf;
}

inline const gp_Pnt& Contap_SurfFunction::Eye() const
{
  return myEye;
}

inline const gp_Dir& Contap_SurfFunction::Direction() const
{
  return myDir;
}

inline Standard_Real Contap_SurfFunction::Angle () const
{
  return myAng;
}

inline Contap_TFunction Contap_SurfFunction::FunctionType () const
{
  return myType;
}