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

圆坐标系。(x,y)=(角度:-180~180,半径的百分比(0~100)) 更多...

类 BUI::CircleAxis 继承关系图:

Public 成员函数

 CircleAxis ()
 ~CircleAxis ()
void SetRadianRange (double start, double offset)
 设置弧度范围
void SetRadianStart (double start)
void SetAxisRange (double f_min, double f_max)
void SetRadianRangeByAngle (int angle_start, int angle_offset)
 通过角度设置弧度范围
void SetCenter (double cx, double cy)
 设置坐标中心点。百分比坐标值
void SetRadius (double r)
 设置径向逻辑坐标范围
double GetRadius () const
 获得径向逻辑坐标范围
void SetCenterCircleRadius (int r)
 设置坐标半径。基于控件坐标系
void ShowCenterCircle (BOOL show)
 显示(或隐藏)圆环
void SetPrecision (double precision)
 设置小数点精度
LineStyleGetLineStyle ()
 获得线条风格
void SetTickMarkCount (TickMarkID id, int c)
void SetTickMarkLineSize (TickMarkID id, int tick_size=4)
void SetTickMarkStyle (TickMarkID id, TickMarkPositon style=TickOnOutside)
void SetTickMarkInfo (TickMarkID id, int c, int tick_size, TickMarkPositon style=TickOnOutside)
void ShellCoordinateAttribute (const BeString &str_name, const BeString &str_value, ICoordList *coord_list) override
 命令控制和属性设置接口
void GetCoordRelationship (std::vector< BeString > &list) override
 获得类的继承关系
void GetCoordinateValue (int mouse_x, int mouse_y, double *out_values, int out_len) override
 获得鼠标处,表示的坐标值
LPCTSTR GetAxisClassName () override
 获得坐标轴类名
double GetCoordinateWeight (double d) override
 获得权重
void OnCalcAxisPosition (RECT rc_diagram) override
 坐标轴位置时响应事件
void OnPaintChartBackground (ISurface *surface, RECT *rc_clip) override
void OnPaintChart (ISurface *surface, RECT *rc_clip) override
BOOL OnNotifyMessage (IEventHandler *notify, UINT message, WPARAM wp, LPARAM lp) override
 消息处理函数
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
 是否在坐标系内
BOOL IsCartesianSystem () override
 是否是笛卡尔坐标系
Public 成员函数 继承自 BUI::CChartAxis
 CChartAxis ()
virtual ~CChartAxis ()
void SetScientificLabel (BOOL is_scientific)
 设置为科学计数法
void SetEditUI (CEditTextUI *edit_ui)
 设置编辑UI
CEditTextUIGetEditUI () const
 获得编辑UI
void SetAxisColor (const GColor &c)
void SetGridStyle (BOOL is_fill, BOOL is_line)
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 precision)
 设置小数点精度
void SetLabelOffsetRelativeToMajortick (double weight)
 设置文本标签与刻度线之间的距离
void SetTranformAxisLabelFunc (LPTranformText fn)
 在显示轴上的文本时,完全由回调函数显示。轴文本自定义转换函数
void SetTranformAxisLabelValueFunc (LPTranformValue fn)
 在显示轴上的文本时,仅对数值进行转换
void GetAxisLabelTickText (BasicStringBuffer &buf, double va) const
 获得va刻度,应该显示的文本
virtual void Swap ()
 若满足笛卡尔坐标系,可以将X和Y翻转
void OnTranslateLanguage () 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)
 设置可用性
BOOL IsVisable () const
 获取可见性
void SetVisable (BOOL show)
 设置可见性
virtual BOOL IsVaild ()
 坐标系统是否是有效的
virtual VecFloat2 GetCurHitPos ()
 获得当前鼠标位置,转换为图标坐标系后的点
virtual RECT RectDiagram ()
 坐标系矩形区域
virtual void ChangeCoordThemeColors ()
 主题改变时触发
virtual void OnSetWindowRect (RECT rc_window)
 window窗口位置更新
virtual void OnPaintChartCrossLine (ISurface *surface, RECT *rc_clip, double v1, double v2, LineStyle *style, const GColor &color_cross_line)
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。
Public 成员函数 继承自 BUI::PathTransform
 PathTransform ()
