TouchVG framework
Public 成员函数 | 静态 Public 成员函数 | Public 属性 | 所有成员列表
Box2d类 参考

矩形框类 更多...

#include <mgbox.h>

Public 成员函数

 Box2d ()
 构造收缩到原点的矩形框 更多...
 
 Box2d (const Box2d &src, bool normal=false)
 拷贝构造函数,默认不自动规范化 更多...
 
 Box2d (const Point2d &pnt1, const Point2d &pnt2)
 给定两个对角点构造,自动规范化 更多...
 
 Box2d (float l, float t, float r, float b, bool normal=false)
 给定对角点坐标构造,默认不自动规范化 更多...
 
 Box2d (const RECT_2D &rc, bool normal=false)
 给定显示坐标矩形框构造,默认不自动规范化 更多...
 
 Box2d (int l, int t, int r, int b, bool normal=false)
 给定对角点整数坐标构造,默认不自动规范化 更多...
 
 Box2d (const Point2d &pnt1, const Point2d &pnt2, const Point2d &pnt3, const Point2d &pnt4)
 给定四个顶点构造 更多...
 
 Box2d (int count, const Point2d *points)
 给定多个顶点构造 更多...
 
 Box2d (const Point2d &center, float width, float height)
 给定中心坐标和宽高构造 更多...
 
 Box2d (float width, float height)
 给定宽高构造(0, 0, w, h) 更多...
 
void get (Point2d &p1, Point2d &p2) const
 得到两个对角点 更多...
 
RECT_2Dget (RECT_2D &rc) const
 转换到显示坐标矩形框,已上下对调 更多...
 
void get (long &l, long &t, long &r, long &b) const
 得到四舍五入后的矩形(RECT),已上下对调 更多...
 
Box2dset (const Box2d &src, bool normal=false)
 复制矩形,默认不自动规范化 更多...
 
Box2dset (const Point2d &p1, const Point2d &p2)
 设置两个对角点,自动规范化 更多...
 
Box2dset (float x1, float y1, float x2, float y2)
 设置两个对角点坐标,自动规范化 更多...
 
Box2dset (const Point2d &p1, const Point2d &p2, const Point2d &p3, const Point2d &p4)
 设置为四个顶点的包容框 更多...
 
Box2dset (int count, const Point2d *points)
 设置为多个顶点的包容框 更多...
 
Box2dset (const Point2d &center, float width, float height)
 设置中心坐标和宽高 更多...
 
float width () const
 返回宽度,非负数 更多...
 
float height () const
 返回高度,非负数 更多...
 
Vector2d size () const
 返回矩形框大小,非负数 更多...
 
Point2d center () const
 返回中心坐标 更多...
 
Point2d leftTop () const
 返回左上坐标 更多...
 
Point2d rightTop () const
 返回右上坐标 更多...
 
Point2d leftBottom () const
 返回左下坐标 更多...
 
Point2d rightBottom () const
 返回右下坐标 更多...
 
Box2dnormalize ()
 规范化,使xmin<=xmax且ymin<=ymax 更多...
 
Box2dswapTopBottom ()
 交换上下坐标 更多...
 
Box2dempty ()
 设置为空矩形框 更多...
 
bool isNormalized () const
 判断是否规范化 更多...
 
bool isNull () const
 判断宽和高是否都为零且位于原点 更多...
 
bool isEmpty (const Tol &tol=Tol::gTol(), bool useOr=true) const
 判断宽或高的绝对值是否为零 更多...
 
bool isEmptyMinus (const Tol &tol=Tol::gTol()) const
 判断宽或高是否接近或小于零 更多...
 
bool contains (const Point2d &pt) const
 判断一个点是否在本矩形框内,闭区间,矩形框必须规范化 更多...
 
bool contains (const Point2d &pt, const Tol &tol) const
 判断一个点是否在本矩形框内,闭区间 更多...
 
bool contains (const Box2d &box) const
 判断一个矩形框是否在本矩形框内,闭区间 更多...
 
bool contains (const Box2d &box, const Tol &tol) const
 判断一个矩形框是否在本矩形框内,闭区间 更多...
 
Box2dinflate (float d)
 中心不变,扩大矩形框 更多...
 
Box2dinflate (float x, float y)
 中心不变,扩大矩形框 更多...
 
Box2dinflate (const Vector2d &vec)
 中心不变,扩大矩形框 更多...
 
