CBlueUI  
C++ 跨平台跨框架的数据可视化工具
载入中...
搜索中...
未找到
BUI::LinearAxis类 参考

线性坐标轴 +-----------—+=================+------------—+ m_data_min m_selMin m_selMax m_data_max 更多...

+ 类 BUI::LinearAxis 继承关系图:

Public 成员函数

 LinearAxis ()
 
 ~LinearAxis ()
 
void SetDataRange (double start, double end, BOOL keep_same_show=FALSE)
 设置轴起点和终点对应的刻度
 
void SetSelectRange (double fmin, double fmax)
 设置轴显示范围。范围由百分比显示
 
VecFloat2 ViewPoint (double v) const
 获得刻度v,所在的像素坐标
 
POINT ViewPointRound (double v) const
 获得刻度v,所在的像素坐标。并对坐标进行取整
 
double GetValueInPercent (double v) const
 获得轴上对应值的百分比
 
double ScreenPointToValue (double x, double y) const
 根据屏幕像素点,求出轴刻度值。使用向量投影方法
 
VecFloat2 DirectionVector (BOOL bUnitization=TRUE, BOOL remove_head=FALSE) const
 轴方向的实际距离向量
 
VecFloat2 ValueVector (double v) const
 获得刻度值v,对应的像素向量
 
VecFloat2 WeightVector (double w) const
 获得权重w,对应的像素尺寸
 
VecFloat2 ViewSketchPoint (double v, double t3v) const
 轴上缩略图,坐标点获取算法。t3v代表法向量方向的百分比。值域=[0,1]
 
VecFloat2 ViewSketchSize (double v, double t3v) const
 轴上缩略图,坐标尺寸获取算法。t3v代表法向量方向的百分比。值域=[0,1]
 
BOOL IsViewportArea (double v) const
 是否在视窗可见范围内,TRUE表示可见
 
double GetCurHitPos () const
 返回当前鼠标对应的轴位置
 
void SetLabelVector (const VecFloat2 &vt)
 设置刻度线方向向量,该向量基于控件坐标系
 
double GetPrecisionUnit (BOOL sign=TRUE) const
 获得轴刻度精度
 
void SetPrecisionUnit (double steps)
 设置轴最小精度
 
void SetAxisText (const BeString &str)
 设置轴显示文本
 
void SetLabelAngle (double rad)
 设置文本相对于法向量的偏移角度
 
void SetTickLabelSpacing (int distance)
 刻度线文本间隔
 
void SetAxisPosition (POINT ptstart, POINT ptOffset)
 设置轴起点和终点。基于控件坐标系
 
void SetAxisPosition (int x1, int y1, int x2, int y2)
 设置轴起点和终点。基于控件坐标系
 
void SetLayoutType (AxisLayoutType type, double value)
 设置坐标轴显示位置
 
void SetVertical (BOOL bV)
 标记是否为垂直坐标轴
 
void SetPerpendecularAxis (LinearAxis *axis)
 设置关联的坐标轴
 
void GetAxisStartToEndPoint (POINT &ptStart, POINT &ptEnd, BOOL has_head=FALSE) const
 获得坐标轴位置起点和终点。基于控件坐标系
 
void SetAxisHeadOffset (int offset)
 设置第一个刻度与边沿的距离
 
double GetAxisHeadOffset ()
 获取第一个刻度与边沿的距离
 
void SetAxisPosNorOffset (int offset)
 
void SetScrollSize (int size)
 
BOOL IsScrollVaild () const
 滚动条是否有效
 
void SetTickMarkCount (TickMarkID id, int c)
 
void SetTickMarkLineSize (TickMarkID id, int tickSize=4)
 
void SetTickMarkStyle (TickMarkID id, TickMarkPositon style=TickOnOutside)
 
void SetTickMarkInfo (TickMarkID id, int c, int tickSize, TickMarkPositon style=TickOnOutside)
 
double MinorStep () const
 小刻度步长
 
double MajorStep () const
 大刻度步长
 
double MinorUnit ()
 小刻度最小单位
 
double MajorUnit ()
 大刻度最小单位
 
void ShowGridLine (BOOL bVisable)
 显示(或隐藏)网格线
 
void ShowGridBk (BOOL bVisable)
 显示(或隐藏)背景
 
BOOL IsShowGridLine () const
 判断网格线是否显示
 
BOOL IsShowGridBk () const
 判断间隔背景是否显示
 
double GetProjectionOnTheNormalVector (LinearAxis *otherAxis, POINT pt)
 获得任意点,在otherAxis法向量上的投影
 
BOOL NotifyZoomRange (double v)
 
void EnableZoomd (BOOL enable)
 开启(或禁用)视野缩放
 
UINT HitScrollThumbStates (POINT pt, VecFloat2 vAxis) const
 
BOOL OnChangePageRange (double k, double kMin, UINT hit)
 
void MovePageToEnd ()
 
void MovePageToStart ()
 
void StorageTrackPage ()
 
BOOL DoMoveViewByPoint (IEventHandler *callHandler, int cx, int cy, UINT hit)
 
