Problem 1: The code in routine render_hw01 includes a fragment that draws a square (by writing the frame buffer), which is based on what was done in class on Wednesday, 24 August 2022: for ( int x=100; x<500; x++ ) { fb[ 100 * win_width + x ] = color_red; fb[ 500 * win_width + x ] = 0xffff; fb[ x * win_width + 100 ] = 0xff00ff; fb[ x * win_width + 500 ] = 0xff00; } The position of this square is hard-coded to coordinates (100, 100) (meaning x = 100, y = 100) lower-left and (500, 500) upper-right. That will place the square in the lower-left portion of the window. Modify the routine so that the square is drawn at (sq_x0,sq_y0) lower-left and (sq_x1,sq_y1) upper-right, where sq_x0, sq_y0, sq_x1, and sq_y1, are variables in the code. Do this by using these variables in the routine that draws the square. If it helps, the variable sq_slen can also be used. If done correctly, the square will be at the upper-left of the window vertically aligned with the sine waves, and the size of the square will be determined by the minimum of the window width and height. The square will adjust whenever the window is resized. See the lower screenshot at the beginning of this assignment.
Problem 1: The code in routine render_hw01 includes a fragment that draws a square (by writing the frame buffer), which is based on what was done in class on Wednesday, 24 August 2022: for ( int x=100; x<500; x++ ) { fb[ 100 * win_width + x ] = color_red; fb[ 500 * win_width + x ] = 0xffff; fb[ x * win_width + 100 ] = 0xff00ff; fb[ x * win_width + 500 ] = 0xff00; } The position of this square is hard-coded to coordinates (100, 100) (meaning x = 100, y = 100) lower-left and (500, 500) upper-right. That will place the square in the lower-left portion of the window. Modify the routine so that the square is drawn at (sq_x0,sq_y0) lower-left and (sq_x1,sq_y1) upper-right, where sq_x0, sq_y0, sq_x1, and sq_y1, are variables in the code. Do this by using these variables in the routine that draws the square. If it helps, the variable sq_slen can also be used. If done correctly, the square will be at the upper-left of the window vertically aligned with the sine waves, and the size of the square will be determined by the minimum of the window width and height. The square will adjust whenever the window is resized. See the lower screenshot at the beginning of this assignment.
Trending now
This is a popular solution!
Step by step
Solved in 3 steps