# CPSC 553, Winter 2003

 Instructor: Dr. Faramarz Samavati samavati@cpsc.ucalgary.ca TA's: Pauline Jepp; T&Th pj@cpsc.ucalgary.ca Kelly Poon; M/W klpoon@cpsc.ucalgary.ca

Assignment 1

Due Tuesday Feb 11th midnight.

Implement Bezier subdivision for a curve of arbitrary degree.

The program should be interactive, allowing the user to position control points with the mouse, observe the subdivision process and reposition control points with the mouse.

You will submit documentation for your program. This should include notes about the algorithms and data structures you have used as well as instances in which you've made use of other people's code.

1: Implementation of subBezier function from notes
5: Curve of any degree
1: Select and move a control point
0.5: Place points with the mouse
0.5: Display curve
0.5: Button/mechanism for levels of subdivision
0.25: Display control polygon
0.25: Clear screen
1: Documentation
10 Total

Bonus: 0.5: 3D curve.

Assignment 2

Due Tuesday Feb 28th midnight.

Write a program to generate surfaces of revolution with the following specifications:

1. The user must define a 2D curve and the axis of rotation.
2. The 2D curve can be given by any of these methods:
• poly-line (1 mark)
• Bezier curve (2 marks)
• B-Spline curve with the interesting knot sequence (see course notes for B-Spline) (3 marks)
• For all of these methods the user should input a set of control points in a 2D window with the mouse. The axis of rotation also can be determined by two points in the same window.
3. The 3D sureface must be shown in a different window from the 2D curve. (4 marks).
4. It is possible to easily change the viewpoint of the 3D surface (1 mark).
5. It should be possible to change the resolution, numbers of u-curves and v-curves of the surface (see course notes for geometric surfaces). (2 marks).

### Kelly's guide to the Course Newsgroup

CPSC 553 - Course Newsgroup

The course newsgroup is at: cpsc.courses.cpsc553

The newsgroup is the fastest way for you to get your course-related questions answered because both TAs will be checking it. Also, other students may be able to post the answer to your question.

You can access the newsgroup from the lab with Netscape, KNode or Pine. You can access the newsgroup from home by SSHing in and using Pine.

Guidelines for Using the Newsgroup

-Post questions to the newsgroup to ask for clarification on an assignment, or to ask about class material you don't understand.
-If you are unsure whether something is appropriate to post to the newsgroup, e-mail it to your TA and she will post it if she thinks it belongs there.

When you have a question about an assignment or the class material, please check the newsgroup before e-mailing the TAs or making a new post. Your question might already have been answered.

Using Netscape to Access the Newsgroup

Start Netscape by clicking the "Start" menu, then "Internet", then "Netscape Communicator"

Subscribing to the Newsgroup

-Click the "Communicator" menu, then "Newsgroups"
-Right-click on "news"
-Choose "Subscribe to newsgroups"
-In the "Newsgroup" textbox type "cpsc.courses.cpsc553"
-Select the correct newsgroup from the list
-Click the "Subscribe" button
-Click the "OK" button

-To see a list of messages on the newsgroup double-click on "cpsc.courses.cpsc553". You are now in the newsgroup window.
-To get new messages, click the "Get Msg" icon
-To read a message double-click on it

Posting a New Message

-From the cpsc.courses.cpsc553 newsgroup window, click the "New Msg" icon
-Type a subject and a message
-Click the "Send" button

-From the cpsc.courses.cpsc553 newsgroup window, right-click on the message you want to reply to
-Click the "Send" button

Using KNode to Access the Newsgroup

Start KNode by clicking the "Start" menu, then "Internet", then "KNode"

Configuring KNode

-The first time you open KNode, it will bring up the settings screen, otherwise click on the "Settings" menu, then "Configure KNode"
-Choose "Accounts" then "News" from the tree at the left of the page
-Click the "New" button
-Under the "Server" tab type "news" as both the name and the server
-Click "OK"

Subscribing to the Newsgroup

-Right-click on "news"
-Choose "Subscribe to Newsgroups..."
-Type "cpsc.courses.cpsc553" in the filter text box
-Select the newsgroup
-Click the right-pointing arrow to subscribe to the group
-Click OK

-To see a list of messages on the newsgroup click to expand "news"
-Click "cpsc.courses.cpsc553". You can now see the cpsc.courses.cpsc553 newsgroup window.
-To download new messages, use the "Get Articles button" (which looks like an inbox), or click on the "Account" menu, then "Get New Articles in All Groups"
-To read a message, double-click on it

Posting a New Message

-From the cpsc.courses.cpsc553 newsgroup window, click the "Article" menu then "Post to Newsgroup"
-Type the subject and message
-Click the "File" menu then "Send Now"

-From the cpsc.courses.cpsc553 newsgroup window, right-click on the message you want to reply to
-Click the "File" menu then "Send Now"

Using Pine to Access the Newsgroup

Start Pine by typing "Pine" at the command prompt

Subscribing to the Newsgroup

-From the main menu, type "L" to go to folder lists
-Select "News on news.cpsc.ucalgary.ca/nntp" and hit enter
-Type "A" to add a newsgroup
-Type "cpsc.courses.cpsc553" then hit enter

-From the main menu, type "L" to go to folder lists
-Select "News on news.cpsc.ucalgary.ca/nntp" and hit enter
-Select "cpsc.courses.cpsc553" and hit enter. You are now in the cpsc.courses.cpsc553 folder.
-You can read messages by selecting them then hitting enter

Posting a New Message

-From the cpsc.courses.cpsc553 folder type "C" to compose a message
-Type a subject and message
-Type "Ctrl-X" to send
-Confirm that you want to send the message by typing "Y"