1<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3//EN"> 2<HTML><HEAD> 3 <TITLE>User's Reference - Isosurface</TITLE> 4 <META HTTP-EQUIV="keywords" CONTENT="GRAPHICS VISUALIZATION VISUAL PROGRAM DATA 5MINING"> 6 <meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"> 7</HEAD><BODY BGCOLOR="#FFFFFF" link="#00004b" vlink="#4b004b"> 8 <TABLE width=510 border=0 cellpadding=0 cellspacing=0> 9 <TR> 10 <TD><IMG src="../images/spacer.gif" width=80 height=1></TD> 11 <TD><IMG src="../images/spacer.gif" width=49 height=1></TD> 12 <TD><IMG src="../images/spacer.gif" width=24 height=1></TD> 13 <TD><IMG src="../images/spacer.gif" width=100 height=1></TD> 14 <TD><IMG src="../images/spacer.gif" width=3 height=1></TD> 15 <TD><IMG src="../images/spacer.gif" width=127 height=1></TD> 16 <TD><IMG src="../images/spacer.gif" width=6 height=1></TD> 17 <TD><IMG src="../images/spacer.gif" width=50 height=1></TD> 18 <TD><IMG src="../images/spacer.gif" width=71 height=1></TD> 19 </TR> 20 <TR> 21 <TD colspan=9><IMG src="../images/flcgh_01.gif" width=510 height=24 alt="OpenDX - Documentation"></TD> 22 </TR> 23 <TR> 24 <TD colspan=2><A href="../allguide.htm"><IMG src="../images/flcgh_02.gif" width=129 height=25 border="0" alt="Full Contents"></A></TD> 25 <TD colspan=3><A href="../qikguide.htm"><IMG src="../images/flcgh_03.gif" width=127 height=25 border="0" alt="QuickStart Guide"></A></TD> 26 <TD><A href="../usrguide.htm"><IMG src="../images/flcgh_04.gif" width=127 height=25 border="0" alt="User's Guide"></A></TD> 27 <TD colspan=3><B><A href="../refguide.htm"><IMG src="../images/flcgh_05d.gif" width=127 height=25 border="0" alt="User's Reference"></A></B></TD> 28 </TR> 29 <TR> 30 <TD><A href="refgu080.htm"><IMG src="../images/flcgh_06.gif" width=80 height=17 border="0" alt="Previous Page"></A></TD> 31 <TD colspan=2><A href="refgu082.htm"><IMG src="../images/flcgh_07.gif" width=73 height=17 border="0" alt="Next Page"></A></TD> 32 <TD><A href="../refguide.htm"><IMG src="../images/flcgh_08.gif" width=100 height=17 border="0" alt="Table of Contents"></A></TD> 33 <TD colspan=3><A href="refgu009.htm"><IMG src="../images/flcgh_09.gif" width=136 height=17 border="0" alt="Partial Table of Contents"></A></TD> 34 <TD><A href="refgu175.htm"><IMG src="../images/flcgh_10.gif" width=50 height=17 border="0" alt="Index"></A></TD> 35 <TD><A href="../srchindx.htm"><IMG src="../images/flcgh_11.gif" width=71 height=17 border="0" alt="Search"></A></TD> 36 </TR> 37 </TABLE> 38 <H3><A name="HDRISOSURF" ></A>Isosurface</H3> 39 <A NAME="IDX563"></A><A NAME="IDX564"></A> 40<P><STRONG>Category</STRONG> 41<P> 42<A HREF="refgu008.htm#HDRCATREL">Realization</A> 43<P><STRONG>Function</STRONG> 44<P> 45Computes isosurfaces and contours. 46<P><STRONG>Syntax</STRONG> 47<PRE><STRONG> 48surface</STRONG> = Isosurface(<STRONG>data, value, number, gradient, flag, direction</STRONG>); 49</PRE> 50<P><STRONG>Inputs</STRONG> 51<BR> 52<TABLE BORDER> 53<TR> 54<TH ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">Name 55</TH><TH ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">Type 56</TH><TH ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">Default 57</TH><TH ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">Description 58</TH></TR><TR> 59<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"><TT><STRONG>data</STRONG></TT> 60</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">scalar field 61</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">none 62</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">field from which one or more 63surfaces are to be 64derived. 65</TD></TR><TR> 66<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"><TT><STRONG>value</STRONG></TT> 67</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">scalar or scalar list 68</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">data mean 69</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">isosurface value or values 70</TD></TR><TR> 71<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"><TT><STRONG>number</STRONG></TT> 72</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">integer 73</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">no default 74</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">number of isosurfaces or contours 75to be computed 76</TD></TR><TR> 77<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"><TT><STRONG>gradient</STRONG></TT> 78</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">vector field 79</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">no default 80</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">gradient field 81</TD></TR><TR> 82<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"> 83<TT><STRONG>flag</STRONG></TT> 84<BR></TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">flag 85</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">1 86</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">0: normals not computed 87<BR> 881: normals computed 89</TD></TR><TR> 90<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%"><TT><STRONG>direction</STRONG></TT> 91</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">integer 92</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="20%">-1 93</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="40%">orientation of normals 94</TD></TR></TABLE> 95<P><STRONG>Outputs</STRONG> 96<BR> 97<TABLE BORDER> 98<TR> 99<TH ALIGN="LEFT" VALIGN="TOP" WIDTH="25%">Name 100</TH><TH ALIGN="LEFT" VALIGN="TOP" WIDTH="25%">Type 101</TH><TH ALIGN="LEFT" VALIGN="TOP" WIDTH="50%">Description 102</TH></TR><TR> 103<TD ALIGN="LEFT" VALIGN="TOP" WIDTH="25%"><TT><STRONG>surface</STRONG></TT> 104</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="25%">field or group 105</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH="50%">isosurface 106</TD></TR></TABLE> 107<P><STRONG>Functional Details</STRONG> 108<P> 109This module computes any of the following: 110<UL COMPACT> 111<LI>points (for an input field consisting of lines) 112<LI>lines (for a surface input field) 113<LI>surfaces (for a volumetric input field). 114</UL> 115All positions in the output field 116are isovalues (i.e., they match a specified value or values). 117<P> 118The module also adds a default color to the output (gray-blue for 119isosurfaces and yellow for contour lines and points) if the 120input object is uncolored. 121If the object is colored, its colors are interpolated in the output 122object. 123<P> 124A "data" component with the same value as the input 125<TT><STRONG>value</STRONG></TT> is added to the output field. 126<P> 127<TABLE CELLPADDING="3"> 128<TR VALIGN="TOP"><TD><P><B><TT><STRONG>data</STRONG></TT> 129</B></TD><TD><P>is the data object for which an isosurface or contour is to be 130created. 131</TD></TR><TR VALIGN="TOP"><TD><P><B><TT><STRONG>value</STRONG></TT> 132</B></TD><TD><P>is the isovalue or isovalues to be used for computing the 133isosurface(s) or contour(s). 134<P> 135If this parameter is not specified, the module bases it calculations on 136the value specified by <TT><STRONG>number</STRONG></TT> (see below). 137If neither parameter is specified, the module uses the arithmetic mean 138of the data input as a default. 139</TD></TR><TR VALIGN="TOP"><TD><P><B><TT><STRONG>number</STRONG></TT> 140</B></TD><TD><P>is ignored if <TT><STRONG>value</STRONG></TT> has been 141specified. 142If that parameter is not specified, the module uses the value of 143<TT><STRONG>number</STRONG></TT> to compute a set of isosurfaces or 144contours with the following isovalues: 145<PRE> 146min + delta, min + (2*delta),..., min - delta 147</PRE> 148where delta = (max - min)/(<TT><STRONG>number</STRONG></TT> + 1), 149and "max" and "min" are the maximum and minimum data 150values of the input field. 151</TD></TR><TR VALIGN="TOP"><TD><P><B><TT><STRONG>gradient</STRONG></TT> 152</B></TD><TD><P>is the gradient field used to compute normals for shading (see 153<A HREF="refgu069.htm#HDRGRADIEN">Gradient</A>). 154<P> 155If this parameter is not specified, the module adds normals by computing 156the gradient internally (<TT><STRONG>flag</STRONG></TT> can nullify 157this behavior; see below). 158<P><B>Note: </B>If only one isosurface is to be computed, it is probably more 159efficient to have module compute the gradient internally. 160If many are to be generated, it is probably more efficient to compute 161the gradient of the entire field once, so that the system can use 162it for every isosurface. 163</TD></TR><TR VALIGN="TOP"><TD><P><B><TT><STRONG>flag</STRONG></TT> 164</B></TD><TD><P>specifies whether normals are to be computed 165for shading. 166A setting of 0 (zero) prevents the computation of normals. 167The default is 1 (one) 168</TD></TR><TR VALIGN="TOP"><TD><P><B><TT><STRONG>direction</STRONG></TT> 169</B></TD><TD><P>specifies whether the normals should point against (0, the 170default) 171or with (1) the gradient. 172</TD></TR></TABLE> 173<P><B>Notes: </B><OL COMPACT> 174<LI>This module adds an attribute called "Isosurface value," which 175has as its value the isovalue(s) used. 176To extract this attribute (e.g., for use in a caption for an image), 177use the Attribute module. 178 179<LI>For contour lines, this module adds a "fuzz" attribute so 180that the line will be rendered slightly in front of a coincident 181surface (see 182<A HREF="refgu048.htm#HDRDISPLAY">Display</A>). 183 184<LI>A surface or contour is considered to be undefined if every point 185in the input volume or surface, respectively, is equal to 186<TT><STRONG>value</STRONG></TT>. 187In such cases, the module output is an empty field. 188<LI>Isosurface does not accept connection-dependent data. 189<LI>With disjoint data fields, there may be no data crossings (i.e., 190points along a connection element where the interpolated data 191value equals the isovalue), even though the isovalue 192itself falls in the range of the actual data. 193</OL> 194<P><STRONG>Components</STRONG> 195<P> 196Creates new "positions" and "connections" 197components. 198For surfaces output, the default is to create a "normals" 199component. 200Any component dependent on "positions" is interpolated and placed 201in the output object. 202<P><STRONG>Example Visual Programs</STRONG> 203<P> 204Many example visual programs use the Isosurface module, including: 205<PRE> 206AlternateVisualizations.net 207ContoursAndCaption.net 208InvalidData.net 209MappedIso.net 210Sealevel.net 211UsingIsosurface.net 212SIMPLE/Isosurface.net 213</PRE> 214<P><STRONG>See Also</STRONG> 215<P> 216 <A HREF="refgu020.htm#HDRBAND">Band</A>, 217 <A HREF="refgu033.htm#HDRCOLOR">Color</A>, 218 <A HREF="refgu069.htm#HDRGRADIEN">Gradient</A>, 219 <A HREF="refgu091.htm#HDRMAP">Map</A>, 220 221 <A HREF="refgu142.htm#HDRSIMPSUR">SimplifySurface</A> 222 <P> 223 <HR> 224 <DIV align="center"> 225 <P><A href="../allguide.htm"><IMG src="../images/foot-fc.gif" width="94" height="18" border="0" alt="Full Contents"></A> <A href="../qikguide.htm"><IMG src="../images/foot-qs.gif" width="94" height="18" border="0" alt="QuickStart Guide"></A> <A href="../usrguide.htm"><IMG src="../images/foot-ug.gif" width="94" height="18" border="0" alt="User's Guide"></A> <A href="../refguide.htm"><IMG src="../images/foot-ur.gif" width="94" height="18" border="0" alt="User's Reference"></A></P> 226 </DIV> 227 <DIV align="center"> 228 <P><FONT size="-1">[ <A href="http://www.research.ibm.com/dx">OpenDX Home at IBM</A> | <A href="http://www.opendx.org/">OpenDX.org</A> ] </FONT></P> 229 <P></P> 230 </DIV> 231 <P></P> 232 </BODY></HTML> 233