contour_intensity = window(gradient) * (1.0 - dot(normal, view))^thicknessThe model is not shaded. In the right image the contour intensity is thresholded.
dot(normal, view) < T * K * (2 - T * C)The curvature is computed as finite differences along the view ray (see [2]), the result is very similar to the simple contours. On the right, same idea but using the mean curvature (computed according to [3]) instead: thinner contours but emphasized noise and not view dependent.
1) dot(view, normal) > threshold
2) curvature == 0.0
3) D_w(curvature) > 0.0Left: curvature computed as finite difference along the ray; right: mean curvature is used; below: same images with simple contours added.