Answered step by step
Verified Expert Solution
Link Copied!

Question

00
1 Approved Answer

In java complete and modify code below and write a driver code for it to have vehicle in the upper left corner moves to the

In java complete and modify code below and write a driver code for it to have vehicle in the upper left corner moves to the right and the vehicle in the lower right corner moves to the left.

//CarComponent.java import java.awt.Graphics; import java.awt.Graphics2D; import javax.swing.JComponent;

/** This component draws two car shapes. */ public class CarComponent extends JComponent { public void paintComponent(Graphics g) { Graphics2D g2 = (Graphics2D) g;

Car car1 = new Car(0, 0);

int x = getWidth() - 60; int y = getHeight() - 30;

Car car2 = new Car(x, y);

car1.draw(g2); car2.draw(g2); } }

//Car.java import java.awt.Graphics2D; import java.awt.Rectangle; import java.awt.geom.Ellipse2D; import java.awt.geom.Line2D; import java.awt.geom.Point2D;

/** A car shape that can be positioned anywhere on the screen. */ public class Car { private int xLeft; private int yTop;

/** Constructs a car with a given top left corner. @param x the x-coordinate of the top-left corner @param y the y-coordinate of the top-left corner */ public Car(int x, int y) { xLeft = x; yTop = y; }

/** Draws the car. @param g2 the graphics context */ public void draw(Graphics2D g2) { Rectangle body = new Rectangle(xLeft, yTop + 10, 60, 10); Ellipse2D.Double frontTire = new Ellipse2D.Double(xLeft + 10, yTop + 20, 10, 10); Ellipse2D.Double rearTire = new Ellipse2D.Double(xLeft + 40, yTop + 20, 10, 10);

// The bottom of the front windshield Point2D.Double r1 = new Point2D.Double(xLeft + 10, yTop + 10); // The front of the roof Point2D.Double r2 = new Point2D.Double(xLeft + 20, yTop); // The rear of the roof Point2D.Double r3 = new Point2D.Double(xLeft + 40, yTop); // The bottom of the rear windshield Point2D.Double r4 = new Point2D.Double(xLeft + 50, yTop + 10);

Line2D.Double frontWindshield = new Line2D.Double(r1, r2); Line2D.Double roofTop = new Line2D.Double(r2, r3); Line2D.Double rearWindshield = new Line2D.Double(r3, r4);

g2.draw(body); g2.draw(frontTire); g2.draw(rearTire); g2.draw(frontWindshield); g2.draw(roofTop); g2.draw(rearWindshield); } }

//CarViewer.java import javax.swing.JFrame;

public class CarViewer { public void viewCars() { JFrame frame = new JFrame();

frame.setSize(300, 400); frame.setTitle("Two cars"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

CarComponent component = new CarComponent(); frame.add(component);

frame.setVisible(true); } }

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access with AI-Powered Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions