Kig Python Scripting API Documentation

conic-common.h
1 
21 #ifndef KIG_MISC_CONIC_COMMON_H
22 #define KIG_MISC_CONIC_COMMON_H
23 
24 #include "coordinate.h"
25 #include <vector>
26 #include "kignumerics.h"
27 
28 class ConicPolarData;
29 class Transformation;
30 class LineData;
31 
38 {
39 public:
40  double coeffs[6];
47  explicit ConicCartesianData( const ConicPolarData& d );
53  ConicCartesianData( double a, double b, double c,
54  double d, double e, double f )
55  {
56  coeffs[0] = a;
57  coeffs[1] = b;
58  coeffs[2] = c;
59  coeffs[3] = d;
60  coeffs[4] = e;
61  coeffs[5] = f;
62  }
63  ConicCartesianData( const double incoeffs[6] );
64 
76  bool valid() const;
77 };
78 
86 {
87 public:
94  explicit ConicPolarData( const ConicCartesianData& data );
95  explicit ConicPolarData();
100  ConicPolarData( const Coordinate& focus1, double dimen,
101  double ecostheta0, double esintheta0 );
102 
110  double pdimen;
114  double ecostheta0;
118  double esintheta0;
119 };
120 
121 bool operator==( const ConicPolarData& lhs, const ConicPolarData& rhs );
122 
137 enum LinearConstraints {
138  noconstraint, zerotilt, parabolaifzt, circleifzt,
139  equilateral, ysymmetry, xsymmetry
140 };
141 
153 const ConicCartesianData calcConicThroughPoints (
154  const std::vector<Coordinate>& points,
155  const LinearConstraints c1 = noconstraint,
156  const LinearConstraints c2 = noconstraint,
157  const LinearConstraints c3 = noconstraint,
158  const LinearConstraints c4 = noconstraint,
159  const LinearConstraints c5 = noconstraint);
160 
169 const ConicPolarData calcConicBFFP(
170  const std::vector<Coordinate>& args,
171  int type );
172 
177 const ConicPolarData calcConicBDFP(
178  const LineData& d, const Coordinate& f, const Coordinate& p );
179 
184 const ConicCartesianData calcConicByAsymptotes(
185  const LineData& line1,
186  const LineData& line2,
187  const Coordinate& p );
188 
197 const LineData calcConicPolarLine (
198  const ConicCartesianData& data,
199  const Coordinate& cpole,
200  bool& valid );
201 
210 const Coordinate calcConicPolarPoint (
211  const ConicCartesianData& data,
212  const LineData& polar );
213 
230 const Coordinate calcConicLineIntersect( const ConicCartesianData& c,
231  const LineData& l,
232  double knownparam,
233  int which );
234 
244 const LineData calcConicAsymptote(
245  const ConicCartesianData data,
246  int which, bool &valid );
247 
261 const LineData calcConicRadical( const ConicCartesianData& cequation1,
262  const ConicCartesianData& cequation2,
263  int which, int zeroindex, bool& valid );
264 
274 const ConicCartesianData calcConicTransformation (
275  const ConicCartesianData& data,
276  const Transformation& t, bool& valid );
277 
278 #endif // KIG_MISC_CONIC_COMMON_H
double esintheta0
The esintheta0 value from the polar equation.
Definition: conic-common.h:118
Simple class representing a line.
Definition: common.h:60
Cartesian Conic Data.
Definition: conic-common.h:37
The Coordinate class is the basic class representing a 2D location by its x and y components...
Definition: coordinate.h:33
Class representing a transformation.
Definition: kigtransform.h:37
Coordinate focus1
The first focus of this conic.
Definition: conic-common.h:106
ConicCartesianData(double a, double b, double c, double d, double e, double f)
Construct a ConicCartesianData from its coefficients Construct a ConicCartesianData using the coeffic...
Definition: conic-common.h:53
double pdimen
The pdimen value from the polar equation.
Definition: conic-common.h:110
double ecostheta0
The ecostheta0 value from the polar equation.
Definition: conic-common.h:114
static ConicCartesianData invalidData()
Invalid conic.
bool valid() const
Test validity.
This class represents an equation of a conic in the form .
Definition: conic-common.h:85
KDE Logo
This file is part of the documentation for tdelibs .
Documentation copyright © 1996-2002 the KDE developers.
Generated on Wed May 15 2024 09:48:27 by doxygen 1.8.13 written by Dimitri van Heesch, © 1997-2001