Developer documentation | Axl-2.5.1

axlCurveOnParamSurface.cpp
Go to the documentation of this file.
2 
3 class axlCurveOnParamSurfacePrivate
4 {
5 public:
6  int idWayCreateCurve; // id to show how to create the curve (more information in header file)
7  int idWayPresentSendingSystem;//read more about this variable in header file if you're confused about it.
8  axlAbstractSurfaceParametric *mainSurf;//the surface the main curve lies on, usually is BSpline Surface.
9 
10  axlAbstractSurfaceParametric *supSurf; // the support surface to create the curve by finding intersection, usually is BSpline Surface.
11 
12  axlPoint *supDir; // the support direction
13  axlAbstractCurve *supCurve;// the curve support to create the curve by finding intersection of line go through the point
14  // in this curve with the supDir direction.
15  axlAbstractCurve *supCurveParamDomain; //the curve on the parameter domain to helping find the curve in the real space.
16 
17  double value_u; // isoparametric curve
18  double value_v; // isoparametric curve
19 
20  //==============================================================================
21  //Curve object you want to describe
22 
23  // form 1: curve C
25 
26  // form 2: S o B
27  // get information from the others methods.
28 };
29 
30 axlCurveOnParamSurface::axlCurveOnParamSurface(QObject *parent) : axlAbstractCurveParametric(), d(new axlCurveOnParamSurfacePrivate)
31 {
32  d->idWayCreateCurve = 0;
33  d->idWayPresentSendingSystem = 0;
34  d->mainSurf = NULL;
35  d->supCurve = NULL;
36  d->supCurveParamDomain = NULL;
37  d->supDir = NULL;
38  d->supSurf = NULL;
39  d->value_u = 0.0;
40  d->value_v = 0.0;
41  d->curve = NULL;
42 }
43 
45 {
46  delete d;
47  d = NULL;
48 }
49 
50 //get
52 {
53  return d->idWayCreateCurve;
54 }
55 
57 {
58  return d->idWayPresentSendingSystem;
59 }
60 
62 {
63  return *(d->supDir);
64 }
65 
67 {
68  return *(d->mainSurf);
69 }
70 
72 {
73  return *(d->supCurve);
74 }
75 
77 {
78  return d->supCurve;
79 }
80 
82 {
83  return d->supCurveParamDomain;
84 }
85 
87 {
88  return *(d->supCurveParamDomain);
89 }
90 //get curve result by this class
92 {
93  //need interface.
94 
95  /*if(d->idWayCreateCurve == 2)
96  {
97  if(d->mainSurf!=NULL&&d->supSurf!=NULL)
98  {
99  d->
100  }
101  }*/
102 }
103 
104 //set
106 {
107  d->idWayCreateCurve = way;
108 }
109 
111 {
112  d->idWayPresentSendingSystem = way;
113 }
114 
116 {
117  d->mainSurf = surface;
118 }
119 
121 {
122  d->supDir = point;
123 }
124 
126 {
127  d->supDir = new axlPoint(point);
128 }
129 
131 {
132  d->supCurve = curve;
133 }
134 
136 {
137  d->supCurveParamDomain = curve;
138 }
139 
141 {
142  d->supSurf = surface;
143 }
144 
145 //operator =
147 {
148  d->idWayCreateCurve = other.d->idWayCreateCurve;
149  d->idWayPresentSendingSystem = other.d->idWayPresentSendingSystem;
150  d->mainSurf = other.d->mainSurf;
151  d->supCurve = other.d->supCurve;
152  d->supCurveParamDomain = other.d->supCurveParamDomain;
153  d->supDir = other.d->supDir;
154  d->supSurf = other.d->supSurf;
155  d->value_u = other.d->value_u;
156  d->value_v = other.d->value_v;
157  return *this;
158 }
159 
160 
161 
163 {
164  QString s = "axlCurveOnParamSurface "; //update
165  return s;
166 }
167 
169 {
170  return "axlCurveOnParamSurface";
171 }
172 
173 dtkAbstractData *createaxlCurveOnParamSurface(void)
174 {
175  return new axlCurveOnParamSurface;
176 }
177 
178 
179 
180 
181 
182 
183 
Class axlPoint defines 3D points.
Definition: axlPoint.h:34
axlCurveOnParamSurface & operator=(const axlCurveOnParamSurface &other)
axlAbstractSurfaceParametric & get_main_surface() const
virtual QString description(void) const
void set_support_curve(axlAbstractCurve *curve)
axlCurveOnParamSurface(QObject *parent=0)
void set_support_surface(axlAbstractSurfaceParametric *surface)
void set_support_curve_param_domain(axlAbstractCurve *curve)
Generic interface for parametric curve.
dtkAbstractData * createaxlCurveOnParamSurface(void)
virtual void * curve(void)
void set_main_surface(axlAbstractSurfaceParametric *surface)
axlPoint & get_direction() const
axlAbstractCurve & get_support_curve() const
void set_direction(axlPoint *point)
axlAbstractCurve & get_support_curve_param_domain() const
virtual QString identifier(void) const