// // time: Wed Apr 24 07:52:38 1996 // // version: 3.0.0 (format), 3.1.0 (DX) // // // Begin MDF // MODULE IsoImage // CATEGORY Realization // DESCRIPTION computes a combined pseudo-color image and contour lines with a given ColorMap // INPUT scalar_field; field; (none); create contours and a pseudo-color image of scalar field // INPUT minimum; value; (none); minimum value of scalar field to be realized // INPUT maximum; value; (none); maximum value of scalar field to be realized // INPUT increment; value; (none); increment for contour levels // INPUT opacity; field or scalar; 1.0; opacity of surface and lines // INPUT realization; integer; 1; 1 = pseudo-color image, 2 = contours, 3 = both, 4 = filled contours // INPUT contour_color; field or vector or string; "black"; Colors of Contour Lines // INPUT image_color; field or vector or string; (none); Colors for Pseudo-Color Image // INPUT normals; integer; 2; 1 = normals on output image, 2 = no normals // INPUT post; integer; 2; 1 = connections-dependent, 2 = positions-dependent (smoothed) // OUTPUT iso_color; object; contoured and/or pseudo-color imaged field // OUTPUT color; object; pseudo-color imaged field only // OUTPUT contour; object; line-contoured field // End MDF // // comment: This macro creates a combined realization of pseudo-colored contour lines of specified increment and range overlaid on a pseudo-color image of a scalar field or filled contours. Outputs include the pseudo-colored field only, contour lines, and the colored field combined with contours, Data may be treated as either connection- or position-dependent for the pseudo-color image. The user provides colors for the contours and image. // comment: (C) COPYRIGHT International Business Machines Corp. 1996. // comment: All Rights Reserved. // comment: Licensed Materials - Property of IBM // comment: // comment: Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of IBM not be used in advertising or publicity pertaining to distribution of the software without specific prior written permission. // comment: // comment: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THE SOFTWARE, BOTH INDIVIDUALLY AND AS ONE OR MORE GROUPS, "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IBM DOES NOT WARRANT AGAINST THE INFRINGMENT OF PATENTS, COPYRIGHT OR ANY OTHER INTELLECTUAL PROPERTY RIGHTS OF OTHERS. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE, BOTH INDIVIDUALLY AND AS ONE OR MORE GROUPS, IS WITH YOU. Optionally, normals may be placed on the image. // workspace: width = 778, height = 1240 // layout: snap = 0, width = 50, height = 50, align = CC // macro IsoImage( scalar_field ,minimum ,maximum ,increment ,opacity = 1.0 ,realization = 1 ,contour_color = "black" ,image_color ,normals = 2 ,post = 2 ) -> ( iso_color ,color ,contour ) { // // node Input[9]: x = 242, y = 1050, inputs = 0, label = Input // parameter: position = 6, name = 'realization', value = '1', descriptive = 0, description = '1 = pseudo-color image, 2 = contours, 3 = both, 4 = filled contours', required = 0, visible = 1 // IsoImage_Input_9_out_1 = realization; // // node Input[12]: x = 16, y = 859, inputs = 0, label = Input // parameter: position = 9, name = 'normals', value = '2', descriptive = 0, description = '1 = normals on output image, 2 = no normals', required = 0, visible = 1 // IsoImage_Input_12_out_1 = normals; // // node Input[13]: x = 0, y = 237, inputs = 0, label = Input // parameter: position = 10, name = 'post', value = '2', descriptive = 0, description = '1 = connections-dependent, 2 = positions-dependent (smoothed)', required = 0, visible = 1 // IsoImage_Input_13_out_1 = post; // // node Input[4]: x = 149, y = 4, inputs = 0, label = Input // parameter: position = 1, name = 'scalar_field', value = ' ', descriptive = 0, description = 'create contours and a pseudo-color image of scalar field', required = 1, visible = 1 // IsoImage_Input_4_out_1 = scalar_field; // // node Post[1]: x = 28, y = 66, inputs = 2, label = Post // input[2]: defaulting = 0, visible = 1, type = 32, value = "connections" // IsoImage_Post_1_out_1 = Post( IsoImage_Input_4_out_1, "connections" ) [instance: 1, cache: 1]; // // node Post[2]: x = 181, y = 103, inputs = 2, label = Post // input[2]: defaulting = 0, visible = 1, type = 32, value = "positions" // IsoImage_Post_2_out_1 = Post( IsoImage_Input_4_out_1, "positions" ) [instance: 2, cache: 1]; // // node Switch[3]: x = 6, y = 466, inputs = 3, label = Switch // IsoImage_Switch_3_out_1 = Switch( IsoImage_Input_13_out_1, IsoImage_Post_1_out_1, IsoImage_Post_2_out_1 ) [instance: 3, cache: 1]; // // node Input[11]: x = 86, y = 542, inputs = 0, label = Input // parameter: position = 8, name = 'image_color', value = ' ', descriptive = 0, description = 'Colors for Pseudo-Color Image', required = 1, visible = 1 // IsoImage_Input_11_out_1 = image_color; // // node Input[8]: x = 191, y = 563, inputs = 0, label = Input // parameter: position = 5, name = 'opacity', value = '1.0', descriptive = 0, description = 'opacity of surface and lines', required = 0, visible = 1 // IsoImage_Input_8_out_1 = opacity; // // node Color[3]: x = 0, y = 678, inputs = 5, label = Color // IsoImage_Color_3_out_1 = Color( IsoImage_Switch_3_out_1, IsoImage_Input_11_out_1, IsoImage_Input_8_out_1, NULL, NULL ) [instance: 3, cache: 1]; // // node Normals[1]: x = 56, y = 783, inputs = 2, label = Normals // input[2]: visible = 0 // IsoImage_Normals_1_out_1 = Normals( IsoImage_Color_3_out_1, NULL ) [instance: 1, cache: 1]; // // node Switch[2]: x = 147, y = 881, inputs = 3, label = Switch // IsoImage_Switch_2_out_1 = Switch( IsoImage_Input_12_out_1, IsoImage_Normals_1_out_1, IsoImage_Color_3_out_1 ) [instance: 2, cache: 1]; // // node Input[5]: x = 579, y = 342, inputs = 0, label = Input // parameter: position = 2, name = 'minimum', value = ' ', descriptive = 0, description = 'minimum value of scalar field to be realized', required = 1, visible = 1 // IsoImage_Input_5_out_1 = minimum; // // node Input[6]: x = 650, y = 338, inputs = 0, label = Input // parameter: position = 3, name = 'maximum', value = ' ', descriptive = 0, description = 'maximum value of scalar field to be realized', required = 1, visible = 1 // IsoImage_Input_6_out_1 = maximum; // // node Input[7]: x = 735, y = 359, inputs = 0, label = Input // parameter: position = 4, name = 'increment', value = ' ', descriptive = 0, description = 'increment for contour levels', required = 1, visible = 1 // IsoImage_Input_7_out_1 = increment; // // node Enumerate[3]: x = 600, y = 431, inputs = 5, label = Enumerate // input[3]: visible = 0 // input[5]: visible = 0 // IsoImage_Enumerate_3_out_1 = Enumerate( IsoImage_Input_5_out_1, IsoImage_Input_6_out_1, NULL, IsoImage_Input_7_out_1, NULL ) [instance: 3, cache: 1]; // // node Isosurface[1]: x = 280, y = 558, inputs = 6, label = Isosurface // input[3]: visible = 0 // IsoImage_Isosurface_1_out_1 = Isosurface( IsoImage_Input_4_out_1, IsoImage_Enumerate_3_out_1, NULL, NULL, NULL, NULL ) [instance: 1, cache: 1]; // // node Input[10]: x = 468, y = 663, inputs = 0, label = Input // parameter: position = 7, name = 'contour_color', value = '"black"', descriptive = 0, description = 'Colors of Contour Lines', required = 0, visible = 1 // IsoImage_Input_10_out_1 = contour_color; // // node Color[4]: x = 318, y = 687, inputs = 5, label = Color // input[3]: visible = 0 // IsoImage_Color_4_out_1 = Color( IsoImage_Isosurface_1_out_1, IsoImage_Input_10_out_1, NULL, NULL, NULL ) [instance: 4, cache: 1]; // // node Options[5]: x = 386, y = 687, inputs = 3, label = Options // input[2]: defaulting = 0, visible = 0, type = 32, value = "fuzz" // input[3]: defaulting = 0, visible = 0, type = 29, value = 4 // IsoImage_Options_5_out_1 = Options( IsoImage_Color_4_out_1, "fuzz", 4 ) [instance: 5, cache: 1]; // // node Collect[1]: x = 396, y = 1045, inputs = 2, label = Collect // IsoImage_Collect_1_out_1 = Collect( IsoImage_Switch_2_out_1, IsoImage_Options_5_out_1 ) [instance: 1, cache: 1]; // // node Band[2]: x = 527, y = 523, inputs = 4, label = Band // input[3]: visible = 0 // input[4]: visible = 0 // IsoImage_Band_2_out_1 = Band( IsoImage_Input_4_out_1, IsoImage_Enumerate_3_out_1, NULL, NULL ) [instance: 2, cache: 1]; // // node Color[5]: x = 513, y = 710, inputs = 5, label = Color // IsoImage_Color_5_out_1 = Color( IsoImage_Band_2_out_1, IsoImage_Input_11_out_1, IsoImage_Input_8_out_1, NULL, NULL ) [instance: 5, cache: 1]; // // node Normals[2]: x = 498, y = 828, inputs = 2, label = Normals // input[2]: visible = 0 // IsoImage_Normals_2_out_1 = Normals( IsoImage_Color_5_out_1, NULL ) [instance: 2, cache: 1]; // // node Switch[12]: x = 532, y = 956, inputs = 3, label = Switch // IsoImage_Switch_12_out_1 = Switch( IsoImage_Input_12_out_1, IsoImage_Normals_2_out_1, IsoImage_Color_5_out_1 ) [instance: 12, cache: 1]; // // node Switch[1]: x = 340, y = 1139, inputs = 5, label = Switch // IsoImage_Switch_1_out_1 = Switch( IsoImage_Input_9_out_1, IsoImage_Switch_2_out_1, IsoImage_Options_5_out_1, IsoImage_Collect_1_out_1, IsoImage_Switch_12_out_1 ) [instance: 1, cache: 1]; // // node Output[2]: x = 480, y = 1177, inputs = 1, label = Output // parameter: position = 1, name = 'iso_color', value = ' ', descriptive = 0, description = 'contoured and/or pseudo-color imaged field', required = 0, visible = 1 // iso_color = IsoImage_Switch_1_out_1; // // node Output[4]: x = 116, y = 1012, inputs = 1, label = Output // parameter: position = 2, name = 'color', value = ' ', descriptive = 0, description = 'pseudo-color imaged field only', required = 0, visible = 1 // color = IsoImage_Switch_2_out_1; // // node Output[5]: x = 246, y = 850, inputs = 1, label = Output // parameter: position = 3, name = 'contour', value = ' ', descriptive = 0, description = 'line-contoured field', required = 0, visible = 1 // contour = IsoImage_Options_5_out_1; // network: end of macro body } IsoImage_Input_9_out_1 = NULL; IsoImage_Input_12_out_1 = NULL; IsoImage_Input_13_out_1 = NULL; IsoImage_Input_4_out_1 = NULL; IsoImage_Post_1_out_1 = NULL; IsoImage_Post_2_out_1 = NULL; IsoImage_Switch_3_out_1 = NULL; IsoImage_Input_11_out_1 = NULL; IsoImage_Input_8_out_1 = NULL; IsoImage_Color_3_out_1 = NULL; IsoImage_Normals_1_out_1 = NULL; IsoImage_Switch_2_out_1 = NULL; IsoImage_Input_5_out_1 = NULL; IsoImage_Input_6_out_1 = NULL; IsoImage_Input_7_out_1 = NULL; IsoImage_Enumerate_3_out_1 = NULL; IsoImage_Isosurface_1_out_1 = NULL; IsoImage_Input_10_out_1 = NULL; IsoImage_Color_4_out_1 = NULL; IsoImage_Options_5_out_1 = NULL; IsoImage_Collect_1_out_1 = NULL; IsoImage_Band_2_out_1 = NULL; IsoImage_Color_5_out_1 = NULL; IsoImage_Normals_2_out_1 = NULL; IsoImage_Switch_12_out_1 = NULL; IsoImage_Switch_1_out_1 = NULL;