WIL説明書(C++)  3.0.0
全メンバ一覧 | 公開メンバ関数 | 限定公開メンバ関数 | 限定公開変数類

濃度波形描画クラス [詳解]

詳解

濃度波形描画クラス

画像の濃度を波形で表示します。
対応する画像種別は、 FVCL::GDI::CFvDisplay クラスに依存します。

マウス位置の画素の濃度値を数値と波形で表示します。 数値表示は、マウス位置の1画素のみを表示します。 波形表示は、マウス位置を交点とする縦横1ラインの画素を表示します。

必要条件:
ヘッダー: EVCbasic.h
表示イメージ(濃淡画像) 表示イメージ(カラー画像)
CEvDrawAscope_gray.png
CEvDrawAscope_rgb.png
オーバレイの設定:
伸縮属性 false FVCL::GDI::CFvOverlay::SetScaling
伸縮モード 未使用 FVCL::GDI::CFvOverlay::SetScalingMode
初期値:
メンバ変数は以下のように初期化されます。 描画される各図形のハンドルは NULL 初期化されます。
メンバ変数 初期値 内容
m_pvRulerV size=3,NULL初期化 垂直ルーラのハンドル配列
m_pvRulerH size=3,NULL初期化 水平ルーラのハンドル配列
m_colCursor RGB( 0xFF, 0xFF, 0x00 ) カーソル線の色
m_penCursor PS_SOLID, 0, m_colCursor カーソルのペン
m_colRuler RGB( 0x00, 0xFF, 0xFF ) ルーラの色
m_penRuler PS_DOT, 0, m_colRuler ルーラのペン
m_colText RGB( 0xFF, 0x00, 0x00 ) テキストの色
m_font.lfHeight 14 文字の高さ
m_font.lfWidth 6 平均文字幅
m_font.lfFaceName "Terminal" フォント名称
m_penR PS_SOLID, 0, RGB(0xFF,0x00,0x00) 濃度波形(赤成分)のペン
m_penG PS_SOLID, 0, RGB(0x00,0xFF,0x00) 濃度波形(緑成分)のペン
m_penB PS_SOLID, 0, RGB(0x00,0x00,0xFF) 濃度波形(青成分)のペン
バグ:
EVCbasic v1.1.0.2: UC8x3、US16x3、UI32x3 の時に画素値の表示ができない不具合の改修
+ CEvDrawAscope の継承関係図

公開メンバ関数

 CEvDrawAscope ()
 コンストラクタ [詳解]
 
virtual ~CEvDrawAscope ()
 デストラクタ [詳解]
 
virtual bool Create (FVCL::GDI::CFvDisplay &display, FVCL::GDI::CFvOverlay &overlay)
 生成 [詳解]
 
virtual void Clear ()
 オーバレイの消去 [詳解]
 
virtual bool Draw (const CPoint &MousePosition)
 描画実行 [詳解]
 
bool SetMousePosition (CPoint MousePosition)
 マウスカーソル位置の設定 [詳解]
 
CPoint GetMousePosition () const
 マウスカーソル位置の取得 [詳解]
 
bool SetCursorColor (COLORREF color)
 カーソル色の設定 [詳解]
 
COLORREF GetCursorColor () const
 カーソル色の取得 [詳解]
 
bool SetRulerColor (COLORREF color)
 ルーラ色の設定 [詳解]
 
COLORREF GetRulerColor () const
 ルーラ色の取得 [詳解]
 
bool SetTextColor (COLORREF color)
 テキスト色の設定 [詳解]
 
COLORREF GetTextColor () const
 テキスト色の取得 [詳解]
 
bool SetFont (const FVCL::GDI::CFvGdiFont &font)
 文字列のフォントの設定 [詳解]
 
const FVCL::GDI::CFvGdiFontGetFont () const
 文字列のフォントの取得 [詳解]
 
- 基底クラス CEvDraw に属する継承公開メンバ関数
 CEvDraw ()
 コンストラクタ [詳解]
 
virtual ~CEvDraw ()
 デストラクタ [詳解]
 
virtual void Destroy ()
 破棄 [詳解]
 
virtual bool IsCreate () const
 生成状況の確認 [詳解]
 
bool SetBrightness (UINT brightness)
 図形の明るさの設定 [詳解]
 
UINT GetBrightness () const
 図形の明るさの取得 [詳解]
 
