Class RMPaintbot

All Implemented Interfaces:
RMPropertyChanger, Cloneable

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

    • RMPaintbot

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

    • 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 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(Class aClass)
      Returns the first operation of given class.
    • getLastOpOfClass

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

      public void setPaintColor(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(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.
    • clone

      public RMPaintbot clone()
      Standard clone implementation.
      Overrides:
      clone in class RMListenerList