Suggestive Contours Final programming assignment Advanced topics in Computer Graphics.

12
Suggestive Contours Final programming assignment Advanced topics in Computer Graphics
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    218
  • download

    0

Transcript of Suggestive Contours Final programming assignment Advanced topics in Computer Graphics.

Suggestive Contours

Final programming assignment

Advanced topics in Computer Graphics

Non-photorealistic rendering (NPR) Rendering techniques aimed at

Conveying shape sketching, rough idea of the shape

Conveying specific artistic style hand-drawn hatching etc…

Line rendering to convey shape How to make the computer draw the surface

as a line rendering?

Line rendering to convey shape Silhouettes (or contours)

edges on the surface where one side is turned to the viewer and the other away from the viewer)

n

v

<v, n> = 0

Line rendering to convey shape Silhouettes (or contours)

are probably not enough…

only contours with suggestive contours

only contours with suggestive contours

Line rendering to convey shape Suggestive contours:

extension of regular silhouettes points on the surface that will turn into silhouettes

in near-by views

Suggestive contours

Formal definition: inflection points of radial curvature

Suggestive contours

Formal definition: inflection points of radial curves (i.e. zeros of radial curvature)

Suggestive contours

Computation Object space:

compute radial curvatures given the view (the eye) find points of zero radial curvature, so that the radial

curve changes from convex to concave Image space:

put a diffuse light source at the eye render and look for valleys (local minima of <n, v>) this will give an approximation of pixels where radial

curvature is zero

The assignment

To read the paper “Suggestive contours for conveying shape” by DeCarlo et al.

To implement suggestive contour (+ normal silhouette) rendering for triangular meshes, as described in the paper

http://www.cs.tau.ac.il/~sorkine/courses/adv_cg/sc/

You get from us

A basic code to read meshes from known formats and to display them interactively

You should implement the rendering algorithm yourself

The End