/obj_viewer

View and transform models from an OBJ file

Primary LanguagePython

As a student of an introductory computer graphics course, my task was
to create a small application capable of the following:

- loading OBJ files, only examining vertices and faces
- rendering the model in orthogonal projection
- applying simple (global) transformations to the model using matrices:
    - rotating by 5 degrees around any (world) axis
    - moving by +0.1 in any of the three directions
    - scaling up/down to 110%/90% of the original size
- applying flat shading to the model

I've decided to use a tool way too powerful for such simple task -- the
Python/Qt (PySide) combo. Not allowed to use much of the functionality
provided by it (the goal of the assignment is to learn how these things
can be done on your own), I'm reinventing the wheel by only using the most
basic functions like drawing a single line -- which, compared to using
already implemented, highly optimized functions, slows the application
down a lot.


The application has been tested on Python 2.7 and Python 3.3 and should
be compatible with both. In order to get it running, you'll need to
download and install PySide available at
http://qt-project.org/wiki/Category:LanguageBindings::PySide::Downloads