I'm having trouble copying a picture for my assignment. I would appreciate any advice or solutions. I believe that I have a general idea, but it is difficult for me to define mathematics in order to reproduce the image and do everything in one cycle.
My program must meet these criteria:
- Matches Image
- Generate random color for each pair of parabolic curves
- Work with any width or height
- Use one cycle to draw the whole picture.
Here is the image:
This is what I have tried so far
public static final int WIDTH = 500; public static final int HEIGHT = 500; public static final int LINE_INCREMENT = 5; public static void main(String[] args) { DrawingPanel panel = new DrawingPanel(WIDTH, HEIGHT); Graphics g = panel.getGraphics(); int d = 0; int iterations = HEIGHT/LINE_INCREMENT; Random rand = new Random(); int red = 0, green = 0, blue = 0; red = rand.nextInt(128) + 128; green = rand.nextInt(128) + 128; blue = rand.nextInt(128) + 128; g.setColor(new Color(red,green,blue)); for(int y = 0; y < iterations; y++) { g.drawLine(0, d, d, HEIGHT); g.drawLine(WIDTH, d, d, 0); d += LINE_INCREMENT; } red = rand.nextInt(128) + 128; green = rand.nextInt(128) + 128; blue = rand.nextInt(128) + 128; g.setColor(new Color(red,green,blue)); d = 0; for (int x = 0; x < iterations/2; x++) { g.drawLine(WIDTH/4, d + HEIGHT/4, d + WIDTH/4, HEIGHT - HEIGHT/4); g.drawLine(d + WIDTH/4, WIDTH/4, WIDTH - WIDTH/4, d + WIDTH/4); d += LINE_INCREMENT; } }
Output:

source share