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