declare namespace java {
namespace awt {
namespace geom {
/**
* The Rectangle2D class describes a rectangle
* defined by a location {@code (x,y)} and dimension
* {@code (w x h)}.
*
* This class is only the abstract superclass for all objects that
* store a 2D rectangle.
* The actual storage representation of the coordinates is left to
* the subclass.
* @author Jim Graham
* @since 1.2
*/
// @ts-ignore
abstract class Rectangle2D extends java.awt.geom.RectangularShape {
/**
* This is an abstract class that cannot be instantiated directly.
* Type-specific implementation subclasses are available for
* instantiation and provide a number of formats for storing
* the information necessary to satisfy the various accessor
* methods below.
* @see java.awt.geom.Rectangle2D.Float
* @see java.awt.geom.Rectangle2D.Double
* @see java.awt.Rectangle
* @since 1.2
*/
// @ts-ignore
constructor()
/**
* The bitmask that indicates that a point lies to the left of
* this Rectangle2D.
* @since 1.2
*/
// @ts-ignore
public static readonly OUT_LEFT: number /*int*/
/**
* The bitmask that indicates that a point lies above
* this Rectangle2D.
* @since 1.2
*/
// @ts-ignore
public static readonly OUT_TOP: number /*int*/
/**
* The bitmask that indicates that a point lies to the right of
* this Rectangle2D.
* @since 1.2
*/
// @ts-ignore
public static readonly OUT_RIGHT: number /*int*/
/**
* The bitmask that indicates that a point lies below
* this Rectangle2D.
* @since 1.2
*/
// @ts-ignore
public static readonly OUT_BOTTOM: number /*int*/
/**
* Sets the location and size of this Rectangle2D
* to the specified double values.
* @param x the X coordinate of the upper-left corner
* of this Rectangle2D
* @param y the Y coordinate of the upper-left corner
* of this Rectangle2D
* @param w the width of this Rectangle2D
* @param h the height of this Rectangle2D
* @since 1.2
*/
// @ts-ignore
public abstract setRect(x: number /*double*/, y: number /*double*/, w: number /*double*/, h: number /*double*/): void
/**
* Sets this Rectangle2D to be the same as the specified
* Rectangle2D.
* @param r the specified Rectangle2D
* @since 1.2
*/
// @ts-ignore
public setRect(r: java.awt.geom.Rectangle2D): void
/**
* Tests if the specified line segment intersects the interior of this
* Rectangle2D.
* @param x1 the X coordinate of the start point of the specified
* line segment
* @param y1 the Y coordinate of the start point of the specified
* line segment
* @param x2 the X coordinate of the end point of the specified
* line segment
* @param y2 the Y coordinate of the end point of the specified
* line segment
* @return true if the specified line segment intersects
* the interior of this Rectangle2D; false
* otherwise.
* @since 1.2
*/
// @ts-ignore
public intersectsLine(x1: number /*double*/, y1: number /*double*/, x2: number /*double*/, y2: number /*double*/): boolean
/**
* Tests if the specified line segment intersects the interior of this
* Rectangle2D.
* @param l the specified {#link Line2D} to test for intersection
* with the interior of this Rectangle2D
* @return true if the specified Line2D
* intersects the interior of this Rectangle2D;
* false otherwise.
* @since 1.2
*/
// @ts-ignore
public intersectsLine(l: java.awt.geom.Line2D): boolean
/**
* Determines where the specified coordinates lie with respect
* to this Rectangle2D.
* This method computes a binary OR of the appropriate mask values
* indicating, for each side of this Rectangle2D,
* whether or not the specified coordinates are on the same side
* of the edge as the rest of this Rectangle2D.
* @param x the specified X coordinate
* @param y the specified Y coordinate
* @return the logical OR of all appropriate out codes.
* @see #OUT_LEFT
* @see #OUT_TOP
* @see #OUT_RIGHT
* @see #OUT_BOTTOM
* @since 1.2
*/
// @ts-ignore
public abstract outcode(x: number /*double*/, y: number /*double*/): number /*int*/
/**
* Determines where the specified {@link Point2D} lies with
* respect to this Rectangle2D.
* This method computes a binary OR of the appropriate mask values
* indicating, for each side of this Rectangle2D,
* whether or not the specified Point2D is on the same
* side of the edge as the rest of this Rectangle2D.
* @param p the specified Point2D
* @return the logical OR of all appropriate out codes.
* @see #OUT_LEFT
* @see #OUT_TOP
* @see #OUT_RIGHT
* @see #OUT_BOTTOM
* @since 1.2
*/
// @ts-ignore
public outcode(p: java.awt.geom.Point2D): number /*int*/
/**
* Sets the location and size of the outer bounds of this
* Rectangle2D to the specified rectangular values.
* @param x the X coordinate of the upper-left corner
* of this Rectangle2D
* @param y the Y coordinate of the upper-left corner
* of this Rectangle2D
* @param w the width of this Rectangle2D
* @param h the height of this Rectangle2D
* @since 1.2
*/
// @ts-ignore
public setFrame(x: number /*double*/, y: number /*double*/, w: number /*double*/, h: number /*double*/): void
/**
* {@inheritDoc}
* @since 1.2
*/
// @ts-ignore
public getBounds2D(): java.awt.geom.Rectangle2D
/**
* {@inheritDoc}
* @since 1.2
*/
// @ts-ignore
public contains(x: number /*double*/, y: number /*double*/): boolean
/**
* {@inheritDoc}
* @since 1.2
*/
// @ts-ignore
public intersects(x: number /*double*/, y: number /*double*/, w: number /*double*/, h: number /*double*/): boolean
/**
* {@inheritDoc}
* @since 1.2
*/
// @ts-ignore
public contains(x: number /*double*/, y: number /*double*/, w: number /*double*/, h: number /*double*/): boolean
/**
* Returns a new Rectangle2D object representing the
* intersection of this Rectangle2D with the specified
* Rectangle2D.
* @param r the Rectangle2D to be intersected with
* this Rectangle2D
* @return the largest Rectangle2D contained in both
* the specified Rectangle2D and in this
* Rectangle2D.
* @since 1.2
*/
// @ts-ignore
public abstract createIntersection(r: java.awt.geom.Rectangle2D): java.awt.geom.Rectangle2D
/**
* Intersects the pair of specified source Rectangle2D
* objects and puts the result into the specified destination
* Rectangle2D object. One of the source rectangles
* can also be the destination to avoid creating a third Rectangle2D
* object, but in this case the original points of this source
* rectangle will be overwritten by this method.
* @param src1 the first of a pair of Rectangle2D
* objects to be intersected with each other
* @param src2 the second of a pair of Rectangle2D
* objects to be intersected with each other
* @param dest the Rectangle2D that holds the
* results of the intersection of src1 and
* src2
* @since 1.2
*/
// @ts-ignore
public static intersect(src1: java.awt.geom.Rectangle2D, src2: java.awt.geom.Rectangle2D, dest: java.awt.geom.Rectangle2D): void
/**
* Returns a new Rectangle2D object representing the
* union of this Rectangle2D with the specified
* Rectangle2D.
* @param r the Rectangle2D to be combined with
* this Rectangle2D
* @return the smallest Rectangle2D containing both
* the specified Rectangle2D and this
* Rectangle2D.
* @since 1.2
*/
// @ts-ignore
public abstract createUnion(r: java.awt.geom.Rectangle2D): java.awt.geom.Rectangle2D
/**
* Unions the pair of source Rectangle2D objects
* and puts the result into the specified destination
* Rectangle2D object. One of the source rectangles
* can also be the destination to avoid creating a third Rectangle2D
* object, but in this case the original points of this source
* rectangle will be overwritten by this method.
* @param src1 the first of a pair of Rectangle2D
* objects to be combined with each other
* @param src2 the second of a pair of Rectangle2D
* objects to be combined with each other
* @param dest the Rectangle2D that holds the
* results of the union of src1 and
* src2
* @since 1.2
*/
// @ts-ignore
public static union(src1: java.awt.geom.Rectangle2D, src2: java.awt.geom.Rectangle2D, dest: java.awt.geom.Rectangle2D): void
/**
* Adds a point, specified by the double precision arguments
* newx and newy, to this
* Rectangle2D. The resulting Rectangle2D
* is the smallest Rectangle2D that
* contains both the original Rectangle2D and the
* specified point.
*
* After adding a point, a call to contains with the
* added point as an argument does not necessarily return
* true. The contains method does not
* return true for points on the right or bottom
* edges of a rectangle. Therefore, if the added point falls on
* the left or bottom edge of the enlarged rectangle,
* contains returns false for that point.
* @param newx the X coordinate of the new point
* @param newy the Y coordinate of the new point
* @since 1.2
*/
// @ts-ignore
public add(newx: number /*double*/, newy: number /*double*/): void
/**
* Adds the Point2D object pt to this
* Rectangle2D.
* The resulting Rectangle2D is the smallest
* Rectangle2D that contains both the original
* Rectangle2D and the specified Point2D.
*
* After adding a point, a call to contains with the
* added point as an argument does not necessarily return
* true. The contains
* method does not return true for points on the right
* or bottom edges of a rectangle. Therefore, if the added point falls
* on the left or bottom edge of the enlarged rectangle,
* contains returns false for that point.
* @param pt the new Point2D to add to this
* Rectangle2D.
* @since 1.2
*/
// @ts-ignore
public add(pt: java.awt.geom.Point2D): void
/**
* Adds a Rectangle2D object to this
* Rectangle2D. The resulting Rectangle2D
* is the union of the two Rectangle2D objects.
* @param r the Rectangle2D to add to this
* Rectangle2D.
* @since 1.2
*/
// @ts-ignore
public add(r: java.awt.geom.Rectangle2D): void
/**
* Returns an iteration object that defines the boundary of this
* Rectangle2D.
* The iterator for this class is multi-threaded safe, which means
* that this Rectangle2D class guarantees that
* modifications to the geometry of this Rectangle2D
* object do not affect any iterations of that geometry that
* are already in process.
* @param at an optional AffineTransform to be applied to
* the coordinates as they are returned in the iteration, or
* null if untransformed coordinates are desired
* @return the PathIterator object that returns the
* geometry of the outline of this
* Rectangle2D, one segment at a time.
* @since 1.2
*/
// @ts-ignore
public getPathIterator(at: java.awt.geom.AffineTransform): java.awt.geom.PathIterator
/**
* Returns an iteration object that defines the boundary of the
* flattened Rectangle2D. Since rectangles are already
* flat, the flatness parameter is ignored.
* The iterator for this class is multi-threaded safe, which means
* that this Rectangle2D class guarantees that
* modifications to the geometry of this Rectangle2D
* object do not affect any iterations of that geometry that
* are already in process.
* @param at an optional AffineTransform to be applied to
* the coordinates as they are returned in the iteration, or
* null if untransformed coordinates are desired
* @param flatness the maximum distance that the line segments used to
* approximate the curved segments are allowed to deviate from any
* point on the original curve. Since rectangles are already flat,
* the flatness parameter is ignored.
* @return the PathIterator object that returns the
* geometry of the outline of this
* Rectangle2D, one segment at a time.
* @since 1.2
*/
// @ts-ignore
public getPathIterator(at: java.awt.geom.AffineTransform, flatness: number /*double*/): java.awt.geom.PathIterator
/**
* Returns the hashcode for this Rectangle2D.
* @return the hashcode for this Rectangle2D.
* @since 1.2
*/
// @ts-ignore
public hashCode(): number /*int*/
/**
* Determines whether or not the specified Object is
* equal to this Rectangle2D. The specified
* Object is equal to this Rectangle2D
* if it is an instance of Rectangle2D and if its
* location and size are the same as this Rectangle2D.
* @param obj an Object to be compared with this
* Rectangle2D.
* @return true if obj is an instance
* of Rectangle2D and has
* the same values; false otherwise.
* @since 1.2
*/
// @ts-ignore
public equals(obj: java.lang.Object | any): boolean
}
}
}
}