BSc CSIT (TU) Science Computer Graphics (BSc CSIT, CSC209) Question Paper 2077 Nepal
This is the official BSc CSIT (TU) (Science stream) Computer Graphics (BSc CSIT, CSC209) question paper for 2077, as set in the regular annual examination. It carries 60 full marks and a time allowance of 180 minutes, across 12 questions. On Kekkei you can attempt this Computer Graphics (BSc CSIT, CSC209) past paper online with a timer, get instant AI feedback and step-by-step solutions, and track the topics where you lose marks — completely free. Whether you are revising for your BSc CSIT (TU) Computer Graphics (BSc CSIT, CSC209) exam or solving previous years' question papers, this 2077 paper is a great way to practise under real exam conditions.
Section A: Long Answer Questions
Attempt any TWO questions.
Explain parallel and perspective projections in 3D graphics. Derive the transformation matrix for perspective projection.
Parallel and Perspective Projections in 3D Graphics
Projection transforms 3D points onto a 2D projection plane (view plane) by passing projectors (lines from object points toward the plane).
Parallel Projection
Projectors are parallel to each other (the centre of projection is at infinity).
- Preserves relative proportions and parallelism of lines; good for engineering/technical drawings.
- Does not give a realistic view (no foreshortening).
- Types: Orthographic (projectors perpendicular to the plane) and Oblique (projectors at an angle).
For orthographic projection onto the plane, , with matrix:
Perspective Projection
Projectors all pass through a single centre of projection (COP). Objects farther from the COP appear smaller (perspective foreshortening), giving a realistic view, but parallel lines converge to vanishing points and true dimensions are not preserved.
Derivation of the Perspective Projection Matrix
Let the centre of projection be at the origin and the projection plane at (along the -axis). Consider a 3D point projected to on the plane.
Using similar triangles along the -axis:
In homogeneous coordinates, represent . The perspective matrix is:
Multiplying:
Dividing by the homogeneous coordinate gives the Cartesian point:
which matches the similar-triangle result. The term in the bottom row produces the perspective division that creates foreshortening.
Explain the Z-buffer (depth buffer) algorithm for hidden surface removal with its advantages and limitations.
Z-Buffer (Depth Buffer) Algorithm
The Z-buffer algorithm is an image-space method for hidden surface removal. It uses two buffers of the same resolution as the display:
- Frame buffer – stores the colour/intensity of each pixel.
- Depth (Z) buffer – stores the depth ( value) of the closest surface seen so far at each pixel.
Algorithm
1. Initialize:
for each pixel (x, y):
depthBuffer[x][y] = z_max // farthest depth (background)
frameBuffer[x][y] = background_colour
2. For each polygon in the scene:
For each pixel (x, y) covered by the polygon:
Compute depth z of the polygon at (x, y)
if z < depthBuffer[x][y]: // nearer to viewer
depthBuffer[x][y] = z
frameBuffer[x][y] = surface_colour at (x, y)
The depth at successive pixels along a scan line is found incrementally. If is the plane equation, then moving one pixel in :
so only an addition is needed per pixel.
Advantages
- Simple to implement (in hardware too); used in modern GPUs.
- Handles any number of polygons; no presorting of objects is required.
- Easy to handle intersecting and complex surfaces; processing time is roughly independent of scene complexity for a fixed resolution.
Limitations
- Requires large memory for the depth buffer.
- Spends time computing pixels that may later be overwritten (no early sorting); can be inefficient.
- Limited depth precision can cause z-fighting (aliasing of nearly coplanar surfaces).
- Cannot directly handle transparency and anti-aliasing without extensions.
- Resolution-dependent (image-space), so it does not produce an analytic/object-space description.
Explain the scan-line polygon fill algorithm and the boundary fill algorithm with examples.
Scan-Line Polygon Fill Algorithm
This is an image-space area-filling method that fills a polygon scan line by scan line, using the odd-even (parity) rule.
Steps
- Find and of the polygon.
- For each scan line from to :
- Find the intersection points of the scan line with all polygon edges.
- Sort the intersection -coordinates in increasing order.
- Pair them: and fill the pixels between each pair (inside the polygon by the odd-even rule).
- Handle special cases:
- Vertices: count a vertex once if it is a local min/max, otherwise twice, so parity stays correct.
- Use an Edge Table (ET) and Active Edge Table (AET) with coherence: as increases by 1, update each intersection by (the inverse slope) instead of recomputing.
Example: For a triangle with vertices , the scan line intersects the two sloping edges at, say, and ; pixels from to on that line are filled. Repeating for every scan line fills the triangle.
Boundary Fill Algorithm
This is a seed-fill (object-space, recursive) method. Given an interior seed point, it fills outward until the polygon boundary colour is reached.
boundaryFill(x, y, fillColour, boundaryColour):
current = getPixel(x, y)
if current != boundaryColour and current != fillColour:
setPixel(x, y, fillColour)
boundaryFill(x+1, y, fillColour, boundaryColour)
boundaryFill(x-1, y, fillColour, boundaryColour)
boundaryFill(x, y+1, fillColour, boundaryColour)
boundaryFill(x, y-1, fillColour, boundaryColour) // 4-connected
- 4-connected fill checks up/down/left/right; 8-connected also checks the four diagonals (needed for shapes with thin diagonal boundaries).
Example: A circle drawn in red (boundary colour) with a seed pixel at its centre is filled blue; recursion stops at the red ring.
Comparison
- Scan-line fill needs the polygon's edge list and works well for solid polygons; boundary fill needs only a seed point and a known boundary colour but can be memory/stack-heavy and is suited to interactive/region filling.
Section B: Short Answer Questions
Attempt any EIGHT questions.
Explain the concept of window to viewport transformation.
Window-to-Viewport Transformation
A window is the rectangular region selected in world coordinates that is to be displayed. A viewport is the rectangular region on the device/screen where the window's contents are mapped. Window-to-viewport transformation (viewing transformation) maps each point in the window to a corresponding point in the viewport while preserving relative position.
Let a window point be with window limits and the viewport limits . The mapped point is found by keeping the relative position equal:
where the scaling factors are
If , the displayed image is distorted (stretched); equal factors preserve the aspect ratio. The process is equivalent to: translate window to origin, scale by , then translate to the viewport position.
Differentiate between parallel projection and perspective projection.
Parallel vs Perspective Projection
| Aspect | Parallel Projection | Perspective Projection |
|---|---|---|
| Centre of projection | At infinity | At a finite point (COP) |
| Projectors | Parallel to each other | Converge at the COP |
| Size of object | Independent of distance (no foreshortening) | Decreases with distance (foreshortening) |
| Realism | Less realistic | More realistic (how the eye sees) |
| Parallel lines | Remain parallel | Converge to vanishing points |
| Dimensions | True measurements preserved | Not preserved |
| Use | Engineering/CAD drawings | Games, walkthroughs, realistic scenes |
| Types | Orthographic, Oblique | One-, two-, three-point perspective |
In short, parallel projection preserves shape and size for accurate measurement, whereas perspective projection sacrifices accuracy to give a realistic depth cue.
Explain the working of a CRT (Cathode Ray Tube) with a suitable diagram.
Working of a Cathode Ray Tube (CRT)
A CRT is the basic display device used in older monitors. It is an evacuated glass tube with the following main parts:
- Electron gun – contains a heated cathode (filament) that emits electrons by thermionic emission, and a control grid that controls the number of electrons (beam intensity/brightness).
- Focusing system – electrostatic/magnetic lenses that converge the electrons into a fine, sharp beam.
- Deflection system – horizontal and vertical deflection plates/coils that steer the beam to the desired position on the screen.
- Phosphor-coated screen – the front face; when the high-energy electron beam strikes it, the phosphor glows (fluoresces) and emits light at that spot.
Operation
Electrons emitted by the heated cathode are accelerated by a positive accelerating anode toward the screen, focused into a narrow beam, and deflected to a specific position. Where the beam hits, the phosphor emits a spot of light. Because the glow fades quickly (persistence), the picture must be redrawn many times per second (refreshing, typically 60 Hz or more) to avoid flicker.
Diagram (described): a horizontal tube with the electron gun (cathode, control grid, accelerating anode) at the narrow rear end, a focusing system, then vertical and horizontal deflection plates, opening out to the wide phosphor-coated screen at the front, with the electron beam shown travelling left to right and striking the screen.
Differentiate between object-space and image-space methods of hidden surface removal.
Object-Space vs Image-Space Methods (Hidden Surface Removal)
| Aspect | Object-Space Method | Image-Space Method |
|---|---|---|
| Where it works | In the world/object coordinate space, on the geometry of objects | In the device/screen space, pixel by pixel |
| Comparison | Compares objects/surfaces with each other to decide visibility | Determines, for each pixel, which surface is visible |
| Precision | Computations done at object precision (exact) | Done at display (pixel) resolution |
| Cost | Time grows with number of objects (~) | Time grows with number of pixels × objects |
| Resolution dependence | Independent of display resolution | Dependent on display resolution |
| Output | Resolution-independent description; can be scaled | Tied to a particular resolution |
| Examples | Back-face detection, painter's (depth-sort) algorithm | Z-buffer, scan-line, area-subdivision (Warnock) |
Object-space methods are accurate but become expensive for many objects, whereas image-space methods scale with screen resolution and are simpler to implement in hardware.
What is a spline? Differentiate between interpolation and approximation splines.
Spline; Interpolation vs Approximation Splines
Spline
A spline is a smooth curve constructed to pass through or near a set of given points called control points. The term originates from a flexible strip (mechanical spline) bent through points. Mathematically a spline is a piecewise polynomial curve (e.g. cubic) joined so that it is continuous and smooth (positional, tangent, and sometimes curvature continuity, denoted ) at the joints. Common splines: Bezier, B-spline, Hermite.
Interpolation vs Approximation Splines
| Aspect | Interpolation Spline | Approximation Spline |
|---|---|---|
| Relation to control points | Curve passes through every control point | Curve does not pass through all control points; it is guided/pulled toward them |
| Fit | Exact fit to data points | Approximate fit (smoother) |
| Control points act as | Points on the curve | Points that influence the curve's shape |
| Smoothness/control | Can wiggle to hit all points | Smoother, easier shape control |
| Examples | Natural cubic spline, Hermite (through endpoints) | Bezier, B-spline curves |
In short, an interpolation spline reproduces the data exactly by passing through the points, while an approximation spline trades exactness for a smoother, more controllable curve that merely approximates the control points.
Explain the key frame system in computer animation.
Key Frame System in Computer Animation
A key frame is a frame that defines the important/extreme positions (the start and end points of a movement) of an object in an animation. In a key frame system, the animator (or lead) specifies only these key frames, and the computer automatically generates the in-between frames by a process called in-betweening or tweening.
Working
- The animator defines key frames at chosen times for an object's parameters (position, shape, colour, orientation).
- The number of in-between frames is decided from the frame rate and time gap, e.g. for 1 s at 24 fps with key frames at the ends there are 22 in-betweens.
- The system interpolates parameter values between successive key frames:
for linear interpolation; non-linear (spline) interpolation is used for smooth ease-in/ease-out motion. 4. Object shapes can be transformed between key frames by morphing, matching the number of vertices/edges in the two key shapes.
Advantages
- The animator controls only the important frames, saving large amounts of manual work.
- Smooth, consistent motion is produced automatically; timing is easy to adjust by changing key-frame positions.
Explain the working principle of a Raster scan display and a Random (vector) scan display.
Raster Scan vs Random (Vector) Scan Displays
Raster Scan Display
The screen is a grid of pixels. The electron beam sweeps the screen horizontally, one scan line at a time, from top to bottom (left-to-right on each line, then retrace). The picture intensity for every pixel is held in a frame buffer (refresh buffer) in memory; as the beam scans, the intensity is read from the frame buffer and applied. After the bottom line, the beam returns to the top (vertical retrace) and the whole screen is refreshed (typically 60 Hz).
- Suitable for realistic, filled, shaded images and photographs.
- Image quality limited by resolution (pixel count); diagonal lines show staircase/aliasing.
- Needs large frame-buffer memory.
Random (Vector / Stroke) Scan Display
The electron beam is deflected directly from one endpoint of a line to another, drawing only the line segments that make up the picture (it does not scan the whole screen). The component lines/curves are stored in a display file (refresh display list) and the beam is refreshed by re-tracing those segments (30–60 times/s).
- Produces very smooth, sharp lines (no staircasing) at high resolution.
- Good for line drawings, CAD, wireframes; cannot easily display shaded/solid areas or realistic images.
- Refresh time depends on the number of lines (complex pictures may flicker).
Key difference: raster scan plots all pixels from a frame buffer (good for filled images), while random scan plots only the line segments directly (good for crisp line art).
Explain the DDA line drawing algorithm with its advantages and disadvantages.
DDA (Digital Differential Analyzer) Line Drawing Algorithm
The DDA is an incremental scan-conversion algorithm that draws a line by sampling it at unit intervals along the axis of greater change and computing the other coordinate from the slope .
Algorithm
Input: endpoints (x1, y1), (x2, y2)
dx = x2 - x1; dy = y2 - y1
steps = max(|dx|, |dy|) // number of sampling steps
xInc = dx / steps; yInc = dy / steps
x = x1; y = y1
plot(round(x), round(y))
for i = 1 to steps:
x = x + xInc
y = y + yInc
plot(round(x), round(y))
If : increment by 1 and by each step; if : increment by 1 and by . This guarantees no gaps in the line.
Advantages
- Simpler and faster than directly evaluating the line equation at each point, because it uses only incremental addition (no repeated multiplication).
- Easy to understand and implement.
Disadvantages
- Uses floating-point arithmetic and
round(), which are slow and prone to round-off accumulation, so points may drift away from the true line for long lines. - Floating-point operations make it slower than the all-integer Bresenham's algorithm, which is generally preferred.
Derive the transformation matrix for rotation about an arbitrary point in 2D.
Rotation About an Arbitrary Point in 2D
A basic rotation matrix rotates a point only about the origin. To rotate about an arbitrary pivot point by angle , we perform three steps using homogeneous coordinates:
Step 1 – Translate the pivot to the origin:
Step 2 – Rotate about the origin by :
Step 3 – Translate the pivot back to its original position:
Composite Matrix
The overall transformation is . Multiplying:
Thus a transformed point is given by , i.e.
Frequently asked questions
- Where can I find the BSc CSIT (TU) Computer Graphics (BSc CSIT, CSC209) question paper 2077?
- The full BSc CSIT (TU) Computer Graphics (BSc CSIT, CSC209) 2077 (regular) question paper is available free on Kekkei. You can read every question online and attempt the paper under timed exam conditions.
- Does the Computer Graphics (BSc CSIT, CSC209) 2077 paper come with solutions?
- Yes. Every question on this Computer Graphics (BSc CSIT, CSC209) past paper includes a step-by-step solution, plus instant AI feedback when you attempt it on Kekkei.
- How many marks is the BSc CSIT (TU) Computer Graphics (BSc CSIT, CSC209) 2077 paper?
- The BSc CSIT (TU) Computer Graphics (BSc CSIT, CSC209) 2077 paper carries 60 full marks and is meant to be completed in 180 minutes, across 12 questions.
- Is practising this Computer Graphics (BSc CSIT, CSC209) past paper free?
- Yes — reading and attempting this Computer Graphics (BSc CSIT, CSC209) past paper on Kekkei is completely free.