The quadric object can produce shapes like paraboloids (dish shapes) and hyperboloids (saddle or
hourglass shapes). It can also produce ellipsoids, spheres, cones, and cylinders but you should use the sphere ,
cone , and cylinder objects built into POVRay because they are faster than the quadric
version.
Note: do not confuse "quaDRic" with "quaRTic". A quadric is a 2nd
order polynomial while a quartic is 4th order.
Quadrics render much faster and are less errorprone but produce less complex objects. The syntax is:
QUADRIC:
quadric
{
<A,B,C>,<D,E,F>,<G,H,I>,J
[OBJECT_MODIFIERS...]
}
Although the syntax actually will parse 3 vector expressions followed by a float, we traditionally have written the
syntax as above where A through J are float expressions. These 10 float
that define a surface of x, y, z points which satisfy the equation A x^{2} + B y^{2} + C z^{2}
+ D xy + E xz + F yz + G x + H y + I z + J = 0
Different values of A, B, C, ... J will give different shapes. If you take any three
dimensional point and use its x, y and z coordinates in the above equation the answer will be 0 if the point is on the
surface of the object. The answer will be negative if the point is inside the object and positive if the point is
outside the object. Here are some examples:
Some quartic shapes
X^{2} + Y^{2} + Z^{2}  1 = 0

Sphere

X^{2} + Y^{2}  1 = 0

Infinite cylinder along the Z axis

X^{2} + Y^{2}  Z^{2} = 0

Infinite cone along the Z axis

The easiest way to use these shapes is to include the standard file shapes.inc into your program. It
contains several predefined quadrics and you can transform these predefined shapes (using translate, rotate and
scale) into the ones you want. For a complete list, see the file shapes.inc .
