GDIアンカー構造クラス
namespace FVCL::GDI
線分の始点または終点のアンカーを構成する各点を格納するデータ構造クラスです。
- 必要条件:
- ヘッダー: FVCLbasic.h
- 解説:
- 始点と終点から角度を計算して図形を回転して描画します。
アンカースタイルで示される形状は、水平線(0度)を基準としたものです。 アンカーの形状は、 スタイル と サイズ で指定することが可能です。 スタイルとサイズの設定は SetStyle と SetSize をご参照ください。
- 対応している図形のスタイル:
- 【矢印、三角形】
矢印と三角形は、下図のように水平線(0度)を基準として上下に開いた形状を表します。 下図の太線部分は矢印の形状を表しています。 三角形の時は矢印の両端を接続して描画します。 矢印または三角形を構成する3点は、描画座標からの相対位置を保ったまま回転します。
-
- 【十字、菱形】
十字と菱形は、下図のように水平線(0度)を基準とした形状を表します。 下図の太線部分は十字の形状を、細線部分は菱形の形状を表しています。 十字または菱形を構成する4点は、描画座標からの相対位置を保ったまま回転します。
-
- 【×印、矩形】
×印と矩形は、下図のように水平線(0度)を基準とした形状を表します。 下図の太線部分は×印の形状を、細線部分は矩形の形状を表しています。 ×印または矩形を構成する4点は、描画座標からの相対位置を保ったまま回転します。
-
- 【円形】
円形は、下図のように水平線(0度)を基準とした形状を表します。 アンカーサイズの cx と cy が等しければ真円となり、異なれば楕円となります。 円の外接矩形の始点と終点の2点から構成されます。 この2点は、描画座標からの相対位置を保ちますが線分の角度は無視します。
-
- 図形の回転:
- 親クラス(CFvGdiFigure)が持つ回転角を指定すると、図形を回転して描画できます。 回転中心は、回転の機軸に指定された画素の左上隅になります。 回転角と回転の機軸については CFvGdiFigure::SetAngle 及び CFvGdiFigure::SetAxis をご参照ください。
-
- 図形の選択:
- 図形が選択された事を表す選択マークを描画できます。 この図形が選択中の時は、始点・終点及びそれらの中央に選択マークを表示します。 この処理は描画関数(Play)で自動的に行われます。 選択の有無は CFvGdiFigure::SetSelect で切り替えてください。 描画属性は、 SetFocusMarkParam で切り替えてください。 描画属性の既定値は、 SetDefaultFocusMarkParam で設定できます。 選択マークの表示については、 CFvGdiAnchor::DrawFocusMark をご参照ください。
-
- 初期値:
- メンバ変数は、下記のように初期化されます。
- 参照
- CFvGdiFigure::SetAngle
CFvGdiFigure::SetAxis
CFvGdiFigure::SetSelect
CFvGdiAnchor::DrawFocusMark
|
| CFvGdiAnchor () |
| コンストラクタ [詳解]
|
|
| CFvGdiAnchor (const CFvGdiAnchor &src) |
| コピーコンストラクタ [詳解]
|
|
| CFvGdiAnchor (const FVCL::Data::CFvPoint &st, const FVCL::Data::CFvPoint &ed) |
| コンストラクタ [詳解]
|
|
| CFvGdiAnchor (DOUBLE sx, DOUBLE sy, DOUBLE ex, DOUBLE ey) |
| コンストラクタ [詳解]
|
|
virtual | ~CFvGdiAnchor () |
| デストラクタ [詳解]
|
|
virtual INT | GetDataID () const |
| データIDの取得 [詳解]
|
|
virtual INT | Play (HDC dc, DOUBLE magnification) const |
| 描画処理 [詳解]
|
|
virtual bool | GetDataObject (CFvDataObject *object) const |
| データオブジェクトへの変換 [詳解]
|
|
virtual CFvGdiFigure * | Clone () const |
| クローンの生成 [詳解]
|
|
virtual FVCL::Data::CFvRectangle | GetClipRect () const |
| 外接矩形の取得 [詳解]
|
|
virtual INT | CheckFocusMarkPosition (const FVCL::Data::CFvPoint &mouse, DOUBLE margin=2.0) const |
| マウス位置の確認 [詳解]
|
|
virtual bool | SetPosition (const FVCL::Data::CFvPoint &position) |
| 描画座標の設定 [詳解]
|
|
virtual const FVCL::Data::CFvPoint & | GetPosition () const |
| 描画座標の取得 [詳解]
|
|
bool | SetStyle (INT style) |
| スタイルの設定 [詳解]
|
|
INT | GetStyle () const |
| スタイルの取得 [詳解]
|
|
bool | SetSize (SIZE size) |
| サイズの設定 [詳解]
|
|
bool | SetSize (INT cx, INT cy) |
| サイズの設定 [詳解]
|
|
SIZE | GetSize () const |
| サイズの取得 [詳解]
|
|
virtual CFvGdiAnchor & | operator= (const CFvGdiAnchor &src) |
| 代入オペレータ (=) [詳解]
|
|
virtual bool | operator== (const CFvGdiFigure &src) const |
| 比較オペレータ (==) [詳解]
|
|
virtual bool | operator!= (const CFvGdiFigure &src) const |
| 比較オペレータ (!=) [詳解]
|
|
| CFvGdiFigure () |
| コンストラクタ [詳解]
|
|
virtual | ~CFvGdiFigure () |
| デストラクタ [詳解]
|
|
virtual CFvGdiFigure & | operator= (const CFvGdiFigure &ope) |
| 代入オペレータ (=) [詳解]
|
|
bool | SetAxis (const FVCL::Data::CFvPoint &position) |
| 回転の機軸座標の設定 [詳解]
|
|
const FVCL::Data::CFvPoint & | GetAxis () const |
| 回転の機軸座標の取得 [詳解]
|
|
bool | SetAngle (DOUBLE degree) |
| 傾きの設定 [詳解]
|
|
DOUBLE | GetAngle () const |
| 傾きの取得 [詳解]
|
|
bool | SetEnable (bool enable) |
| 可視属性の設定 [詳解]
|
|
bool | GetEnable () const |
| 可視属性の取得 [詳解]
|
|
bool | SetSelect (bool select) |
| 選択状態の設定 [詳解]
|
|
bool | GetSelect () const |
| 選択状態の取得 [詳解]
|
|
bool | SetPen (const CFvGdiPen &pen) |
| ペンの設定 [詳解]
|
|
const CFvGdiPen & | GetPen () const |
| ペンの取得 [詳解]
|
|
CFvGdiPen & | GetPen () |
| ペンの取得 [詳解]
|
|
bool | SetPenEnable (bool enable) |
| ペンの有効無効の切り替え [詳解]
|
|
bool | GetPenEnable () const |
| ペンの有効無効の取得 [詳解]
|
|
bool | SetBrush (const CFvGdiBrush &brush) |
| ブラシの設定 [詳解]
|
|
const CFvGdiBrush & | GetBrush () const |
| ブラシの取得 [詳解]
|
|
CFvGdiBrush & | GetBrush () |
| ブラシの取得 [詳解]
|
|
bool | SetBrushEnable (bool enable) |
| ブラシの有効無効の切り替え [詳解]
|
|
bool | GetBrushEnable () const |
| ブラシの有効無効の取得 [詳解]
|
|
bool | SetBkMode (INT mode) |
| 背景モードの設定 [詳解]
|
|
INT | GetBkMode () const |
| 背景モードの取得 [詳解]
|
|
bool | SetBkColor (COLORREF color) |
| 背景色の設定 [詳解]
|
|
COLORREF | GetBkColor () const |
| 背景色の取得 [詳解]
|
|
bool | SetFocusMarkParam (const CFvFocusMarkParam ¶m) |
| 選択マークの描画属性の設定 [詳解]
|
|
const CFvFocusMarkParam & | GetFocusMarkParam () const |
| 選択マークの描画属性の取得 [詳解]
|
|
CFvFocusMarkParam & | GetFocusMarkParam () |
| 選択マークの描画属性の取得 [詳解]
|
|
bool | SetAxisVisible (bool value) |
| 回転の機軸の可視属性の設定 [詳解]
|
|
bool | GetAxisVisible () const |
| 回転の機軸の可視属性の取得 [詳解]
|
|
| CFvObject () |
| 標準のコンストラクタ [詳解]
|
|
virtual | ~CFvObject () |
| デストラクタ [詳解]
|
|
INT | SetErrorCode (INT err) |
| エラーコードの設定 [詳解]
|
|
INT | SetErrorCode (INT err) const |
| エラーコードの設定 [詳解]
|
|
INT | GetErrorCode () const |
| エラーコードの取得 [詳解]
|
|
bool | SetAllocateOption (INT value) |
| 画像領域確保時のオプションの設定 [詳解]
|
|
INT | GetAllocateOption () const |
| 画像領域確保時のオプションの取得 [詳解]
|
|
void * | operator new (size_t uiSize) |
| new オペレータ [詳解]
|
|
void * | operator new[] (size_t uiSize) |
| new[] オペレータ [詳解]
|
|
void | operator delete (void *pvObject) |
| delete オペレータ [詳解]
|
|
void | operator delete[] (void *pvObject) |
| delete[] オペレータ [詳解]
|
|
void * | operator new (size_t uiSize, LPCSTR szFileName, INT iLine) |
| new オペレータ [詳解]
|
|
void * | operator new[] (size_t uiSize, LPCSTR szFileName, INT iLine) |
| new[] オペレータ [詳解]
|
|
void | operator delete (void *pvObject, LPCSTR szFileName, INT iLine) |
| delete オペレータ [詳解]
|
|
void | operator delete[] (void *pvObject, LPCSTR szFileName, INT iLine) |
| delete[] オペレータ [詳解]
|
|
virtual CFvObject & | operator= (const CFvObject &src) |
| 代入オペレータ [詳解]
|
|
virtual bool | operator== (const CFvObject &src) const |
| 比較オペレータ (==) [詳解]
|
|
virtual bool | operator!= (const CFvObject &src) const |
| 比較オペレータ (!=) [詳解]
|
|
|
virtual bool | DrawFocusMark (HDC dc, POINT *vertex, UINT count, POINT axis) const |
| 選択マーク描画処理 [詳解]
|
|
virtual bool | Make () |
| アンカーの生成 [詳解]
|
|
bool | MakeArrow () |
| アンカーの生成(矢印/三角形) [詳解]
|
|
bool | MakeCross () |
| アンカーの生成(十字/菱形) [詳解]
|
|
bool | MakeXmark () |
| アンカーの生成(×印/矩形) [詳解]
|
|
bool | MakeRound () |
| アンカーの生成(円形) [詳解]
|
|
virtual bool | DrawFocusMark (HDC dc, RECT clip, POINT axis) const |
| 選択マーク描画処理 [詳解]
|
|
INT | CheckClipRectPosition (const FVCL::Data::CFvRectangle &clip, const FVCL::Data::CFvPoint &mouse, DOUBLE margin) const |
| マウス位置の確認 [詳解]
|
|
bool | Rotate (DOUBLE x, DOUBLE y, DOUBLE axis_x, DOUBLE axis_y, DOUBLE angle, DOUBLE *tx, DOUBLE *ty) const |
| 座標の回転 [詳解]
|
|
bool | WorldTransformRotate (HDC dc, DOUBLE axis_x, DOUBLE axis_y, DOUBLE angle) const |
| 座標の回転設定 [詳解]
|
|
bool | WorldTransformScale (HDC dc, DOUBLE origin_x, DOUBLE origin_y, DOUBLE magnification) const |
| 座標の回転設定 [詳解]
|
|
INT | fnCPUCheck () |
| CPU情報の取得 [詳解]
|
|