bool SetDisplay (FVCL::GDI::CFvDisplay &display)
 表示クラスの設定 [詳解]
 
FVCL::GDI::CFvDisplayGetDisplay () const
 表示クラスの取得 [詳解]
 
bool SetOverlay (FVCL::GDI::CFvOverlay &overlay)
 オーバレイクラスの設定 [詳解]
 
FVCL::GDI::CFvOverlayGetOverlay () const
 オーバレイクラスの取得 [詳解]
 
- 基底クラス FVCL::CFvObject に属する継承公開メンバ関数
 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 CFvObjectoperator= (const CFvObject &src)
 代入オペレータ [詳解]
 
virtual bool operator== (const CFvObject &src) const
 比較オペレータ (==) [詳解]
 
virtual bool operator!= (const CFvObject &src) const
 比較オペレータ (!=) [詳解]
 

限定公開メンバ関数

virtual bool DrawCursor (const CPoint &MousePosition)
 カーソル描画 [詳解]
 
virtual bool DrawRuler ()
 ルーラ描画 [詳解]
 
virtual bool DrawDensity (const CPoint &MousePosition)
 濃度波形描画 [詳解]
 
virtual bool DrawDensityString (const CPoint &MousePosition)
 濃度値描画 [詳解]
 
bool MakeDensityTable (const CPoint &MousePosition)
 濃度波形データ生成 [詳解]
 
bool ParseDensityForBinary (const CPoint &MousePosition)
 濃度波形データ解析 (2値画像用) [詳解]
 
bool ParseDensityForGray (const CPoint &MousePosition)
 濃度波形データ解析 (濃淡画像用) [詳解]
 
bool ParseDensityForUnpacked (const CPoint &MousePosition)
 濃度波形データ解析 (3CH アンパックカラー画像用) [詳解]
 
bool ParseDensityForColor (const CPoint &MousePosition)
 濃度波形データ解析 (RGB パッキングカラー画像用) [詳解]
 
bool ParseDensityForSigned (const CPoint &MousePosition, const FVCL::Data::CFvImage &image)
 濃度波形データ解析 (符号付き整数・浮動小数点型画像用) [詳解]
 
- 基底クラス CEvDraw に属する継承限定公開メンバ関数
COLORREF GetBrightColor (COLORREF color, bool reverse=false) const
 明るさを考慮した描画色の取得 [詳解]
 
- 基底クラス FVCL::CFvObject に属する継承限定公開メンバ関数
INT fnCPUCheck ()
 CPU情報の取得 [詳解]
 

限定公開変数類

CPoint m_MousePosition
 マウスカーソル位置 [詳解]
 
INT m_iDenMax
 最大濃度 [詳解]
 
COLORREF m_colCursor
 カーソルの色 [詳解]
 
COLORREF m_colRuler
 ルーラの色 [詳解]
 
COLORREF m_colText
 文字列の色 [詳解]
 
FVCL::GDI::CFvGdiPen m_penCursor
 カーソルのペン [詳解]
 
FVCL::GDI::CFvGdiPen m_penRuler
 ルーラのペン [詳解]
 
FVCL::GDI::CFvGdiPen m_penR
 赤成分のペン [詳解]
 
FVCL::GDI::CFvGdiPen m_penG
 緑成分のペン [詳解]
 
FVCL::GDI::CFvGdiPen m_penB
 青成分のペン [詳解]
 
FVCL::GDI::CFvGdiFont m_font
 座標及び濃度値のフォント [詳解]
 
FVCL::GDI::CFvGdiLineSegmentm_pvCursorV
 カーソルの図形オブジェクト (垂直) [詳解]
 
FVCL::GDI::CFvGdiLineSegmentm_pvCursorH
 カーソルの図形オブジェクト (水平) [詳解]
 
FVCL::CFvArray< FVCL::GDI::CFvGdiLineSegment * > m_pvRulerV
 ルーラの図形オブジェクト (垂直) [詳解]
 
FVCL::CFvArray< FVCL::GDI::CFvGdiLineSegment * > m_pvRulerH
 ルーラの図形オブジェクト (水平) [詳解]
 
FVCL::GDI::CFvGdiPolylinem_pvRV
 波形(赤成分)の図形オブジェクト (垂直) [詳解]
 
FVCL::GDI::CFvGdiPolylinem_pvRH
 波形(赤成分)の図形オブジェクト (水平) [詳解]
 
