public final class Utilities
extends java.lang.Object
Constructor and Description |
---|
Utilities() |
Modifier and Type | Method and Description |
---|---|
static <T extends java.awt.geom.Point2D> |
add(T changed,
double addX,
double addY) |
static <T extends java.awt.geom.Point2D> |
add(T changed,
java.awt.geom.Point2D changeVector)
Add (translate) the coordinates of one point with the coordinates of another
|
static boolean |
areClose(float a,
float b) |
static void |
cartesianToPolar(java.awt.geom.Point2D coordCenter,
java.awt.geom.Point2D point,
java.awt.geom.Point2D result) |
static boolean |
checkIntersect(java.awt.geom.Point2D pt,
java.awt.geom.Rectangle2D rc,
float rad)
Checks if the specified rectangle and circle intersect.
|
static <T extends java.awt.geom.Point2D> |
clone(T point) |
static <T extends java.awt.geom.Rectangle2D> |
clone(T rect) |
static java.lang.String |
concat(java.lang.String delimiter,
java.lang.Object... objs)
Joins array elements using the specified delimiter.
|
static <T extends java.awt.geom.Rectangle2D> |
convertRect(java.awt.geom.Rectangle2D rc,
T dest) |
static java.awt.geom.Rectangle2D |
deviceToDoc(java.awt.Graphics2D g,
java.awt.Rectangle r) |
static double |
distance(java.awt.geom.Point2D pt1,
java.awt.geom.Point2D pt2) |
static float |
distToLineSegment(java.awt.geom.Point2D pt,
java.awt.geom.Point2D p1,
java.awt.geom.Point2D p2)
Calculates distance from the specified
point to the specified line segment.
|
static java.awt.geom.Point2D |
distToRectPoint(java.awt.geom.Point2D pt,
java.awt.geom.Rectangle2D r)
Returns the nearest to pt point that lies on the outline of rectangle.
|
static java.awt.Rectangle |
docToDevice(java.awt.Graphics2D g,
java.awt.geom.Rectangle2D r) |
static void |
drawImage(java.awt.Graphics2D g,
java.awt.Image image,
java.awt.geom.Rectangle2D rect,
ImageAlign imageAlign,
Diagram diagram) |
static void |
drawImage(java.awt.Graphics2D g,
java.awt.Image image,
java.awt.geom.Rectangle2D rect,
ImageAlign imageAlign,
Diagram diagram,
double rotationAngle,
java.awt.geom.Point2D pivot) |
static <T,D extends T> |
filter(java.lang.Iterable<T> unfiltered,
java.lang.Class<D> desiredType)
Creates Iterable that iterates only over the subset of the given Iterable that consist of elements of desired type
Example: for (TableNode t: filter(diagram .getItems(), TableNode.class)) t.getRowCount();
|
static <T,D extends T> |
filter(java.util.Iterator<T> unfiltered,
java.lang.Class<D> desiredType)
Creates Iterator that iterates only over the subset of the
given Iterator that consist of elements of desired type
|
static java.awt.Component |
findValidateRoot(javax.swing.JComponent c)
Returns the ancestor component that acts as validate root
|
static java.awt.geom.Rectangle2D |
FromLTRB(double l,
double t,
double r,
double b) |
static void |
getArcParams(java.awt.geom.Point2D.Float pt1,
java.awt.geom.Point2D.Float pt2,
boolean isLargeArc,
boolean isCounterclockwise,
float radiusX,
float radiusY,
float angleRotation,
java.awt.geom.Point2D.Float centerPt,
com.mindfusion.common.ByRef<java.lang.Float> startAngle,
com.mindfusion.common.ByRef<java.lang.Float> sweepAngle)
Calculates the bounding rectangle, start and sweep angle of an arc
from the specified arc end points, direction flags and radius sizes.
|
static java.awt.geom.Point2D |
getLocation(java.awt.geom.Rectangle2D rect) |
static java.awt.geom.Dimension2D |
getSize(java.awt.geom.Rectangle2D rect) |
static void |
inflate(java.awt.geom.Rectangle2D rc,
double size) |
static <T extends java.awt.geom.Point2D> |
lineIntersect(java.awt.geom.Point2D pA,
java.awt.geom.Point2D pB,
java.awt.geom.Point2D pC,
java.awt.geom.Point2D pD,
java.awt.geom.Point2D result)
Calculates the intersection point of endless lines (pA, pB) and (pC, pD)
|
static double |
lineIntersectHorizontal(double y,
java.awt.geom.Point2D pA,
java.awt.geom.Point2D pB)
Finds the x coordinate of the intersection point of the horizontal line at y and the
line defined by points pA and pB.
|
static double |
lineIntersectVertical(double x,
java.awt.geom.Point2D pA,
java.awt.geom.Point2D pB)
Finds the y coordinate of the intersection point of the vertical line at x and the
line defined by points pA and pB.
|
static double |
minDistToRect(java.awt.geom.Point2D pt,
java.awt.geom.Rectangle2D rc)
Calculates the minimum distance between a given point and
a given rectangle.
|
static java.awt.geom.Point2D |
newPoint2D(double x,
double y) |
static java.awt.geom.Point2D |
newPoint2D(java.awt.geom.Point2D point) |
static java.awt.geom.Point2D.Double |
newPointDouble(double x,
double y) |
static java.awt.geom.Point2D.Double |
newPointDouble(java.awt.geom.Point2D point) |
static java.awt.geom.Point2D.Float |
newPointFloat() |
static java.awt.geom.Point2D.Float |
newPointFloat(double x,
double y) |
static java.awt.geom.Point2D.Float |
newPointFloat(java.awt.geom.Point2D point) |
static java.awt.geom.Rectangle2D |
newRectangle2D(double x,
double y,
double width,
double height) |
static java.awt.geom.Rectangle2D.Double |
newRectangleDouble(double x,
double y,
double width,
double height) |
static java.awt.geom.Rectangle2D.Double |
newRectangleDouble(java.awt.geom.Rectangle2D rc) |
static java.awt.geom.Rectangle2D.Float |
newRectangleFloat(double x,
double y,
double width,
double height) |
static java.awt.geom.Rectangle2D.Float |
newRectangleFloat(java.awt.geom.Rectangle2D rc) |
static java.awt.geom.Rectangle2D |
normalizeRect(java.awt.geom.Rectangle2D rc) |
static boolean |
parse(java.lang.String pair,
java.awt.geom.Point2D dest)
Parses space separated numbers into Point2D
|
static java.awt.geom.Point2D |
pointAlongLength(float distance,
java.util.List<java.awt.geom.Point2D.Float> segments) |
static boolean |
pointsInRect(java.util.List<java.awt.geom.Point2D> points,
java.awt.geom.Rectangle2D rect) |
static void |
polarToCartesian(java.awt.geom.Point2D coordCenter,
double a,
double r,
java.awt.geom.Point2D point) |
static java.lang.String |
readFileAsString(java.lang.String filePath) |
static <T extends java.awt.geom.Rectangle2D> |
resize(T changed,
double width,
double height) |
static void |
revalidateSynced(javax.swing.JComponent comp)
Performs synchronized revalidation to ensure that layout is up to date after this method returns.
|
static <T extends java.awt.geom.Point2D> |
set(T changed,
double x,
double y) |
static <T extends java.awt.geom.Rectangle2D> |
set(T changed,
double x,
double y) |
static <T extends java.awt.geom.Rectangle2D> |
set(T changed,
double x,
double y,
double width,
double height) |
static <T extends java.awt.geom.Rectangle2D> |
set(T changed,
java.awt.geom.Rectangle2D src) |
static <T extends java.awt.geom.Rectangle2D> |
setHeight(T changed,
double height) |
static <T extends java.awt.geom.Point2D> |
setLocation(T changed,
java.awt.geom.Rectangle2D src) |
static <T extends java.awt.geom.Rectangle2D> |
setWidth(T changed,
double width) |
static <T extends java.awt.geom.Point2D> |
setX(T changed,
double x) |
static <T extends java.awt.geom.Rectangle2D> |
setX(T changed,
double x) |
static <T extends java.awt.geom.Point2D> |
setY(T changed,
double y) |
static <T extends java.awt.geom.Rectangle2D> |
setY(T changed,
double y) |
static java.awt.Point |
subtract(java.awt.Point changed,
java.awt.Point changeVector)
Subtract the coordinates of one point from the coordinates of another
|
static <T extends java.awt.geom.Rectangle2D> |
translate(T changed,
double addX,
double addY) |
static <T extends java.awt.geom.Point2D> |
translateX(T changed,
double addX) |
static <T extends java.awt.geom.Rectangle2D> |
translateX(T changed,
double addX) |
static <T extends java.awt.geom.Point2D> |
translateY(T changed,
double addY) |
static <T extends java.awt.geom.Rectangle2D> |
translateY(T changed,
double addY) |
static java.awt.geom.Rectangle2D |
unionNonEmptyRects(java.awt.geom.Rectangle2D rc1,
java.awt.geom.Rectangle2D rc2) |
static byte[] |
unzip(byte[] bytes) |
static java.lang.String |
writeStringToFile(java.lang.String str,
java.lang.String filePath) |
public static java.awt.Rectangle docToDevice(java.awt.Graphics2D g, java.awt.geom.Rectangle2D r)
public static java.awt.geom.Rectangle2D deviceToDoc(java.awt.Graphics2D g, java.awt.Rectangle r)
public static java.awt.geom.Rectangle2D normalizeRect(java.awt.geom.Rectangle2D rc)
public static <T extends java.awt.geom.Rectangle2D> T convertRect(java.awt.geom.Rectangle2D rc, T dest)
public static void getArcParams(java.awt.geom.Point2D.Float pt1, java.awt.geom.Point2D.Float pt2, boolean isLargeArc, boolean isCounterclockwise, float radiusX, float radiusY, float angleRotation, java.awt.geom.Point2D.Float centerPt, com.mindfusion.common.ByRef<java.lang.Float> startAngle, com.mindfusion.common.ByRef<java.lang.Float> sweepAngle)
pt1
- Тhe arc's start point.pt2
- The arc's end point.isLargeArc
- A flag specifying whether to choose the shorter ot longer arc.isCounterclockwise
- A flag specifying whether to choose the clockwise arc.radiusX
- Specifies the X radius of the ellipse.radiusY
- Specifies the Y radius of the ellipse.angleRotation
- Specifies the rotation of the ellipse.centerPt
- Returns the center of the bounding rectangle.startAngle
- Returns the start angle of the arc.sweepAngle
- Returns the sweep angle of the arc.public static java.awt.geom.Rectangle2D unionNonEmptyRects(java.awt.geom.Rectangle2D rc1, java.awt.geom.Rectangle2D rc2)
public static java.awt.geom.Rectangle2D FromLTRB(double l, double t, double r, double b)
public static boolean areClose(float a, float b)
public static double lineIntersectVertical(double x, java.awt.geom.Point2D pA, java.awt.geom.Point2D pB)
y
coordinate.public static double lineIntersectHorizontal(double y, java.awt.geom.Point2D pA, java.awt.geom.Point2D pB)
x
coordinate.public static <T extends java.awt.geom.Point2D> boolean lineIntersect(java.awt.geom.Point2D pA, java.awt.geom.Point2D pB, java.awt.geom.Point2D pC, java.awt.geom.Point2D pD, java.awt.geom.Point2D result)
T
- pA
- pB
- pC
- pD
- result
- the point that will receive the result if the lines intersectpublic static void inflate(java.awt.geom.Rectangle2D rc, double size)
public static float distToLineSegment(java.awt.geom.Point2D pt, java.awt.geom.Point2D p1, java.awt.geom.Point2D p2)
public static void drawImage(java.awt.Graphics2D g, java.awt.Image image, java.awt.geom.Rectangle2D rect, ImageAlign imageAlign, Diagram diagram)
public static void drawImage(java.awt.Graphics2D g, java.awt.Image image, java.awt.geom.Rectangle2D rect, ImageAlign imageAlign, Diagram diagram, double rotationAngle, java.awt.geom.Point2D pivot)
public static boolean pointsInRect(java.util.List<java.awt.geom.Point2D> points, java.awt.geom.Rectangle2D rect)
public static void polarToCartesian(java.awt.geom.Point2D coordCenter, double a, double r, java.awt.geom.Point2D point)
public static void cartesianToPolar(java.awt.geom.Point2D coordCenter, java.awt.geom.Point2D point, java.awt.geom.Point2D result)
public static double distance(java.awt.geom.Point2D pt1, java.awt.geom.Point2D pt2)
public static java.awt.Point subtract(java.awt.Point changed, java.awt.Point changeVector)
changed
- changeVector
- public static <T extends java.awt.geom.Point2D> T add(T changed, java.awt.geom.Point2D changeVector)
changed
- changeVector
- public static <T extends java.awt.geom.Point2D> T add(T changed, double addX, double addY)
public static <T extends java.awt.geom.Point2D> T translateX(T changed, double addX)
public static <T extends java.awt.geom.Point2D> T translateY(T changed, double addY)
public static <T extends java.awt.geom.Point2D> T set(T changed, double x, double y)
public static <T extends java.awt.geom.Point2D> T setX(T changed, double x)
public static <T extends java.awt.geom.Point2D> T setY(T changed, double y)
public static <T extends java.awt.geom.Point2D> T setLocation(T changed, java.awt.geom.Rectangle2D src)
public static java.awt.geom.Point2D getLocation(java.awt.geom.Rectangle2D rect)
public static java.awt.geom.Dimension2D getSize(java.awt.geom.Rectangle2D rect)
public static <T extends java.awt.geom.Rectangle2D> T set(T changed, double x, double y, double width, double height)
public static <T extends java.awt.geom.Rectangle2D> T set(T changed, double x, double y)
public static <T extends java.awt.geom.Rectangle2D> T set(T changed, java.awt.geom.Rectangle2D src)
public static <T extends java.awt.geom.Rectangle2D> T setX(T changed, double x)
public static <T extends java.awt.geom.Rectangle2D> T setY(T changed, double y)
public static <T extends java.awt.geom.Rectangle2D> T setHeight(T changed, double height)
public static <T extends java.awt.geom.Rectangle2D> T setWidth(T changed, double width)
public static <T extends java.awt.geom.Rectangle2D> T resize(T changed, double width, double height)
public static <T extends java.awt.geom.Rectangle2D> T translate(T changed, double addX, double addY)
public static <T extends java.awt.geom.Rectangle2D> T translateX(T changed, double addX)
public static <T extends java.awt.geom.Rectangle2D> T translateY(T changed, double addY)
public static <T extends java.awt.geom.Point2D> T clone(T point)
public static <T extends java.awt.geom.Rectangle2D> T clone(T rect)
public static java.awt.geom.Point2D.Float newPointFloat()
public static java.awt.geom.Point2D.Float newPointFloat(java.awt.geom.Point2D point)
public static java.awt.geom.Point2D.Float newPointFloat(double x, double y)
public static java.awt.geom.Point2D.Double newPointDouble(java.awt.geom.Point2D point)
public static java.awt.geom.Point2D.Double newPointDouble(double x, double y)
public static java.awt.geom.Point2D newPoint2D(java.awt.geom.Point2D point)
public static java.awt.geom.Point2D newPoint2D(double x, double y)
public static java.awt.geom.Rectangle2D.Float newRectangleFloat(double x, double y, double width, double height)
public static java.awt.geom.Rectangle2D.Float newRectangleFloat(java.awt.geom.Rectangle2D rc)
public static java.awt.geom.Rectangle2D.Double newRectangleDouble(double x, double y, double width, double height)
public static java.awt.geom.Rectangle2D.Double newRectangleDouble(java.awt.geom.Rectangle2D rc)
public static java.awt.geom.Rectangle2D newRectangle2D(double x, double y, double width, double height)
public static java.awt.Component findValidateRoot(javax.swing.JComponent c)
c
- A JComponent whose validation root should be returned.c
.public static void revalidateSynced(javax.swing.JComponent comp)
public static java.lang.String concat(java.lang.String delimiter, java.lang.Object... objs)
delimiter
- A character inserted between the array elements.objs
- The objects to be joined.public static boolean parse(java.lang.String pair, java.awt.geom.Point2D dest)
pair
- A string representation of the point coordinates.dest
- A Point2D object to which the parsed values are assigned.true
if the string has been parsed successfully, otherwise false
.public static <T,D extends T> java.lang.Iterable<D> filter(java.lang.Iterable<T> unfiltered, java.lang.Class<D> desiredType)
unfiltered
- the collection of items that can be of different type.desiredType
- the class of the items in the collection to be returned.public static <T,D extends T> java.util.Iterator<D> filter(java.util.Iterator<T> unfiltered, java.lang.Class<D> desiredType)
unfiltered
- the collection of items that can be of different type.desiredType
- the class of the items in the collection to be returned.public static boolean checkIntersect(java.awt.geom.Point2D pt, java.awt.geom.Rectangle2D rc, float rad)
public static double minDistToRect(java.awt.geom.Point2D pt, java.awt.geom.Rectangle2D rc)
public static java.awt.geom.Point2D distToRectPoint(java.awt.geom.Point2D pt, java.awt.geom.Rectangle2D r)
public static byte[] unzip(byte[] bytes)
public static java.lang.String readFileAsString(java.lang.String filePath)
public static java.lang.String writeStringToFile(java.lang.String str, java.lang.String filePath)
public static java.awt.geom.Point2D pointAlongLength(float distance, java.util.List<java.awt.geom.Point2D.Float> segments)