void OnPaintUserLine (ISurface *pSurface, RECT *rcClip, POINT pt, LineStyle *style, const GColor &crosslinecolor, LinearAxis *otherAxis)
 
void OnPaintAxisGridLine (ISurface *pSurface, RECT *rcClip, LinearAxis *otherAxis, const VecFloat2 &dv=VecFloat2(0, 0))
 
void OnPaintAxisGridFill (ISurface *pSurface, RECT *rcClip, LinearAxis *otherAxis)
 
void OnPaintAxisCustomFill (ISurface *pSurface, RECT *rcClip, double v1, double v2, GColor bruColor, LinearAxis *otherAxis)
 
void OnPaintAxisDataLabel (ISurface *pSurface, double v, LPCTSTR text, int len, const GColor &color, const GColor &color_text_bg)
 
void OnPaintUserMajorTickLine (ISurface *pSurface, RECT *rcClip, double v)
 
void OnPaintAxisLastBorderLine (ISurface *pSurface, RECT *rcClip, LinearAxis *otherAxis)
 
void DrawPaintGridLineByVector (ISurface *pSurface, RECT *rcClip, VecFloat2 vt1, VecFloat2 vt2)
 根据指定向量绘制网格线
 
void ShellCoordinateAttribute (const BeString &szName, const BeString &szText, ICoordList *crdlist) override
 命令控制和属性设置接口
 
void OnTranslateLanguage () override
 翻译处理函数
 
void DrawCursor (ISurface *pSurface, const VecFloat2 &pt1, const GColor &color, int size)
 
BOOL IsInViewport (double v) const
 
RECT GetLabelTextRect (ISurface *pSurface, const VecFloat2 &p0, const VecFloat2 &vi, const VecFloat2 &dn, SIZE szTxt)
 
void DrawNormalVectorTextAngle (ISurface *pSurface, const VecFloat2 &p0, const VecFloat2 &vi, const VecFloat2 &dn, LPCTSTR text, int len, double text_angle, const GColor &color, const GColor *bkcolor=NULL, const VecFloat2 &bkPadSize=VecFloat2(2, 2))
 
void DrawNormalVectorLine (ISurface *pSurface, const VecFloat2 &p0, const VecFloat2 &vi, const VecFloat2 &dn1, const VecFloat2 &dn2, const GColor &color, int size=1, LineStyle *style=NULL)
 
VecFloat2 GetAxisVectorNormal () const
 
void Swap () override
 若满足笛卡尔坐标系,可以将X和Y翻转
 
LPCTSTR GetAxisClassName () override
 获得坐标轴类名
 
double GetCoordinateWeight (double d) override
 获得权重
 
void OnCalcAxisPosition (RECT rcDiagram) override
 坐标轴位置时响应事件
 
void OnPaintChart (ISurface *pSurface, RECT *rcClip) override
 
BOOL OnNotifyMessage (IEventHandler *notify, UINT message, WPARAM wp, LPARAM lp) override
 消息处理函数
 
void GetCoordinateValue (int mouse_x, int mouse_y, double *outValus, int out_len) override
 获得鼠标处,表示的坐标值
 
double GetAxisNewTimePos (int axis_index) override
 获得当前最新时间的数据坐标轴位置
 
void GetDataRange (int axis_index, double &fmin, double &fmax) override
 获得坐标轴(axis_index)的数据范围
 
double GetShowFactor (int axis_index) override
 获得坐标轴(axis_index). 屏幕起点到终点的距离(D),和数值范围(V)的比值。即V/D。
 
void Transform (double *x, double *y) override
 得到(x,y)转换后的值。转换后依然存入x和y变量中。
 
void Transform2x2 (double *x, double *y) override
 得到(x,y)转换(忽略平移值)后的值。通常用于计算宽度和高度的变化。转换后依然存入x和y变量中。
 
BOOL IsInPath (double x, double y) override
 是否在坐标系内
 
void OnSummitTarget (FourCode four_code, LPCTSTR data) override
 对象之间传递数据的提交操作
 
- Public 成员函数 继承自 BUI::CChartAxis
 CChartAxis ()
 
virtual ~CChartAxis ()
 
void SetScientificLabel (BOOL is_scientific)
 设置为科学计数法
 
void SetEditUI (CEditTextUI *editui)
 设置编辑UI
 
CEditTextUIGetEditUI () const
 获得编辑UI
 
void SetAxisColor (const GColor &c)
 
void SetGridStyle (BOOL bFill, BOOL bLine)
 
BOOL IsShowGridFill () const
 是否填充背景
 
BOOL IsShowGridLine () const
 是否显示网格线
 
void SetGridLineType (PenType type)
 设置网格线风格
 
void SetFont (GFont *font)
 设置字体
 
void SetLabelPrefix (BeString str)
 设置前缀文本
 
void SetLabelSuffix (BeString str)
 设置后缀文本
 
void SetDecimalPrecision (int preci)
 设置小数点精度
 
void SetLabelOffsetRelativeToMajortick (double weight)
 设置文本标签与刻度线之间的距离
 
