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
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
-
Introduction to Unix, Utilities, Editors
-
Introduction to Networking, the Web, Web tools, HTML
-
C Programming Concepts, Procedures, Functions, and Parameters
-
Arrays, Command Line Arguments and Sorting, Introduction to OpenGL Graphics
-
OpenGL Features and Functions
-
C Shell Scripting, Awk and Perl
-
Review and Midterm
-
Switch Statements, Functions, Strings, Advanced Arrays
-
Interactive OpenGL
-
Strings, Structures and other Complex Types
-
Files
-
Advanced Applications, Recursion
-
Media Libraries
-
Pointers and Dynamic Allocation
-
Review
Grading
-
Homework Assignments: 50%
-
Midterm Examination: 20%
-
Final Examination; 20%
-
Class Participation: 10%
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
-
Kelley, Al, Pohl, Ira, A Book on C: Programming in C, 4th Edition,
Addison Wesley, 1998
-
Woo, Neider and Davis, OpenGL Programming Guide, 3rd Edition, Addison
Wesley, 1999
Reference Reading Material
-
Aho, Kernighan and Weinberger, The AWK Programming Language, Addison-Wesley,
1988
-
Anderson & Anderson, The UNIX C Shell Field Guide, Prentice-Hall,
1986
-
Lamb, Learning the vi editor, O'Reilly & Associates, 1990
-
Lemay, Web Publishing with HTML, Sams, 1995
-
OpenGL Reference Manual 3rd Edition, Addison-Wesley.
1999
-
Schwartz, Learning Perl, O'Reilly & Associates, 1993
-
Todino, Strang and Peek, Learning the UNIX Operating System, O'Reilly
Associates
-
Wall & Schwartz, Programming Perl, O'Reilly & Associates,
1991
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.