Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

(Required Image 3). (Required Image 4).  I added colors to my radar screen and buttons as well.

Extensions:

(1) & (2): My image actually draw two of my scenes from last week.  The one in the middle was my extension space; the side ones are my space 2 scene.  In order to include them in my encompassing scene, I simply had to calculate what scale needs to be to fit inside the cockpit windows.

I used the range()function with three arguments as well to draw the radar screen.  Although it did not come out exactly as I intended, it portrays expanding circles.

Image Added.  This basically draws 5 circles; the first circle starts with radius of 24 and increases by 3.

 

(3) & (4): In order to demonstrate several levels of encapsulation, I decided to draw a TV screen which would surround the scene of Apollo 13 cockpit.  One difficulty I faced was to have different colors for my scenes. The solution was to fill my scenes separately; in order words, don't change turtle's background color.

My encapsulation scene looks like below.

Image Added.  The scene is supposedly showing a TV screen, which is also showing what astronauts in Apollo 13's cockpit are seeing through the windows.  

Although I am not sure what was expected in regard to making complex scene without using complex code, I interpreted it as create another file, which imports several libraries of my function.  Here is what I did.

Image Added.  Basically, I used one command line, task5.complexScene(), to draw my encapsulation scene.  Read my import line and the libraries.

 

Reflection: 

I learned to use the sys library to allow users to have some inputs in computer programs.  The fill and color parameters also made my shapes and scenes to be drawn with more flexibility.  One thing to mention is conditional 'if __name__=="__main__":.

I realized this condition is very useful when I import a library to another and repeat this process more than once.  Regarding the user-controlled feature, I wanted to incorporate it more into my shapes but found it difficult.  I think one should think ahead of user input when drawing shapes or creating computer program in general.  

For this project, I imported turtle, math, random, sys, and my own libraries that contain my shapes and scenes.  I did not use someone else's code for this project.