public class Region extends Object implements Parcelable
Modifier and Type | Class and Description |
---|---|
static class |
Region.Op |
Parcelable.ClassLoaderCreator<T>, Parcelable.Creator<T>
Modifier and Type | Field and Description |
---|---|
static Parcelable.Creator<Region> |
CREATOR |
long |
mNativeRegion |
CONTENTS_FILE_DESCRIPTOR, PARCELABLE_ELIDE_DUPLICATES, PARCELABLE_WRITE_RETURN_VALUE
Constructor and Description |
---|
Region()
Create an empty region
|
Region(int left,
int top,
int right,
int bottom)
Return a region set to the specified rectangle
|
Region(Rect r)
Return a region set to the specified rectangle
|
Region(Region region)
Return a copy of the specified region
|
Modifier and Type | Method and Description |
---|---|
boolean |
contains(int x,
int y)
Return true if the region contains the specified point
|
int |
describeContents()
Describe the kinds of special objects contained in this Parcelable
instance's marshaled representation.
|
boolean |
equals(Object obj)
Indicates whether some other object is "equal to" this one.
|
protected void |
finalize()
Called by the garbage collector on an object when garbage collection
determines that there are no more references to the object.
|
Path |
getBoundaryPath()
Return the boundary of the region as a new Path.
|
boolean |
getBoundaryPath(Path path)
Set the path to the boundary of the region.
|
Rect |
getBounds()
Return a new Rect set to the bounds of the region.
|
boolean |
getBounds(Rect r)
Set the Rect to the bounds of the region.
|
boolean |
isComplex()
Return true if the region contains more than one rectangle
|
boolean |
isEmpty()
Return true if this region is empty
|
boolean |
isRect()
Return true if the region contains a single rectangle
|
static Region |
obtain() |
static Region |
obtain(Region other) |
boolean |
op(int left,
int top,
int right,
int bottom,
Region.Op op)
Perform the specified Op on this region and the specified rect.
|
boolean |
op(Rect r,
Region.Op op)
Perform the specified Op on this region and the specified rect.
|
boolean |
op(Rect rect,
Region region,
Region.Op op)
Set this region to the result of performing the Op on the specified rect
and region.
|
boolean |
op(Region region,
Region.Op op)
Perform the specified Op on this region and the specified region.
|
boolean |
op(Region region1,
Region region2,
Region.Op op)
Set this region to the result of performing the Op on the specified
regions.
|
boolean |
quickContains(int left,
int top,
int right,
int bottom)
Return true if the region is a single rectangle (not complex) and it
contains the specified rectangle.
|
boolean |
quickContains(Rect r)
Return true if the region is a single rectangle (not complex) and it
contains the specified rectangle.
|
boolean |
quickReject(int left,
int top,
int right,
int bottom)
Return true if the region is empty, or if the specified rectangle does
not intersect the region.
|
boolean |
quickReject(Rect r)
Return true if the region is empty, or if the specified rectangle does
not intersect the region.
|
boolean |
quickReject(Region rgn)
Return true if the region is empty, or if the specified region does not
intersect the region.
|
void |
recycle()
Recycles an instance.
|
void |
scale(float scale)
Scale the region by the given scale amount.
|
void |
scale(float scale,
Region dst)
Set the dst region to the result of scaling this region by the given scale amount.
|
boolean |
set(int left,
int top,
int right,
int bottom)
Set the region to the specified rectangle
|
boolean |
set(Rect r)
Set the region to the specified rectangle
|
boolean |
set(Region region)
Set the region to the specified region.
|
void |
setEmpty()
Set the region to the empty region
|
boolean |
setPath(Path path,
Region clip)
Set the region to the area described by the path and clip.
|
String |
toString()
Returns a string representation of the object.
|
void |
translate(int dx,
int dy)
Translate the region by [dx, dy].
|
void |
translate(int dx,
int dy,
Region dst)
Set the dst region to the result of translating this region by [dx, dy].
|
boolean |
union(Rect r) |
void |
writeToParcel(Parcel p,
int flags)
Write the region and its pixels to the parcel.
|
public long mNativeRegion
public static final Parcelable.Creator<Region> CREATOR
public Region()
public Region(Region region)
public Region(Rect r)
public Region(int left, int top, int right, int bottom)
public void setEmpty()
public boolean set(Region region)
public boolean set(Rect r)
public boolean set(int left, int top, int right, int bottom)
public boolean setPath(Path path, Region clip)
public boolean isEmpty()
public boolean isRect()
public boolean isComplex()
public Rect getBounds()
public boolean getBounds(Rect r)
public Path getBoundaryPath()
public boolean getBoundaryPath(Path path)
public boolean contains(int x, int y)
public boolean quickContains(Rect r)
public boolean quickContains(int left, int top, int right, int bottom)
public boolean quickReject(Rect r)
public boolean quickReject(int left, int top, int right, int bottom)
public boolean quickReject(Region rgn)
public void translate(int dx, int dy)
public void translate(int dx, int dy, Region dst)
public void scale(float scale)
public void scale(float scale, Region dst)
public final boolean union(Rect r)
public boolean op(Rect r, Region.Op op)
public boolean op(int left, int top, int right, int bottom, Region.Op op)
public boolean op(Region region, Region.Op op)
public boolean op(Rect rect, Region region, Region.Op op)
public boolean op(Region region1, Region region2, Region.Op op)
public String toString()
Object
toString
method returns a string that
"textually represents" this object. The result should
be a concise but informative representation that is easy for a
person to read.
It is recommended that all subclasses override this method.
The toString
method for class Object
returns a string consisting of the name of the class of which the
object is an instance, the at-sign character `@
', and
the unsigned hexadecimal representation of the hash code of the
object. In other words, this method returns a string equal to the
value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
public static Region obtain()
public static Region obtain(Region other)
other
- Region to copy values from for initialization.public void recycle()
public int describeContents()
Parcelable
Parcelable.writeToParcel(Parcel, int)
,
the return value of this method must include the
Parcelable.CONTENTS_FILE_DESCRIPTOR
bit.describeContents
in interface Parcelable
Parcelable.CONTENTS_FILE_DESCRIPTOR
public void writeToParcel(Parcel p, int flags)
writeToParcel
in interface Parcelable
p
- Parcel object to write the region data intoflags
- Additional flags about how the object should be written.
May be 0 or Parcelable.PARCELABLE_WRITE_RETURN_VALUE
.public boolean equals(Object obj)
Object
The equals
method implements an equivalence relation
on non-null object references:
x
, x.equals(x)
should return
true
.
x
and y
, x.equals(y)
should return true
if and only if
y.equals(x)
returns true
.
x
, y
, and z
, if
x.equals(y)
returns true
and
y.equals(z)
returns true
, then
x.equals(z)
should return true
.
x
and y
, multiple invocations of
x.equals(y)
consistently return true
or consistently return false
, provided no
information used in equals
comparisons on the
objects is modified.
x
,
x.equals(null)
should return false
.
The equals
method for class Object
implements
the most discriminating possible equivalence relation on objects;
that is, for any non-null reference values x
and
y
, this method returns true
if and only
if x
and y
refer to the same object
(x == y
has the value true
).
Note that it is generally necessary to override the hashCode
method whenever this method is overridden, so as to maintain the
general contract for the hashCode
method, which states
that equal objects must have equal hash codes.
equals
in class Object
obj
- the reference object with which to compare.true
if this object is the same as the obj
argument; false
otherwise.Object.hashCode()
,
HashMap
protected void finalize() throws Throwable
Object
finalize
method to dispose of
system resources or to perform other cleanup.
The general contract of finalize
is that it is invoked
if and when the JavaTM virtual
machine has determined that there is no longer any
means by which this object can be accessed by any thread that has
not yet died, except as a result of an action taken by the
finalization of some other object or class which is ready to be
finalized. The finalize
method may take any action, including
making this object available again to other threads; the usual purpose
of finalize
, however, is to perform cleanup actions before
the object is irrevocably discarded. For example, the finalize method
for an object that represents an input/output connection might perform
explicit I/O transactions to break the connection before the object is
permanently discarded.
The finalize
method of class Object
performs no
special action; it simply returns normally. Subclasses of
Object
may override this definition.
The Java programming language does not guarantee which thread will
invoke the finalize
method for any given object. It is
guaranteed, however, that the thread that invokes finalize will not
be holding any user-visible synchronization locks when finalize is
invoked. If an uncaught exception is thrown by the finalize method,
the exception is ignored and finalization of that object terminates.
After the finalize
method has been invoked for an object, no
further action is taken until the Java virtual machine has again
determined that there is no longer any means by which this object can
be accessed by any thread that has not yet died, including possible
actions by other objects or classes which are ready to be finalized,
at which point the object may be discarded.
The finalize
method is never invoked more than once by a Java
virtual machine for any given object.
Any exception thrown by the finalize
method causes
the finalization of this object to be halted, but is otherwise
ignored.