FVCL::GDI::CFvGdiPolylinem_pvGV
 波形(緑成分)の図形オブジェクト (垂直) [詳解]
 
FVCL::GDI::CFvGdiPolylinem_pvGH
 波形(緑成分)の図形オブジェクト (水平) [詳解]
 
FVCL::GDI::CFvGdiPolylinem_pvBV
 波形(青成分)の図形オブジェクト (垂直) [詳解]
 
FVCL::GDI::CFvGdiPolylinem_pvBH
 波形(青成分)の図形オブジェクト (水平) [詳解]
 
FVCL::GDI::CFvGdiStringm_pvT1
 座標の文字列オブジェクト [詳解]
 
FVCL::GDI::CFvGdiStringm_pvT2
 濃度値の文字列オブジェクト [詳解]
 
INT m_iBaseW
 ルーラの開始位置 [詳解]
 
INT m_iBaseH
 ルーラの開始位置 [詳解]
 
INT m_iLengW
 ルーラのサイズ [詳解]
 
INT m_iLengH
 ルーラのサイズ [詳解]
 
- 基底クラス CEvDraw に属する継承限定公開変数類
FVCL::GDI::CFvDisplaym_display
 描画クラス [詳解]
 
FVCL::GDI::CFvOverlaym_overlay
 オーバレイ [詳解]
 
UINT m_brightness
 明るさ [詳解]
 
- 基底クラス FVCL::CFvObject に属する継承限定公開変数類
INT m_ErrorCode
 エラーコード [詳解]
 
INT m_AllocateOption
 画像領域確保時のオプション [詳解]
 

その他の継承メンバ

- 基底クラス FVCL::CFvObject に属する継承静的公開メンバ関数
static bool SetDefaultAllocateOption (INT value)
 既定の画像領域確保時のオプションの設定 [詳解]
 
static INT GetDefaultAllocateOption ()
 既定の画像領域確保時のオプションの取得 [詳解]
 

構築子と解体子

CEvDrawAscope::CEvDrawAscope ( )

コンストラクタ

クラスのオブジェクトが生成された時の初期化処理を行います。

CEvDrawAscope::~CEvDrawAscope ( )
virtual

デストラクタ

クラスのオブジェクトが破棄された時の開放処理を行います。

関数詳解

bool CEvDrawAscope::Create ( FVCL::GDI::CFvDisplay display,
FVCL::GDI::CFvOverlay overlay 
)
virtual

生成

FVCL::GDI::CFvDisplay クラスのオブジェクトと描画先のオーバレイを このクラスに設定して、描画処理を実行可能にします。

引数
[in]display描画クラス
[in]overlay描画先のオーバレイ
戻り値
true正常
false異常
解説:
親クラスの生成処理(CEvDraw::Create)を実行して描画処理を可能にします。 また、引数 overlay の 伸縮属性は false (伸縮しない) に設定されます。
参照
FVCL::GDI::CFvOverlay::SetScaling

CEvDrawを再実装しています。

void CEvDrawAscope::Clear ( )
virtual

オーバレイの消去

オーバレイ上の図形を消去し、このクラス内に保有する図形ハンドルをリセットします。 再度、 Draw 関数を呼び出すと描画されます。

CEvDrawを再実装しています。

bool CEvDrawAscope::Draw ( const CPoint &  MousePosition)
virtual

描画実行

このクラス固有の描画処理を実行します。

引数
[in]MousePositionマウスカーソルの位置(クライアント座標)
戻り値
true正常
false異常
解説:
ここで指定された MousePosition は、画像の有効領域内に正規化され、 以下のメンバに保管されます。
  • m_MousePosition メンバフィールド


また、以下のメンバで描画処理に使用されます。
  • DrawCursor ... カーソル描画
  • DrawDensity ... ルーラ描画
  • DrawDensityString ... 濃度値描画

bool CEvDrawAscope::SetMousePosition ( CPoint  MousePosition)

マウスカーソル位置の設定

マウスカーソルの位置を設定します。

引数
[in]MousePositionマウスカーソルの位置(クライアント座標)
戻り値
true正常
false異常
解説:
ここに設定した値が、直接 描画に反映されるわけではありません。 描画に使用されるマウスカーソル位置は Draw メソッドに渡された座標です。 また、 Draw メソッドは この値を更新します。
バージョン
EVCbasic v1.3.0.0: 新規に追加しました。
参照
m_MousePosition
GetMousePosition
CPoint CEvDrawAscope::GetMousePosition ( ) const

