// // time: Thu Mar 16 09:14:20 1995 // // version: 2.0.2 (format), 2.1.0 (DX) // // Begin MDF // MODULE BALLnSTICK2 // CATEGORY Macros // DESCRIPTION Macro to render molecules given file containing atomic coordinates // INPUT CoordFile; string; (none); // INPUT AtomColors; string; (none); dx file used for color mapping to element type // INPUT AtomRadii; string; (none); dx file used for radius mapping to element type // INPUT Spiffiness; scalar or string or field or group; (none); degree of spiffiness for spherical glyphs // INPUT Scale; scalar; (none); scale factor for spheres // INPUT BondOpacity; object; (none); Opacity of Bonds // INPUT BondColor; object; (none); Bond Color // INPUT BondDiameter; object; (none); Tube diameter to represent bonds // OUTPUT output_1; group; // OUTPUT output_2; object; // End MDF // // comment: Macro to render Pluto models from a dx file containing the following components: // comment: (default values in parentheses) // comment: INPUT #1 CoordFile // comment: DATA: atomic number of each atom // comment: POSITIONS: x,y,z of each atom // comment: CONNECTIONS: bonding // comment: INPUT #2 Atom Colors File // comment: INPUT #3 Atom Radii File // comment: INPUT #4 Spiffiness of Spheres (spiffy) // comment: INPUT #5 Scale Factor for Spheres (0.60) // comment: INPUT #6 Bond Opacity (1.0) // comment: INPUT #7 Bond Color (sky blue) // comment: INPUT #8 Bond Diameter (0.2) // workspace: width = 1396, height = 1200 // layout: snap = 0, width = 10, height = 10, align = CC // macro BALLnSTICK2( CoordFile ,AtomColors ,AtomRadii ,Spiffiness ,Scale ,BondOpacity ,BondColor ,BondDiameter ) -> ( output_1 ,output_2 ) { // // node Input[7]: x = 28, y = 0, inputs = 0, label = Input // // parameter: position = 1, name = 'CoordFile', value = ' ', descriptive = 0, description = ' ', required = 1 BALLnSTICK2_Input_7_out_1 = CoordFile; // // node Input[8]: x = 154, y = 4, inputs = 0, label = Input // // parameter: position = 2, name = 'AtomColors', value = ' ', descriptive = 0, description = 'dx file used for color mapping to element type', required = 1 BALLnSTICK2_Input_8_out_1 = AtomColors; // // node Input[9]: x = 291, y = 6, inputs = 0, label = Input // // parameter: position = 3, name = 'AtomRadii', value = ' ', descriptive = 0, description = 'dx file used for radius mapping to element type', required = 1 BALLnSTICK2_Input_9_out_1 = AtomRadii; // // node Input[10]: x = 413, y = 237, inputs = 0, label = Input // // parameter: position = 4, name = 'Spiffiness', value = ' ', descriptive = 0, description = 'degree of spiffiness for spherical glyphs', required = 1 BALLnSTICK2_Input_10_out_1 = Spiffiness; // // node Input[11]: x = 499, y = 221, inputs = 0, label = Input // // parameter: position = 5, name = 'Scale', value = ' ', descriptive = 0, description = 'scale factor for spheres', required = 1 BALLnSTICK2_Input_11_out_1 = Scale; // // node Input[12]: x = 537, y = 15, inputs = 0, label = Input // // parameter: position = 6, name = 'BondOpacity', value = ' ', descriptive = 0, description = 'Opacity of Bonds', required = 1 BALLnSTICK2_Input_12_out_1 = BondOpacity; // // node Input[13]: x = 647, y = 11, inputs = 0, label = Input // // parameter: position = 7, name = 'BondColor', value = ' ', descriptive = 0, description = 'Bond Color', required = 1 BALLnSTICK2_Input_13_out_1 = BondColor; // // node Input[14]: x = 764, y = 3, inputs = 0, label = Input // // parameter: position = 8, name = 'BondDiameter', value = ' ', descriptive = 0, description = 'Tube diameter to represent bonds', required = 1 BALLnSTICK2_Input_14_out_1 = BondDiameter; // // node Import[5]: x = 28, y = 88, inputs = 6, label = Import // BALLnSTICK2_Import_5_out_1 = Import( BALLnSTICK2_Input_7_out_1, BALLnSTICK2_Import_5_in_2, BALLnSTICK2_Import_5_in_3, BALLnSTICK2_Import_5_in_4, BALLnSTICK2_Import_5_in_5, BALLnSTICK2_Import_5_in_6 ) [instance: 5, cache: 1]; // // node Import[2]: x = 150, y = 91, inputs = 6, label = Import // BALLnSTICK2_Import_2_out_1 = Import( BALLnSTICK2_Input_8_out_1, BALLnSTICK2_Import_2_in_2, BALLnSTICK2_Import_2_in_3, BALLnSTICK2_Import_2_in_4, BALLnSTICK2_Import_2_in_5, BALLnSTICK2_Import_2_in_6 ) [instance: 2, cache: 1]; // // node Import[3]: x = 390, y = 91, inputs = 6, label = Import // BALLnSTICK2_Import_3_out_1 = Import( BALLnSTICK2_Input_9_out_1, BALLnSTICK2_Import_3_in_2, BALLnSTICK2_Import_3_in_3, BALLnSTICK2_Import_3_in_4, BALLnSTICK2_Import_3_in_5, BALLnSTICK2_Import_3_in_6 ) [instance: 3, cache: 1]; // // node Transmitter[1]: x = 486, y = 85, inputs = 1, label = BondOpacity // BondOpacity = BALLnSTICK2_Input_12_out_1; // // node Transmitter[2]: x = 608, y = 84, inputs = 1, label = BondColor // BondColor = BALLnSTICK2_Input_13_out_1; // // node Transmitter[3]: x = 728, y = 81, inputs = 1, label = BondDiameter // BondDiameter = BALLnSTICK2_Input_14_out_1; // // node Receiver[1]: x = 346, y = 404, inputs = 1, label = BondOpacity // BALLnSTICK2_Receiver_1_out_1 = BondOpacity; // // node Receiver[2]: x = 164, y = 360, inputs = 1, label = BondColor // BALLnSTICK2_Receiver_2_out_1 = BondColor; // // node Receiver[3]: x = 86, y = 272, inputs = 1, label = BondDiameter // BALLnSTICK2_Receiver_3_out_1 = BondDiameter; // // node Inquire[2]: x = 229, y = 221, inputs = 3, label = Inquire // input[2]: defaulting = 0, visible = 1, type = 32, value = "counts" // input[3]: defaulting = 0, visible = 1, type = 32, value = "positions" // BALLnSTICK2_Inquire_2_out_1 = Inquire( BALLnSTICK2_Import_5_out_1, BALLnSTICK2_Inquire_2_in_2, BALLnSTICK2_Inquire_2_in_3 ) [instance: 2, cache: 1]; // // node Output[3]: x = 0, y = 509, inputs = 1, label = Output // // parameter: position = 2, name = 'output_2', value = ' ', descriptive = 0, description = ' ', required = 0 output_2 = BALLnSTICK2_Import_5_out_1; // // node Replace[2]: x = 38, y = 347, inputs = 4, label = Replace // input[1]: defaulting = 0, visible = 1, type = 16777245, value = {50} // input[4]: defaulting = 0, visible = 1, type = 32, value = "atom_no" // BALLnSTICK2_Replace_2_out_1 = Replace( BALLnSTICK2_Replace_2_in_1, BALLnSTICK2_Import_5_out_1, BALLnSTICK2_Replace_2_in_3, BALLnSTICK2_Replace_2_in_4 ) [instance: 2, cache: 1]; // // node Enumerate[1]: x = 204, y = 295, inputs = 5, label = Enumerate // input[1]: defaulting = 0, visible = 1, type = 29, value = 1 // input[4]: defaulting = 0, visible = 1, type = 29, value = 1 // BALLnSTICK2_Enumerate_1_out_1 = Enumerate( BALLnSTICK2_Enumerate_1_in_1, BALLnSTICK2_Enumerate_1_in_2, BALLnSTICK2_Inquire_2_out_1, BALLnSTICK2_Enumerate_1_in_4, BALLnSTICK2_Enumerate_1_in_5 ) [instance: 1, cache: 1]; // // node Options[1]: x = 250, y = 88, inputs = 5, label = Options // input[2]: defaulting = 0, visible = 1, type = 32, value = "dep" // input[3]: defaulting = 0, visible = 1, type = 32, value = "positions" // BALLnSTICK2_Options_1_out_1 = Options( BALLnSTICK2_Enumerate_1_out_1, BALLnSTICK2_Options_1_in_2, BALLnSTICK2_Options_1_in_3, BALLnSTICK2_Options_1_in_4, BALLnSTICK2_Options_1_in_5 ) [instance: 1, cache: 1]; // // node Tube[1]: x = 58, y = 416, inputs = 4, label = Tube // input[3]: defaulting = 0, visible = 1, type = 1, value = 12 // BALLnSTICK2_Tube_1_out_1 = Tube( BALLnSTICK2_Replace_2_out_1, BALLnSTICK2_Receiver_3_out_1, BALLnSTICK2_Tube_1_in_3, BALLnSTICK2_Tube_1_in_4 ) [instance: 1, cache: 1]; // // node Replace[1]: x = 332, y = 318, inputs = 4, label = Replace // input[4]: defaulting = 0, visible = 1, type = 32, value = "atom_no" // BALLnSTICK2_Replace_1_out_1 = Replace( BALLnSTICK2_Options_1_out_1, BALLnSTICK2_Import_5_out_1, BALLnSTICK2_Replace_1_in_3, BALLnSTICK2_Replace_1_in_4 ) [instance: 1, cache: 1]; // // node Map[1]: x = 93, y = 190, inputs = 4, label = Map // input[3]: defaulting = 0, visible = 1, type = 32, value = "data" // input[4]: defaulting = 0, visible = 1, type = 32, value = "colors" // BALLnSTICK2_Map_1_out_1 = Map( BALLnSTICK2_Replace_1_out_1, BALLnSTICK2_Import_2_out_1, BALLnSTICK2_Map_1_in_3, BALLnSTICK2_Map_1_in_4 ) [instance: 1, cache: 1]; // // node Map[2]: x = 302, y = 197, inputs = 4, label = Map // input[3]: defaulting = 0, visible = 1, type = 32, value = "data" // BALLnSTICK2_Map_2_out_1 = Map( BALLnSTICK2_Map_1_out_1, BALLnSTICK2_Import_3_out_1, BALLnSTICK2_Map_2_in_3, BALLnSTICK2_Map_2_in_4 ) [instance: 2, cache: 1]; // // node Color[1]: x = 131, y = 509, inputs = 5, label = Color // BALLnSTICK2_Color_1_out_1 = Color( BALLnSTICK2_Tube_1_out_1, BALLnSTICK2_Receiver_2_out_1, BALLnSTICK2_Receiver_1_out_1, BALLnSTICK2_Color_1_in_4, BALLnSTICK2_Color_1_in_5 ) [instance: 1, cache: 1]; // // node Glyph[1]: x = 453, y = 375, inputs = 7, label = Glyph // input[5]: defaulting = 0, visible = 1, type = 5, value = 0.00000 // input[6]: defaulting = 0, visible = 1, type = 5, value = 0.00000 // input[7]: defaulting = 0, visible = 1, type = 5, value = 1.00000 // BALLnSTICK2_Glyph_1_out_1 = Glyph( BALLnSTICK2_Map_2_out_1, BALLnSTICK2_Input_10_out_1, BALLnSTICK2_Glyph_1_in_3, BALLnSTICK2_Input_11_out_1, BALLnSTICK2_Glyph_1_in_5, BALLnSTICK2_Glyph_1_in_6, BALLnSTICK2_Glyph_1_in_7 ) [instance: 1, cache: 1]; // // node Collect[1]: x = 281, y = 520, inputs = 2, label = Collect // BALLnSTICK2_Collect_1_out_1 = Collect( BALLnSTICK2_Color_1_out_1, BALLnSTICK2_Glyph_1_out_1 ) [instance: 1, cache: 1]; // // node Output[2]: x = 414, y = 535, inputs = 1, label = Output // // parameter: position = 1, name = 'output_1', value = ' ', descriptive = 0, description = ' ', required = 0 output_1 = BALLnSTICK2_Collect_1_out_1; // network: end of macro body } BALLnSTICK2_Input_7_out_1 = NULL; BALLnSTICK2_Input_8_out_1 = NULL; BALLnSTICK2_Input_9_out_1 = NULL; BALLnSTICK2_Input_10_out_1 = NULL; BALLnSTICK2_Input_11_out_1 = NULL; BALLnSTICK2_Input_12_out_1 = NULL; BALLnSTICK2_Input_13_out_1 = NULL; BALLnSTICK2_Input_14_out_1 = NULL; BALLnSTICK2_Import_5_in_2 = NULL; BALLnSTICK2_Import_5_in_3 = NULL; BALLnSTICK2_Import_5_in_4 = NULL; BALLnSTICK2_Import_5_in_5 = NULL; BALLnSTICK2_Import_5_in_6 = NULL; BALLnSTICK2_Import_5_out_1 = NULL; BALLnSTICK2_Import_2_in_2 = NULL; BALLnSTICK2_Import_2_in_3 = NULL; BALLnSTICK2_Import_2_in_4 = NULL; BALLnSTICK2_Import_2_in_5 = NULL; BALLnSTICK2_Import_2_in_6 = NULL; BALLnSTICK2_Import_2_out_1 = NULL; BALLnSTICK2_Import_3_in_2 = NULL; BALLnSTICK2_Import_3_in_3 = NULL; BALLnSTICK2_Import_3_in_4 = NULL; BALLnSTICK2_Import_3_in_5 = NULL; BALLnSTICK2_Import_3_in_6 = NULL; BALLnSTICK2_Import_3_out_1 = NULL; BALLnSTICK2_Transmitter_1_out_1 = NULL; BALLnSTICK2_Transmitter_2_out_1 = NULL; BALLnSTICK2_Transmitter_3_out_1 = NULL; BALLnSTICK2_Receiver_1_out_1 = NULL; BALLnSTICK2_Receiver_2_out_1 = NULL; BALLnSTICK2_Receiver_3_out_1 = NULL; BALLnSTICK2_Inquire_2_in_2 = "counts"; BALLnSTICK2_Inquire_2_in_3 = "positions"; BALLnSTICK2_Inquire_2_out_1 = NULL; BALLnSTICK2_Replace_2_in_1 = {50}; BALLnSTICK2_Replace_2_in_3 = NULL; BALLnSTICK2_Replace_2_in_4 = "atom_no"; BALLnSTICK2_Replace_2_out_1 = NULL; BALLnSTICK2_Enumerate_1_in_1 = 1; BALLnSTICK2_Enumerate_1_in_2 = NULL; BALLnSTICK2_Enumerate_1_in_4 = 1; BALLnSTICK2_Enumerate_1_in_5 = NULL; BALLnSTICK2_Enumerate_1_out_1 = NULL; BALLnSTICK2_Options_1_in_2 = "dep"; BALLnSTICK2_Options_1_in_3 = "positions"; BALLnSTICK2_Options_1_in_4 = NULL; BALLnSTICK2_Options_1_in_5 = NULL; BALLnSTICK2_Options_1_out_1 = NULL; BALLnSTICK2_Tube_1_in_3 = 12; BALLnSTICK2_Tube_1_in_4 = NULL; BALLnSTICK2_Tube_1_out_1 = NULL; BALLnSTICK2_Replace_1_in_3 = NULL; BALLnSTICK2_Replace_1_in_4 = "atom_no"; BALLnSTICK2_Replace_1_out_1 = NULL; BALLnSTICK2_Map_1_in_3 = "data"; BALLnSTICK2_Map_1_in_4 = "colors"; BALLnSTICK2_Map_1_out_1 = NULL; BALLnSTICK2_Map_2_in_3 = "data"; BALLnSTICK2_Map_2_in_4 = NULL; BALLnSTICK2_Map_2_out_1 = NULL; BALLnSTICK2_Color_1_in_4 = NULL; BALLnSTICK2_Color_1_in_5 = NULL; BALLnSTICK2_Color_1_out_1 = NULL; BALLnSTICK2_Glyph_1_in_3 = NULL; BALLnSTICK2_Glyph_1_in_5 = 0.00000; BALLnSTICK2_Glyph_1_in_6 = 0.00000; BALLnSTICK2_Glyph_1_in_7 = 1.00000; BALLnSTICK2_Glyph_1_out_1 = NULL; BALLnSTICK2_Collect_1_out_1 = NULL;