Class ArrowShape

    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String TOOL_KEY  
    • Constructor Summary

      Constructors 
      Constructor Description
      ArrowShape()  
      ArrowShape​(java.awt.geom.Point2D origin, float length, float angle, float shaftWidth, float headLength, float headWidth)  
      ArrowShape​(java.awt.geom.Point2D origin, float length, float angle, float shaftWidth, float headLength, float headWidth, boolean doubleSided)  
    • Constructor Detail

      • ArrowShape

        public ArrowShape()
      • ArrowShape

        public ArrowShape​(java.awt.geom.Point2D origin,
                          float length,
                          float angle,
                          float shaftWidth,
                          float headLength,
                          float headWidth)
      • ArrowShape

        public ArrowShape​(java.awt.geom.Point2D origin,
                          float length,
                          float angle,
                          float shaftWidth,
                          float headLength,
                          float headWidth,
                          boolean doubleSided)
    • Method Detail

      • getShape

        public java.awt.Shape getShape()
        Description copied from class: ShapeDelegate
        The AWT shape this delegate produces
        Specified by:
        getShape in class ShapeDelegate
      • isRotatable

        public boolean isRotatable()
        Description copied from class: ShapeDelegate
        Some shape delegates prefer to handle rotation themselves, instead of having the PathBasedVisionShape parent rotate their shape after the fact. Delegates that do this should return true from this method, and then handle the rotate method appropriately. Note that all rotations must go through the PathBasedVisionShape so that it can update the angle property.
        Overrides:
        isRotatable in class ShapeDelegate
      • rotate

        public void rotate​(double angle,
                           java.awt.geom.Point2D anchor)
        Overrides:
        rotate in class ShapeDelegate
      • getTipPoint

        public java.awt.geom.Point2D getTipPoint()
      • updateShape

        public void updateShape()
      • translateShape

        public void translateShape​(double dX,
                                   double dY)
        Description copied from class: ShapeDelegate
        Move the shape using the provided offsets. Default implementation calls alterShape.
        Overrides:
        translateShape in class ShapeDelegate
      • alterShape

        public boolean alterShape​(java.awt.geom.Rectangle2D newRect)
        Description copied from class: ShapeDelegate
        Directly modify the shape's frame so that it fits tightly within the new framing rectangle.
        Specified by:
        alterShape in class ShapeDelegate
        Parameters:
        newRect - The new bounding rectangle for the shape.
        Returns:
        false if the shape was unable to alter itself into the given rectangle.
      • convertToPath

        public java.awt.geom.GeneralPath convertToPath()
        Description copied from class: ShapeDelegate
        Convert this shape to a GeneralPath
        Overrides:
        convertToPath in class ShapeDelegate
      • getOrigin

        public java.awt.geom.Point2D getOrigin()
      • setOrigin

        public void setOrigin​(java.awt.geom.Point2D origin)
      • getLength

        public float getLength()
      • setLength

        public void setLength​(float length)
      • getAngle

        public float getAngle()
      • setAngle

        public void setAngle​(float angle)
      • getShaftWidth

        public float getShaftWidth()
      • setShaftWidth

        public void setShaftWidth​(float shaftWidth)
      • getHeadLength

        public float getHeadLength()
      • setHeadLength

        public void setHeadLength​(float headLength)
      • getHeadWidth

        public float getHeadWidth()
      • setHeadWidth

        public void setHeadWidth​(float headWidth)
      • isDoubleSided

        public boolean isDoubleSided()
      • setDoubleSided

        public void setDoubleSided​(boolean doubleSided)