マウスカーソル位置の取得

現在設定されているマウスカーソルの位置を取得します。
この座標は、SetMousePosition メソッドで設定した座標 または、 Draw メソッドに渡され正規化された座標です。

戻り値
マウスカーソルの位置を返します。
バージョン
EVCbasic v1.3.0.0: 新規に追加しました。
参照
m_MousePosition
SetMousePosition
bool CEvDrawAscope::SetCursorColor ( COLORREF  color)

カーソル色の設定

マウスカーソルの位置と交差する画像の縦横1ラインに描画される十字線の色を設定します。

引数
[in]colorRGBカラー
戻り値
true正常
false異常
COLORREF CEvDrawAscope::GetCursorColor ( ) const

カーソル色の取得

現在設定されている十字線の色を取得します。

戻り値
カーソルの色を返します。
bool CEvDrawAscope::SetRulerColor ( COLORREF  color)

ルーラ色の設定

濃度波形の最小・最大・中間位置を示すルーラの色を設定します。

引数
[in]colorRGBカラー
戻り値
true正常
false異常
COLORREF CEvDrawAscope::GetRulerColor ( ) const

ルーラ色の取得

現在設定されているルーラの色を取得します。

戻り値
ルーラの色を返します。
bool CEvDrawAscope::SetTextColor ( COLORREF  color)

テキスト色の設定

マウスカーソル位置の座標と濃度を示すテキストの表示色を設定します。

引数
[in]colorRGBカラー
戻り値
true正常
false異常
COLORREF CEvDrawAscope::GetTextColor ( ) const

テキスト色の取得

現在設定されているテキスト色を取得します。

戻り値
文字列色を返します。
bool CEvDrawAscope::SetFont ( const FVCL::GDI::CFvGdiFont font)

文字列のフォントの設定

マウスカーソル位置の座標と濃度を示すテキストのフォント情報を設定します。

引数
[in]fontフォント
戻り値
true正常
false異常
const FVCL::GDI::CFvGdiFont & CEvDrawAscope::GetFont ( ) const

文字列のフォントの取得

現在設定されているテキストのフォント情報を取得します。

戻り値
文字列のフォントを返します。
bool CEvDrawAscope::DrawCursor ( const CPoint &  MousePosition)
protectedvirtual

カーソル描画

マウスカーソルの位置と交差する画像座標を示す垂直線と水平線を描画します。

引数
[in]MousePositionマウスカーソルの位置(クライアント座標)
戻り値
true正常
false異常
bool CEvDrawAscope::DrawRuler ( )
protectedvirtual

ルーラ描画

濃度波形の最小・最大・中間位置を示すルーラを描画します。

戻り値
true正常
false異常
bool CEvDrawAscope::DrawDensity ( const CPoint &  MousePosition)
protectedvirtual

濃度波形描画

マウスカーソルの位置と交差する画像座標の濃度波形を描画します。

引数
[in]MousePositionマウスカーソルの位置(クライアント座標)
戻り値
true正常
false異常
bool CEvDrawAscope::DrawDensityString ( const CPoint &  MousePosition)
protectedvirtual

濃度値描画

マウスカーソルの位置に画像座標と濃度値を描画します。

引数
[in]MousePositionマウスカーソルの位置(クライアント座標)
戻り値
true正常
false異常
bool CEvDrawAscope::MakeDensityTable ( const CPoint &  MousePosition)
protected

濃度波形データ生成

引数
[in]MousePositionマウスカーソルの位置(クライアント座標)
戻り値
true正常
false異常
bool CEvDrawAscope::ParseDensityForBinary ( const CPoint &  MousePosition)
protected

濃度波形データ解析 (2値画像用)

引数
[in]MousePositionマウスカーソルの位置(クライアント座標)
戻り値
true正常
false異常
bool CEvDrawAscope::ParseDensityForGray ( const CPoint &  MousePosition)
protected

濃度波形データ解析 (濃淡画像用)

引数
[in]MousePositionマウスカーソルの位置(クライアント座標)
戻り値
true正常
false異常
bool CEvDrawAscope::ParseDensityForUnpacked ( const CPoint &  MousePosition)
protected

