|
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Element
This interface specifies the general contract for models of graphic elements that may be added to a Drawing.
A MODEL of graphic element basically comprises :
getFirstPointIndex()
to
getLastPointIndex()
inclusive. These methods may be used e.g. by the UI machinery when
processing mouse-events, or by parsers when building a new Drawing from scratch.
PointIterator
).
java.awt.Shape
, or by any other kind of mechanism the developper thinks is appropriate
to the particular model she wants to implement.
Method Summary | ||
---|---|---|
PointIndexIterator |
anchorPointsIterator()
Return an Iterator over user-controlled point indexes that can for instance serve as anchor points for grid alignment. |
|
Element |
clone()
Return a deep copy of this element. |
|
Shape |
createShape()
Creates a Shape that reflects the geometry of this model. |
|
|
getAttribute(PicAttributeName<T> name)
Return the value for the given attribute name |
|
PicAttributeSet |
getAttributeSet()
Returns the AttributeSet for this Element |
|
Rectangle2D |
getBoundingBox(Rectangle2D r)
|
|
PicPoint |
getCtrlPt(int index,
PicPoint dest)
Return the user-controlled point having the given index. |
|
CtrlPtSubset |
getCtrlPtSubset(ConvexZoneGroup csg,
BitSet czExtension)
Renvoie un la partie des points de contrôle qui satisfont à l'un des deux critères suivants: ceux compris dans l'ensemble de zones convexes csg , et
ceux en relation avec les points de contrôle satisfaisant au première critère selon une relation
définies par czExtension
|
|
Drawing |
getDrawing()
Retrieves the underlying drawing |
|
int |
getFirstPointIndex()
Return the index of the first user-controlled point that can be retrieved by getCtrlPt() |
|
int |
getLastPointIndex()
Return the index of the last user-controlled point that can be retrieved by getCtrlPt() |
|
String |
getName()
Return a non-localised string representing this element's name. |
|
BranchElement |
getParent()
Gets the parent of the element. |
|
View |
getView()
|
|
void |
mirror(PicPoint ptOrg,
PicVector normalVector)
Effectue une réflexion de l'objet this relativement à la
droite passant par le point ptOrg et normale au vecteur
normalVector . |
|
void |
removeView()
remove the view that render this element ; this may be used to remove any reference to the view, and render it eligible for garbage collection ; if no View, does nothing. |
|
void |
replaceBy(Element by,
boolean replaceInSelection)
La méthode replaceBy remplace dans le dessin l'élément this par l'élément
by . |
|
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 origin
sx and sy can be negative. |
|
void |
scale(double ptOrgX,
double ptOrgY,
double sx,
double sy,
UserConfirmationCache ucc)
Pareil que scale(double ptOrgX, double ptOrgY, double sx, double sy) sauf que dans le cas
d'une dilatation non conforme — c'est à dire ne conservant pas les proportions —,
et d'une forme supposée à proportions contraintes (comme par exemple PicCircleFrom3Points )
on demande, sauf préférences utilisateurs contraires, son avis à l'utilisateur. |
|
void |
scale(PicPoint ptOrg,
double sx,
double sy)
Scale this object by (sx,sy) using ptOrg as origin
sx and sy may be negative. |
|
void |
scale(PicPoint ptOrg,
double sx,
double sy,
UserConfirmationCache ucc)
|
|
|
setAttribute(PicAttributeName<T> name,
T value)
Sets the given attribute name to the given value for this Element |
|
void |
setAttributeSet(PicAttributeSet attributeSet)
Sets a new AttributeSet for this Element ; this actually make a deep copy of the given attribute set beforehands. |
|
void |
setCtrlPt(int index,
PicPoint pt)
Set the user-controlled point indexed by "index" to the given value. |
|
void |
setCtrlPt(int index,
PicPoint pt,
EditPointConstraint constraint)
Set the user-controlled point indexed by "index" to the given value, using the specified geometrical constraint. |
|
void |
setParent(BranchElement p)
Sets the parent of the element. |
|
void |
setViewFromFactory(ViewFactory f)
set the view for this Element from the given view factory |
|
void |
shear(PicPoint ptOrg,
double shx,
double shy)
Shear this Element by the given params wrt to the given origin |
|
void |
shear(PicPoint ptOrg,
double shx,
double shy,
UserConfirmationCache ucc)
Pareil que shear(PicPoint ptOrg, double shx, double shy) sauf que dans le cas
d'une dilatation non conforme — c'est à dire ne conservant pas les proportions —,
et d'une forme supposée à proportions contraintes (comme par exemple PicCircleFrom3Points )
on demande, sauf préférences utilisateurs contraires, son avis à l'utilisateur. |
|
void |
syncArrowGeometry(ArrowView v,
ArrowView.Direction d)
Helper for the associated View. |
|
void |
translate(double dx,
double dy)
Translate this object by (dx,dy) |
Method Detail |
---|
String getName()
Element clone()
Drawing getDrawing()
BranchElement getParent()
void replaceBy(Element by, boolean replaceInSelection)
replaceBy
remplace dans le dessin l'élément this
par l'élément
by
. Sans effet si this.getParent()
renvoie null
. Si
replaceInSelection
est true
et que this
est dans la sélection,
alors il est également remplacé par by
dans la sélection.
by
- l'Element
servant de remplacement.replaceInSelection
- indique que this
est également à remplacer dans la selection.void setParent(BranchElement p)
PicPoint getCtrlPt(int index, PicPoint dest)
setPoint
method.
index
- the point index, should be greater or equal to the value returned by
getFirstPointIndex
, and lower or equal to getLastPointIndex
.
index
;
if dest
is null, concrete implementation of this method should
allocate a new PicPoint and return it,
otherwise directly modify dest
and return it as well for convenience.int getFirstPointIndex()
int getLastPointIndex()
void setCtrlPt(int index, PicPoint pt)
setCtrlPt(index,pt,null)
,
i.e. using no particular geometrical constraint.
void setCtrlPt(int index, PicPoint pt, EditPointConstraint constraint)
constraint
- a geometry constraint, or null if no particular constraint is being imposed (aka default).PointIndexIterator anchorPointsIterator()
void translate(double dx, double dy)
dx
- The X coordinate of translation vectordy
- The Y coordinate of translation vectorCtrlPtSubset getCtrlPtSubset(ConvexZoneGroup csg, BitSet czExtension)
csg
, et
czExtension
csg
- un ensemble de zones convexesczExtension
- un BitSet
permettant d'étendre l'ensemble des points de contrôle
compris dans l'ensemble de zones convexes csg
. La signification des bit est selon
l'énuméré CtrlPtSubset.CZExtension
.void scale(PicPoint ptOrg, double sx, double sy)
(sx,sy)
using ptOrg
as origin
sx and sy may be negative. This can be implemented as a convenience call to
scale(double,double,double,double)
void scale(double ptOrgX, double ptOrgY, double sx, double sy)
(sx,sy)
using (ptOrgX,ptOrgY)
as origin
sx
and sy
can be negative.
void scale(double ptOrgX, double ptOrgY, double sx, double sy, UserConfirmationCache ucc)
scale(double ptOrgX, double ptOrgY, double sx, double sy)
sauf que dans le cas
d'une dilatation non conforme — c'est à dire ne conservant pas les proportions —,
et d'une forme supposée à proportions contraintes (comme par exemple PicCircleFrom3Points
)
on demande, sauf préférences utilisateurs contraires, son avis à l'utilisateur.
ucc
- une valeur UserConfirmationCache
permettant de demander à l'utilisateur
confirmation, de se souvenir de la dernière confirmation qu'il a donné, ou de ses préférences.void scale(PicPoint ptOrg, double sx, double sy, UserConfirmationCache ucc)
void rotate(PicPoint ptOrg, double angle)
angle
- rotation angle in radiansvoid shear(PicPoint ptOrg, double shx, double shy)
Element
by the given params wrt to the given origin
void shear(PicPoint ptOrg, double shx, double shy, UserConfirmationCache ucc)
shear(PicPoint ptOrg, double shx, double shy)
sauf que dans le cas
d'une dilatation non conforme — c'est à dire ne conservant pas les proportions —,
et d'une forme supposée à proportions contraintes (comme par exemple PicCircleFrom3Points
)
on demande, sauf préférences utilisateurs contraires, son avis à l'utilisateur.
ucc
- une valeur UserConfirmationCache
permettant de demander à l'utilisateur
confirmation, de se souvenir de la dernière confirmation qu'il a donné, ou de ses préférences.void mirror(PicPoint ptOrg, PicVector normalVector)
this
relativement à la
droite passant par le point ptOrg
et normale au vecteur
normalVector
.
C'est à dire que tout point de contrôle pt
est remplacé par:
pt - 2 * produit_scalaire(pt - ptOrg, normalVector)
Si normalVector
n'est pas de norme euclidienne 1, alors
mirror
fait donc en plus une dilatation de coefficient
égal à la norme euclidienne de normalVector
.
ptOrg
- a PicPoint
valuenormalVector
- a PicVector
valueRectangle2D getBoundingBox(Rectangle2D r)
View getView()
void setViewFromFactory(ViewFactory f)
void removeView()
Shape createShape()
void syncArrowGeometry(ArrowView v, ArrowView.Direction d)
PicAttributeSet getAttributeSet()
void setAttributeSet(PicAttributeSet attributeSet)
<T> void setAttribute(PicAttributeName<T> name, T value)
<T> T getAttribute(PicAttributeName<T> name)
|
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |