User:Wfpokorny
- the above prism additions have been added with a few minor changes. --jholsenback
Spindle Torus
Template:New.3.7.1 A torus with a minor radius greater than the major radius
(aka spindle torus) will self-intersect in a spindle-shaped region.
The behaviour with respect to the spindle can be controlled by specifying
either of the difference
, intersection
,
merge
or union
keywords, which act similar to the
corresponding CSG operations:
- Using the
difference
keyword, the self-intersecting portion is cut away from the torus, so that the spindle volume is considered outside the primitive; the spindle surface is visible (provided you cut open the torus, or make it semi-transparent). - Using the
intersection
keyword, the resulting shape consists of only the self-intersecting portion, so that only the spindle volume is considered inside the primitive, and only the spindle surface is visible. - Using the
merge
keyword, the surface within the self-intersecting portion is hidden, so that the spindle surface is not visible; the spindle volume is considered inside the primitive. - Using the
union
keyword, the entire torus surface remains visible and the spindle volume is considered inside the primitive (this is the default).
In a non-spindle torus, the intersection
keyword will cause a
"possible parse error" warning and make the torus invisible, while the other
spindle mode keywords will have no effect whatsoever.
Note: The difference
spindle mode
does not affect the behaviour with respect to the
interior_texture
keyword. An
interior_texture
will always be applied to the side of the spindle
surface facing the spindle volume.
Sturm
Calculations for all higher order polynomials must be very accurate. If the
torus renders improperly you may add the keyword sturm
to use
POV-Ray's slower-yet-more-accurate Sturmian root solver.