void SetTranformAxisLabelFunc (LPTranformText fn)
 在显示轴上的文本时,完全由回调函数显示。轴文本自定义转换函数
 
void SetTranformAxisLabelValueFunc (LPTranformValue fn)
 在显示轴上的文本时,仅对数值进行转换
 
void GetAxisLabelTickText (BasicStringBuffer &buf, double va) const
 获得va刻度,应该显示的文本
 
virtual LPCTSTR GetAxisClassName ()
 获得坐标轴类名
 
virtual void Swap ()
 若满足笛卡尔坐标系,可以将X和Y翻转
 
void OnTranslateLanguage () override
 翻译处理函数
 
void ChangeThemeColors () override
 主题改变时触发
 
BOOL OnNotifyMessage (IEventHandler *notify, UINT message, WPARAM wp, LPARAM lp) override
 消息处理函数
 
void ShellCoordinateAttribute (const BeString &szName, const BeString &szText, ICoordList *crdlist) override
 命令控制和属性设置接口
 
- Public 成员函数 继承自 BUI::CChartCoordinate
 CChartCoordinate ()
 
virtual ~CChartCoordinate ()
 
void SetAxisNameText (const BeString &str)
 设置轴名称
 
const BeStringGetAxisName ()
 获取轴名称
 
POINT CoordinateCenterPoint () const
 获取坐标系中的中心点
 
void SetCoordinateCenterPoint (LONG x, LONG y)
 设置坐标系中的中心点
 
VecFloat2 GetPointFromPercent (double xp, double yp) const
 返回百分比坐标
 
void ModifyCoordinateFlags (UINT style, UINT op=ADD_FLAGS)
 
UINT IsHasCoordinateFlags (UINT flags) const
 
void SetAxisColorMapGradient (GBrushGradient *color_map)
 设置渐变画刷
 
GBrushGradientGetAxisColorMapGradient () const
 获取渐变画刷
 
void SetCoordHitState (BOOL hit)
 设置坐标系下,是否存在命中的元素
 
BOOL GetCoordHitState () const
 返回在坐标系下,是否存在命中的元素
 
BOOL IsEnable () const
 获取可用性
 
void SetEnable (BOOL enable)
 设置可用性
 
virtual BOOL IsVaild ()
 坐标系统是否是有效的
 
virtual VecFloat2 GetCurHitPos ()
 获得当前鼠标位置,转换为图标坐标系后的点
 
virtual RECT RectDiagram ()
 坐标系矩形区域
 
virtual void ChangeThemeColors ()
 主题改变时触发
 
virtual void GetCoordinateValue (int mouse_x, int mouse_y, double *outValus, int out_len)
 获得鼠标处,表示的坐标值
 
virtual void OnCalcAxisPosition (RECT rcDiagram)
 坐标轴位置时响应事件
 
virtual void OnSetWindowRect (RECT rcWindow)
 window窗口位置更新
 
virtual void OnTranslateLanguage ()
 翻译处理函数
 
virtual void OnPaintChartBackground (ISurface *pSurface, RECT *rcClip)
 
virtual void OnPaintChart (ISurface *pSurface, RECT *rcClip)
 
virtual void OnPaintChartCrossLine (ISurface *pSurface, RECT *rcClip, double v1, double v2, LineStyle *style, const GColor &crosslinecolor)
 
virtual BOOL OnNotifyMessage (IEventHandler *notify, UINT message, WPARAM wp, LPARAM lp)
 消息处理函数
 
virtual VecFloat2 ViewIntSizeByValueTrans (double cx, double cy, AxisValueTransModel mx, AxisValueTransModel my)
 
virtual VecFloat2 ViewIntPointByValueTrans (double x, double y, AxisValueTransModel mx, AxisValueTransModel my)
 
virtual BOOL IsViewportAreaByValueTrans (double x, double y, AxisValueTransModel mx, AxisValueTransModel my)
 
virtual double GetAxisNewTimePos (int axis_index)
 获得当前最新时间的数据坐标轴位置
 
virtual void GetDataRange (int axis_index, double &fmin, double &fmax)
 获得坐标轴(axis_index)的数据范围
 
virtual double GetShowFactor (int axis_index)
 获得坐标轴(axis_index). 屏幕起点到终点的距离(D),和数值范围(V)的比值。即V/D。
 
virtual void ShellCoordinateAttribute (const BeString &szName, const BeString &szText, ICoordList *crdlist)
 命令控制和属性设置接口
 
double GetCoordinateWeight (double value) override
 获得权重
 
- Public 成员函数 继承自 BUI::PathTransform
 PathTransform ()
 
virtual ~PathTransform ()
 
virtual void Transform (double *x, double *y)
 得到(x,y)转换后的值。转换后依然存入x和y变量中。
 
virtual void TransformFloat (float *x, float *y)
 
virtual void TransformLong (LONG *x, LONG *y)
 
virtual void Transform2x2 (double *x, double *y)
 得到(x,y)转换(忽略平移值)后的值。通常用于计算宽度和高度的变化。转换后依然存入x和y变量中。
 
