Class RMPaintbot

  • All Implemented Interfaces:
    RMPropertyChanger, java.lang.Cloneable

    public class RMPaintbot
    extends RMObject
    An object to process painter shape operations.
    • Constructor Detail

      • RMPaintbot

        public RMPaintbot()
        Creates a new painter shape painter.
    • Method Detail

      • getOpCount

        public int getOpCount()
        Returns the number of painter shape operations.
      • getOp

        public RMPaintbot.Op getOp​(int anIndex)
        Returns the individual operation at given index.
      • getOps

        public java.util.List<RMPaintbot.Op> getOps()
        Returns the list of ops.
      • addOp

        public void addOp​(RMPaintbot.Op anOp)
        Adds a new operation.
      • getOpOfClass

        public RMPaintbot.Op getOpOfClass​(java.lang.Class aClass)
        Returns the first operation of given class.
      • getLastOpOfClass

        public <T extends RMPaintbot.Op> T getLastOpOfClass​(java.lang.Class<T> aClass)
        Returns the first operation of given class.
      • setPaintColor

        public void setPaintColor​(java.awt.Color aColor)
        Sets the paint color for path operations.
      • setPaintStrokeWidth

        public void setPaintStrokeWidth​(double aWidth)
        Sets the paint stroke width for path operations.
      • setPaintSpeed

        public void setPaintSpeed​(double aSpeed)
        Sets the paint speed for path operations.
      • forward

        public void forward​(double aDistance)
        Adds a forward instruction to cpu.
      • jump

        public void jump​(double aDistance)
        Adds a Jump instruction to cpu.
      • turn

        public void turn​(double anAngle)
        Adds a turn instruction to cpu.
      • moveTo

        public void moveTo​(double anX,
                           double aY)
        Move to.
      • lineTo

        public void lineTo​(double anX,
                           double aY)
        Paint a line to given coordinates.
      • quadTo

        public void quadTo​(double anX1,
                           double aY1,
                           double anX2,
                           double aY2)
        Paint a parabolic curve with the given control point and end point.
      • curveTo

        public void curveTo​(double anX1,
                            double aY1,
                            double anX2,
                            double aY2,
                            double anX3,
                            double aY3)
        Paint a bezier curve with the given control points and end point.
      • close

        public void close()
        Closes a path.
      • getPaintSpeedDefault

        public float getPaintSpeedDefault()
        Returns the default paint speed.
      • getX

        public double getX()
        Returns this CPU's current x position.
      • getY

        public double getY()
        Returns this CPU's current y position.
      • getRoll

        public float getRoll()
        Returns this CPU's current roll.
      • paint

        public RMLine paint​(java.awt.Graphics2D aGraphics,
                            double aTime)
        Paint.
      • getExecutionTime

        public float getExecutionTime()
        Returns the execution time for painter shape operations.
      • getBounds

        public RMRect getBounds()
        Returns the bounds of the painter shape operations.