This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
haas:fall2020:cprog:projects:fwf0 [2020/01/29 19:32] – external edit 127.0.0.1 | haas:fall2020:cprog:projects:fwf0 [2020/08/25 17:15] (current) – [Background] wedge | ||
---|---|---|---|
Line 8: | Line 8: | ||
=====Objective===== | =====Objective===== | ||
To create a program that generates a representation of a flag of a certain level of design complexity. | To create a program that generates a representation of a flag of a certain level of design complexity. | ||
+ | |||
+ | =====Reading===== | ||
+ | Please be sure to familiarize yourself with the following content in " | ||
+ | |||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
=====Background===== | =====Background===== | ||
Line 44: | Line 51: | ||
=====Program===== | =====Program===== | ||
- | It is your task to write a program that generate | + | It is your task to write a program that generates |
- | * fwf0/flag.png | + | The flag is to be an intermediate-level flag (although you might want to start with an easy-level flag to gain some practice with the library and things like coordinates); |
- | The flag is to be an intermediate-level flag (although | + | ====On your pi==== |
+ | Develop and test this program on your pi. Only when done, verify that it compiles on lab46. | ||
+ | |||
+ | To utilize the needed functionality for this project, you will need to ensure you have the following packages installed: | ||
+ | |||
+ | * build-essential | ||
+ | * libgd-dev | ||
+ | * libgd-tools | ||
+ | * libgd3 | ||
=====Specifications===== | =====Specifications===== | ||
Line 66: | Line 81: | ||
lab46: | lab46: | ||
make: Entering directory '/ | make: Entering directory '/ | ||
- | '/ | + | '/ |
- | '/ | + | '/ |
make: Leaving directory '/ | make: Leaving directory '/ | ||
lab46: | lab46: | ||
Line 85: | Line 100: | ||
When done and ready to submit, on lab46: **make submit** | When done and ready to submit, on lab46: **make submit** | ||
+ | =====How to view the picture===== | ||
+ | Depending on your computing setup, choose the most practical means of viewing your program' | ||
+ | |||
+ | ====Raspberry Pi desktop==== | ||
+ | You've got a monitor and keyboard hooked up to your pi that you are using (preferred method for class). | ||
+ | |||
+ | Open a file browser, web browser, or image viewer and navigate to/open up your **fwf0.png** image in your **~/ | ||
+ | |||
+ | Rinse and repeat as you go through revisions. | ||
+ | |||
+ | ====Raspberry Pi command-line via SSH/ | ||
+ | You don't have a monitor, so you are logging into your pi remotely (doable, and good intra-system practice) | ||
+ | |||
+ | Once your **Makefile** and **fwf0.c** file are added to your repository, **commit** and **push**. | ||
+ | |||
+ | On lab46, **pull** and **update**. | ||
+ | |||
+ | Compile: | ||
+ | |||
+ | <cli> | ||
+ | lab46: | ||
+ | </ | ||
+ | |||
+ | and run your program: | ||
+ | |||
+ | <cli> | ||
+ | lab46: | ||
+ | </ | ||
+ | |||
+ | ... which will produce an image (**fwf0.png**); | ||
+ | |||
+ | <cli> | ||
+ | lab46: | ||
+ | lab46: | ||
+ | </ | ||
+ | |||
+ | Then, point a web browser at the following URL: | ||
+ | |||
+ | * https:// | ||
+ | |||
+ | NOTE: sometimes the web browser caches previous results, you may have to refresh a few times on revisions to get changes to manifest. | ||
=====Submission===== | =====Submission===== | ||
To successfully complete this project, the following criteria must be met: | To successfully complete this project, the following criteria must be met: |