Box2dinflate (const Box2d &box)
 中心不变,扩大矩形框 更多...
 
Box2dinflate (float l, float b, float r, float t)
 中心不变,扩大矩形框 更多...
 
Box2ddeflate (float d)
 中心不变,缩小矩形框 更多...
 
Box2ddeflate (float x, float y)
 中心不变,缩小矩形框 更多...
 
Box2ddeflate (const Vector2d &vec)
 中心不变,缩小矩形框 更多...
 
Box2ddeflate (const Box2d &box)
 中心不变,缩小矩形框 更多...
 
Box2ddeflate (float l, float b, float r, float t)
 中心不变,缩小矩形框 更多...
 
Box2doffset (float x, float y)
 平移 更多...
 
Box2doffset (const Vector2d &vec)
 平移 更多...
 
Box2dscaleBy (float sx, float sy=0)
 比例放缩,以原点为中心 更多...
 
bool isIntersect (const Box2d &box) const
 判断是否和一个矩形框相交(两者都是规范化矩形) 更多...
 
Box2dintersectWith (const Box2d &r1, const Box2d &r2)
 设置为两个矩形框的交集(两者都是规范化矩形) 更多...
 
Box2dintersectWith (const Box2d &box)
 设置为和一个矩形框的交集(两者都是规范化矩形) 更多...
 
Box2dunionWith (const Box2d &r1, const Box2d &r2)
 设置为两个矩形框的并集(两者都是规范化矩形) 更多...
 
Box2dunionWith (const Box2d &box)
 合并一个矩形框(两者都是规范化矩形) 更多...
 
Box2dunionWith (float x, float y)
 合并一个点 更多...
 
Box2dunionWith (const Point2d &pt)
 合并一个点 更多...
 
Box2d offset (const Box2d &box) const
 正向平移矩形框 更多...
 
Box2d operator+ (const Box2d &box) const
 正向平移矩形框 更多...
 
Box2doperator+= (const Box2d &box)
 正向平移矩形框 更多...
 
Box2d operator- (const Box2d &box) const
 反向平移矩形框 更多...
 
Box2doperator-= (const Box2d &box)
 反向平移矩形框 更多...
 
Box2d operator+ (const Vector2d &vec) const
 正向平移矩形框 更多...
 
Box2doperator+= (const Vector2d &vec)
 正向平移矩形框 更多...
 
Box2d operator- (const Vector2d &vec) const
 反向平移矩形框 更多...
 
Box2doperator-= (const Vector2d &vec)
 反向平移矩形框 更多...
 
Box2d operator & (const Box2d &box) const
 矩形框交集的操作符函数 更多...
 
Box2doperator &= (const Box2d &box)
 矩形框交集的操作符函数 更多...
 
Box2d operator| (const Box2d &box) const
 合并矩形框的操作符函数 更多...
 
Box2doperator|= (const Box2d &box)
 合并矩形框的操作符函数 更多...
 
Box2d operator* (float s) const
 得到各坐标分量乘以一个数后的新矩形框 更多...
 
Box2doperator*= (float s)
 各坐标分量乘以一个数 更多...
 
Box2d operator/ (float s) const
 得到各坐标分量除以一个数后的新矩形框 更多...
 
Box2doperator/= (float s)
 各坐标分量除以一个数 更多...
 
Box2d operator* (const Matrix2d &m) const
 矩阵变换,结果为规范化矩形 更多...
 
Box2doperator*= (const Matrix2d &m)
 矩阵变换,结果为规范化矩形 更多...
 
bool operator== (const Box2d &box) const
 判断两个矩形框是否相等 更多...
 
bool operator!= (const Box2d &box) const
 判断两个矩形框是否不相等 更多...
 
bool isEqualTo (const Box2d &box, const Tol &tol=Tol::gTol()) const
 判断两个矩形框是否相等 更多...
 

静态 Public 成员函数

static const Box2d kIdentity ()
 收缩到原点的空矩形框 更多...
 

Public 属性

float xmin
 矩形左下角X坐标 更多...
 
float ymin
 矩形左下角Y坐标 更多...
 
float xmax
 矩形右上角X坐标 更多...
 
float ymax
 矩形右上角Y坐标 更多...
 

详细描述

矩形框类

本类用于描述二维平面上水平矩形框,或坐标范围


该类的文档由以下文件生成:

通用矢量图形框架, 版权所有 (C) 张云贵 2004-2017,BSD 开源许可证