virtual BOOL IsInPath (double x, double y)
 是否在坐标系内
 
virtual double GetCoordinateWeight (double value)
 获得权重
 
virtual BOOL IsCartesianSystem ()
 是否是笛卡尔坐标系
 
- Public 成员函数 继承自 BUI::VisibleProperty
 VisibleProperty ()
 
 ~VisibleProperty ()
 
BOOL IsVisable () const
 
void SetVisable (BOOL bShow)
 
- Public 成员函数 继承自 BUI::ICommitTarget
 ICommitTarget ()
 
virtual ~ICommitTarget ()
 
virtual void OnSummitTarget (FourCode four_code, LPCTSTR data)
 对象之间传递数据的提交操作
 

Public 属性

POINT m_pt_start
 
POINT m_pt_end
 
double m_data_min
 
double m_data_max
 
double m_show_min
 
double m_show_max
 
VecFloat2 m_sel_range
 
VecFloat2 m_sel_track
 
double m_mult_k
 
double m_t
 
double m_minor_real
 
double m_precision
 
int m_minor
 
int m_major
 
int m_minor_tick_size
 
int m_major_tick_size
 
int m_minor_tick_pen_size
 
int m_major_tick_pen_size
 
TickMarkPositon m_major_mark_style
 
int m_tick_label_spacing
 
float m_text_angle
 
int m_min_page_unit
 
int m_min_page_screen_size
 
UINT m_la_hit
 
POINT m_pt_trace
 
VecFloat2 m_pt_thumb [4]
 
VecFloat2 m_pt_zoom_start
 
VecFloat2 m_pt_zoom_end
 
BOOL m_is_zoom_enable
 
BeString m_text_axis
 
double m_scope_increment_step
 
double m_head_size
 
double m_db_cur_hit_pos
 
VecFloat2 m_v_head
 
BOOL m_is_vertical
 
LinearAxism_perpendecular_axis
 
AxisLayoutType m_layout_type
 
double m_cross_other_axis_value
 
int m_nor_offset
 
int m_scroll_size
 
BOOL m_is_show_gridline
 
BOOL m_is_show_grid_bk
 
VecFloat2 m_v_scroll
 
VecFloat2 m_vn_tick
 
- Public 属性 继承自 BUI::CChartAxis
BOOL m_is_fill_grid
 
BOOL m_is_stroke_grid_line
 
BOOL m_is_recalac_data
 
BeString m_text_prefix
 
BeString m_text_suffix
 
int m_decimal_precision
 
BOOL m_is_show_scientific
 
BOOL m_is_align_text_sign
 
BOOL m_is_remove_last_zero
 
double m_offset_label
 
GFontm_font
 
GBrushArray m_bru_stroke_axis
 
GBrushArray m_bru_stroke_minor
 
GBrushArray m_bru_stroke_major
 
GBrushArray m_bru_text
 
GBrushArray m_bru_text_bg
 
GBrushArray m_bru_stroke_grid
 
GBrushArray m_bru_stroke_cross
 
GBrushArray m_bru_fill_axis
 
GBrushArray m_bru_fill_interval
 
GBrushArray m_bru_fill_scroll
 
PenType m_gridline_style
 
LPTranformText m_proc_conver_text
 
LPTranformValue m_proc_conver_text_value
 
VecFloat2 m_edit_left [4]
 
VecFloat2 m_edit_right [4]
 
CEditTextUIm_edit_ui
 
int m_show_edit_mode
 

额外继承的成员函数

- Protected 成员函数 继承自 BUI::CChartAxis
void ChangeCChartAxisTheme ()
 
- Protected 成员函数 继承自 BUI::CChartCoordinate
void DrawBarStyle (ISurface *pSurface, DrawBarInfo *barinfo)
 
BOOL HittestBar (DrawBarInfo *barinfo)
 
BOOL IsVisibleView (DrawBarInfo *barinfo)
 
void DoChangeThemeColors (const BeString &name)
 
- Protected 属性 继承自 BUI::CChartCoordinate
BeString m_name_id
 
RECT m_rect_diagram
 
POINT m_point_centerView
 
VecFloat2 m_point_cur_hit
 
WeightValueTransModel m_weight_mode
 
UINT m_coord_flags
 
BOOL m_is_hit_ele
 
GBrushGradientm_color_map
 
double m_time_axis_value
 
BOOL m_is_enable
 
- Protected 属性 继承自 BUI::VisibleProperty
BOOL m_is_visbale
 

详细描述

线性坐标轴 +-----------—+=================+------------—+ m_data_min m_selMin m_selMax m_data_max

构造及析构函数说明

◆ LinearAxis()

BUI::LinearAxis::LinearAxis ( )

◆ ~LinearAxis()

BUI::LinearAxis::~LinearAxis ( )

成员函数说明

◆ DirectionVector()

VecFloat2 BUI::LinearAxis::DirectionVector ( BOOL  bUnitization = TRUE,
BOOL  remove_head = FALSE 
) const

