Mobile API Reference  MicroStrategy 2019
PolarBezierCurve.h
Go to the documentation of this file.
1 //==============================================================================================
2 // FILENAME : PolarPolarBezierCurve.h
3 // AUTHOR : Liang Liu
4 // CREATION : 2009-03-23
5 // Copyright (C) MicroStrategy Incorporated 2009
6 // All Rights Reserved
7 //==============================================================================================
8 
9 #ifndef MsiChart_PolarBezierCurve_h
10 #define MsiChart_PolarBezierCurve_h
11 
12 #include "Rect2D.h"
13 #include "Synch/Defines/SmartPtr.h"
14 #include "BezierCurve.h"
15 
16 struct _cairo;
17 typedef struct _cairo cairo_t;
18 
19 namespace MsiChart
20 {
25  {
26  public:
30  PolarBezierCurve(const Point2D& irCenter, double iTheta0, double iRou0, double iDRou0,
31  double iTheta3, double iRou3, double iDRou3);
32  PolarBezierCurve(FPoint2D& irP0, FPoint2D& irP3);
33  PolarBezierCurve(FPoint2D& irP0, FPoint2D& irP1, FPoint2D& irP2, FPoint2D& irP3);
34 
40  virtual void GetApproximatePolygon(Int32 iLineWidth, std::vector<Point2D>& orPolygon) const;
41 
42  private:
48  void hGetApproximatePolyline(std::vector<Point2D>& orPolyline) const;
49 
55  Point2D hEvaluate(float iT) const;
56  };
57 
58 
59 }
60 
61 #endif
virtual void GetApproximatePolygon(Int32 iLineWidth, std::vector< Point2D > &orPolygon) const
Definition: PolarBezierCurve.h:24
PolarBezierCurve(const Point2D &irCenter, double iTheta0, double iRou0, double iDRou0, double iTheta3, double iRou3, double iDRou3)
struct _cairo cairo_t
Definition: BezierCurve.h:16
#define Int32
Definition: BasicTypes.h:20
Definition: SmartPtr.h:38
Definition: ABLPlot.h:21
Definition: BezierCurve.h:29
MSynch::SmartPtr< PolarBezierCurve > Ptr
Definition: PolarBezierCurve.h:27