数据结构类型

点:Point类

Point、Point2i、Point_<int>等价

Point2f、Point_<float>等价

用法:

复制代码
//二维点
    Point2f p(6,2);
    cout<<"p="<<endl<<p<<";"<<endl;
    //三维点
    Point3f p3(8,2,0);
    cout<<"p3="<<endl<<p3<<";"<<endl;
//定义输出存放着点的vector容器,以二维点为例
    vector<Point2f> points(5);//5个点
    for(size_t i=0;i<points.size();i++)
        points[i]=Point2f((float)(i*5),(float)(i%3));//横坐标5的倍数,纵坐标3的余数
    cout<<"points="<<endl<<" "<<points<<";";
复制代码

颜色:Scalar

Scalar(b,g,r,alpha); 第四个参数不需要时可以不写

Scalar类的源头是Scalar_类,我们常用的Scalar其实就是Scalar_<double>,所以很多函数的参数输入可以是Mat也可以是Scalar。

尺寸:Size

Size、Size2i、Size_<int>等价;Size_<float> 、Size2f等价

用法:Size(1,2) 宽1高2

矩形:Rect

成员变量有x,y,width,height,即左上角坐标,矩形宽高

成员函数:Size(),area(),contains(Point)判断点是否在矩形内,inside(Rect)判断矩形是否在矩形内,tl()返回左上角坐标,br()返回右下角坐标

Rect r=r1&r2; 两矩形交集

Rect r=r1|r2; 两矩形并集

Rect rShift=r+point; 平移

Rect rScale=r+size;  缩放

posted @   夕西行  阅读(253)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· Open-Sora 2.0 重磅开源!
点击右上角即可分享
微信分享提示