濃度波形データ解析 (3CH アンパックカラー画像用)

引数
[in]MousePositionマウスカーソルの位置(クライアント座標)
戻り値
true正常
false異常
bool CEvDrawAscope::ParseDensityForColor ( const CPoint &  MousePosition)
protected

濃度波形データ解析 (RGB パッキングカラー画像用)

引数
[in]MousePositionマウスカーソルの位置(クライアント座標)
戻り値
true正常
false異常
bool CEvDrawAscope::ParseDensityForSigned ( const CPoint &  MousePosition,
const FVCL::Data::CFvImage image 
)
protected

濃度波形データ解析 (符号付き整数・浮動小数点型画像用)

引数
[in]MousePositionマウスカーソルの位置(クライアント座標)
[in]image処理対象画像
戻り値
true正常
false異常

メンバ詳解

CPoint CEvDrawAscope::m_MousePosition
protected

マウスカーソル位置

マウスカーソル位置を示す座標です。
Draw メソッドまたは SetMousePosition メソッドで設定された座標を保持します。

バージョン
EVCbasic v1.3.0.0: 新規に追加しました。
参照
SetMousePosition
GetMousePosition
INT CEvDrawAscope::m_iDenMax
protected

最大濃度

COLORREF CEvDrawAscope::m_colCursor
protected

カーソルの色

COLORREF CEvDrawAscope::m_colRuler
protected

ルーラの色

COLORREF CEvDrawAscope::m_colText
protected

文字列の色

FVCL::GDI::CFvGdiPen CEvDrawAscope::m_penCursor
protected

カーソルのペン

FVCL::GDI::CFvGdiPen CEvDrawAscope::m_penRuler
protected

ルーラのペン

FVCL::GDI::CFvGdiPen CEvDrawAscope::m_penR
protected

赤成分のペン

FVCL::GDI::CFvGdiPen CEvDrawAscope::m_penG
protected

緑成分のペン

FVCL::GDI::CFvGdiPen CEvDrawAscope::m_penB
protected

青成分のペン

FVCL::GDI::CFvGdiFont CEvDrawAscope::m_font
protected

座標及び濃度値のフォント

FVCL::GDI::CFvGdiLineSegment * CEvDrawAscope::m_pvCursorV
protected

カーソルの図形オブジェクト (垂直)

FVCL::GDI::CFvGdiLineSegment * CEvDrawAscope::m_pvCursorH
protected

カーソルの図形オブジェクト (水平)

FVCL::CFvArray< FVCL::GDI::CFvGdiLineSegment * > CEvDrawAscope::m_pvRulerV
protected

ルーラの図形オブジェクト (垂直)

FVCL::CFvArray< FVCL::GDI::CFvGdiLineSegment * > CEvDrawAscope::m_pvRulerH
protected

ルーラの図形オブジェクト (水平)

FVCL::GDI::CFvGdiPolyline * CEvDrawAscope::m_pvRV
protected

波形(赤成分)の図形オブジェクト (垂直)

FVCL::GDI::CFvGdiPolyline * CEvDrawAscope::m_pvRH
protected

波形(赤成分)の図形オブジェクト (水平)

FVCL::GDI::CFvGdiPolyline * CEvDrawAscope::m_pvGV
protected

波形(緑成分)の図形オブジェクト (垂直)

FVCL::GDI::CFvGdiPolyline * CEvDrawAscope::m_pvGH
protected

波形(緑成分)の図形オブジェクト (水平)

FVCL::GDI::CFvGdiPolyline * CEvDrawAscope::m_pvBV
protected

波形(青成分)の図形オブジェクト (垂直)

FVCL::GDI::CFvGdiPolyline * CEvDrawAscope::m_pvBH
protected

波形(青成分)の図形オブジェクト (水平)

FVCL::GDI::CFvGdiString * CEvDrawAscope::m_pvT1
protected

座標の文字列オブジェクト

FVCL::GDI::CFvGdiString * CEvDrawAscope::m_pvT2
protected

濃度値の文字列オブジェクト

INT CEvDrawAscope::m_iBaseW
protected

ルーラの開始位置

INT CEvDrawAscope::m_iBaseH
protected

ルーラの開始位置

INT CEvDrawAscope::m_iLengW
protected

ルーラのサイズ

INT CEvDrawAscope::m_iLengH
protected

ルーラのサイズ


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