File: Geom_Conic.hxx

package info (click to toggle)
oce 0.18.3-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 301,548 kB
  • sloc: cpp: 1,190,609; ansic: 67,225; sh: 11,630; tcl: 7,954; cs: 5,221; python: 2,867; java: 1,522; makefile: 342; xml: 292; perl: 37
file content (150 lines) | stat: -rw-r--r-- 4,747 bytes parent folder | download | duplicates (5)
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
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
// 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 _Geom_Conic_HeaderFile
#define _Geom_Conic_HeaderFile

#include <Standard.hxx>
#include <Standard_DefineHandle.hxx>
#include <Handle_Geom_Conic.hxx>

#include <gp_Ax2.hxx>
#include <Geom_Curve.hxx>
#include <Standard_Real.hxx>
#include <GeomAbs_Shape.hxx>
#include <Standard_Boolean.hxx>
#include <Standard_Integer.hxx>
class Standard_ConstructionError;
class Standard_RangeError;
class Standard_DomainError;
class gp_Ax1;
class gp_Pnt;
class gp_Ax2;


//! The abstract class Conic describes the common
//! behavior of conic curves in 3D space and, in
//! particular, their general characteristics. The Geom
//! package provides four concrete classes of conics:
//! Geom_Circle, Geom_Ellipse, Geom_Hyperbola and Geom_Parabola.
//! A conic is positioned in space with a right-handed
//! coordinate system (gp_Ax2 object), where:
//! - the origin is the center of the conic (or the apex in
//! the case of a parabola),
//! - the origin, "X Direction" and "Y Direction" define the
//! plane of the conic.
//! This coordinate system is the local coordinate
//! system of the conic.
//! The "main Direction" of this coordinate system is the
//! vector normal to the plane of the conic. The axis, of
//! which the origin and unit vector are respectively the
//! origin and "main Direction" of the local coordinate
//! system, is termed the "Axis" or "main Axis" of the conic.
//! The "main Direction" of the local coordinate system
//! gives an explicit orientation to the conic, determining
//! the direction in which the parameter increases along
//! the conic. The "X Axis" of the local coordinate system
//! also defines the origin of the parameter of the conic.
class Geom_Conic : public Geom_Curve
{

public:

  
  //! Changes the orientation of the conic's plane. The normal
  //! axis to the plane is A1. The XAxis and the YAxis are recomputed.
  //!
  //! raised if the A1 is parallel to the XAxis of the conic.
  Standard_EXPORT   void SetAxis (const gp_Ax1& A1) ;
  
  //! changes the location point of the conic.
  Standard_EXPORT   void SetLocation (const gp_Pnt& P) ;
  
  //! changes the local coordinate system of the conic.
  Standard_EXPORT   void SetPosition (const gp_Ax2& A2) ;
  
  //! Returns the "main Axis" of this conic. This axis is
  //! normal to the plane of the conic.
  Standard_EXPORT   gp_Ax1 Axis()  const;
  

  //! Returns the eccentricity value of the conic e.
  //! e = 0 for a circle
  //! 0 < e < 1 for an ellipse  (e = 0 if MajorRadius = MinorRadius)
  //! e > 1 for a hyperbola
  //! e = 1 for a parabola
  //! Exceptions
  //! Standard_DomainError in the case of a hyperbola if
  //! its major radius is null.
  Standard_EXPORT virtual   Standard_Real Eccentricity()  const = 0;
  

  //! Returns the location point of the conic.
  //! For the circle, the ellipse and the hyperbola it is the center of
  //! the conic. For the parabola it is the Apex of the parabola.
  Standard_EXPORT   gp_Pnt Location()  const;
  

  //! Returns the local coordinates system of the conic.
  //! The main direction of the Axis2Placement is normal to the
  //! plane of the conic. The X direction of the Axis2placement
  //! is in the plane of the conic and corresponds to the origin
  //! for the conic's parametric value u.
  Standard_EXPORT  const  gp_Ax2& Position()  const;
  

  //! Returns the XAxis of the conic.
  //! This axis defines the origin of parametrization of the conic.
  //! This axis is perpendicular to the Axis of the conic.
  //! This axis and the Yaxis define the plane of the conic.
  Standard_EXPORT   gp_Ax1 XAxis()  const;
  

  //! Returns the YAxis of the conic.
  //! The YAxis is perpendicular to the Xaxis.
  //! This axis and the Xaxis define the plane of the conic.
  Standard_EXPORT   gp_Ax1 YAxis()  const;
  

  //! Reverses the direction of parameterization of <me>.
  //! The local coordinate system of the conic is modified.
  Standard_EXPORT   void Reverse() ;
  
  //! Returns the  parameter on the  reversed  curve for
  //! the point of parameter U on <me>.
  Standard_EXPORT virtual   Standard_Real ReversedParameter (const Standard_Real U)  const = 0;
  
  //! The continuity of the conic is Cn.
  Standard_EXPORT   GeomAbs_Shape Continuity()  const;
  
  //! Returns True.
  //! Raised if N < 0.
  Standard_EXPORT   Standard_Boolean IsCN (const Standard_Integer N)  const;




  DEFINE_STANDARD_RTTI(Geom_Conic)

protected:


  gp_Ax2 pos;


private: 




};







#endif // _Geom_Conic_HeaderFile