轴方向的实际距离向量

◆ DoMoveViewByPoint()

BOOL BUI::LinearAxis::DoMoveViewByPoint ( IEventHandler callHandler,
int  cx,
int  cy,
UINT  hit 
)

◆ DrawCursor()

void BUI::LinearAxis::DrawCursor ( ISurface pSurface,
const VecFloat2 pt1,
const GColor color,
int  size 
)

◆ DrawNormalVectorLine()

void BUI::LinearAxis::DrawNormalVectorLine ( ISurface pSurface,
const VecFloat2 p0,
const VecFloat2 vi,
const VecFloat2 dn1,
const VecFloat2 dn2,
const GColor color,
int  size = 1,
LineStyle style = NULL 
)

◆ DrawNormalVectorTextAngle()

void BUI::LinearAxis::DrawNormalVectorTextAngle ( ISurface pSurface,
const VecFloat2 p0,
const VecFloat2 vi,
const VecFloat2 dn,
LPCTSTR  text,
int  len,
double  text_angle,
const GColor color,
const GColor bkcolor = NULL,
const VecFloat2 bkPadSize = VecFloat2(2, 2) 
)

◆ DrawPaintGridLineByVector()

void BUI::LinearAxis::DrawPaintGridLineByVector ( ISurface pSurface,
RECT rcClip,
VecFloat2  vt1,
VecFloat2  vt2 
)

根据指定向量绘制网格线

参数
pSurface
rcClip裁剪区域
vt1起点向量
vt2终点向量

◆ EnableZoomd()

void BUI::LinearAxis::EnableZoomd ( BOOL  enable)

开启(或禁用)视野缩放

◆ GetAxisClassName()

LPCTSTR BUI::LinearAxis::GetAxisClassName ( )
overridevirtual

获得坐标轴类名

重载 BUI::CChartAxis .

◆ GetAxisHeadOffset()

double BUI::LinearAxis::GetAxisHeadOffset ( )

获取第一个刻度与边沿的距离

◆ GetAxisNewTimePos()

double BUI::LinearAxis::GetAxisNewTimePos ( int  axis_index)
overridevirtual

获得当前最新时间的数据坐标轴位置

参数
axis_index轴序号

重载 BUI::CChartCoordinate .

◆ GetAxisStartToEndPoint()

void BUI::LinearAxis::GetAxisStartToEndPoint ( POINT ptStart,
POINT ptEnd,
BOOL  has_head = FALSE 
) const

获得坐标轴位置起点和终点。基于控件坐标系

◆ GetAxisVectorNormal()

VecFloat2 BUI::LinearAxis::GetAxisVectorNormal ( ) const

◆ GetCoordinateValue()

void BUI::LinearAxis::GetCoordinateValue ( int  mouse_x,
int  mouse_y,
double *  outValus,
int  out_len 
)
overridevirtual

获得鼠标处,表示的坐标值

重载 BUI::CChartCoordinate .

◆ GetCoordinateWeight()

double BUI::LinearAxis::GetCoordinateWeight ( double  value)
overridevirtual

获得权重

重载 BUI::CChartCoordinate .

◆ GetCurHitPos()

double BUI::LinearAxis::GetCurHitPos ( ) const

返回当前鼠标对应的轴位置

◆ GetDataRange()

void BUI::LinearAxis::GetDataRange ( int  axis_index,
double &  fmin,
double &  fmax 
)
overridevirtual

获得坐标轴(axis_index)的数据范围

参数
axis_index
fmin
fmax

重载 BUI::CChartCoordinate .

◆ GetLabelTextRect()

RECT BUI::LinearAxis::GetLabelTextRect ( ISurface pSurface,
const VecFloat2 p0,
const VecFloat2 vi,
const VecFloat2 dn,
SIZE  szTxt 
)

◆ GetPrecisionUnit()

double BUI::LinearAxis::GetPrecisionUnit ( BOOL  sign = TRUE) const

获得轴刻度精度

◆ GetProjectionOnTheNormalVector()

double BUI::LinearAxis::GetProjectionOnTheNormalVector ( LinearAxis otherAxis,
POINT  pt 
)

获得任意点,在otherAxis法向量上的投影

◆ GetShowFactor()

double BUI::LinearAxis::GetShowFactor ( int  axis_index)
overridevirtual

获得坐标轴(axis_index). 屏幕起点到终点的距离(D),和数值范围(V)的比值。即V/D。

参数
axis_index
fmin
fmax

重载 BUI::CChartCoordinate .

◆ GetValueInPercent()

double BUI::LinearAxis::GetValueInPercent ( double  v) const

获得轴上对应值的百分比

◆ HitScrollThumbStates()

UINT BUI::LinearAxis::HitScrollThumbStates ( POINT  pt,
VecFloat2  vAxis 
) const

◆ IsInPath()

BOOL BUI::LinearAxis::IsInPath ( double  x,
double  y 
)
overridevirtual

是否在坐标系内

重载 BUI::PathTransform .

◆ IsInViewport()

BOOL BUI::LinearAxis::IsInViewport ( double  v) const

