surf(1) visualization of algebraic curves and surfaces


surf [,FILE/]...


surf is a script driven tool to render algebraic curves and surfaces.

The only input needed is the equation of an algebraic curve/surface in everyday mathematical notation. The output is a (series of) color or black and white image(s) in one of several file formats.

surf also provides a C-style command language which helps working out more complicated equations.

The resolution of an image is only bounded by the available memory. Since the image is stored as an array of floats and because some image processing algorithms need a copy of the image, you need at least width*height*12 bytes of virtual memory.

A relevant extension to the image output filename can be automatically provided by either enabling the auto-extension machinery or giving a dummy extension. The auto-extension machinery is disabled by default for backward compatibility, while the implemented dummy extensions are: .xxx, .XXX, .auto-extension, and .automatic-extension.

surf can handle curves/surfaces up to degree 30. The main features include algebraic curves, algebraic surfaces, hyper plane sections, lines on surfaces, multiple curves/surfaces, adaptive anti aliasing and dithering.


disable automatic extension for graphic files (default)
enable automatic extension for graphic files
--clip-to-rectangle x_min y_min x_max y_max
clip images to the specified rectangle
-v, --verbose
verbose operation, print the executed commands (default)
-q, --quiet, --silent
quiet operation, do not print the executed commands
-h, --help
display this help and exit
-V, --version
display version tuple and exit


Stephan Endrass, Hans Huelf, Ruediger Oertel, Kai Schneider, Ralf Schmitt, Johannes Beigel


Copyright (C) 1997-2015 Johannes Gutenberg-Universitaet Mainz
Copyright (C) 1996-1997 Friedrich Alexander Universitaet Erlangen-Nuernberg