Class 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
  • 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