OpenCV 2.4.8

org.opencv.core
Class Rect

java.lang.Object
  extended by org.opencv.core.Rect

public class Rect
extends java.lang.Object

template class CV_EXPORTS Rect_

// C++ code:

public:

typedef _Tp value_type;

//! various constructors

Rect_();

Rect_(_Tp _x, _Tp _y, _Tp _width, _Tp _height);

Rect_(const Rect_& r);

Rect_(const CvRect& r);

Rect_(const Point_<_Tp>& org, const Size_<_Tp>& sz);

Rect_(const Point_<_Tp>& pt1, const Point_<_Tp>& pt2);

Rect_& operator = (const Rect_& r);

//! the top-left corner

Point_<_Tp> tl() const;

//! the bottom-right corner

Point_<_Tp> br() const;

//! size (width, height) of the rectangle

Size_<_Tp> size() const;

//! area (width*height) of the rectangle

_Tp area() const;

//! conversion to another data type

template operator Rect_<_Tp2>() const;

//! conversion to the old-style CvRect

operator CvRect() const;

//! checks whether the rectangle contains the point

bool contains(const Point_<_Tp>& pt) const;

_Tp x, y, width, height; //< the top-left corner, as well as width and height of the rectangle

};

Template class for 2D rectangles, described by the following parameters:

OpenCV typically assumes that the top and left boundary of the rectangle are inclusive, while the right and bottom boundaries are not. For example, the method Rect_.contains returns true if

x <= pt.x < x+width,<BR>y <= pt.y < y+height

Virtually every loop over an imageROI in OpenCV (where ROI is specified by Rect_) is implemented as:

// C++ code:

for(int y = roi.y; y < roi.y + rect.height; y++)

for(int x = roi.x; x < roi.x + rect.width; x++)

//...

In addition to the class members, the following operations on rectangles are implemented:

This is an example how the partial ordering on rectangles can be established (rect1subseteq rect2):

// C++ code:

template inline bool

operator <= (const Rect_<_Tp>& r1, const Rect_<_Tp>& r2)

return (r1 & r2) == r1;

For your convenience, the Rect_<> alias is available:

typedef Rect_ Rect;

See Also:
org.opencv.core.Rect_

Field Summary
 int height
           
 int width
           
 int x
           
 int y
           
 
Constructor Summary
Rect()
           
Rect(double[] vals)
           
Rect(int x, int y, int width, int height)
           
Rect(Point p1, Point p2)
           
Rect(Point p, Size s)
           
 
Method Summary
 double area()
           
 Point br()
           
 Rect clone()
           
 boolean contains(Point p)
           
 boolean equals(java.lang.Object obj)
           
 int hashCode()
           
 void set(double[] vals)
           
 Size size()
           
 Point tl()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

height

public int height

width

public int width

x

public int x

y

public int y
Constructor Detail

Rect

public Rect()

Rect

public Rect(double[] vals)

Rect

public Rect(int x,
            int y,
            int width,
            int height)

Rect

public Rect(Point p1,
            Point p2)

Rect

public Rect(Point p,
            Size s)
Method Detail

area

public double area()

br

public Point br()

clone

public Rect clone()
Overrides:
clone in class java.lang.Object

contains

public boolean contains(Point p)

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

set

public void set(double[] vals)

size

public Size size()

tl

public Point tl()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

OpenCV 2.4.8 Documentation