Instructions for turtleScene

(produced at 19:30 UTC on 2021-09-14)

This task is part of ps01 which is due at 23:59 EDT on 2021-09-14.

You have the option to work with a partner on this task if you wish. Working with a partner requires more work to coordinate schedules, but if you work together and make sure that you are both understanding the code you write, you will make progress faster and learn more.

You can submit this task using this link.

Put all of your work for this task into the file scene.py
(you will create this file from scratch)

Note: You can view a video walkthrough of these instructions if you prefer to hear them explained instead of reading them yourself.

For this task, we want you to get some practice writing code at the most basic level, and also become familiar with the turtle and turtleBeads commands that can be used for drawing in Python.

The requirements are very simple, and in fact, there are no restrictions on what you draw: the only rules are that you must make use of certain functions.

In this task, you are to create a new file, scene.py, from scratch in the ps01 folder that creates your own novel scene using turtle graphics. Since we have a limited number of shapes at our disposal, we encourage abstract and creative artwork. Your scene.py file must satisfy the following criteria (note: the blue 'C' links and yellow 'E' links will show you the relevant goals in the rubric):

  1. Your file must start with a triple-quoted string at the top, identifying the names of each author, which classmates and/or tutors and/or instructors you consulted for help, the last date you modified the file, and a brief description of the purpose of the file. We will do this for all files that you submit in this class. Here is an example:

    """
    Authors: Anon & Ymous
    Consulted: T. A.
    Date: 2021-8-24
    Purpose: Turtle Scene task
    """
    
  2. Your file must appropriately import the turtleBeads module. You will also need to import the turtle module separatly to ensure that you can use the basic drawing commands.

  3. You must use each of the following basic movement functions (reference) at least once:
  4. You must use an absolute positioning command at least once (one of setx, sety, setpos/setposition/goto, or teleport).
  5. You must use each of the following turtleBeads shapes (turtleBeads reference):
  6. You must vary the thickness and colors of some lines, using both pensize and either pencolor or color (pen functions reference).
  7. You must use begin_fill and end_fill to draw at least one filled-in shape, and you must use fillcolor (or color)) to control its color (fill reference; see also the example on filling).
  8. You must use penup and pendown to move the turtle without drawing a line (or you may use the one or more of the teleport, leap, or hop functions from turtleBeads to achieve the same thing).
  9. You must use the title function to assign a title to your graphics window (title reference).

You are welcome to use other turtle or turtleBeads features in addition to the ones listed above, but only the above features are required.

If you want to challenge yourself and read ahead a little bit, consider defining a custom function and using it as part of your turtle scene (but you will not receive any extra credit for this, so don't do it if you're short on time).

Note: to speed up the drawing when things get complex, you can use the noTrace and showPicture functions. You can read how they work in our turtle documentation.

After completing this task, you must take a screenshot of your graphics scene, name it correctly, and upload it to the shared google drive folder as explained in the submission instructions.

Examples

Using turtle

Here's a brief reminder of how to use the turtle/turtleBeads drawing commands. This code draws a triangle by drawing a line and then turning three times.

In []:
from turtleBeads import * forward(200) left(120) fd(200) lt(120) fd(200) lt(120)
Prints
A 1-pensize black horizontal line from (0, 0) to (200, 0). A 1-pensize black 120° line from (200, 0) to (100, 173). A 1-pensize black 60° line from (100, 173) to (0, 0).
Image A thin black equilateral triangle on a white background; a small arrow at the lower-left corner pointing rightwards along the bottom edge indicates the final position and orientation of the 'turtle' which drew the triangle.

Filling a shape

Here's an example of how to use begin_fill and end_fill together to fill in a shape, along with a few other commands to customize things. Remember that a quick reference guide is available that covers all of the turtle and turtleBeads functions we will use in this class.

In []:
from turtleBeads import * pencolor("SkyBlue") pensize(3) fillcolor("HotPink") begin_fill() drawCircle(120) end_fill()
Prints
Start of filled shape. A 3-pensize SkyBlue circle centered at (0, 0) with radius 120 Filled in shape using HotPink.
Image A pink circle with a sky-blue border. A sky-blue arrow in the center of the circle pointing right indicates the position of the 'turtle' which drew the circle.

Rubric

 
unknown Procedure Requirements
What code you use to solve the problem.
 
unknown Core goals
Complete all core goals for core credit. Get partial credit for completing at least half, and more partial credit for completing at least 90%.
 
unknown No errors loading code
Your code should be able to be loaded without errors. Run your code before submitting it to make sure this is true.
 
unknown Import the turtleBeads module or something from it
We will check to make sure that you import the turtleBeads module or something from it.
 
unknown Call forward
Call forward or fd in at least once place.
 
unknown Call backward
Call backward, bk, or back in at least once place.
 
unknown Call left
Call left or lt in at least once place.
 
unknown Call right
Call right or rt in at least once place.
 
unknown Call setpos
Call setpos, setposition, goto, setx, sety, or teleport in at least once place.
 
unknown Call pensize
Call pensize in at least once place.
 
unknown Call pencolor
Call pencolor or color in at least once place.
 
unknown Call fillcolor
Call fillcolor or color in at least once place.
 
unknown Call begin_fill
Call begin_fill in at least once place.
 
unknown Call end_fill
Call end_fill in at least once place.
 
unknown Extra goals
Complete all extra goals in addition to the core goals for a perfect score.
 
unknown Call drawCircle
Call drawCircle or circle in at least once place.
 
unknown Call drawRectangle
Call drawRectangle in at least once place.
 
unknown Call drawText
Call drawText or write in at least once place.
 
unknown Call penup
Call penup, pu, teleport, leap, or hop in at least once place.
 
unknown Call pendown
Call pendown, pd, teleport, leap, or hop in at least once place.
 
unknown Call title
Call title in at least once place.