WIL説明書(C++)  3.0.0
FvGdiCircle.h
[詳解]
1 // $Revision: 1.1 $
2 /*
3  @file FvGdiCircle.h
4  @brief Grafics device interface figure class (circle)
5  @author FAST Corporation
6 */
7 
8 #ifndef _FVGDICIRCLE_H_INCLUDED_
9 #define _FVGDICIRCLE_H_INCLUDED_
10 
11 #include "FvGdiFigure.h"
12 #include "Data/FvAngle.h"
13 
14 #pragma pack(push,_FVCL_PACKING)
15 
16 namespace FVCL
17 {
18 namespace GDI
19 {
20 // front declaration
21 class FVCL_API CFvGdiImage;
22 
23 // class
25 {
26 private:
27  void _Constructor();
28 
29 public:
30  CFvGdiCircle();
31  CFvGdiCircle( const CFvGdiCircle& src );
32  CFvGdiCircle( const FVCL::Data::CFvCircle& src );
33  CFvGdiCircle( DOUBLE center_x, DOUBLE center_y, DOUBLE radius );
34  virtual ~CFvGdiCircle();
35 
36  enum { DataID = FVCL::Data::CFvCircle::DataID };
37 
38  virtual INT GetDataID() const;
39  virtual INT Play( HDC dc, DOUBLE magnification ) const;
40  virtual bool GetDataObject( CFvDataObject* object ) const;
41  virtual CFvGdiFigure* Clone() const;
42  virtual FVCL::Data::CFvRectangle GetClipRect() const;
43  virtual INT CheckFocusMarkPosition( const FVCL::Data::CFvPoint& mouse, DOUBLE margin = 2.0 ) const;
44 
45  virtual bool SetPosition( const FVCL::Data::CFvPoint& position );
46  virtual const FVCL::Data::CFvPoint& GetPosition() const;
47 
48  bool SetFillEnable( bool enable );
49  bool GetFillEnable() const;
50 
51  bool SetFillColor( COLORREF color );
52  COLORREF GetFillColor() const;
53 
54  bool SetFillAlpha( UCHAR alpha );
55  UCHAR GetFillAlpha() const;
56 
57  bool SetArcStAngle( const FVCL::Data::CFvAngle& angle );
58  const FVCL::Data::CFvAngle& GetArcStAngle() const;
59  FVCL::Data::CFvAngle& GetArcStAngle();
60  FVCL::Data::CFvPoint GetArcStPoint() const;
61 
62  bool SetArcEdAngle( const FVCL::Data::CFvAngle& angle );
63  const FVCL::Data::CFvAngle& GetArcEdAngle() const;
64  FVCL::Data::CFvAngle& GetArcEdAngle();
65  FVCL::Data::CFvPoint GetArcEdPoint() const;
66 
67  FVCL::Data::CFvAngle CalcArcAngle( FVCL::Data::CFvPoint point, bool invert );
68 
69  virtual CFvGdiCircle& operator = ( const FVCL::Data::CFvCircle& src );
70  virtual CFvGdiCircle& operator = ( const CFvGdiCircle& src );
71  virtual bool operator == ( const CFvGdiFigure& src ) const;
72  virtual bool operator != ( const CFvGdiFigure& src ) const;
73 
74  FVCL::Data::CFvCircle ToCFvCircle() const;
75 
76 public:
79 
80 protected:
81 
82 private:
83  mutable FVCL::GDI::CFvGdiImage* m_FillImage;
84  bool m_FillEnable;
85  COLORREF m_FillColor;
86  UCHAR m_FillAlpha;
87  FVCL::Data::CFvAngle m_ArcStAngle;
88  FVCL::Data::CFvAngle m_ArcEdAngle;
89  FVCL::Data::CFvPoint CalcArcStPoint(DOUBLE mag) const;
90  FVCL::Data::CFvPoint CalcArcEdPoint(DOUBLE mag) const;
91 };
92 
93 } // GDI
94 
95 } // FVCL
96 
97 #pragma pack(pop)
98 
99 #endif // _FVGDICIRCLE_H_INCLUDED_
#define FVCL_API
DLLエクスポートマクロ
Definition: FvMacros.h:61
unsigned char UCHAR
整数型(8ビット)[符号なし]
Definition: FvDefs.h:33
点構造クラス
Definition: FvPoint.h:38
DOUBLE radius
半径
Definition: FvGdiCircle.h:78
FVCL::Data::CFvPoint center
中心
Definition: FvGdiCircle.h:77
FVCLのネームスペース
Definition: EVCbasicDeclare.txt:9
角度構造クラス
Definition: FvAngle.h:20
GDI円構造クラス
Definition: FvGdiCircle.h:24
int INT
整数型(32ビット)
Definition: FvDefs.h:36
円構造クラスのデータID
Definition: FvCircle.h:49
データオブジェクトの基本クラス
Definition: FvDataObject.h:20
矩形構造クラス
Definition: FvRectangle.h:37
GDI図形構造基本クラスのインターフェース
double DOUBLE
倍精度浮動小数点型(64ビット)
Definition: FvDefs.h:62
GDI図形構造基本クラス
Definition: FvGdiFigure.h:33
円構造クラス
Definition: FvCircle.h:33
角度構造クラスのインターフェース
class FVCL_API CFvGdiImage
前方宣言
Definition: FvGdiArc.h:20
GDI画像オブジェクト
Definition: FvGdiImage.h:21

Documentation copyright © 2007 FAST Corporation. [B-001864]
Generated on 2023年11月02日(木) 10時12分53秒 for WIL説明書(C++) by doxygen 1.8.11