Package org.eclipse.draw2d

# Class ScalablePolygonShape

java.lang.Object
org.eclipse.draw2d.Figure
org.eclipse.draw2d.Shape
org.eclipse.draw2d.AbstractPointListShape
org.eclipse.draw2d.ScalablePolygonShape

All Implemented Interfaces:
  `IFigure`

public class ScalablePolygonShape extends AbstractPointListShape
Renders a `PointList` as a polygonal shape scaled in accordance with bounds to fill whole figure. This class is similar to `PolygonShape`, except the polygon should be scaled expanded/compressed to fit in current bounds.

Since:
  3.5

## Nested Class Summary

## Nested classes/interfaces inherited from class org.eclipse.draw2d.Figure

`Figure.FigureIterator, Figure.IdentitySearch, Figure.ReverseFigureChildrenIterator`

## Nested classes/interfaces inherited from interface org.eclipse.draw2d.IFigure

`IFigure.NoInsets`

## Field Summary

### Fields inherited from class org.eclipse.draw2d.Shape

`lineStyle, lineWidth`

### Fields inherited from class org.eclipse.draw2d.Figure

`bgColor, border, bounds, fgColor, flags, font, MAX_FLAG, maxSize, minSize, NO_MANAGER, prefSize, toolTip`

### Fields inherited from interface org.eclipse.draw2d.IFigure

`MAX_DIMENSION, MIN_DIMENSION, NO_INSETS`

## Constructor Summary

Constructors
Constructor
Description
`ScalablePolygonShape()`

## Method Summary

Modifier and Type
Method
Description
`void`
`addPoint(Point pt)`
Adds the passed point to this figure.
`protected void`
`fillShape(Graphics graphics)`
Fills the interior of the shape with the background color.
`PointList`
`getScaledPoints()`
`void`
`insertPoint(Point pt, int index)`
Inserts a given point at a specified index in this figure.
`protected void`
`outlineShape(Graphics graphics)`
Outlines this shape using the foreground color.
`void`
`removeAllPoints()`
Erases this figure and removes all of its `Points`.
`void`
`removePoint(int index)`
Removes a point from this figure.
`void`
`setBounds(Rectangle rect)`
Sets the bounds of this Figure to the Rectangle rect.
`void`
`setEnd(Point end)`
Sets the end point of this figure
`void`
`setLineWidth(int w)`
Sets the line width to be used to outline the shape.
`void`
`setPoint(Point pt, int index)`
Sets the point at `index` to the Point `pt`.
`void`
`setPoints(PointList points)`
Sets the list of points to be used by this figure.
`void`
`setStart(Point start)`
Sets the start point of this figure
`protected boolean`
`shapeContainsPoint(int x, int y)`
Returns `true` if the point `(x, y)` is contained within this figure.

### Methods inherited from class org.eclipse.draw2d.AbstractPointListShape

`childrenContainsPoint, containsPoint, getEnd, getPoints, getStart, setEndpoints`

### Methods inherited from class org.eclipse.draw2d.Shape

`getAlpha, getAntialias, getLineAttributes, getLineCap, getLineDash, getLineDashOffset, getLineJoin, getLineMiterLimit, getLineStyle, getLineWidth, getLineWidthFloat, paintFigure, setAlpha, setAlpha, setAntialias, setAntialias, setFill, setFillXOR, setLineAttributes, setLineCap, setLineDash, setLineDashOffset, setLineJoin, setLineMiterLimit, setLineStyle, setLineWidthFloat, setOutline, setOutlineXOR, setXOR`

### Methods inherited from class org.eclipse.draw2d.Figure

`add, add, add, add, addAncestorListener, addCoordinateListener, addFigureListener, addFocusListener, addKeyListener, addLayoutListener, addListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, containsPoint, erase, findDescendantAtExcluding, findFigureAt, findFigureAt, findFigureAt, findFigureAtExcluding, findMouseEventTargetAt, findMouseEventTargetInDescendantsAt, fireCoordinateSystemChanged, fireFigureMoved, fireMoved, firePropertyChange, firePropertyChange, firePropertyChange, getBackgroundColor, getBorder, getBounds, getChildren, getChildrenRevIterable, getClientArea, getClientArea, getClippingStrategy, getCursor, getFlag, getFont, getForegroundColor, getInsets, getLayoutManager, getListeners, getListenersIterable, getLocalBackgroundColor, getLocalFont, getLocalForegroundColor, getLocation, getMaximumSize, getMinimumSize, getMinimumSize, getParent, getPreferredSize, getPreferredSize, getSize, getToolTip, getUpdateManager, handleFocusGained, handleFocusLost, handleKeyPressed, handleKeyReleased, handleMouseDoubleClicked, handleMouseDragged, handleMouseEntered, handleMouseExited, handleMouseHover, handleMouseMoved, handleMousePressed, handleMouseReleased, handleMouseWheelScrolled, hasFocus, internalGetEventDispatcher, intersects, invalidate, invalidateTree, isCoordinateSystem, isEnabled, isFocusTraversable, isMirrored, isMouseEventTarget, isOpaque, isRequestFocusEnabled, isShowing, isValid, isValidationRoot, isVisible, layout, optimizeClip, paint, paintBorder, paintChildren, paintClientArea, primTranslate, remove, removeAll, removeAncestorListener, removeCoordinateListener, removeFigureListener, removeFocusListener, removeKeyListener, removeLayoutListener, removeListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, revalidate, setBackgroundColor, setBorder, setChildrenDirection, setChildrenEnabled, setChildrenOrientation, setClippingStrategy, setConstraint, setCursor, setEnabled, setFlag, setFocusTraversable, setFont, setForegroundColor, setLayoutManager, setLocation, setMaximumSize, setMinimumSize, setOpaque, setParent, setPreferredSize, setPreferredSize, setRequestFocusEnabled, setSize, setSize, setToolTip, setValid, setVisible, translate, translateFromParent, translateToAbsolute, translateToParent, translateToRelative, useDoublePrecision, useLocalCoordinates, validate`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ScalablePolygonShape

