public class Range extends Object
Template class specifying a continuous subsequence (slice) of a sequence.
class CV_EXPORTS Range
// C++ code:
public:
Range();
Range(int _start, int _end);
Range(const CvSlice& slice);
int size() const;
bool empty() const;
static Range all();
operator CvSlice() const;
int start, end;
};
The class is used to specify a row or a column span in a matrix (
"Mat") and for many other purposes. Range(a,b) is basically the
same as a:b in Matlab or a..b in Python. As in
Python, start is an inclusive left boundary of the range and
end is an exclusive right boundary of the range. Such a
half-opened interval is usually denoted as [start,end).
The static method Range.all() returns a special variable that
means "the whole sequence" or "the whole range", just like " : "
in Matlab or " ... " in Python. All the methods and functions in
OpenCV that take Range support this special Range.all()
value. But, of course, in case of your own custom processing, you will
probably have to check and handle it explicitly:
// C++ code:
void my_function(..., const Range& r,....)
if(r == Range.all()) {
// process all the data
else {
// process [r.start, r.end)
| Constructor and Description |
|---|
Range() |
Range(double[] vals) |
Range(int s,
int e) |
| Modifier and Type | Method and Description |
|---|---|
static Range |
all() |
Range |
clone() |
boolean |
empty() |
boolean |
equals(Object obj) |
int |
hashCode() |
Range |
intersection(Range r1) |
void |
set(double[] vals) |
Range |
shift(int delta) |
int |
size() |
String |
toString() |
Copyright © 2014. All rights reserved.