OpenCV  4.10.0
开源计算机视觉
加载中...
搜索中...
无匹配项
公共成员函数 | 公共属性 | 所有成员列表
cv::RotatedRect 类参考

该类表示平面上的旋转(即非直立)矩形。 更多...

#include <opencv2/core/types.hpp>

cv::RotatedRect 的协作图

公共成员函数

 RotatedRect ()
 默认构造函数
 
 RotatedRect (const Point2f &center, const Size2f &size, float angle)
 
 RotatedRect (const Point2f &point1, const Point2f &point2, const Point2f &point3)
 
Rect boundingRect () const
 返回包含旋转矩形的最小直立整数矩形
 
Rect2f boundingRect2f () const
 返回包含旋转矩形的最小(精确)浮点矩形,不适用于图像
 
void points (Point2f pts[]) const
 
void points (std::vector< Point2f > &pts) const
 

公共属性

float angle
 返回旋转角度。当角度为 0、90、180、270 等时,矩形变为直立矩形。
 
Point2f center
 返回矩形质心
 
Size2f size
 返回矩形的宽度和高度
 

详细说明

该类表示平面上的旋转(即非直立)矩形。

每个矩形由中心点(质心)、每条边的长度(由 Size2f 结构表示)和以度为单位的旋转角度指定。

下面的示例演示了如何使用 RotatedRect

Mat test_image(200, 200, CV_8UC3, Scalar(0));
RotatedRect rRect = RotatedRect(Point2f(100,100), Size2f(100,50), 30);
Point2f vertices[4];
rRect.points(vertices);
for (int i = 0; i < 4; i++)
{
line(test_image, vertices[i], vertices[(i+1)%4], Scalar(0,255,0), 2);
putText(test_image, vertex_names[i], vertices[i], FONT_HERSHEY_SIMPLEX, 1, Scalar(255,255,255));
}
Rect brect = rRect.boundingRect();
rectangle(test_image, brect, Scalar(255,0,0), 2);
imshow("rectangles", test_image);
waitKey(0);
n 维密集数组类
定义 mat.hpp:812
二维矩形的模板类。
定义 types.hpp:444
该类表示平面上的旋转(即非直立)矩形。
定义 types.hpp:531
Rect boundingRect() const
返回包含旋转矩形的最小直立整数矩形
void points(Point2f pts[]) const
RotatedRect()
默认构造函数
Scalar_< double > Scalar
定义 types.hpp:702
Point_< float > Point2f
定义 types.hpp:207
Size_< float > Size2f
定义 types.hpp:368
#define CV_8UC3
定义 interface.h:90
void imshow(const String &winname, InputArray mat)
在指定窗口中显示图像。
int waitKey(int delay=0)
等待按下键。
void rectangle(InputOutputArray img, Point pt1, Point pt2, const Scalar &color, int thickness=1, int lineType=LINE_8, int shift=0)
绘制简单、粗或填充的直立矩形。
void putText(InputOutputArray img, const String &text, Point org, int fontFace, double fontScale, Scalar color, int thickness=1, int lineType=LINE_8, bool bottomLeftOrigin=false)
绘制文本字符串。
void line(InputOutputArray img, Point pt1, Point pt2, const Scalar &color, int thickness=1, int lineType=LINE_8, int shift=0)
绘制连接两点的线段。
@ FONT_HERSHEY_SIMPLEX
正常大小的无衬线字体
定义 imgproc.hpp:901

另请参见
CamShiftfitEllipseminAreaRect、CvBox2D
示例
samples/cpp/camshiftdemo.cppsamples/cpp/fitellipse.cppsamples/cpp/minarea.cpp

构造函数和析构函数文档

◆ RotatedRect() [1/3]

cv::RotatedRect::RotatedRect ( )
Python
cv.RotatedRect() -> <RotatedRect 对象>
cv.RotatedRect(center, size, angle) -> <RotatedRect 对象>
cv.RotatedRect(point1, point2, point3) -> <RotatedRect 对象>

默认构造函数

◆ RotatedRect() [2/3]

cv::RotatedRect::RotatedRect ( const Point2f center,
const Size2f size,
float  angle 
)
Python
cv.RotatedRect() -> <RotatedRect 对象>
cv.RotatedRect(center, size, angle) -> <RotatedRect 对象>
cv.RotatedRect(point1, point2, point3) -> <RotatedRect 对象>

完整构造函数

参数
center矩形质心。
size矩形的宽度和高度。
angle顺时针方向的旋转角度。当角度为 0、90、180、270 等时,矩形变为直立矩形。

◆ RotatedRect() [3/3]

cv::RotatedRect::RotatedRect ( const Point2f point1,
const Point2f point2,
const Point2f point3 
)
Python
cv.RotatedRect() -> <RotatedRect 对象>
cv.RotatedRect(center, size, angle) -> <RotatedRect 对象>
cv.RotatedRect(point1, point2, point3) -> <RotatedRect 对象>

任何 RotatedRect 的 3 个端点。它们必须按顺序给出(顺时针或逆时针)。

成员函数文档

◆ boundingRect()

Rect cv::RotatedRect::boundingRect ( ) const
Python
cv.RotatedRect.boundingRect() -> retval

返回包含旋转矩形的最小直立整数矩形

◆ boundingRect2f()

Rect2f cv::RotatedRect::boundingRect2f ( ) const
Python
cv.RotatedRect.boundingRect2f() -> retval

返回包含旋转矩形的最小(精确)浮点矩形,不适用于图像

◆ points() [1/2]

void cv::RotatedRect::points ( Point2f  pts[]) const
Python
cv.RotatedRect.points() -> pts

返回旋转矩形的 4 个顶点

参数
pts用于存储矩形顶点的点数组。顺序为 bottomLefttopLeft、topRight、bottomRight。
注意
BottomTopLeftRight 边指的是原始矩形(角度为 0),因此在旋转 180 度后,bottomLeft 点将位于矩形的右上角。
示例
samples/cpp/fitellipse.cppsamples/cpp/minarea.cpp

◆ points() [2/2]

void cv::RotatedRect::points ( std::vector< Point2f > &  pts) const
Python
cv.RotatedRect.points() -> pts

成员数据文档

◆ angle

float cv::RotatedRect::angle

返回旋转角度。当角度为 0、90、180、270 等时,矩形变为直立矩形。

◆ center

Point2f cv::RotatedRect::center

返回矩形质心

示例
samples/cpp/fitellipse.cpp.

◆ size

Size2f cv::RotatedRect::size

返回矩形的宽度和高度

示例
samples/cpp/fitellipse.cpp.

此类的文档从以下文件生成