public class PicCircleFrom3Points extends PicEllipse implements CustomizerFactory
super.setPoint using a
PicParallelogram.SQUARE EditPointConstraint.| Modifier and Type | Field and Description |
|---|---|
protected java.util.ArrayList |
controlPts
A list holding the three control-points this circle goes through, and serving
as a convenient caching mechanism.
|
protected static int |
CTRL_P_1
index of first control-point, aka P_1, in
controlPts list |
protected static int |
CTRL_P_2
index of second control-point, aka P_2, in
controlPts list |
protected static int |
CTRL_P_3
index of last control-point, aka P_3, in
controlPts list |
static int |
LAST_PT |
static int |
P_1
index of first end-point
|
static int |
P_2
index of intermediate point
|
static int |
P_3
index of last end-point
|
CHORD, closure, greatAxis, OPEN, P_ANGLE_END, P_ANGLE_START, PIE, rotatedAngleEnd, rotatedAngleStart, rotationAngle, skewAngleEnd, skewAngleStart, smallAxisb2tVec, CENTER_FIXED, DEFAULT, FIRST_PT, l2rVec, P_BL, P_BR, P_CENTER, P_SPEC_BL, P_SPEC_BR, P_SPEC_TR, P_TL, P_TR, SIDE_B, SIDE_L, SIDE_R, SIDE_T, SQUAREnodeConnections, nodeName, ptsattributeSet, parent, viewARROW_GLOBAL_SCALE_LENGTH, ARROW_GLOBAL_SCALE_WIDTH, ARROW_INSET_SCALE, ARROW_LENGTH_SCALE, ARROW_WIDTH_LINEWIDTH_SCALE, ARROW_WIDTH_MINIMUM_MM, BRACKET_LENGTH_SCALE, CROSSHATCH, CROSSHATCH_FILLED, DASH_OPAQUE, DASH_TRANSPARENT, DASH1, DASH2, DASH3, DASHED, DIMEN, DOT_SEP, DOT_SEP1, DOT_SEP2, DOT_SEP3, DOTTED, DOUBLE_COLOR, DOUBLE_LINE, DOUBLE_SEP, FILL_COLOR, FILL_STYLE, HATCH_ANGLE, HATCH_COLOR, HATCH_SEP, HATCH_WIDTH, HLINES, HLINES_FILLED, INNER, LEFT_ARROW, LINE_COLOR, LINE_STYLE, LINE_WIDTH, MIDDLE, NONE, OUTER, OVER_STRIKE, OVER_STRIKE_COLOR, OVER_STRIKE_WIDTH, POLYDOTS_ANGLE, POLYDOTS_CIRCLE, POLYDOTS_DISK, POLYDOTS_PENTAGON, POLYDOTS_PENTAGON_FILLED, POLYDOTS_PLUS, POLYDOTS_SCALE_H, POLYDOTS_SCALE_V, POLYDOTS_SIZE_LINEWIDTH_SCALE, POLYDOTS_SIZE_MINIMUM_MM, POLYDOTS_SQUARE, POLYDOTS_SQUARE_FILLED, POLYDOTS_STYLE, POLYDOTS_SUPERIMPOSE, POLYDOTS_TRIANGLE, POLYDOTS_TRIANGLE_FILLED, PS_POINT, PST_CUSTOM, RBRACKET_LENGTH_SCALE, RIGHT_ARROW, SHADOW, SHADOW_ANGLE, SHADOW_COLOR, SHADOW_SIZE, SOLID, TBAR_WIDTH_LINEWIDTH_SCALE, TBAR_WIDTH_MINIMUM_MM, TEXT_BOX_CIRCLE, TEXT_BOX_NO_FRAME, TEXT_BOX_OVAL, TEXT_BOX_RECTANGLE, TEXT_FRAME, TEXT_HALIGN_CENTER, TEXT_HALIGN_LEFT, TEXT_HALIGN_RIGHT, TEXT_HOR_ALIGN, TEXT_ROTATION, TEXT_VALIGN_BASELINE, TEXT_VALIGN_BOTTOM, TEXT_VALIGN_CENTER, TEXT_VALIGN_TOP, TEXT_VERT_ALIGN, VLINES, VLINES_FILLED| Constructor and Description |
|---|
PicCircleFrom3Points()
Creates a new circle reduced to a single point located at (0,0).
|
PicCircleFrom3Points(boolean plain,
int closure)
Creates a new arc or circle reduced to a single point located at (0,0), with a default attribute set
and the given closure type.
|
PicCircleFrom3Points(boolean plain,
int closure,
PicAttributeSet set)
Creates a new arc or circle reduced to a single point located at (0,0),
with the given closure and attribute set.
|
PicCircleFrom3Points(PicAttributeSet set)
Creates a new (full) circle reduced to a single point located at (0,0), with the given attribute set.
|
PicCircleFrom3Points(PicCircleFrom3Points circle)
"cloning" constructor (to be used by clone())
|
PicCircleFrom3Points(PicPoint pt1,
PicPoint pt2,
PicPoint pt3,
boolean plain,
int closure,
PicAttributeSet set)
Create a new arc or circle whose geometry is specified by the 3 given points, and
with the given attribute set.
|
PicCircleFrom3Points(PicPoint pt1,
PicPoint pt2,
PicPoint pt3,
PicAttributeSet set)
Create a new circle whose geometry is specificed by the the 3 given points, and
with the given attribute set.
|
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
clone()
Overrides Object.clone() method
|
PicEllipse |
convertToEllipse()
Convert this circle to a new PicEllipse object.
|
PEAction[] |
createActions(ActionDispatcher actionDispatcher,
ActionLocalizer localizer,
HitInfo hi)
Create an array of Action's related to this object
|
AbstractCustomizer |
createCustomizer()
Return a Customizer for geometry editing
|
protected PicPoint |
getControlPoint(int i)
Returns a reference to the ith control-point in the
controlPts list. |
int |
getFirstPointIndex()
Returns the index of the first user-controlled point that can be retrieved by
getPoint(). |
int |
getLastPointIndex()
Returns the index of the last user-controlled point that can be retrieved by
getPoint(). |
java.lang.String |
getName()
Return a localised string that represents this object's name
|
PicPoint |
getPoint(int numPoint,
PicPoint src)
Get the coordinate of the point indexed by "numPoint" to the given value.
|
boolean |
isPlain()
Return true if this PicEllipse is a plain ellipse, ie if angle extent equals 360.
|
void |
rotate(PicPoint ptOrg,
double angle)
Rotate this Element by the given angle along the given point
|
void |
scale(double ptOrgX,
double ptOrgY,
double sx,
double sy)
Scale this object by (sx,sy) using (ptOrgX,ptOrgY) as the origin.
|
protected void |
setControlPoint(int i,
PicPoint pt)
Set the coordinates of ith control-point from the given point.
|
void |
setPlain(boolean b) |
void |
setPoint(int numPoint,
PicPoint pt,
EditPointConstraint c)
Set the coordinate of the point indexed by "numPoint" to the given value.
|
void |
shear(PicPoint ptOrg,
double shx,
double shy)
Shear this Element by the given params wrt to the given origin
|
java.lang.String |
toString()
Implementation of the Object.toString() method, used for debugging purpose
|
void |
translate(double dx,
double dy)
Translate this circle by (dx,dy)
|
protected void |
updateControlPoints(int numPoint)
Update the values of the three control-points from the geometry of the superclass.
|
protected void |
updateEllipse()
This method update the geometry of the superclass, i.e.
|
_updateAxis, convertToMultiCurve, getAngleEnd, getAngleExtent, getAngleStart, getArcType, getArcTypeAsString, getGreatAxisLength, getRotatedAngleEnd, getRotatedAngleExtent, getRotatedAngleStart, getRotationAngle, getSmallAxisLength, getTangentAtAngleEnd, getTangentAtAngleStart, isArc, isCircle, isCircular, isClosed, isFlat, isRotated, setAngleEnd, setAngleExtent, setAngleStart, setArcType, setPlain, updateAxis, updateRotatedAnglesgetBoundingBox, getCenter, getCenterX, getCenterY, getPointX, getPointY, isRectangle, toParalleloBasisCoordinates, updateParalleloBasisaddConnection, fireChangedUpdate, forwardChangedUpdate, getAllowsChildren, getNodeName, getNumberOfSpecificationPoints, getPoint, getSpecificationPoint, getSpecificationPoint, getSpecificationPointX, getSpecificationPointY, isNode, isNodeable, iterator, nodeConnectionOrigin, nodeReferencePoint, nodeReferencePointX, nodeReferencePointY, removeAllConnections, removeConnection, setNodeName, setPoint, setSpecificationPointanchorPointsIterator, getAttribute, getAttributeSet, getDrawing, getParent, getView, removeView, scale, setAttribute, setAttributeSet, setParent, setViewFromFactorypublic static final int P_1
public static final int P_2
public static final int P_3
public static final int LAST_PT
protected java.util.ArrayList controlPts
setPoint method, and
are used to update superclass geometry when updateEllipse is invoked.
Besides, protected getter/setter getControlPoint(int) and setControlPoint(int, jpicedt.graphic.PicPoint) allow to
edit them easily without cumbersome class-cast.protected static final int CTRL_P_1
controlPts listprotected static final int CTRL_P_2
controlPts listprotected static final int CTRL_P_3
controlPts listpublic PicCircleFrom3Points()
public PicCircleFrom3Points(boolean plain,
int closure)
plain - if true, we draw a plain circle and ignore the closure parameter.closure - closure type as defined in java.awt.geom.Arc2Dpublic PicCircleFrom3Points(PicAttributeSet set)
public PicCircleFrom3Points(boolean plain,
int closure,
PicAttributeSet set)
plain - if true, we draw a plain circle and ignore the closure parameter.closure - closure type as defined in java.awt.geom.Arc2Dpublic PicCircleFrom3Points(PicPoint pt1, PicPoint pt2, PicPoint pt3, PicAttributeSet set)
public PicCircleFrom3Points(PicPoint pt1, PicPoint pt2, PicPoint pt3, boolean plain, int closure, PicAttributeSet set)
plain - whether to draw a plain circle or an arcclosure - closure type as defined in java.awt.geom.Arc2Dpublic PicCircleFrom3Points(PicCircleFrom3Points circle)
public java.lang.Object clone()
clone in interface Elementclone in class PicEllipsepublic int getFirstPointIndex()
getPoint().getFirstPointIndex in interface ElementgetFirstPointIndex in class PicParallelogrampublic int getLastPointIndex()
getPoint().getLastPointIndex in interface ElementgetLastPointIndex in class PicEllipsepublic java.lang.String getName()
PicEllipsegetName in interface ElementgetName in class PicEllipsepublic PicEllipse convertToEllipse()
protected PicPoint getControlPoint(int i)
controlPts list.i - one of CTRL_P_1, CTRL_P_2 or CTRL_P_3.protected void setControlPoint(int i,
PicPoint pt)
i - one of P_1, P_2 or P_3.protected void updateEllipse()
protected void updateControlPoints(int numPoint)
numPoint - index of the PicParallelogram's control-point that was movedpublic void setPoint(int numPoint,
PicPoint pt,
EditPointConstraint c)
setPoint in interface ElementsetPoint in class PicEllipsenumPoint - one of P_TL, P_TR, P_BL, P_BR, SIDE_T, SIDE_B, SIDE_L, SIDE_R or P_CENTER.c - either null, DEFAULT, CENTER_FIXED or SQUAREpublic PicPoint getPoint(int numPoint, PicPoint src)
getPoint in interface ElementgetPoint in class PicEllipsenumPoint - one of P_1, P_2 or P_3.src - a PicPoint to update and create if necessarynumPoint ;
if src is null, allocates a new PicPoint and return it,
otherwise directly modifies src and returns it as well for convenience.public void translate(double dx,
double dy)
translate in interface Elementtranslate in class DefaultLeafElementdx - The X coordinate of translation vectordy - The Y coordinate of translation vectorpublic void scale(double ptOrgX,
double ptOrgY,
double sx,
double sy)
sx and sy may be negative.
This method eventually fires a changed-update event.scale in interface Elementscale in class PicEllipsepublic void rotate(PicPoint ptOrg, double angle)
rotate in interface Elementrotate in class PicEllipseangle - rotation angle in radianspublic void shear(PicPoint ptOrg, double shx, double shy)
shear in interface Elementshear in class PicEllipsepublic boolean isPlain()
PicEllipseisPlain in class PicEllipsepublic void setPlain(boolean b)
public java.lang.String toString()
toString in class PicEllipsepublic PEAction[] createActions(ActionDispatcher actionDispatcher, ActionLocalizer localizer, HitInfo hi)
createActions in interface ActionFactorycreateActions in class PicParallelogramactionDispatcher - dispatches events to the proper PECanvaslocalizer - i18n localizer for PEAction'shi - a HitInfo containing information related to the mouse-event which triggered the popup menu.public AbstractCustomizer createCustomizer()
createCustomizer in interface CustomizerFactorycreateCustomizer in class PicEllipseSubmit a bug : syd@jpicedt.org