Algebraic surface:
Unluckily, displaying an algebraic surface is not simple. The easiest although also the most of the time consuming way is ray-tracing. Several ray-tracers permit users to specify an implicit equation. POVRAY and Radiance are good instance. Though, ray-tracing is extremely slow. Another possibility is triangulating the surface that is similar to what we did earlier for parametric surfaces. Though, for implicit surfaces, situation is different as we do not have a domain to triangulate. More exactly, triangulation must be carried out directly on the surface. Programs that may subdivide an implicit surface into polygons (not necessarily triangles) are generally referred to as polygonizers. Producing such polygonizers is not an easy job and is yet a research problem.
The following surfaces are produced from a well-known polygonizer by Jules Bloomenthal that has been incorporated into our surface system. The left surface is hyperbolic paraboloid & the right one is a ring Dupin cyclide that is a degree 4 rational surface. These two surfaces are triangulated in a great number of small triangles each of that is colored with a random color. Though, it is not essential to have such a large number of triangles.