◆ IsScrollVaild()

BOOL BUI::LinearAxis::IsScrollVaild ( ) const

滚动条是否有效

◆ IsShowGridBk()

BOOL BUI::LinearAxis::IsShowGridBk ( ) const

判断间隔背景是否显示

◆ IsShowGridLine()

BOOL BUI::LinearAxis::IsShowGridLine ( ) const

判断网格线是否显示

◆ IsViewportArea()

BOOL BUI::LinearAxis::IsViewportArea ( double  v) const

是否在视窗可见范围内,TRUE表示可见

◆ MajorStep()

double BUI::LinearAxis::MajorStep ( ) const

大刻度步长

◆ MajorUnit()

double BUI::LinearAxis::MajorUnit ( )

大刻度最小单位

◆ MinorStep()

double BUI::LinearAxis::MinorStep ( ) const

小刻度步长

◆ MinorUnit()

double BUI::LinearAxis::MinorUnit ( )

小刻度最小单位

◆ MovePageToEnd()

void BUI::LinearAxis::MovePageToEnd ( )

◆ MovePageToStart()

void BUI::LinearAxis::MovePageToStart ( )

◆ NotifyZoomRange()

BOOL BUI::LinearAxis::NotifyZoomRange ( double  v)

◆ OnCalcAxisPosition()

void BUI::LinearAxis::OnCalcAxisPosition ( RECT  rcDiagram)
overridevirtual

坐标轴位置时响应事件

重载 BUI::CChartCoordinate .

◆ OnChangePageRange()

BOOL BUI::LinearAxis::OnChangePageRange ( double  k,
double  kMin,
UINT  hit 
)

◆ OnNotifyMessage()

BOOL BUI::LinearAxis::OnNotifyMessage ( IEventHandler notify,
UINT  message,
WPARAM  wp,
LPARAM  lp 
)
overridevirtual

消息处理函数

参数
notify指向图标UI控件,用于外部事件回调

重载 BUI::CChartAxis .

◆ OnPaintAxisCustomFill()

void BUI::LinearAxis::OnPaintAxisCustomFill ( ISurface pSurface,
RECT rcClip,
double  v1,
double  v2,
GColor  bruColor,
LinearAxis otherAxis 
)

◆ OnPaintAxisDataLabel()

void BUI::LinearAxis::OnPaintAxisDataLabel ( ISurface pSurface,
double  v,
LPCTSTR  text,
int  len,
const GColor color,
const GColor color_text_bg 
)

◆ OnPaintAxisGridFill()

void BUI::LinearAxis::OnPaintAxisGridFill ( ISurface pSurface,
RECT rcClip,
LinearAxis otherAxis 
)

◆ OnPaintAxisGridLine()

void BUI::LinearAxis::OnPaintAxisGridLine ( ISurface pSurface,
RECT rcClip,
LinearAxis otherAxis,
const VecFloat2 dv = VecFloat2(0, 0) 
)

◆ OnPaintAxisLastBorderLine()

void BUI::LinearAxis::OnPaintAxisLastBorderLine ( ISurface pSurface,
RECT rcClip,
LinearAxis otherAxis 
)

◆ OnPaintChart()

void BUI::LinearAxis::OnPaintChart ( ISurface pSurface,
RECT rcClip 
)
overridevirtual

◆ OnPaintUserLine()

void BUI::LinearAxis::OnPaintUserLine ( ISurface pSurface,
RECT rcClip,
POINT  pt,
LineStyle style,
const GColor crosslinecolor,
LinearAxis otherAxis 
)

◆ OnPaintUserMajorTickLine()

void BUI::LinearAxis::OnPaintUserMajorTickLine ( ISurface pSurface,
RECT rcClip,
double  v 
)

◆ OnSummitTarget()

void BUI::LinearAxis::OnSummitTarget ( FourCode  four_code,
LPCTSTR  data 
)
overridevirtual

对象之间传递数据的提交操作

参数
four_code由四个字符组合而成的类型符号
data额外字符串数据。可以是纯字符串,可以是json文本,可以是任意格式的数据流

重载 BUI::ICommitTarget .

◆ OnTranslateLanguage()

void BUI::LinearAxis::OnTranslateLanguage ( )
overridevirtual

翻译处理函数

重载 BUI::CChartAxis .

◆ ScreenPointToValue()

double BUI::LinearAxis::ScreenPointToValue ( double  x,
double  y 
) const

根据屏幕像素点,求出轴刻度值。使用向量投影方法

◆ SetAxisHeadOffset()

void BUI::LinearAxis::SetAxisHeadOffset ( int  offset)

设置第一个刻度与边沿的距离

◆ SetAxisPosition() [1/2]

void BUI::LinearAxis::SetAxisPosition ( int  x1,
int  y1,
int  x2,
int  y2 
)

设置轴起点和终点。基于控件坐标系

◆ SetAxisPosition() [2/2]

void BUI::LinearAxis::SetAxisPosition ( POINT  ptstart,
POINT  ptOffset 
)

