openshot-audio
0.1.7
|
#include <juce_graphics.h>
Public Member Functions | |
Rectangle () noexcept | |
Rectangle (const Rectangle &other) noexcept | |
Rectangle (ValueType initialX, ValueType initialY, ValueType width, ValueType height) noexcept | |
Rectangle (ValueType width, ValueType height) noexcept | |
Rectangle (Point< ValueType > corner1, Point< ValueType > corner2) noexcept | |
Rectangle & | operator= (const Rectangle &other) noexcept |
~Rectangle () noexcept | |
bool | isEmpty () const noexcept |
bool | isFinite () const noexcept |
ValueType | getX () const noexcept |
ValueType | getY () const noexcept |
ValueType | getWidth () const noexcept |
ValueType | getHeight () const noexcept |
ValueType | getRight () const noexcept |
ValueType | getBottom () const noexcept |
ValueType | getCentreX () const noexcept |
ValueType | getCentreY () const noexcept |
Point< ValueType > | getCentre () const noexcept |
ValueType | getAspectRatio (bool widthOverHeight=true) const noexcept |
Point< ValueType > | getPosition () const noexcept |
void | setPosition (Point< ValueType > newPos) noexcept |
void | setPosition (ValueType newX, ValueType newY) noexcept |
Point< ValueType > | getTopLeft () const noexcept |
Point< ValueType > | getTopRight () const noexcept |
Point< ValueType > | getBottomLeft () const noexcept |
Point< ValueType > | getBottomRight () const noexcept |
Range< ValueType > | getHorizontalRange () const noexcept |
Range< ValueType > | getVerticalRange () const noexcept |
void | setSize (ValueType newWidth, ValueType newHeight) noexcept |
void | setBounds (ValueType newX, ValueType newY, ValueType newWidth, ValueType newHeight) noexcept |
void | setX (ValueType newX) noexcept |
void | setY (ValueType newY) noexcept |
void | setWidth (ValueType newWidth) noexcept |
void | setHeight (ValueType newHeight) noexcept |
void | setCentre (ValueType newCentreX, ValueType newCentreY) noexcept |
void | setCentre (Point< ValueType > newCentre) noexcept |
void | setHorizontalRange (Range< ValueType > range) noexcept |
void | setVerticalRange (Range< ValueType > range) noexcept |
Rectangle | withX (ValueType newX) const noexcept |
Rectangle | withY (ValueType newY) const noexcept |
Rectangle | withPosition (ValueType newX, ValueType newY) const noexcept |
Rectangle | withPosition (Point< ValueType > newPos) const noexcept |
Rectangle | withZeroOrigin () const noexcept |
Rectangle | withCentre (Point< ValueType > newCentre) const noexcept |
Rectangle | withWidth (ValueType newWidth) const noexcept |
Rectangle | withHeight (ValueType newHeight) const noexcept |
Rectangle | withSize (ValueType newWidth, ValueType newHeight) const noexcept |
Rectangle | withSizeKeepingCentre (ValueType newWidth, ValueType newHeight) const noexcept |
void | setLeft (ValueType newLeft) noexcept |
Rectangle | withLeft (ValueType newLeft) const noexcept |
void | setTop (ValueType newTop) noexcept |
Rectangle | withTop (ValueType newTop) const noexcept |
void | setRight (ValueType newRight) noexcept |
Rectangle | withRight (ValueType newRight) const noexcept |
void | setBottom (ValueType newBottom) noexcept |
Rectangle | withBottom (ValueType newBottom) const noexcept |
Rectangle | withTrimmedLeft (ValueType amountToRemove) const noexcept |
Rectangle | withTrimmedRight (ValueType amountToRemove) const noexcept |
Rectangle | withTrimmedTop (ValueType amountToRemove) const noexcept |
Rectangle | withTrimmedBottom (ValueType amountToRemove) const noexcept |
void | translate (ValueType deltaX, ValueType deltaY) noexcept |
Rectangle | translated (ValueType deltaX, ValueType deltaY) const noexcept |
Rectangle | operator+ (Point< ValueType > deltaPosition) const noexcept |
Rectangle & | operator+= (Point< ValueType > deltaPosition) noexcept |
Rectangle | operator- (Point< ValueType > deltaPosition) const noexcept |
Rectangle & | operator-= (Point< ValueType > deltaPosition) noexcept |
template<typename FloatType > | |
Rectangle | operator* (FloatType scaleFactor) const noexcept |
template<typename FloatType > | |
Rectangle | operator*= (FloatType scaleFactor) noexcept |
template<typename FloatType > | |
Rectangle | operator*= (Point< FloatType > scaleFactor) noexcept |
template<typename FloatType > | |
Rectangle | operator/ (FloatType scaleFactor) const noexcept |
template<typename FloatType > | |
Rectangle | operator/= (FloatType scaleFactor) noexcept |
template<typename FloatType > | |
Rectangle | operator/= (Point< FloatType > scaleFactor) noexcept |
void | expand (ValueType deltaX, ValueType deltaY) noexcept |
Rectangle | expanded (ValueType deltaX, ValueType deltaY) const noexcept |
Rectangle | expanded (ValueType delta) const noexcept |
void | reduce (ValueType deltaX, ValueType deltaY) noexcept |
Rectangle | reduced (ValueType deltaX, ValueType deltaY) const noexcept |
Rectangle | reduced (ValueType delta) const noexcept |
Rectangle | removeFromTop (ValueType amountToRemove) noexcept |
Rectangle | removeFromLeft (ValueType amountToRemove) noexcept |
Rectangle | removeFromRight (ValueType amountToRemove) noexcept |
Rectangle | removeFromBottom (ValueType amountToRemove) noexcept |
bool | operator== (const Rectangle &other) const noexcept |
bool | operator!= (const Rectangle &other) const noexcept |
bool | contains (ValueType xCoord, ValueType yCoord) const noexcept |
bool | contains (Point< ValueType > point) const noexcept |
bool | contains (const Rectangle &other) const noexcept |
Point< ValueType > | getConstrainedPoint (Point< ValueType > point) const noexcept |
Point< ValueType > | getRelativePoint (double relativeX, double relativeY) const noexcept |
bool | intersects (const Rectangle &other) const noexcept |
bool | intersects (const Line< ValueType > &line) const noexcept |
Rectangle | getIntersection (const Rectangle &other) const noexcept |
bool | intersectRectangle (ValueType &otherX, ValueType &otherY, ValueType &otherW, ValueType &otherH) const noexcept |
bool | intersectRectangle (Rectangle< ValueType > &rectangleToClip) const noexcept |
Rectangle | getUnion (const Rectangle &other) const noexcept |
bool | enlargeIfAdjacent (const Rectangle &other) noexcept |
bool | reduceIfPartlyContainedIn (const Rectangle &other) noexcept |
Rectangle | constrainedWithin (const Rectangle &areaToFitWithin) const noexcept |
Rectangle | transformedBy (const AffineTransform &transform) const noexcept |
Rectangle< int > | getSmallestIntegerContainer () const noexcept |
Rectangle< float > | toFloat () const noexcept |
Rectangle< double > | toDouble () const noexcept |
template<typename TargetType > | |
Rectangle< TargetType > | toType () const noexcept |
String | toString () const |
void | copyWithRounding (Rectangle< int > &result) const noexcept |
void | copyWithRounding (Rectangle< float > &result) const noexcept |
void | copyWithRounding (Rectangle< double > &result) const noexcept |
Static Public Member Functions | |
static Rectangle | leftTopRightBottom (ValueType left, ValueType top, ValueType right, ValueType bottom) noexcept |
static Rectangle | findAreaContainingPoints (const Point< ValueType > *const points, const int numPoints) noexcept |
static bool | intersectRectangles (ValueType &x1, ValueType &y1, ValueType &w1, ValueType &h1, const ValueType x2, const ValueType y2, const ValueType w2, const ValueType h2) noexcept |
static Rectangle | fromString (StringRef stringVersion) |
static int | parseIntAfterSpace (StringRef s) noexcept |
static int | floorAsInt (int n) noexcept |
static int | floorAsInt (float n) noexcept |
static int | floorAsInt (double n) noexcept |
static int | ceilAsInt (int n) noexcept |
static int | ceilAsInt (float n) noexcept |
static int | ceilAsInt (double n) noexcept |
Public Attributes | |
JUCE_DEPRECATED_WITH_BODY(Rectangle transformed(const AffineTransform &t) const noexcept, { return transformedBy(t);}) private Point< ValueType > | pos |
ValueType | w |
ValueType | h |
Manages a rectangle and allows geometric operations to be performed on it.
|
inlinenoexcept |
Creates a rectangle of zero size. The default coordinates will be (0, 0, 0, 0).
|
inlinenoexcept |
Creates a copy of another rectangle.
|
inlinenoexcept |
Creates a rectangle with a given position and size.
|
inlinenoexcept |
Creates a rectangle with a given size, and a position of (0, 0).
|
inlinenoexcept |
Creates a Rectangle from the positions of two opposite corners.
|
inlinenoexcept |
Destructor.
|
inlinestaticnoexcept |
|
inlinestaticnoexcept |
|
inlinestaticnoexcept |
|
inlinenoexcept |
Tries to fit this rectangle within a target area, returning the result.
If this rectangle is not completely inside the target area, then it'll be shifted (without changing its size) so that it lies within the target. If it is larger than the target rectangle in either dimension, then that dimension will be reduced to fit within the target.
|
inlinenoexcept |
Returns true if this coordinate is inside the rectangle.
|
inlinenoexcept |
Returns true if this coordinate is inside the rectangle.
|
inlinenoexcept |
Returns true if this other rectangle is completely inside this one.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
If this rectangle merged with another one results in a simple rectangle, this will set this rectangle to the result, and return true.
Returns false and does nothing to this rectangle if the two rectangles don't overlap, or if they form a complex region.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinestaticnoexcept |
Returns the smallest Rectangle that can contain a set of points.
|
inlinestaticnoexcept |
|
inlinestaticnoexcept |
|
inlinestaticnoexcept |
|
inlinestatic |
Parses a string containing a rectangle's details.
The string should contain 4 integer tokens, in the form "x y width height". They can be comma or whitespace separated.
This method is intended to go with the toString() method, to form an easy way of saving/loading rectangles as strings.
|
inlinenoexcept |
Returns the aspect ratio of the rectangle's width / height. If widthOverHeight is true, it returns width / height; if widthOverHeight is false, it returns height / width.
|
inlinenoexcept |
Returns the y coordinate of the rectangle's bottom edge.
|
inlinenoexcept |
Returns the rectangle's bottom-left position as a Point.
|
inlinenoexcept |
Returns the rectangle's bottom-right position as a Point.
|
inlinenoexcept |
Returns the centre point of the rectangle.
|
inlinenoexcept |
Returns the x coordinate of the rectangle's centre.
|
inlinenoexcept |
Returns the y coordinate of the rectangle's centre.
|
inlinenoexcept |
Returns the nearest point to the specified point that lies within this rectangle.
|
inlinenoexcept |
Returns the height of the rectangle.
|
inlinenoexcept |
Returns the rectangle's left and right positions as a Range.
|
inlinenoexcept |
Returns the region that is the overlap between this and another rectangle. If the two rectangles don't overlap, the rectangle returned will be empty.
|
inlinenoexcept |
Returns the rectangle's top-left position as a Point.
|
inlinenoexcept |
Returns a point within this rectangle, specified as proportional coordinates. The relative X and Y values should be between 0 and 1, where 0 is the left or top of this rectangle, and 1 is the right or bottom. (Out-of-bounds values will return a point outside the rectangle).
|
inlinenoexcept |
Returns the x coordinate of the rectangle's right-hand-side.
|
inlinenoexcept |
Returns the smallest integer-aligned rectangle that completely contains this one. This is only relevent for floating-point rectangles, of course.
|
inlinenoexcept |
Returns the rectangle's top-left position as a Point.
|
inlinenoexcept |
Returns the rectangle's top-right position as a Point.
|
inlinenoexcept |
Returns the smallest rectangle that contains both this one and the one passed-in.
If either this or the other rectangle are empty, they will not be counted as part of the resulting region.
|
inlinenoexcept |
Returns the rectangle's top and bottom positions as a Range.
|
inlinenoexcept |
Returns the width of the rectangle.
|
inlinenoexcept |
Returns the x coordinate of the rectangle's left-hand-side.
|
inlinenoexcept |
Returns the y coordinate of the rectangle's top edge.
|
inlinenoexcept |
Clips a set of rectangle coordinates so that they lie only within this one. This is a non-static version of intersectRectangles(). Returns false if the two rectangles didn't overlap.
|
inlinenoexcept |
Clips a rectangle so that it lies only within this one. Returns false if the two rectangles didn't overlap.
|
inlinestaticnoexcept |
Static utility to intersect two sets of rectangular coordinates. Returns false if the two regions didn't overlap.
|
inlinenoexcept |
Returns true if any part of another rectangle overlaps this one.
|
inlinenoexcept |
Returns true if any part of the given line lies inside this rectangle.
|
inlinenoexcept |
Returns true if the rectangle's width or height are zero or less
|
inlinenoexcept |
Returns true if the rectangle's values are all finite numbers, i.e. not NaN or infinity.
|
inlinestaticnoexcept |
Creates a Rectangle from a set of left, right, top, bottom coordinates. The right and bottom values must be larger than the left and top ones, or the resulting rectangle will have a negative size.
|
inlinenoexcept |
Returns true if the two rectangles are not identical.
|
inlinenoexcept |
Returns a rectangle that has been scaled by the given amount, centred around the origin. Note that if the rectangle has int coordinates and it's scaled by a floating-point amount, then the result will be converted back to integer coordinates using getSmallestIntegerContainer().
|
inlinenoexcept |
Scales this rectangle by the given amount, centred around the origin. Note that if the rectangle has int coordinates and it's scaled by a floating-point amount, then the result will be converted back to integer coordinates using getSmallestIntegerContainer().
|
inlinenoexcept |
Scales this rectangle by the given X and Y factors, centred around the origin. Note that if the rectangle has int coordinates and it's scaled by a floating-point amount, then the result will be converted back to integer coordinates using getSmallestIntegerContainer().
|
inlinenoexcept |
Returns a rectangle which is the same as this one moved by a given amount.
|
inlinenoexcept |
Moves this rectangle by a given amount.
|
inlinenoexcept |
Returns a rectangle which is the same as this one moved by a given amount.
|
inlinenoexcept |
Moves this rectangle by a given amount.
|
inlinenoexcept |
Scales this rectangle by the given amount, centred around the origin.
|
inlinenoexcept |
Scales this rectangle by the given amount, centred around the origin.
|
inlinenoexcept |
Scales this rectangle by the given X and Y factors, centred around the origin.
|
inlinenoexcept |
|
inlinenoexcept |
Returns true if the two rectangles are identical.
|
inlinestaticnoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
If after removing another rectangle from this one the result is a simple rectangle, this will set this object's bounds to be the result, and return true.
Returns false and does nothing to this rectangle if the two rectangles don't overlap, or if removing the other one would form a complex region.
|
inlinenoexcept |
Removes a strip from the bottom of this rectangle, reducing this rectangle by the specified amount and returning the section that was removed.
E.g. if this rectangle is (100, 100, 300, 300) and amountToRemove is 50, this will return (100, 250, 300, 50) and leave this rectangle as (100, 100, 300, 250).
If amountToRemove is greater than the height of this rectangle, it'll be clipped to that value.
|
inlinenoexcept |
Removes a strip from the left-hand edge of this rectangle, reducing this rectangle by the specified amount and returning the section that was removed.
E.g. if this rectangle is (100, 100, 300, 300) and amountToRemove is 50, this will return (100, 100, 50, 300) and leave this rectangle as (150, 100, 250, 300).
If amountToRemove is greater than the width of this rectangle, it'll be clipped to that value.
|
inlinenoexcept |
Removes a strip from the right-hand edge of this rectangle, reducing this rectangle by the specified amount and returning the section that was removed.
E.g. if this rectangle is (100, 100, 300, 300) and amountToRemove is 50, this will return (250, 100, 50, 300) and leave this rectangle as (100, 100, 250, 300).
If amountToRemove is greater than the width of this rectangle, it'll be clipped to that value.
|
inlinenoexcept |
Removes a strip from the top of this rectangle, reducing this rectangle by the specified amount and returning the section that was removed.
E.g. if this rectangle is (100, 100, 300, 300) and amountToRemove is 50, this will return (100, 100, 300, 50) and leave this rectangle as (100, 150, 300, 250).
If amountToRemove is greater than the height of this rectangle, it'll be clipped to that value.
|
inlinenoexcept |
Adjusts the height so that the bottom edge of the rectangle has this new value. If the new bottom is lower than the current Y value, the Y will be pushed down to match it.
|
inlinenoexcept |
Changes all the rectangle's coordinates.
|
inlinenoexcept |
Changes the position of the rectangle's centre (leaving its size unchanged).
|
inlinenoexcept |
Changes the position of the rectangle's centre (leaving its size unchanged).
|
inlinenoexcept |
Changes the rectangle's height
|
inlinenoexcept |
Changes the position of the rectangle's left and right edges.
|
inlinenoexcept |
Moves the x position, adjusting the width so that the right-hand edge remains in the same place. If the x is moved to be on the right of the current right-hand edge, the width will be set to zero.
|
inlinenoexcept |
Changes the position of the rectangle's top-left corner (leaving its size unchanged).
|
inlinenoexcept |
Changes the position of the rectangle's top-left corner (leaving its size unchanged).
|
inlinenoexcept |
|
inlinenoexcept |
Changes the rectangle's size, leaving the position of its top-left corner unchanged.
|
inlinenoexcept |
Moves the y position, adjusting the height so that the bottom edge remains in the same place. If the y is moved to be below the current bottom edge, the height will be set to zero.
|
inlinenoexcept |
Changes the position of the rectangle's top and bottom edges.
|
inlinenoexcept |
Changes the rectangle's width
|
inlinenoexcept |
Changes the rectangle's X coordinate
|
inlinenoexcept |
Changes the rectangle's Y coordinate
|
inlinenoexcept |
Casts this rectangle to a Rectangle<double>.
|
inlinenoexcept |
Casts this rectangle to a Rectangle<float>.
|
inline |
Creates a string describing this rectangle.
The string will be of the form "x y width height", e.g. "100 100 400 200".
Coupled with the fromString() method, this is very handy for things like storing rectangles (particularly component positions) in XML attributes.
|
inlinenoexcept |
Casts this rectangle to a Rectangle with the given type. If the target type is a conversion from float to int, then the conversion will be done using getSmallestIntegerContainer().
|
inlinenoexcept |
Returns the smallest rectangle that can contain the shape created by applying a transform to this rectangle.
This should only be used on floating point rectangles.
|
inlinenoexcept |
Moves the rectangle's position by adding amount to its x and y coordinates.
|
inlinenoexcept |
Returns a rectangle which is the same as this one moved by a given amount.
|
inlinenoexcept |
Returns a new rectangle with a different bottom edge position, but the same top edge as this one. If the new y is beyond the bottom of the current rectangle, the height will be set to zero.
|
inlinenoexcept |
Returns a rectangle with the same size as this one, but a new centre position.
|
inlinenoexcept |
Returns a rectangle which has the same position and width as this one, but with a different height.
|
inlinenoexcept |
Returns a new rectangle with a different x position, but the same right-hand edge as this one. If the new x is beyond the right of the current right-hand edge, the width will be set to zero.
|
inlinenoexcept |
Returns a rectangle with the same size as this one, but a new position.
|
inlinenoexcept |
Returns a rectangle with the same size as this one, but a new position.
|
inlinenoexcept |
Returns a new rectangle with a different right-hand edge position, but the same left-hand edge as this one. If the new right edge is below the current left-hand edge, the width will be set to zero.
|
inlinenoexcept |
Returns a rectangle with the same top-left position as this one, but a new size.
|
inlinenoexcept |
Returns a rectangle with the same centre position as this one, but a new size.
|
inlinenoexcept |
Returns a new rectangle with a different y position, but the same bottom edge as this one. If the new y is beyond the bottom of the current rectangle, the height will be set to zero.
|
inlinenoexcept |
Returns a version of this rectangle with the given amount removed from its bottom edge.
|
inlinenoexcept |
Returns a version of this rectangle with the given amount removed from its left-hand edge.
|
inlinenoexcept |
Returns a version of this rectangle with the given amount removed from its right-hand edge.
|
inlinenoexcept |
Returns a version of this rectangle with the given amount removed from its top edge.
|
inlinenoexcept |
Returns a rectangle which has the same position and height as this one, but with a different width.
|
inlinenoexcept |
Returns a rectangle which has the same size and y-position as this one, but with a different x-position.
|
inlinenoexcept |
Returns a rectangle which has the same size and x-position as this one, but with a different y-position.
|
inlinenoexcept |
Returns a rectangle whose size is the same as this one, but whose top-left position is (0, 0).
ValueType juce::Rectangle< ValueType >::h |
JUCE_DEPRECATED_WITH_BODY (Rectangle transformed (const AffineTransform& t) const noexcept, { return transformedBy (t); }) private Point<ValueType> juce::Rectangle< ValueType >::pos |
ValueType juce::Rectangle< ValueType >::w |