Barobo
PortalSign In
HomeShopTutorialsFree CurriculumHour of Code
RoboBlockly for Learning Math and Coding

CSP Unit 3 Lesson 8.12

Piano
Linkbot Image Mindstorm Image
0x36302418126y36302418126
Grid:
Tics Lines:
Width px
Hash Lines:
Width px
Labels:
Font px
Trace Lines:
Robot 1:
Width px
Robot 2:
Width px
Robot 3:
Width px
Robot 4:
Width px
Labels: x-axis y-axis Show Grid
Grid: 12x12 inches 24x24 inches 36x36 inches
72x72 inches 96x96 inches 192x192 inches
Quad: 4 Quadrants 1 Quadrant 1&4 Quadrants
Units: US Customary Metric
Background: Background Image

Robot 1

0
S
M
L
Initial Position:
( in, in)
Initial Angle:
deg
Current Position: (0 in, 0 in)
Current Angle: 90 deg
Wheel Radius:
Track Width:
in

Robot 2

0
S
M
L
Initial Position:
( in, in)
Initial Angle:
deg
Current Position: (6 in, 0 in)
Current Angle: 90 deg
Wheel Radius:
Track Width:
in

Robot 3

0
S
M
L
Initial Position:
( in, in)
Initial Angle:
deg
Current Position: (12 in, 0 in)
Current Angle: 90 deg
Wheel Radius:
Track Width:
in

Robot 4

0
S
M
L
Initial Position:
( in, in)
Initial Angle:
deg
Current Position: (18 in, 0 in)
Current Angle: 90 deg
Wheel Radius:
Track Width:
in
CSP Unit 3 Lesson 8.12
/* Code generated by RoboBlockly v2.5 */
/* Problem Statement: 
    Using the drawFish and drawStar function definitions from
    Lesson 8.11 as a model, modify the drawGrass function so
    that it has two parameters, named grass_x and grass_y, that
    specify the (x, y) location for the grass. Then add
    function calls to your program to draw grass in several
    locations. If you get stuck, see the Hint, and don't forget
    to save your work in an xml file named
    "YourName_Lesson8.12"!
    */
#include <chplot.h>
CPlot plot;

// Describe this function...
void drawFish(double fish_x, double fish_y) {
  // Draw a gold fish at the point  (fish_x,fish_y)
  plot.noStrokeColor();
  plot.fillColor("#ffcc66");
  // Body of fish
  plot.ellipse(fish_x, fish_y, 8, 3, 0);
  // Tail of fish
  plot.triangle(fish_x - 5, fish_y + 2, fish_x - 5, fish_y - 2, fish_x - 3, fish_y);
}

// Describe this function...
void drawStar(double star_x, double star_y) {
  // Draw an orange star at the point (star_x, star_y)
  plot.noStrokeColor();
  plot.fillColor("#ff6600");
  plot.star(star_x, star_y, 4, 0);
}

// Describe this function...
void drawGrass(double grass_x, double grass_y) {
  // Draw some grass at the point (grass_x, grass_y)
  plot.strokeColor("#33ff33");
  plot.strokeWidth(1);
  plot.arc(grass_x, grass_y, 1, 270, 90);
  plot.arc(grass_x, grass_y + 2, 1, 90, 270);
  plot.arc(grass_x, grass_y + 4, 1, 270, 90);
  plot.arc(grass_x, grass_y + 6, 1, 90, 270);
}

// Program that draws an underwater scene
// Set underwater background
//plot.backgroundImage("underwater.png");
// Turn on grid for convenience while working on code
// (When done, set grid to "off" for final display)
plot.grid(PLOT_OFF);
// Draw 2 fish, 3 stars, and 3 blades of  grass
drawFish(10, 25);
drawFish(24, 30);
drawStar(27, 10);
drawStar(18, 5);
drawStar(9, 6);
drawGrass(5, 5);
drawGrass(8, 7);
drawGrass(10, 3);

plot.label(PLOT_AXIS_XY, "");
plot.grid(PLOT_OFF);
plot.tics(PLOT_AXIS_XY, PLOT_OFF);
plot.axis(PLOT_AXIS_XY, PLOT_OFF);
plot.axisRange(PLOT_AXIS_XY, 0, 36);
plot.ticsRange(PLOT_AXIS_XY, 6);
plot.sizeRatio(1);
plot.plotting();
Load Blocks
Hardware
LArduino
Workspace Show Ch Save File
Problem Statement:

Using the drawFish and drawStar function definitions from Lesson 8.11 as a model, modify the drawGrass function so that it has two parameters, named grass_x and grass_y, that specify the (x, y) location for the grass. Then add function calls to your program to draw grass in several locations. If you get stuck, see the Hint, and don't forget to save your work to the cloud in an xml file named "YourName_Lesson8.12"!


		
Rubbish bin
Time