设置轴起点和终点。基于控件坐标系

◆ SetAxisPosNorOffset()

void BUI::LinearAxis::SetAxisPosNorOffset ( int  offset)

◆ SetAxisText()

void BUI::LinearAxis::SetAxisText ( const BeString str)

设置轴显示文本

◆ SetDataRange()

void BUI::LinearAxis::SetDataRange ( double  start,
double  end,
BOOL  keep_same_show = FALSE 
)

设置轴起点和终点对应的刻度

◆ SetLabelAngle()

void BUI::LinearAxis::SetLabelAngle ( double  rad)

设置文本相对于法向量的偏移角度

◆ SetLabelVector()

void BUI::LinearAxis::SetLabelVector ( const VecFloat2 vt)

设置刻度线方向向量,该向量基于控件坐标系

◆ SetLayoutType()

void BUI::LinearAxis::SetLayoutType ( AxisLayoutType  type,
double  value 
)

设置坐标轴显示位置

◆ SetPerpendecularAxis()

void BUI::LinearAxis::SetPerpendecularAxis ( LinearAxis axis)

设置关联的坐标轴

◆ SetPrecisionUnit()

void BUI::LinearAxis::SetPrecisionUnit ( double  steps)

设置轴最小精度

◆ SetScrollSize()

void BUI::LinearAxis::SetScrollSize ( int  size)

◆ SetSelectRange()

void BUI::LinearAxis::SetSelectRange ( double  fmin,
double  fmax 
)

设置轴显示范围。范围由百分比显示

◆ SetTickLabelSpacing()

void BUI::LinearAxis::SetTickLabelSpacing ( int  distance)

刻度线文本间隔

◆ SetTickMarkCount()

void BUI::LinearAxis::SetTickMarkCount ( TickMarkID  id,
int  c 
)

◆ SetTickMarkInfo()

void BUI::LinearAxis::SetTickMarkInfo ( TickMarkID  id,
int  c,
int  tickSize,
TickMarkPositon  style = TickOnOutside 
)

◆ SetTickMarkLineSize()

void BUI::LinearAxis::SetTickMarkLineSize ( TickMarkID  id,
int  tickSize = 4 
)

◆ SetTickMarkStyle()

void BUI::LinearAxis::SetTickMarkStyle ( TickMarkID  id,
TickMarkPositon  style = TickOnOutside 
)

◆ SetVertical()

void BUI::LinearAxis::SetVertical ( BOOL  bV)

标记是否为垂直坐标轴

◆ ShellCoordinateAttribute()

void BUI::LinearAxis::ShellCoordinateAttribute ( const BeString szName,
const BeString szText,
ICoordList crdlist 
)
overridevirtual

命令控制和属性设置接口

szName属性 szText语法格式
text
轴文本
text="xxx"
range
轴范围
range="1,1000"
range-show
显示范围
range-show="5,10"
unit
最小刻度值.(等于一个minor大小)
unit="1"
text-offset
文本偏移量
text-offset="5,10"
major-style
minor-style
刻度风格
major-style="step:5;length:10;type:inside"
step : 每step个单位长度画一个刻度
length : 刻度线,线长度
type : inside 朝里,outside 朝外,cross 交叉
sapce-label
没间隔sapce-label个单位长度,显示刻度文本
sapce-label="5"
text-angle
文本旋转角度
text-angle="90"
Vertical
是否是纵向坐标
true / false
Normal-Offset
轴位置基于法线方向偏移量
Normal-Offset="10"
show-gridline
显示网格线
true / false
show-gridbk
显示网格背景
true / false
scroll-size
滚动条尺寸
scroll-size="10"
head-size
刻度起点头尺寸
head-size="10"
view-port
轴位置在当前位置上的百分比缩放
view-port="0,1"
axis-layout-value
轴布局方式
axis-layout-value="min" 或 axis-layout-value="max" , axis-layout-value="50"
scope-increment
视野自增步长,即超出可视范围自动增加
scope-increment="60"

重载 BUI::CChartAxis .

◆ ShowGridBk()

void BUI::LinearAxis::ShowGridBk ( BOOL  bVisable)

显示(或隐藏)背景

◆ ShowGridLine()

void BUI::LinearAxis::ShowGridLine ( BOOL  bVisable)

显示(或隐藏)网格线

◆ StorageTrackPage()

void BUI::LinearAxis::StorageTrackPage ( )

◆ Swap()

void BUI::LinearAxis::Swap ( )
overridevirtual

若满足笛卡尔坐标系,可以将X和Y翻转

重载 BUI::CChartAxis .

◆ Transform()

void BUI::LinearAxis::Transform ( double *  x,
double *  y 
)
overridevirtual

得到(x,y)转换后的值。转换后依然存入x和y变量中。

参数
x: x值
y: y值

重载 BUI::PathTransform .

◆ Transform2x2()

void BUI::LinearAxis::Transform2x2 ( double *  x,
double *  y 
)
overridevirtual

得到(x,y)转换(忽略平移值)后的值。通常用于计算宽度和高度的变化。转换后依然存入x和y变量中。

