VIZA 652 - Computing for Visualization I

Fall 2004

TR 9:35am-10:50am, Architecture C 307, 4 credits

Instructor: Vinod Srinivasan

Visualization Lab, phone: 5-3465, email: vinod@viz.tamu.edu
Office hours: 11 AM - 12 noon TR, or by appointment

Web Page: http://www-viz.tamu.edu/courses/viza652/04fall/

Directory: /usr/local/misc/courses/viza652/2004

Students

Grades

Reading Assignments

Lab Assignments

Lecture Notes

Introduction

Text and References

Documentation/Notes 

Introduction

Introduction to digital computing environments as used in visualization practice and research - C programming for graphics, OpenGL, the unix operating system, operating system tools, and the human-computer interface including media programming libraries .

This is the first of two courses primarily intended for Visualization students whose technical backgrounds have not prepared them for core courses such as The Digital Image (VIZA 654) and Visualization Systems (VIZA 656). It is also intended as a course for other graduate students, especially in the College of Architecture, who wish to develop an understanding of and  facility with visualization programming. The course will be challenging, fast paced, and will involve considerable project work.

Course Objectives

This course will begin the preparation of students to work efficiently in a typical visualization workstation environment. Students will learn how to customize their environment, and use operating system tools to enhance work efficiency. They will become familiar with a variety of tools such as network browsers, electronic mail, remote file transfer, system utilities, and text editors. Most importantly, students will develop proficiency as programmers using the C programming language and writing shell scripts for unix. Many of the assignments will involve a strong graphical component, allowing the student to develop OpenGL programming skills within a visual context.

Prerequisite

Graduate student status in Visualization or CPSC 110 (or equivalent) and permission of the instructor. The course is intended for students with little background in programming and graphics computing. It will be barred to students who already have similar computer experience.

Course Schedule Outline

1 midterm exam, 1 final exam

Approximate lecture topics schedule by week

  1. Introduction to Unix, Utilities, Editors
  2. Introduction to Networking, the Web, Web tools, HTML
  3. C Programming Concepts, Procedures, Functions, and Parameters
  4. Arrays, Command Line Arguments and Sorting, Introduction to OpenGL Graphics
  5. OpenGL Features and Functions
  6. C Shell Scripting, Awk and Perl
  7. Review and Midterm
  8. Switch Statements, Functions, Strings, Advanced Arrays
  9. Interactive OpenGL
  10. Strings, Structures and other Complex Types
  11. Files
  12. Advanced Applications, Recursion
  13. Media Libraries
  14. Pointers and Dynamic Allocation
  15. Review

Grading

Late homework assignments will be penalized 10% for each day late. The lowest grade on homework assignments turned in will be dropped before computing a student's final homework average. Assignments not turned in will receive a grade of 0.

The midterm and final exams will be closed book. However, students will be permitted to bring one 8-1/2 x 11 sheet of notes to use during the exam.

The class participation grade is the instructor's qualitative evaluation of subjective factors including class attendance and preparation as evidenced by informed classroom discussion.

Text

Reference Reading Material

Aggie Honor Code

"An Aggie does not lie, cheat, or steal or tolerate those who do"

Website: http://www.tamu.edu/aggiehonor

Plagiarism

The handouts used in this course are copyrighted. By "handouts," we mean all materials generated for this class, which include but are not limited to the course notes, syllabi, exams, problems, in-class materials, review sheets, additional problem sets, and the contents of the class World Wide Web site. Because these materials are copyrighted, you do not have the right to copy the handouts, unless we expressly grant permission. For the contents of class World Wide Web sites, you have permission to make printouts strictly for your use in this class.

In this course, we want to encourage collaboration and the free interchange of ideas among students and in particular the discussion of homework assignments, approaches to solving them, etc. However, we do not allow plagiarism, which, as commonly defined, consists of passing off as one's own the ideas, words, writings, etc., which belong to another. In accordance with this definition, you are committing plagiarism if you copy the work of another person and turn it in as your own, even if you should have the permission of that person. Plagiarism is one of the worst academic sins, for the plagiarist destroys the trust among colleagues without which research cannot be safely communicated.

If you have any questions regarding plagiarism, please consult the latest issue of the Texas A&M University Student Rules, under the section on Scholastic Dishonesty.

Americans with Disabilities Act

The Americans with Disabilities Act (ADA) is a federal anti-discrimination statute that provides comprehensive civil rights protection for persons with disabilities. Among other things, this legislation requires that all students with disabilities be guaranteed a learning environment that provides for reasonable accommodation of their disabilities. If you believe you have a disability requiring an accommodation, please contact the Office of Support Services for Students with Disabilities in Room 126 of the Student Services Building. The phone number is 845-1637.