1. Basic Matrix Transformations:

    • Scaling Matrix: Adjusts an object’s size along the x, y, and z axes.
    • Rotation Matrix: Rotates an object about an axis; can be around x, y, or z in 3D space.
    • Translation Matrix: Moves an object to a new position without altering its orientation.
  2. Change of Frames:

    • Conversion from model coordinates to view coordinates requires a transformation matrix (Model-to-View Matrix).
    • Model World View Projection
    • This matrix positions objects relative to the camera for rendering.
  3. Quaternions:

    • Used for representing rotations efficiently.
    • Provides smooth interpolation between rotations (ideal for animations and orientation in 3D space).
    • , and
  4. Euler Transforms:

    • Combinations of rotations about the x, y, and z axes (known as yaw, pitch, and roll) help represent complex orientations.
    • Euler angles can lead to issues like “Gimbal lock,” where rotation becomes restricted along certain axes.
  5. Line Drawing Algorithms:

    • Digital Differential Analyzer (DDA): Generates lines by incrementing x or y and calculating corresponding points.
    • Bresenham’s Algorithm: An optimized line-drawing algorithm that uses integer calculations, making it faster and ideal for raster graphics.
  6. Pros and Cons of Bresenham’s Algorithm:

    • Advantages: Integer-based and efficient, well-suited for real-time applications.
    • Disadvantages: Works best with lines of gentle slopes and can require adaptation for steeper angles.