参数
x
y

重载 BUI::PathTransform .

◆ ValueVector()

VecFloat2 BUI::LinearAxis::ValueVector ( double  v) const

获得刻度值v,对应的像素向量

◆ ViewPoint()

VecFloat2 BUI::LinearAxis::ViewPoint ( double  v) const

获得刻度v,所在的像素坐标

◆ ViewPointRound()

POINT BUI::LinearAxis::ViewPointRound ( double  v) const

获得刻度v,所在的像素坐标。并对坐标进行取整

◆ ViewSketchPoint()

VecFloat2 BUI::LinearAxis::ViewSketchPoint ( double  v,
double  t3v 
) const

轴上缩略图,坐标点获取算法。t3v代表法向量方向的百分比。值域=[0,1]

◆ ViewSketchSize()

VecFloat2 BUI::LinearAxis::ViewSketchSize ( double  v,
double  t3v 
) const

轴上缩略图,坐标尺寸获取算法。t3v代表法向量方向的百分比。值域=[0,1]

◆ WeightVector()

VecFloat2 BUI::LinearAxis::WeightVector ( double  w) const

获得权重w,对应的像素尺寸

类成员变量说明

◆ m_cross_other_axis_value

double BUI::LinearAxis::m_cross_other_axis_value

◆ m_data_max

double BUI::LinearAxis::m_data_max

◆ m_data_min

double BUI::LinearAxis::m_data_min

◆ m_db_cur_hit_pos

double BUI::LinearAxis::m_db_cur_hit_pos

◆ m_head_size

double BUI::LinearAxis::m_head_size

◆ m_is_show_grid_bk

BOOL BUI::LinearAxis::m_is_show_grid_bk

◆ m_is_show_gridline

BOOL BUI::LinearAxis::m_is_show_gridline

◆ m_is_vertical

BOOL BUI::LinearAxis::m_is_vertical

◆ m_is_zoom_enable

BOOL BUI::LinearAxis::m_is_zoom_enable

◆ m_la_hit

UINT BUI::LinearAxis::m_la_hit

◆ m_layout_type

AxisLayoutType BUI::LinearAxis::m_layout_type

◆ m_major

int BUI::LinearAxis::m_major

◆ m_major_mark_style

TickMarkPositon BUI::LinearAxis::m_major_mark_style

◆ m_major_tick_pen_size

int BUI::LinearAxis::m_major_tick_pen_size

◆ m_major_tick_size

int BUI::LinearAxis::m_major_tick_size

◆ m_min_page_screen_size

int BUI::LinearAxis::m_min_page_screen_size

◆ m_min_page_unit

int BUI::LinearAxis::m_min_page_unit

◆ m_minor

int BUI::LinearAxis::m_minor

◆ m_minor_real

double BUI::LinearAxis::m_minor_real

◆ m_minor_tick_pen_size

int BUI::LinearAxis::m_minor_tick_pen_size

◆ m_minor_tick_size

int BUI::LinearAxis::m_minor_tick_size

◆ m_mult_k

double BUI::LinearAxis::m_mult_k

◆ m_nor_offset

int BUI::LinearAxis::m_nor_offset

◆ m_perpendecular_axis

LinearAxis* BUI::LinearAxis::m_perpendecular_axis

◆ m_precision

double BUI::LinearAxis::m_precision

◆ m_pt_end

POINT BUI::LinearAxis::m_pt_end

◆ m_pt_start

POINT BUI::LinearAxis::m_pt_start

◆ m_pt_thumb

VecFloat2 BUI::LinearAxis::m_pt_thumb[4]

◆ m_pt_trace

POINT BUI::LinearAxis::m_pt_trace

◆ m_pt_zoom_end

VecFloat2 BUI::LinearAxis::m_pt_zoom_end

◆ m_pt_zoom_start

VecFloat2 BUI::LinearAxis::m_pt_zoom_start

◆ m_scope_increment_step

double BUI::LinearAxis::m_scope_increment_step

◆ m_scroll_size

int BUI::LinearAxis::m_scroll_size

◆ m_sel_range

VecFloat2 BUI::LinearAxis::m_sel_range

◆ m_sel_track

VecFloat2 BUI::LinearAxis::m_sel_track

◆ m_show_max

double BUI::LinearAxis::m_show_max

◆ m_show_min

double BUI::LinearAxis::m_show_min

◆ m_t

double BUI::LinearAxis::m_t

◆ m_text_angle

float BUI::LinearAxis::m_text_angle

◆ m_text_axis

BeString BUI::LinearAxis::m_text_axis

◆ m_tick_label_spacing

int BUI::LinearAxis::m_tick_label_spacing

◆ m_v_head

VecFloat2 BUI::LinearAxis::m_v_head

◆ m_v_scroll

VecFloat2 BUI::LinearAxis::m_v_scroll

◆ m_vn_tick

VecFloat2 BUI::LinearAxis::m_vn_tick
鄂公网安备42018502007752 鄂ICP备2024082886
Copyright © 2025 · CBlueStudio 版权所有