Foundations of Visual Computing

VIST 172, Fall 2025 | Texas A&M University, College Station

Visual Computing 172 Course Logo

Course Overview

This course emphasizes hands-on experience in introducing the fundamentals of visualization software development using the Python programming language, with the turtle graphics module for 2D visualization, and the Python scripting interface to Maya. Emphasis will be placed on 2D concepts and techniques, while also providing some experience working in 3D. These principles provide the foundation for higher-level programming coursework and are the basis for highly sought-after skills within the animation, gaming, film, and related industries. This course is designed for undergraduate students with little to no prior experience in programming.

Course Objective

Upon completing the course, successful students will have:

Course Requirements

The Visualization Program requires that all incoming students (Freshmen, Change of Majors, Transfer Students and Graduate Students) have a serviceable laptop computer and suggests the following minimum system configuration.

Course Schedule

Week Topic Lecture Slides Lab and Programming Challenge Quizzes
Week 1
  • Course Overview
  • Python and Editor Installation
  • Computer Organization
  • Date: 25th Aug. and 27th Aug.
Slides Lab 0
  • Installing and testing of Python and Maya
  • Quiz 1
    Week 2
    • Introduction to Basic Python Programming
    • Turtle Graphics in Python
    • Date: 3rd Sept.
    Slides Challenge 1
  • Draw something exercise
  • Quiz 2
    Week 3
    • List in Python
    • List in Turtle Graphics
    • Introduction to Colors
    • Date: 8th Sept. and 10th Sept.
    Slides Lab 1
  • Maya: Introduction to Python scripting
  • Quiz 3
    Week 4
    • Strings, List, and Inputs
    • Conditionals and Booleans
    • Loops in Python
    • Date: 15th Sept. and 17th Sept.
    Slides Challenge 2
  • Sorting squares
  • Quiz 4
    Week 5
    • Range, Division and Modulo
    • Coordinate frames
    • Date: 22nd Sept. and 24th Sept.
    Slides Lab 2
  • Maya: Conditionals and loops in scripts
  • Quiz 5
    Week 6
    • More on Loops and Demo
    • Fibonacci, Sorting a List
    • Tuples and Polygons
    • Date: 29th Sept. and 1st Oct.
    Slides Challenge 3
  • Drawing polygonal shapes
  • Quiz 6
    Week 7
    • Symmetry, Text, Images
    • Points, Vectors, and Lines
    • Date: 6th Oct. and 8th Oct.
    Slides Lab 3
  • Maya: Using lists in scripts
  • Quiz 7
    Week 8
    • Parametric Lines (starburst)
    • Date: 15th Oct.
    Slides Challenge 4
  • Parametric lines
  • Quiz 8
    Week 9 Trigonometry for graphics
    • Angles and Arc Length
    • Trigonometric Func. and Pythagorean Identities
    • Regular Polygon Turtle Demo
    • Date: 20th Oct. and 22nd Oct.
    Slides Lab 4
  • Maya: Scripting scale and translation
  • Quiz 9
    Week 10 Transformation I
    • Scale and translation
    • Combine scale and translation
    • Date: 27th Oct. and 29th Oct.
    Slides Challenge 5
  • Drawing regular polygons
  • Quiz 10
    Week 11 Transformation II
    • Rotation
    • Affine Transformation
    • Basics of Matrix
    • Date: 3rd Nov. and 5th Nov.
    Slides Lab 5
  • Maya: Scripting rotation
  • Quiz 11
    Week 12 Function I
    • Scalar parameters and return values
    • Procedural Transform Demo
    • Date: 10th Nov. and 12th Nov.
    Slides Challenge 6
  • Procedural transforms
  • Quiz 12
    Week 13 Function II
    • Variable Scope
    • Lists, Tuples as parameters, and return value
    • Date: 17th Nov. and 19th Nov.
    Slides Lab 6
  • Maya: Use of functions in scripts
  • Quiz 13
    Week 14 File Handling
    • Open, close, read, write
    • Exception Handling
    • Drawing Stored Model Demo
    • Date: 24th Nov. and 1st Dec.
    Slides Challenge 7
  • Drawing a stored model
  • Quiz 14
    Week 15
    • Statistical Visualization
    • Review
    • Date: 3rd Dec. and 8th Dec.
    Slides Lab 7
  • Maya: Lights, cameras, and rendering
  • Quiz 15

    Download Course Syllabus (PDF)

    Demo Codes

    Lecture codes will be posted here!

    Resources

    Book and Links Software

    Course Staff

    Instructor: Suryansh Kumar (suryanshkumar@tamu.edu)

    TA: Tiansu Chen (tiansuchen@tamu.edu)

    TA: Xiaoming Wang (x_w21@tamu.edu)

    TA: Dharani Kaliannan (dharani.kaliannan@tamu.edu)

    Grader: GA1 (abc@tamu.edu)

    Grader: GA2 (abc@tamu.edu)

    Office Hours: TBA