public ScalablePolygonShape()

## Method Details

### shapeContainsPoint

protected boolean shapeContainsPoint(int x, int y)
Description copied from class: `AbstractPointListShape`
Returns `true` if the point `(x, y)` is contained within this figure.

Specified by:
  `shapeContainsPoint` in class `AbstractPointListShape`
Parameters:
  `x` - The X coordinate
  `y` - The Y coordinate
Returns:
  `true` if the point (x,y) is contained in this figure

### fillShape

protected void fillShape(Graphics graphics)
Description copied from class: `Shape`
Fills the interior of the shape with the background color.

Specified by:
  `fillShape` in class `Shape`
Parameters:
  `graphics` - the graphics object

### outlineShape

protected void outlineShape(Graphics graphics)
Description copied from class: `Shape`
Outlines this shape using the foreground color.

Specified by:
  `outlineShape` in class `Shape`
Parameters:
  `graphics` - the graphics object

### getScaledPoints

public PointList getScaledPoints()

### addPoint

public void addPoint(Point pt)
Description copied from class: `AbstractPointListShape`
Adds the passed point to this figure.

Overrides:
  `addPoint` in class `AbstractPointListShape`
Parameters:
  `pt` - the Point to be added to this figure

### insertPoint

public void insertPoint(Point pt, int index)
Description copied from class: `AbstractPointListShape`
Inserts a given point at a specified index in this figure.

Overrides:
  `insertPoint` in class `AbstractPointListShape`
Parameters:
  `pt` - the point to be added
  `index` - the position in this figure where the point is to be added

### removeAllPoints

public void removeAllPoints()
Description copied from class: `AbstractPointListShape`
Erases this figure and removes all of its `Points`.

Overrides:
  `removeAllPoints` in class `AbstractPointListShape`

### removePoint

public void removePoint(int index)
Description copied from class: `AbstractPointListShape`
Removes a point from this figure.

Overrides:
  `removePoint` in class `AbstractPointListShape`
Parameters:
  `index` - the position of the point to be removed

### setStart

public void setStart(Point start)
Description copied from class: `AbstractPointListShape`
Sets the start point of this figure

Overrides:
  `setStart` in class `AbstractPointListShape`
Parameters:
  `start` - the point that will become the first point in this figure

### setEnd

public void setEnd(Point end)
Description copied from class: `AbstractPointListShape`
Sets the end point of this figure

Overrides:
  `setEnd` in class `AbstractPointListShape`
Parameters:
  `end` - the point that will become the last point in this figure

### setPoint

public void setPoint(Point pt, int index)
Description copied from class: `AbstractPointListShape`
Sets the point at `index` to the Point `pt`. If you're going to set multiple Points, use `AbstractPointListShape.setPoints(PointList)`.

Overrides:
  `setPoint` in class `AbstractPointListShape`
Parameters:
  `pt` - the point
  `index` - the index

### setPoints

public void setPoints(PointList points)
Description copied from class: `AbstractPointListShape`
Sets the list of points to be used by this figure. Removes any previously existing points. This figure will hold onto the given list by reference.

Overrides:
  `setPoints` in class `AbstractPointListShape`
Parameters:
  `points` - new set of points

### setBounds

public void setBounds(Rectangle rect)
Description copied from class: `Figure`
Sets the bounds of this Figure to the Rectangle rect. Note that rect is compared to the Figure's current bounds to determine what needs to be repainted and/or exposed and if validation is required. Since `Figure.getBounds()` may return the current bounds by reference, it is not safe to modify that Rectangle and then call setBounds() after making modifications. The figure would assume that the bounds are unchanged, and no layout or paint would occur. For proper behavior, always use a copy.

Specified by:
  `setBounds` in interface `IFigure`
Overrides:
  `setBounds` in class `Figure`
Parameters:
  `rect` - The new bounds

### setLineWidth

public void setLineWidth(int w)
Description copied from class: `Shape`
Sets the line width to be used to outline the shape.

Overrides:
  `setLineWidth` in class `Shape`
Parameters:
  `w` - the new width