| ScaledJRobo.java |
// ScaledJRobo Adds scaling to basic JRobo class.
// also changes rect implementation !badly!
// and adds circle
// Author: David 5/9/99
import java.awt.*;
public class ScaledJRobo extends JRobo
{
double scale;
// Constructor
ScaledJRobo( Graphics g )
{
super( g );
scale = 1;
}
public void setScale( double newScale )
{
scale = newScale;
}
// f - Move forward
public void f( int distance )
{
super.f( ( int ) ( distance * scale ) );
}
/*
// rect - override to use java graphics method
// what is wrong?
// JRobo scales by 0.5! Pre-cond wrong!
public void rect( int height, int width) {
robog.drawRoundRect( x,
y,
( int ) ( width * scale / 2 ),
( int ) ( height * scale / 2 ),
15, 15 );
}
*/
// circle - using java graphics method!
public void circle( int radius )
{
robog.drawOval( x - ( int ) ( radius * scale / 2 ),
y - ( int ) ( radius * scale / 2 ),
( int ) ( radius * scale),
( int ) ( radius * scale) );
}
} // end JRobo class