summaryrefslogtreecommitdiff
path: root/inc/GccEnt.hxx
blob: e5994b180243f33a04916d7d5420a09f5f58a7c7 (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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _GccEnt_HeaderFile
#define _GccEnt_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif

class GccEnt_QualifiedLin;
class gp_Lin2d;
class GccEnt_QualifiedCirc;
class gp_Circ2d;
class GccEnt_QualifiedLin;
class GccEnt_QualifiedCirc;
class GccEnt_QualifiedCurv;
class GccEnt_Array1OfPosition;


//! This package provides an implementation of the qualified <br>
//!          entities useful to create 2d entities with geometric <br>
//!          constraints. The qualifier explains which subfamily of <br>
//!          solutions we want to obtain. It uses the following law: the <br>
//!          matter/the interior side is at the left of the line, if we go <br>
//!          from the beginning to the end. <br>
//!          The qualifiers are: <br>
//!            Enclosing   : the solution(s) must enclose the argument. <br>
//!            Enclosed    : the solution(s) must be enclosed in the <br>
//!                          argument. <br>
//!            Outside     : both the solution(s) and the argument must be <br>
//!                          outside to each other. <br>
//!            Unqualified : the position is undefined, so give all the <br>
//!                          solutions. <br>
//!          The use of a qualifier is always required if such <br>
//!          subfamilies exist. For example, it is not used for a point. <br>
//! Note:    the interior of a curve is defined as the left-hand <br>
//!          side of the curve in relation to its orientation. <br>
class GccEnt  {
public:

  void* operator new(size_t,void* anAddress) 
  {
    return anAddress;
  }
  void* operator new(size_t size) 
  {
    return Standard::Allocate(size); 
  }
  void  operator delete(void *anAddress) 
  {
    if (anAddress) Standard::Free((Standard_Address&)anAddress); 
  }

  //! Constructs a qualified line, <br>
//! so that the relative position to the circle or line of the <br>
//! solution computed by a construction algorithm using the <br>
//! qualified circle or line is not qualified, i.e. all solutions apply. <br>
  Standard_EXPORT   static  GccEnt_QualifiedLin Unqualified(const gp_Lin2d& Obj) ;
  //! Constructs a qualified circle <br>
//! so that the relative position to the circle or line of the <br>
//! solution computed by a construction algorithm using the <br>
//! qualified circle or line is not qualified, i.e. all solutions apply. <br>
  Standard_EXPORT   static  GccEnt_QualifiedCirc Unqualified(const gp_Circ2d& Obj) ;
  
//! Constructs such a qualified circle that the solution <br>
//! computed by a construction algorithm using the qualified <br>
//! circle encloses the circle. <br>
  Standard_EXPORT   static  GccEnt_QualifiedCirc Enclosing(const gp_Circ2d& Obj) ;
  //! Constructs a qualified line, <br>
//! so that the solution computed by a construction <br>
//! algorithm using the qualified circle or line is enclosed by <br>
//! the circle or line. <br>
  Standard_EXPORT   static  GccEnt_QualifiedLin Enclosed(const gp_Lin2d& Obj) ;
  //! Constructs a qualified circle <br>
//! so that the solution computed by a construction <br>
//! algorithm using the qualified circle or line is enclosed by <br>
//! the circle or line. <br>
  Standard_EXPORT   static  GccEnt_QualifiedCirc Enclosed(const gp_Circ2d& Obj) ;
  //! Constructs a qualified line, <br>
//! so that the solution computed by a construction <br>
//! algorithm using the qualified circle or line and the circle <br>
//! or line are external to one another. <br>
  Standard_EXPORT   static  GccEnt_QualifiedLin Outside(const gp_Lin2d& Obj) ;
  //! Constructs a qualified circle <br>
//! so that the solution computed by a construction <br>
//! algorithm using the qualified circle or line and the circle <br>
//! or line are external to one another. <br>
  Standard_EXPORT   static  GccEnt_QualifiedCirc Outside(const gp_Circ2d& Obj) ;





protected:





private:




friend class GccEnt_QualifiedLin;
friend class GccEnt_QualifiedCirc;
friend class GccEnt_QualifiedCurv;
friend class GccEnt_Array1OfPosition;

};





// other Inline functions and methods (like "C++: function call" methods)


#endif