virtual ~PathTransform ()
virtual void TransformFloat (float *x, float *y)
virtual void TransformLong (LONG *x, LONG *y)
Public 成员函数 继承自 BUI::VisibleProperty
 VisibleProperty ()
 ~VisibleProperty ()
BOOL IsVisable () const
void SetVisable (BOOL is_show)

Protected 属性

PathTransformm_trans
POINT m_point_center
double m_xpos
double m_ypos
double m_radius
int m_radius_rel
double m_angle_begin
double m_angle_offset
double m_start_x
double m_vector_x
double m_mult_k
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_minor_mark_style
TickMarkPositon m_major_mark_style
int m_tick_label_spacing
int m_tick_spacing
LineStyle m_line_style
int m_arc_size
BOOL m_is_draw_center
int m_center_radius
Protected 属性 继承自 BUI::CChartCoordinate
BeString m_name_id
RECT m_rect_diagram
POINT m_view_center_pt
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
BOOL m_is_visable
Protected 属性 继承自 BUI::VisibleProperty
BOOL m_is_visbale

额外继承的成员函数

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 *surface, DrawBarInfo *barinfo)
BOOL HittestBar (DrawBarInfo *barinfo)
BOOL IsVisibleView (DrawBarInfo *barinfo)
void DoChangeCoordThemeColors (const BeString &name)

详细描述

圆坐标系。(x,y)=(角度:-180~180,半径的百分比(0~100))

构造及析构函数说明

◆ CircleAxis()

BUI::CircleAxis::CircleAxis ( )

◆ ~CircleAxis()

BUI::CircleAxis::~CircleAxis ( )

成员函数说明

◆ GetAxisClassName()

LPCTSTR BUI::CircleAxis::GetAxisClassName ( )
overridevirtual

获得坐标轴类名

重载 BUI::CChartAxis .

◆ GetCoordinateValue()

void BUI::CircleAxis::GetCoordinateValue ( int mouse_x,
int mouse_y,
double * out_values,
int out_len )
overridevirtual

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

重载 BUI::CChartCoordinate .

◆ GetCoordinateWeight()

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

获得权重

重载 BUI::CChartCoordinate .

◆ GetCoordRelationship()

void BUI::CircleAxis::GetCoordRelationship ( std::vector< BeString > & list)
overridevirtual

获得类的继承关系

重载 BUI::CChartAxis .

◆ GetLineStyle()

LineStyle & BUI::CircleAxis::GetLineStyle ( )

获得线条风格

◆ GetRadius()

double BUI::CircleAxis::GetRadius ( ) const

获得径向逻辑坐标范围

◆ IsCartesianSystem()

BOOL BUI::CircleAxis::IsCartesianSystem ( )
overridevirtual

是否是笛卡尔坐标系

重载 BUI::PathTransform .

◆ IsInPath()

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

是否在坐标系内

重载 BUI::PathTransform .

◆ OnCalcAxisPosition()

void BUI::CircleAxis::OnCalcAxisPosition ( RECT rc_diagram)
overridevirtual

坐标轴位置时响应事件

重载 BUI::CChartCoordinate .

◆ OnNotifyMessage()

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

消息处理函数

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

重载 BUI::CChartAxis .

◆ OnPaintChart()

void BUI::CircleAxis::OnPaintChart ( ISurface * surface,
RECT * rc_clip )
overridevirtual

◆ OnPaintChartBackground()

void BUI::CircleAxis::OnPaintChartBackground ( ISurface * surface,
RECT * rc_clip )
overridevirtual

◆ SetAxisRange()

void BUI::CircleAxis::SetAxisRange ( double f_min,
double f_max )

◆ SetCenter()

void BUI::CircleAxis::SetCenter ( double cx,
double cy )

设置坐标中心点。百分比坐标值

◆ SetCenterCircleRadius()

void BUI::CircleAxis::SetCenterCircleRadius ( int r)

设置坐标半径。基于控件坐标系

◆ SetPrecision()

void BUI::CircleAxis::SetPrecision ( double precision)

设置小数点精度

◆ SetRadianRange()

void BUI::CircleAxis::SetRadianRange ( double start,
double offset )

设置弧度范围

参数
start[-pi ~ pi]
offset[0 ~ 2pi]

◆ SetRadianRangeByAngle()

void BUI::CircleAxis::SetRadianRangeByAngle ( int angle_start,
int angle_offset )

通过角度设置弧度范围

