|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectcom.tensegrity.graphics.AbstractPrimitive
com.tensegrity.graphics.primitive2D.Polygon2D
A Polygon2D is a closed two-dimensional region with three or
more sides. Internally, a polygon comprises of a list of (x, y) coordinate
pairs, where each pair defines a vertex of the polygon, and two successive
pairs are the endpoints of a line that is a side of the polygon. The methods
to manipulate the coordinates are the same as for class
Polyline2D.
| Field Summary | |
protected int[] |
coordsX
instance variable for the x components of the polygons coordinates |
protected int[] |
coordsXRef
instance variable for the x components of the polygons reference coordinates (necessary when the polygon has segments that are not linear lines) |
protected int[] |
coordsY
instance variable for the y components of the polygons coordinates |
protected int[] |
coordsYRef
instance variable for the y components of the polygons reference coordinates (necessary when the polygon has segments that are not linear lines) |
protected int[] |
segmentTypes
instance variable for the segment types of the polygon |
| Fields inherited from class com.tensegrity.graphics.AbstractPrimitive |
attributableOnSetListener, doAttributableEvents, infovalueregistry, interactionDescriptor, selected |
| Fields inherited from interface com.tensegrity.generic.attribute.AttributableOnSet |
TREE_SUBSET_POSTFIX |
| Constructor Summary | |
Polygon2D()
Constructor that creates an empty Polygon2D.
|
|
Polygon2D(Coordinate[] coordinates)
Constructor that creates a Polygon2D with the coordinates
given by coordinates. |
|
Polygon2D(int[] coordsX,
int[] coordsY)
Constructor that creates a Polygon2D with the coordinates
given by coordsX and coordsY. |
|
Polygon2D(int[] coordsX,
int[] coordsY,
int[] coordsXRef,
int[] coordsYRef,
int[] segmentTypes)
Constructor that creates a Polygon2D with the coordinates
given by coordsX and coordsY with the
reference coordinates given by coordsXRef and
coordsYRef and the segment types given by
segmentTypes. |
|
Polygon2D(Polygon2D polygon)
Copy constructor for Polygon2D. |
|
| Method Summary | |
void |
addCoordinate(Coordinate coordinate)
Adds the Coordinate given by coordinate to the
coordinates of the Polygon2D. |
void |
applyState(PrimitiveState state)
|
BoundingBox |
calculateBoundingBox(InteractionInfo interactionInfo)
|
Primitive |
deepCopy()
An implementation of this method is responsible for returning a deep- copy of the Primitive instance |
Attribute |
getAttribute(java.lang.String name)
Returns the attribute with the given name or null if there
is no Attribute with the given name. |
AttributeSet |
getAttributes()
Returns an AttributeSet consisting of all attributes of this
AttributableOnSet. |
AttributeSet |
getAttributesTree()
Returns an AttributeSet containing all
Attributes of this AttributableOnSet in a
treelike structure.
|
Boundary |
getBoundingBox()
Returns the bounding box of the BaseInteractable. |
Coordinate |
getCoordinateAt(int index)
Returns the coordinate at the index specified by index. |
int |
getCoordinateCount()
Returns the current count of coordinates the Polygon2D
consists of. |
Coordinate[] |
getCoordinates()
Returns an array of Coordinates the Polygon2D
consists of.
|
Illustrator |
getIllustrator(Transform2D xform_context)
Returns the Primitives illustrator object. |
Coordinate[] |
getReferenceCoordinates()
Returns an array of Coordinates that represents the
reference coordinates the Polygon2D currently provides.
|
int[] |
getSegmentTypes()
Returns an int-array that represent the segment types the Polygon2D currently provides.
|
PrimitiveState |
getState()
|
void |
insertCoordinate(int index,
Coordinate coordinate)
Inserts the Coordinate given by coordinate at
the index specified by index. |
void |
insertReferenceCoordinates(int indexSegment,
Coordinate[] coordinatesRef)
Inserts |
protected InteractionDescriptor |
internalCreateInteractionDescriptor()
This method should return an InteractionDescriptor that
defines the interaction capabilities of a certain Primitive.
|
boolean |
isResizable()
Returns a boolean that indicates whether the
Interactable is resizable or not. |
void |
removeCoordinate(int index)
Removes the coordinate at the index specified by index from
the Polygon2D. |
void |
removeCoordinates(int index1,
int index2)
Removes the coordinates between the index specified by index1 and the index specified by index2
from the Polygon2D. |
void |
setAttributes(AttributeSet attributes)
Searches within the AttributeSet given by
attributes for attributes that have the same name as the
attributes of this AttributableOnSet holds. |
void |
setAttributesTree(AttributeSet attributes)
Performs the same operation as the setAttributes(com.tensegrity.generic.attribute.AttributeSet) method with
the difference that the AttributeSet given to this method
must provide the treelike structure mentioned in the documentation of
the getAttributesTree(). |
void |
setAttributeValue(java.lang.String name,
java.lang.Object value)
Sets the value of the attribute with the name to the given value. |
void |
setCoordinateAt(int index,
Coordinate coordinate)
Sets the Coordinate given by coordinate at the
index specified by index. |
void |
setCoordinates(Coordinate[] coords)
Sets the Coordinates given by coords as the
new coordinates the Polygon2D should consists of. |
void |
setReferenceCoordinates(Coordinate[] coords)
Sets the Coordinates given by coords as the
new reference coordinates the Polygon2D should provide. |
void |
setResizable(boolean resizable)
Sets the state of resizability for the Interactable to the
value given by resizable. |
void |
setSegmentTypes(int[] segmentTypes)
Sets the segment types for the Polygon2D to the values
given by segmentTypesNew. |
void |
setStroke(StrokeFormat stroke)
Sets a StrokeFormat for the Primitive. |
java.lang.String |
toString()
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface com.tensegrity.graphics.interaction.BaseInteractable |
getInteractionDescriptor, getMoveItem, hits, internalEnableSelection, internalSelect, internalSetSelected, isMovable, isSelectable, isSelected, mouseClick, mouseDown, mouseEnter, mouseExit, mouseUp, postActing, preActing, select, setMovable, setSelectable, setSelected, startAction, stopAction |
| Field Detail |
protected int[] coordsX
protected int[] coordsY
protected int[] coordsXRef
protected int[] coordsYRef
protected int[] segmentTypes
| Constructor Detail |
public Polygon2D()
Polygon2D.
public Polygon2D(int[] coordsX,
int[] coordsY)
Polygon2D with the coordinates
given by coordsX and coordsY.
coordsX - the x components of the coordinatescoordsY - the y components of the coordinatespublic Polygon2D(Coordinate[] coordinates)
Polygon2D with the coordinates
given by coordinates.
coordinates - array of the coordinates
public Polygon2D(int[] coordsX,
int[] coordsY,
int[] coordsXRef,
int[] coordsYRef,
int[] segmentTypes)
Polygon2D with the coordinates
given by coordsX and coordsY with the
reference coordinates given by coordsXRef and
coordsYRef and the segment types given by
segmentTypes.
coordsX - the x components of the coordinatescoordsY - the y components of the coordinatescoordsXRef - the x components of the reference coordinatescoordsYRef - the y components of the reference coordinatessegmentTypes - the different segment typespublic Polygon2D(Polygon2D polygon)
Polygon2D.
polygon - the Polygon2D to copy| Method Detail |
public int getCoordinateCount()
Polygon2D
consists of.
public Coordinate getCoordinateAt(int index)
index.
index - the index to return the coordinate for
public void setCoordinateAt(int index,
Coordinate coordinate)
Coordinate given by coordinate at the
index specified by index.
index - the index to set the coordinate atcoordinate - the new Coordinatepublic void addCoordinate(Coordinate coordinate)
Coordinate given by coordinate to the
coordinates of the Polygon2D.
coordinate - the Coordinate to add
public void insertCoordinate(int index,
Coordinate coordinate)
Coordinate given by coordinate at
the index specified by index.
index - the index where to insert the new Coordinatecoordinate - the Coordinate to insert
public void insertReferenceCoordinates(int indexSegment,
Coordinate[] coordinatesRef)
indexSegment - coordinatesRef - public void removeCoordinate(int index)
index from
the Polygon2D.
index - the index where to remove the coordinate
public void removeCoordinates(int index1,
int index2)
index1 and the index specified by index2
from the Polygon2D.
index1 - the start index of the coordinates to removeindex2 - the stop index of the coordinates to removepublic Coordinate[] getCoordinates()
Coordinates the Polygon2D
consists of.
Polygon2D
Polygon2D
consists ofpublic void setCoordinates(Coordinate[] coords)
Coordinates given by coords as the
new coordinates the Polygon2D should consists of.
coords - the new Coordinates for the
Polygon2Dpublic Coordinate[] getReferenceCoordinates()
Coordinates that represents the
reference coordinates the Polygon2D currently provides.
Polygon2D
Polygon2D currently providespublic void setReferenceCoordinates(Coordinate[] coords)
Coordinates given by coords as the
new reference coordinates the Polygon2D should provide.
coords - the new reference Coordinates for the
Polygon2Dpublic int[] getSegmentTypes()
Polygon2D currently provides.
The different segment types that are supported by the
Polygon2D are defined by the constants
UtilitiesLine.LINEAR_SEGMENT,
UtilitiesLine.CUBIC_BEZIER_SEGMENT or
UtilitiesLine.CUBIC_CATMULL_ROM_SEGMENT.
Polygon2Dpublic void setSegmentTypes(int[] segmentTypes)
Polygon2D to the values
given by segmentTypesNew. The supported segment types are
defined by
UtilitiesLine.LINEAR_SEGMENTUtilitiesLine.CUBIC_BEZIER_SEGMENT
UtilitiesLine.CUBIC_CATMULL_ROM_SEGMENT.
public void setStroke(StrokeFormat stroke)
PrimitiveStrokeFormat for the Primitive.
setStroke in interface Primitivestroke - the StrokeFormat to usepublic Boundary getBoundingBox()
BaseInteractableBaseInteractable.
getBoundingBox in interface BaseInteractableBaseInteractablepublic PrimitiveState getState()
getState in interface Primitive
public void applyState(PrimitiveState state)
throws PrimitiveStateNotApplicableException
applyState in interface PrimitivePrimitiveStateNotApplicableExceptionpublic Illustrator getIllustrator(Transform2D xform_context)
PrimitivePrimitives illustrator object. To get more
informations about the illustrator object see the class above or the
documentation of the Illustrator class.
getIllustrator in interface Primitivexform_context - the transformation of the context the
Primitive lies within.
Primitive.public Primitive deepCopy()
PrimitivePrimitive instance
deepCopy in interface PrimitivePrimitive.public boolean isResizable()
Interactableboolean that indicates whether the
Interactable is resizable or not.
isResizable in interface InteractableInteractablepublic void setResizable(boolean resizable)
InteractableInteractable to the
value given by resizable.
setResizable in interface Interactableresizable - the new state of resizability for the
Interactablepublic BoundingBox calculateBoundingBox(InteractionInfo interactionInfo)
calculateBoundingBox in interface Interactable
public void setAttributeValue(java.lang.String name,
java.lang.Object value)
throws IllegalValueException,
ConstraintViolationException
AttributableAttributable interface doesn't support an
Attribute with the name given by name,
the attribute given through name and value
is not handled nor created by Attributable.
setAttributeValue in interface AttributablesetAttributeValue in class AbstractPrimitiveIllegalValueException
ConstraintViolationExceptionpublic Attribute getAttribute(java.lang.String name)
Attributablenull if there
is no Attribute with the given name.
getAttribute in interface AttributablegetAttribute in class AbstractPrimitivepublic AttributeSet getAttributes()
AttributableOnSetAttributeSet consisting of all attributes of this
AttributableOnSet.
getAttributes in interface AttributableOnSetAttributeSet with all attributes.public void setAttributes(AttributeSet attributes)
AttributableOnSetAttributeSet given by
attributes for attributes that have the same name as the
attributes of this AttributableOnSet holds. The value of
every attribute that has the same name is used as the new value for the
corresponding attribute of this AttributableOnSet.
An Attribute within the given AttributeSet that
is not an attribute of the object that implements the
AttributableOnSet interface is not handled by nor added
to the specific implementor of the AttributableOnSet
interface.
setAttributes in interface AttributableOnSetattributes - the AttributeSet consisting of the attributes
whose values to set.public AttributeSet getAttributesTree()
AttributableOnSetAttributeSet containing all
Attributes of this AttributableOnSet in a
treelike structure.
Attributes for an Attribute of this
AttributableOnSet.
Attribute can only
have one value (in this case an object or the Attributes
for an object) the subsequent attributes are plugged into the returned
AttributeSet as a new Attribute with the same
name and the AttributableOnSet.TREE_SUBSET_POSTFIX.
getAttributesTree in interface AttributableOnSetAttributeSet with the attributes
in a treelike structurepublic void setAttributesTree(AttributeSet attributes)
AttributableOnSetAttributableOnSet.setAttributes(com.tensegrity.generic.attribute.AttributeSet) method with
the difference that the AttributeSet given to this method
must provide the treelike structure mentioned in the documentation of
the AttributableOnSet.getAttributesTree().
setAttributesTree in interface AttributableOnSetattributes - the AttributeSet containing the attributes
whose values to set.protected InteractionDescriptor internalCreateInteractionDescriptor()
AbstractPrimitiveInteractionDescriptor that
defines the interaction capabilities of a certain Primitive.
Since the InteractionDescriptor varies for different kinds
of primitives this method is declared as abstract and must be
implemented for each Primitive that is based on the
AbstractPrimitive class.
null.
internalCreateInteractionDescriptor in class AbstractPrimitiveInteractionDescriptor
for the certain Primitive instancepublic java.lang.String toString()
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||