public class ArcTo extends PathElement
For more information on path elements see the Path
and
PathElement
classes.
Example:
import javafx.scene.shape.*; Path path = new Path(); MoveTo moveTo = new MoveTo(); moveTo.setX(0.0); moveTo.setY(0.0); ArcTo arcTo = new ArcTo(); arcTo.setX(50.0); arcTo.setY(50.0); arcTo.setRadiusX(50.0); arcTo.setRadiusY(50.0); path.getElements().add(moveTo); path.getElements().add(arcTo);
Following image demonstrates radiusX
, radiusY
and
xAxisRotation
parameters:
radiusX
is the horizontal radius of the full ellipse of which this arc is
a partial section, radiusY
is its vertical radius.
xAxisRotation
defines the rotation of the ellipse in degrees.
In most cases, there are four options of how to draw an arc from
starting point to given end coordinates. They can be distinguished by
largeArcFlag
and sweepFlag
parameters.
largeArcFlag == true
means that the arc greater than 180 degrees will
be drawn. sweepFlag == true
means that the arc will be drawn
in the positive angle direction - i.e. the angle in the
ellipse formula will increase from [fromX, fromY]
to [x,y]
.
Following images demonstrate this behavior:
Type | Property and Description |
---|---|
BooleanProperty |
largeArcFlag
The large arc flag.
|
DoubleProperty |
radiusX
The horizontal radius to use for the arc.
|
DoubleProperty |
radiusY
The vertical radius to use for the arc.
|
BooleanProperty |
sweepFlag
The sweep flag
|
DoubleProperty |
XAxisRotation
The x-axis rotation in degrees.
|
DoubleProperty |
x
The x coordinate to arc to.
|
DoubleProperty |
y
The y coordinate to arc to.
|
absoluteProperty
Modifier and Type | Field and Description |
---|---|
private BooleanProperty |
largeArcFlag
The large arc flag.
|
private DoubleProperty |
radiusX
The horizontal radius to use for the arc.
|
private DoubleProperty |
radiusY
The vertical radius to use for the arc.
|
private BooleanProperty |
sweepFlag
The sweep flag
|
private DoubleProperty |
x
The x coordinate to arc to.
|
private DoubleProperty |
xAxisRotation
The x-axis rotation in degrees.
|
private DoubleProperty |
y
The y coordinate to arc to.
|
nodes
Constructor and Description |
---|
ArcTo()
Creates an empty instance of ArcTo.
|
ArcTo(double radiusX,
double radiusY,
double xAxisRotation,
double x,
double y,
boolean largeArcFlag,
boolean sweepFlag)
Creates a new instance of ArcTo.
|
Modifier and Type | Method and Description |
---|---|
private void |
addArcTo(NGPath pgPath,
Path2D path,
double x0,
double y0) |
(package private) void |
addTo(NGPath pgPath) |
private void |
doAddTo(Path2D path) |
double |
getRadiusX()
Gets the value of the property radiusX.
|
double |
getRadiusY()
Gets the value of the property radiusY.
|
double |
getX()
Gets the value of the property x.
|
double |
getXAxisRotation()
Gets the x-axis rotation in degrees.
|
double |
getY()
Gets the value of the property y.
|
boolean |
isLargeArcFlag()
Gets the value of the property largeArcFlag.
|
boolean |
isSweepFlag()
Gets the value of the property sweepFlag.
|
BooleanProperty |
largeArcFlagProperty()
The large arc flag.
|
DoubleProperty |
radiusXProperty()
The horizontal radius to use for the arc.
|
DoubleProperty |
radiusYProperty()
The vertical radius to use for the arc.
|
void |
setLargeArcFlag(boolean value)
Sets the value of the property largeArcFlag.
|
void |
setRadiusX(double value)
Sets the value of the property radiusX.
|
void |
setRadiusY(double value)
Sets the value of the property radiusY.
|
void |
setSweepFlag(boolean value)
Sets the value of the property sweepFlag.
|
void |
setX(double value)
Sets the value of the property x.
|
void |
setXAxisRotation(double value)
Sets the x-axis rotation in degrees.
|
void |
setY(double value)
Sets the value of the property y.
|
BooleanProperty |
sweepFlagProperty()
The sweep flag
|
java.lang.String |
toString()
Returns a string representation of this
ArcTo object. |
DoubleProperty |
XAxisRotationProperty()
The x-axis rotation in degrees.
|
DoubleProperty |
xProperty()
The x coordinate to arc to.
|
DoubleProperty |
yProperty()
The y coordinate to arc to.
|
absoluteProperty, addNode, isAbsolute, removeNode, setAbsolute, u
public final DoubleProperty radiusXProperty
getRadiusX()
,
setRadiusX(double)
public final DoubleProperty radiusYProperty
getRadiusY()
,
setRadiusY(double)
public final DoubleProperty XAxisRotationProperty
getXAxisRotation()
,
setXAxisRotation(double)
public final BooleanProperty largeArcFlagProperty
isLargeArcFlag()
,
setLargeArcFlag(boolean)
public final BooleanProperty sweepFlagProperty
isSweepFlag()
,
setSweepFlag(boolean)
public final DoubleProperty xProperty
getX()
,
setX(double)
public final DoubleProperty yProperty
getY()
,
setY(double)
private DoubleProperty radiusX
private DoubleProperty radiusY
private DoubleProperty xAxisRotation
private BooleanProperty largeArcFlag
private BooleanProperty sweepFlag
private DoubleProperty x
private DoubleProperty y
public ArcTo()
public ArcTo(double radiusX, double radiusY, double xAxisRotation, double x, double y, boolean largeArcFlag, boolean sweepFlag)
radiusX
- horizontal radius of the arcradiusY
- vertical radius of the arcxAxisRotation
- the x-axis rotation in degreesx
- horizontal position of the arc end pointy
- vertical position of the arc end pointlargeArcFlag
- large arg flag: determines which arc to use (large/small)sweepFlag
- sweep flag: determines which arc to use (direction)public final void setRadiusX(double value)
public final double getRadiusX()
public final DoubleProperty radiusXProperty()
getRadiusX()
,
setRadiusX(double)
public final void setRadiusY(double value)
public final double getRadiusY()
public final DoubleProperty radiusYProperty()
getRadiusY()
,
setRadiusY(double)
public final void setXAxisRotation(double value)
value
- the x-axis rotation in degrees.public final double getXAxisRotation()
public final DoubleProperty XAxisRotationProperty()
getXAxisRotation()
,
setXAxisRotation(double)
public final void setLargeArcFlag(boolean value)
public final boolean isLargeArcFlag()
public final BooleanProperty largeArcFlagProperty()
isLargeArcFlag()
,
setLargeArcFlag(boolean)
public final void setSweepFlag(boolean value)
public final boolean isSweepFlag()
public final BooleanProperty sweepFlagProperty()
isSweepFlag()
,
setSweepFlag(boolean)
public final void setX(double value)
public final double getX()
public final DoubleProperty xProperty()
getX()
,
setX(double)
public final void setY(double value)
public final double getY()
public final DoubleProperty yProperty()
getY()
,
setY(double)
void addTo(NGPath pgPath)
addTo
in class PathElement
private void doAddTo(Path2D path)
private void addArcTo(NGPath pgPath, Path2D path, double x0, double y0)
public java.lang.String toString()
ArcTo
object.toString
in class java.lang.Object
ArcTo
object.