WIL説明書(C++)  3.0.0
FvGdiArc.h
[詳解]
1 // $Revision: 1.1 $
2 /*
3  @file FvGdiArc.h
4  @brief Grafics device interface figure class (ellipse)
5  @author FAST Corporation
6 */
7 
8 #ifndef _FVGDISRC_H_INCLUDED_
9 #define _FVGDISRC_H_INCLUDED_
10 
11 #include "FvGdiFigure.h"
12 
13 #pragma pack(push,_FVCL_PACKING)
14 
15 namespace FVCL
16 {
17 namespace GDI
18 {
19 // front declaration
21 
22 // class
24 {
25 private:
26  void _Constructor();
27 
28 public:
29  CFvGdiArc();
30  CFvGdiArc( const CFvGdiArc& src );
31  CFvGdiArc( const FVCL::Data::CFvEllipse& src );
32  CFvGdiArc( DOUBLE center_x, DOUBLE center_y, DOUBLE axis_x, DOUBLE axis_y );
33  CFvGdiArc( DOUBLE center_x, DOUBLE center_y, DOUBLE axis_x, DOUBLE axis_y, DOUBLE st_angle, DOUBLE ed_angle );
34  virtual ~CFvGdiArc();
35 
36  enum { DataID = 23 };
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 SetArcStAngle( const FVCL::Data::CFvAngle& angle );
49  const FVCL::Data::CFvAngle& GetArcStAngle() const;
50  FVCL::Data::CFvAngle& GetArcStAngle();
51  FVCL::Data::CFvPoint GetArcStPoint() const;
52 
53  bool SetArcEdAngle( const FVCL::Data::CFvAngle& angle );
54  const FVCL::Data::CFvAngle& GetArcEdAngle() const;
55  FVCL::Data::CFvAngle& GetArcEdAngle();
56  FVCL::Data::CFvPoint GetArcEdPoint() const;
57 
58  FVCL::Data::CFvAngle CalcArcAngle( FVCL::Data::CFvPoint point, bool invert );
59 
60  virtual CFvGdiArc& operator = ( const FVCL::Data::CFvEllipse& src );
61  virtual CFvGdiArc& operator = ( const CFvGdiArc& src );
62  virtual bool operator == ( const CFvGdiFigure& src ) const;
63  virtual bool operator != ( const CFvGdiFigure& src ) const;
64 
65  FVCL::Data::CFvEllipse ToCFvEllipse() const;
66 
67 protected:
68 
69 public:
73 
74 protected:
75 
76 private:
77  FVCL::Data::CFvAngle m_ArcStAngle;
78  FVCL::Data::CFvAngle m_ArcEdAngle;
79  FVCL::Data::CFvPoint CalcArcStPoint(DOUBLE mag) const;
80  FVCL::Data::CFvPoint CalcArcEdPoint(DOUBLE mag) const;
81 };
82 
83 } // GDI
84 } // FVCL
85 
86 #pragma pack(pop)
87 
88 #endif // _FVGDISRC_H_INCLUDED_
#define FVCL_API
DLLエクスポートマクロ
Definition: FvMacros.h:61
DOUBLE axis_y
副軸長(半径)
Definition: FvGdiArc.h:72
楕円構造クラス
Definition: FvEllipse.h:24
点構造クラス
Definition: FvPoint.h:38
FVCLのネームスペース
Definition: EVCbasicDeclare.txt:9
角度構造クラス
Definition: FvAngle.h:20
int INT
整数型(32ビット)
Definition: FvDefs.h:36
データオブジェクトの基本クラス
Definition: FvDataObject.h:20
矩形構造クラス
Definition: FvRectangle.h:37
GDI図形構造基本クラスのインターフェース
double DOUBLE
倍精度浮動小数点型(64ビット)
Definition: FvDefs.h:62
FVCL::Data::CFvPoint center
中心
Definition: FvGdiArc.h:70
GDI図形構造基本クラス
Definition: FvGdiFigure.h:33
GDI円弧構造クラス
Definition: FvGdiArc.h:23
GDI画像オブジェクト
Definition: FvGdiImage.h:21
DOUBLE axis_x
主軸長(半径)
Definition: FvGdiArc.h:71

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