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

极坐标系,也称雷达坐标系 更多...

类 BUI::RadarAxis 继承关系图:

Public 成员函数

 RadarAxis ()
 ~RadarAxis ()
void SetAxisInfo (double start, double distance, int steps)
 极坐标逻辑坐标系
void SetlayoutCenter (double percent_x, double percent_y)
 设置中心点
void SetRadius (int r)
 设置半径尺寸
void SetThetaMajor (int steps)
 设置角度值,大刻度线数量
void SetTickStyle (int size, TickMarkPositon style)
void SetRadarStyle (RadarStyle style)
 设置极坐标的图形风格
void ShowCorssLine (BOOL is_show)
 显示(或隐藏)交叉线
void ShowGridLine (BOOL is_show)
 显示(或隐藏)网格线
void ShowGridBk (BOOL is_show)
 显示(或隐藏)间隔背景
VecFloat2 ViewPoint (double angle, double r) const
 将(a,r)逻辑坐标转换为窗口坐标
POINT ViewPointRound (double angle, double r) const
 将(a,r)逻辑坐标转换为窗口坐标
double GetRadiusValue (double vr) const
 获得半径方向上的值到圆心的长度
LPCTSTR GetAxisClassName () override
double GetCoordinateWeight (double d) override
 获得权重
BOOL OnNotifyMessage (IEventHandler *notify, UINT message, WPARAM wp, LPARAM lp) override
 消息处理函数
void OnCalcAxisPosition (RECT rc_diagram) override
 坐标轴位置时响应事件
void OnPaintChartBackground (ISurface *surface, RECT *rc_clip) override
void OnPaintChart (ISurface *surface, RECT *rc_clip) override
void OnPaintChartCrossLine (ISurface *surface, RECT *rc_clip, double v1, double v2, LineStyle *style, const GColor &color_cross_line) override
void OnPaintAxisGridLine (ISurface *surface, RECT *rc_clip)
void OnPaintAxisGridFill (ISurface *surface, RECT *rc_clip)
void OnPaintCrossLine (ISurface *surface, RECT *rc_clip, POINT pt, LineStyle *style, const GColor &color_cross_line)
void OnPaintAxisDataLabel (ISurface *surface, double angle, LPCTSTR text, int len, const GColor &color)
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
 获得鼠标处,表示的坐标值
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 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)

额外继承的成员函数

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)
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

详细描述

极坐标系,也称雷达坐标系

构造及析构函数说明

◆ RadarAxis()

BUI::RadarAxis::RadarAxis ( )

◆ ~RadarAxis()

BUI::RadarAxis::~RadarAxis ( )

成员函数说明

◆ GetAxisClassName()

LPCTSTR BUI::RadarAxis::GetAxisClassName ( )
overridevirtual

override methods:

重载 BUI::CChartAxis .

◆ GetCoordinateValue()

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

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

重载 BUI::CChartCoordinate .

◆ GetCoordinateWeight()

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

获得权重

重载 BUI::CChartCoordinate .

◆ GetCoordRelationship()

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

获得类的继承关系

重载 BUI::CChartAxis .

◆ GetRadiusValue()

double BUI::RadarAxis::GetRadiusValue ( double vr) const

获得半径方向上的值到圆心的长度

◆ IsCartesianSystem()

BOOL BUI::RadarAxis::IsCartesianSystem ( )
overridevirtual

是否是笛卡尔坐标系

重载 BUI::PathTransform .

◆ IsInPath()

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

是否在坐标系内

重载 BUI::PathTransform .

◆ OnCalcAxisPosition()

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

坐标轴位置时响应事件

重载 BUI::CChartCoordinate .

◆ OnNotifyMessage()

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

消息处理函数

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

重载 BUI::CChartAxis .

◆ OnPaintAxisDataLabel()

void BUI::RadarAxis::OnPaintAxisDataLabel ( ISurface * surface,
double angle,
LPCTSTR text,
int len,
const GColor & color )

◆ OnPaintAxisGridFill()

void BUI::RadarAxis::OnPaintAxisGridFill ( ISurface * surface,
RECT * rc_clip )

◆ OnPaintAxisGridLine()

void BUI::RadarAxis::OnPaintAxisGridLine ( ISurface * surface,
RECT * rc_clip )

◆ OnPaintChart()

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

◆ OnPaintChartBackground()

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

◆ OnPaintChartCrossLine()

void BUI::RadarAxis::OnPaintChartCrossLine ( ISurface * surface,
RECT * rc_clip,
double v1,
double v2,
LineStyle * style,
const GColor & color_cross_line )
overridevirtual

◆ OnPaintCrossLine()

void BUI::RadarAxis::OnPaintCrossLine ( ISurface * surface,
RECT * rc_clip,
POINT pt,
LineStyle * style,
const GColor & color_cross_line )

◆ SetAxisInfo()

void BUI::RadarAxis::SetAxisInfo ( double start,
double distance,
int steps )

极坐标逻辑坐标系

参数
start: 起始弧度
distance: 长度
steps: 大刻度数量

◆ SetlayoutCenter()

void BUI::RadarAxis::SetlayoutCenter ( double percent_x,
double percent_y )

设置中心点

◆ SetRadarStyle()

void BUI::RadarAxis::SetRadarStyle ( RadarStyle style)

设置极坐标的图形风格

◆ SetRadius()

void BUI::RadarAxis::SetRadius ( int r)

设置半径尺寸

◆ SetThetaMajor()

void BUI::RadarAxis::SetThetaMajor ( int steps)

设置角度值,大刻度线数量

◆ SetTickStyle()

void BUI::RadarAxis::SetTickStyle ( int size,
TickMarkPositon style )

◆ ShellCoordinateAttribute()

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

命令控制和属性设置接口

szName属性 szText语法格式
type
雷达类型
Radar :圆形 Polar :直线围栏型
cx
圆心x,百分比
cx="0.5"
cy
圆心y,百分比
cy="0.5"
r
半径
r="50"
range
径向值域范围
range="0,100"
show-crossline
鼠标经过显示交叉线
true / false
show-gridline
网格线
true / false
show-gridbk
背景
true / false

重载 BUI::CChartAxis .

◆ ShowCorssLine()

void BUI::RadarAxis::ShowCorssLine ( BOOL is_show)

显示(或隐藏)交叉线

◆ ShowGridBk()

void BUI::RadarAxis::ShowGridBk ( BOOL is_show)

显示(或隐藏)间隔背景

◆ ShowGridLine()

void BUI::RadarAxis::ShowGridLine ( BOOL is_show)

显示(或隐藏)网格线

◆ Transform()

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

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

参数
x: x值
y: y值

重载 BUI::PathTransform .

◆ Transform2x2()

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

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

参数
x
y

重载 BUI::PathTransform .

◆ ViewPoint()

VecFloat2 BUI::RadarAxis::ViewPoint ( double angle,
double r ) const

将(a,r)逻辑坐标转换为窗口坐标

◆ ViewPointRound()

POINT BUI::RadarAxis::ViewPointRound ( double angle,
double r ) const

将(a,r)逻辑坐标转换为窗口坐标

鄂公网安备42018502007752 鄂ICP备2024082886
Copyright © 2026 · CBlueStudio 版权所有