OLD | NEW |
| (Empty) |
1 // Copyright 2014 PDFium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | |
6 | |
7 #ifndef XFA_SRC_FXGRAPHICS_FX_PATH_GENERATOR_H_ | |
8 #define XFA_SRC_FXGRAPHICS_FX_PATH_GENERATOR_H_ | |
9 | |
10 #include "core/include/fxge/fx_ge.h" | |
11 | |
12 class CFX_PathGenerator { | |
13 public: | |
14 CFX_PathGenerator(); | |
15 void Create(); | |
16 ~CFX_PathGenerator(); | |
17 CFX_PathData* GetPathData() const { return m_pPathData; } | |
18 void AddPathData(CFX_PathData* path_data); | |
19 void AddPathData(FX_PATHPOINT* points, int count); | |
20 void MoveTo(FX_FLOAT x, FX_FLOAT y); | |
21 void LineTo(FX_FLOAT x, FX_FLOAT y); | |
22 void BezierTo(FX_FLOAT ctrl_x1, | |
23 FX_FLOAT ctrl_y1, | |
24 FX_FLOAT ctrl_x2, | |
25 FX_FLOAT ctrl_y2, | |
26 FX_FLOAT to_x, | |
27 FX_FLOAT to_y); | |
28 void Close(); | |
29 void ArcTo(FX_FLOAT x, | |
30 FX_FLOAT y, | |
31 FX_FLOAT width, | |
32 FX_FLOAT height, | |
33 FX_FLOAT start_angle, | |
34 FX_FLOAT sweep_angle); | |
35 | |
36 void AddLine(FX_FLOAT x1, FX_FLOAT y1, FX_FLOAT x2, FX_FLOAT y2); | |
37 void AddBezier(FX_FLOAT start_x, | |
38 FX_FLOAT start_y, | |
39 FX_FLOAT ctrl_x1, | |
40 FX_FLOAT ctrl_y1, | |
41 FX_FLOAT ctrl_x2, | |
42 FX_FLOAT ctrl_y2, | |
43 FX_FLOAT end_x, | |
44 FX_FLOAT end_y); | |
45 void AddRectangle(FX_FLOAT x1, FX_FLOAT y1, FX_FLOAT x2, FX_FLOAT y2); | |
46 void AddEllipse(FX_FLOAT x, FX_FLOAT y, FX_FLOAT width, FX_FLOAT height); | |
47 void AddArc(FX_FLOAT x, | |
48 FX_FLOAT y, | |
49 FX_FLOAT width, | |
50 FX_FLOAT height, | |
51 FX_FLOAT start_angle, | |
52 FX_FLOAT sweep_angle); | |
53 void AddPie(FX_FLOAT x, | |
54 FX_FLOAT y, | |
55 FX_FLOAT width, | |
56 FX_FLOAT height, | |
57 FX_FLOAT start_angle, | |
58 FX_FLOAT sweep_angle); | |
59 | |
60 protected: | |
61 CFX_PathData* m_pPathData; | |
62 }; | |
63 | |
64 #endif // XFA_SRC_FXGRAPHICS_FX_PATH_GENERATOR_H_ | |
OLD | NEW |