CBlueUI  
C++ 跨平台跨框架的数据可视化工具
载入中...
搜索中...
未找到
UtilsRect.h 文件参考

struct  LayoutPosition

命名空间

namespace  UtilsMath
namespace  UtilsRect

函数

UI_EXP void UtilsMath::ComputeAxis (double *axis_min, double *axis_max, double *step_unit, double y_min, double y_max, int tick_count=5, double padding_ratio=0.05, int round_flag=1)
 根据输入的范围,获得最恰当的坐标轴边界
UI_EXP void UtilsMath::LinearFit (VecFloat2 *points, int len, double &k, double &b)
 线性拟合-最小二乘法。拟合结果为 y= k * x + b
UI_EXP void UtilsMath::LinearFitExp (VecFloat2 *points, int len, double &a, double &b)
 非线性拟合指数函数-最小二乘法。拟合结果为 y= a * b^x
UI_EXP void UtilsMath::LinearFitPower (VecFloat2 *points, int len, double &a, double &b)
 非线性拟合幂函数-最小二乘法。拟合结果为 y= a * x^b
UI_EXP double UtilsMath::InterpolationLagrange (VecFloat2 *points, int len, double xp)
 拉格朗日插值,求任意点xp的Y坐标
UI_EXP BOOL UtilsMath::PtInLine (POINT pt, POINT p1, POINT p2, int distance)
 判断点是否在线段上
UI_EXP BOOL UtilsMath::PtInRegion (POINT pt, std::vector< POINT > &points)
 判断点是否在points点围成的区域内
UI_EXP BOOL UtilsMath::PtInRegion (POINT pt, const POINT points[], int len)
UI_EXP BOOL UtilsMath::LineCrossPoint (POINT line1_p1, POINT line1_p2, POINT line2_p1, POINT line2_p2, POINT &pt_cross)
 线段在各自延长线上存在交点
UI_EXP BOOL UtilsMath::LineCrossPointInside (POINT line1_p1, POINT line1_p2, POINT line2_p1, POINT line2_p2, POINT &pt_cross)
 线段上的交点,不包括各自延长线
UI_EXP void UtilsMath::RectLayoutCalculator (LayoutPosition *objs, int len, RECT rc_box, UINT align, BOOL is_horz, int interval, BOOL is_reverse)
 根据尺寸列表,计算在区域中的位置
UI_EXP void UtilsMath::TrianglePoint (POINT pt[], RECT rect, int dir, int size)
 三角形顶点源
UI_EXP BOOL UtilsMath::IsSameSign (double v1, double v2)
 同号
UI_EXP double UtilsMath::VectorAngle (double x1, double y1, double x2, double y2)
 向量基于x轴的夹角
UI_EXP BOOL UtilsRect::PointInRect (const RECT *rc, POINT pt)
 点是否在矩形区域内
UI_EXP BOOL UtilsRect::PointInRect (const RECT *rc, LONG x, LONG y)
 点是否在矩形区域内
UI_EXP void UtilsRect::SetRectEmpty (RECT *rc)
 设置矩形为空(0,0,0,0)
UI_EXP void UtilsRect::SetRect (RECT *rc, int l, int t, int r, int b)
 设置矩形尺寸
UI_EXP BOOL UtilsRect::IsRectangleEmpty (const RECT *rc)
UI_EXP BOOL UtilsRect::IsRectIntersect (LPRECT rc1, LPRECT rc2)
 lprc1与lprc2矩形,是否有交集
UI_EXP BOOL UtilsRect::IntersectRectangle (LPRECT rc_out, const RECT *rc1, const RECT *rc2)
 求rc1与rc2矩形交集
UI_EXP BOOL UtilsRect::UnionRectangle (LPRECT rc_out, const RECT *rc1, const RECT *rc2)
 求rc1与rc2矩形并集
UI_EXP BOOL UtilsRect::IsRectContain (LPRECT rc1, LPRECT rc2)
 矩形(rc1)内是否包含矩形(rc2)
UI_EXP BOOL UtilsRect::IsRectEqual (LPRECT rc1, LPRECT rc2)
 矩形(rc1)与矩形(rc2),是否相等
UI_EXP BOOL UtilsRect::DeflateRect (LPRECT rc, int l, int t, int r, int b)
 矩形(rc),边距缩小或放大
UI_EXP BOOL UtilsRect::DeflateRect (LPRECT rc, int dx, int dy, BOOL check_min=FALSE)
 矩形(rc),边距缩小或放大
UI_EXP BOOL UtilsRect::OffsetRect (LPRECT rc, int dx, int dy)
 矩形(rc)平移
UI_EXP void UtilsRect::Normal (RECT &rc)
 矩形(rc)坐标标准化(左边必须小于右边,底部大于顶部)
UI_EXP void UtilsRect::TransformRect (RECT &rc, BUI::Transform2d &mtx)
 根据变换矩阵mtx,变换矩形位置
鄂公网安备42018502007752 鄂ICP备2024082886
Copyright © 2026 · CBlueStudio 版权所有