参数
angle_start[-180 ~ 180]
angle_offset[0 ~ 360]
返回
void

◆ SetRadianStart()

void BUI::CircleAxis::SetRadianStart ( double start)

◆ SetRadius()

void BUI::CircleAxis::SetRadius ( double r)

设置径向逻辑坐标范围

◆ SetTickMarkCount()

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

◆ SetTickMarkInfo()

void BUI::CircleAxis::SetTickMarkInfo ( TickMarkID id,
int c,
int tick_size,
TickMarkPositon style = TickOnOutside )

◆ SetTickMarkLineSize()

void BUI::CircleAxis::SetTickMarkLineSize ( TickMarkID id,
int tick_size = 4 )

◆ SetTickMarkStyle()

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

◆ ShellCoordinateAttribute()

void BUI::CircleAxis::ShellCoordinateAttribute ( const BeString & str_name,
const BeString & str_value,
ICoordList * coord_list )
overridevirtual

命令控制和属性设置接口

szName属性 szText语法格式
cx
圆心x
cx="0.5"
cy
圆心y
cy="0.5"
r
半径
r="50"
range-angle
角度范围
range-angle="0,180"
range
值域范围
range="0,100"
precision
精度
precision="1" 小数点后一位
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"
sapce-baseline
文本和基线的间隔
sapce-baseline="5"
line-type
线条类型
solid, dot, dash, dash-dot, dash-dot-dot
arc-size
圆弧尺寸
arc-size="5"
show-center-point
显示圆心原点
true / false
center-point-r
圆心原点半径
center-point-r=""

重载 BUI::CChartAxis .

◆ ShowCenterCircle()

void BUI::CircleAxis::ShowCenterCircle ( BOOL show)

显示(或隐藏)圆环

◆ Transform()

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

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

参数
x: x值
y: y值

重载 BUI::PathTransform .

◆ Transform2x2()

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

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

参数
x
y

重载 BUI::PathTransform .

类成员变量说明

◆ m_angle_begin

double BUI::CircleAxis::m_angle_begin
protected

◆ m_angle_offset

double BUI::CircleAxis::m_angle_offset
protected

◆ m_arc_size

int BUI::CircleAxis::m_arc_size
protected

◆ m_center_radius

int BUI::CircleAxis::m_center_radius
protected

◆ m_is_draw_center

BOOL BUI::CircleAxis::m_is_draw_center
protected

◆ m_line_style

LineStyle BUI::CircleAxis::m_line_style
protected

◆ m_major

int BUI::CircleAxis::m_major
protected

◆ m_major_mark_style

TickMarkPositon BUI::CircleAxis::m_major_mark_style
protected

◆ m_major_tick_pen_size

int BUI::CircleAxis::m_major_tick_pen_size
protected

◆ m_major_tick_size

int BUI::CircleAxis::m_major_tick_size
protected

◆ m_minor

int BUI::CircleAxis::m_minor
protected

◆ m_minor_mark_style

TickMarkPositon BUI::CircleAxis::m_minor_mark_style
protected

◆ m_minor_tick_pen_size

int BUI::CircleAxis::m_minor_tick_pen_size
protected

◆ m_minor_tick_size

int BUI::CircleAxis::m_minor_tick_size
protected

◆ m_mult_k

double BUI::CircleAxis::m_mult_k
protected

◆ m_point_center

POINT BUI::CircleAxis::m_point_center
protected

◆ m_precision

double BUI::CircleAxis::m_precision
protected

◆ m_radius

double BUI::CircleAxis::m_radius
protected

◆ m_radius_rel

int BUI::CircleAxis::m_radius_rel
protected

◆ m_start_x

double BUI::CircleAxis::m_start_x
protected

◆ m_tick_label_spacing

int BUI::CircleAxis::m_tick_label_spacing
protected

◆ m_tick_spacing

int BUI::CircleAxis::m_tick_spacing
protected

◆ m_trans

PathTransform* BUI::CircleAxis::m_trans
protected

◆ m_vector_x

double BUI::CircleAxis::m_vector_x
protected

◆ m_xpos

double BUI::CircleAxis::m_xpos
protected

◆ m_ypos

double BUI::CircleAxis::m_ypos
protected
鄂公网安备42018502007752 鄂ICP备2024082886
Copyright © 2026 · CBlueStudio 版权所有