miBoolean mi_get_contour_line( miContour_endpoint *p1, miContour_endpoint *p2);
This function can be used by a contour output shader to get end points of a contour line segment. When mi_get_contour_line returns miFALSE, there are no more contour lines.
void mi_add_contour_lines( miContour_endpoint p1[], miContour_endpoint p2[], int n);
This is another function available to contour output shaders. It adds extra contour lines to the ones that were found during rendering. p1 is the list of first endpoints, p2 is the list of second endpoints, and n is the number of contour lines to be added (the number of elements in the lists). This can for example be used by a combination of two contour output shaders: the first one adds some extra contour lines, and the second one renders all contour lines (both the contour lines found during rendering and the extra contour lines added using mi_add_contour_lines). Or, as another example, the first contour output shader can read all contour lines, analyze them, and write back a subset of them (or even some altogether different contours) with mi_add_contour_lines.
Copyright © 1986-2009 by mental images GmbH