Adds triangles defining an isosurface to a triangle list (for use with selected TDPACK routines).
Available in version 4.3.1 and later.
procedure tditri ( u [*] : float, v [*] : float, w [*] : float, f [*][*][*] : float, fiso  : float, rtri [*] : float, ntri  : integer, render_index  : integer )
A real array dimensioned nu which must be monotonically increasing.v
A real array dimensioned nv which must be monotonically increasing.w
A real array dimensioned nw which must be monotonically increasing.f
A real array dimensioned nw x nv x nu, which, along with u, v, and w, defines the isosurface to be drawn.fiso
A scalar float cutoff value defining the isosurface. The purpose of a call to tditri is to generate a set of triangles separating the 3-space box within which the function f is defined into two volumes: one where the value of f is less than or equal to fiso and another where the value of f is greater than fiso.rtri
A float input/output array, dimensioned mtri x 10, in which a list of triangles has been stored.ntri
An input/output integer specifying the number of triangles currently in the triangle list.. It is the user's responsibility to zero this initially and its value is increased by each call to a triangle-generating routine like tditri. If ntri becomes equal to mtri, tditri does not take an error exit; instead, it just stops generating triangles. Therefore, it's a good idea, after calling tditri, to check the value of ntri against the dimension mtri; if they're equal, it probably means that the triangle list filled up and that the rendered surface will be incomplete.
This routine is part of the low-level TDPACK package, which is a group of Fortran and C callable routines for projecting objects from a 3-dimensional coordinate system having U, V, and W axes to a 2-dimensional projection plane having X and Y axes and/or for drawing the projections of those objects. This can be referred to somewhat loosely as "drawing objects in three dimensions".
Please see the documentation on TDITRI for a full description of this procedure.
See example 4 on the three-dimensional graphics applications page.