summaryrefslogtreecommitdiff
path: root/src/IntRes2d/IntRes2d_Transition.cxx
blob: 7ace4c76803caf9c1e36732db8583009139c131b (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
// File:	IntRes2d_Transition.cxx
// Created:	Wed Jun 10 15:06:44 1992
// Author:	Laurent BUCHARD
//		<lbr@sdsun2>


#include <IntRes2d_Transition.ixx>


IntRes2d_Transition::IntRes2d_Transition() : tangent(Standard_True),
                                             posit(IntRes2d_Middle),
                                             typetra(IntRes2d_Undecided),
                                             situat(IntRes2d_Unknown),
                                             oppos(Standard_False)
{
}


ostream& operator << (ostream& os, IntRes2d_Transition& Trans) {

  os << "   Position : ";
  if (Trans.PositionOnCurve()==IntRes2d_Head) {
    os << "Debut\n";
  }
  else if (Trans.PositionOnCurve()==IntRes2d_Middle) {
    os << "Milieu\n";
  }
  else {
    os << "Fin\n";
  }

  os << "   Type de transition : ";
  if (Trans.TransitionType()==IntRes2d_Undecided) {
    os << "Indeterminee\n";
  }
  else {
    if (Trans.TransitionType()==IntRes2d_In) {
      os << "Entrante\n";
    }
    else if (Trans.TransitionType()==IntRes2d_Out) {
      os << "Sortante\n";
    }
    else {
      os << "Touch\n";
      os << "     Position par rapport a l'autre courbe : ";
      if (Trans.Situation()==IntRes2d_Inside) {
	os << "Interieure\n";
      }
      else if (Trans.Situation()==IntRes2d_Outside) {
	os << "Exterieure\n";
      }
      else if (Trans.Situation()==IntRes2d_Unknown) {
	os << "Indeterminee\n";
      }
      os << "   Position matiere : ";
      if (Trans.IsOpposite()) {
	os << "Opposee\n";
      }
      else {
	os << "Idem\n";
      }
    }
    os << "   Cas de tangence : ";
    if (Trans.IsTangent()) {
      os << "Oui\n";
    }
    else {
      os << "Non\n";
    }
  }
  os << "\n";
  return os;
}