Chris, I did all those things you write, but I keep getting a "Bad parameter: input must be group or list" when I use the select module.
I send attached the .dx and the .net file I use. Am I missing something? Regards, Manolis On Tue, 6 Feb 2001, Chris Pelkie wrote: > Have you defined the file as a "group" of two "fields"? If not, you are > importing only the first field. If you collect the two field definitions > into a group, which must appear at the end of the dx file, then that is > imported. Then you use Select (2 copies) to pull out the individual fields > (the surface and the volume) for individual processing stages. Finally, use > Collect to display both simultaneously in the Image. > > Chris Pelkie > Vice President/Scientific Visualization Producer > Conceptual Reality Presentations, Inc. > 30 West Meadow Drive > Ithaca, NY 14850 > [EMAIL PROTECTED] > >
object "nodes" class array type float rank 1 shape 3 items 16 data follows 6 6 6 4 6 6 4 4 6 6 4 6 6 6 4 4 6 4 4 4 4 6 4 4 -4 -4 -4 -6 -4 -4 -6 -6 -4 -4 -6 -4 -4 -4 -6 -6 -4 -6 -6 -6 -6 -4 -6 -6 object "edge list1" class array type int rank 1 shape 4 items 1 data follows #5 6 1 2 4 7 0 3 2 1 3 0 attribute "element type" string "quads" attribute "ref" string "positions" object "edge list2" class array type int rank 1 shape 8 items 1 data follows 13 14 9 10 12 15 8 11 attribute "element type" string "cubes" attribute "ref" string "positions" object "color list" class array type float rank 0 items 16 data follows 1 1 1 1 4 4 4 4 16 16 16 16 8 8 8 8 attribute "dep" string "positions" object "quad" class field component "positions" value "nodes" component "connections" value "edge list1" component "data" value "color list" end object "cube" class field component "positions" value "nodes" component "connections" value "edge list2" component "data" value "color list" end object "mygroup" class group member 0 value "quad" member 1 value "cube"
// // time: Tue Feb 6 21:07:49 2001 // // version: 3.1.2 (format), 4.1.0 (DX) // // // MODULE main // // comment: This visual program is a general purpose program to visualize faces, loops, and edges data. If there are no colors present, colors are added. If there are no normals present, normals are added (for shading). // comment: // comment: If you would like to modify or use this program in the future, choose Open Visual Program Editor from the Windows menu, and then choose Save As from the File menu of the VPE. // page assignment: import order=2, windowed=0, showing=1 // workspace: width = 603, height = 744 // layout: snap = 0, width = 50, height = 50, align = NN // macro main( ) -> ( ) { // // node FileSelector[2]: x = 11, y = 11, inputs = 0, label = FileSelector // output[1]: visible = 1, type = 32, value = "/home/mstamat/simple.dx" // output[2]: visible = 1, type = 32, value = "simple.dx" // page group: import // // // node String[3]: x = 226, y = 9, inputs = 0, label = String // output[1]: visible = 1, type = 32, value = "dx" // page group: import // // // node Import[1]: x = 191, y = 83, inputs = 6, label = Import // input[1]: defaulting = 1, visible = 1, type = 32, value = "/usr/lpp/dx/samples/data/southeastern_topo.dx" // page group: import // main_Import_1_out_1[cache: 0] = Import( main_FileSelector_2_out_1, main_Import_1_in_2, main_String_3_out_1, main_Import_1_in_4, main_Import_1_in_5, main_Import_1_in_6 ) [instance: 1, cache: 1]; // // node AutoCamera[1]: x = 511, y = 470, inputs = 9, label = AutoCamera // input[2]: defaulting = 0, visible = 1, type = 32, value = "off-diagonal" // page group: import // main_AutoCamera_1_out_1 = AutoCamera( main_Import_1_out_1, main_AutoCamera_1_in_2, main_AutoCamera_1_in_3, main_AutoCamera_1_in_4, main_AutoCamera_1_in_5, main_AutoCamera_1_in_6, main_AutoCamera_1_in_7, main_AutoCamera_1_in_8, main_AutoCamera_1_in_9 ) [instance: 1, cache: 1]; // // node AutoColor[2]: x = 38, y = 228, inputs = 10, label = AutoColor // page group: import // main_AutoColor_2_out_1, main_AutoColor_2_out_2 = AutoColor( main_Import_1_out_1, main_AutoColor_2_in_2, main_AutoColor_2_in_3, main_AutoColor_2_in_4, main_AutoColor_2_in_5, main_AutoColor_2_in_6, main_AutoColor_2_in_7, main_AutoColor_2_in_8, main_AutoColor_2_in_9, main_AutoColor_2_in_10 ) [instance: 2, cache: 1]; // // node Select[1]: x = 128, y = 383, inputs = 3, label = Select // input[2]: defaulting = 0, visible = 1, type = 1, value = 1 // page group: import // main_Select_1_out_1[cache: 0] = Select( main_AutoColor_2_out_1, main_Select_1_in_2, main_Select_1_in_3 ) [instance: 1, cache: 1]; // // node Collect[2]: x = 55, y = 535, inputs = 2, label = Collect // page group: import // main_Collect_2_out_1 = Collect( main_Select_1_out_1, main_Collect_2_in_2 ) [instance: 2, cache: 1]; // // node Reset[8]: x = 513, y = 611, inputs = 6, label = Reset // input[1]: defaulting = 0, visible = 0, type = 32, value = "main_Reset_8_out_1" // input[2]: defaulting = 0, visible = 0, type = 29, value = 0 // input[3]: defaulting = 0, visible = 0, type = 3, value = 0 // input[4]: defaulting = 1, visible = 0, type = 29, value = 1 // input[5]: defaulting = 1, visible = 0, type = 29, value = 0 // output[1]: visible = 1, type = 29, value = 0 // page group: import // toggle : 0 // // // node Image[4]: x = 219, y = 682, inputs = 49, label = Image // input[1]: defaulting = 0, visible = 0, type = 67108863, value = "Image_4" // input[4]: defaulting = 0, visible = 0, type = 1, value = 1 // input[5]: defaulting = 0, visible = 0, type = 8, value = [-1.26014 2.27466 -3.74413] // input[6]: defaulting = 0, visible = 0, type = 8, value = [3.66011 8.28093 -7.67998] // input[7]: defaulting = 0, visible = 0, type = 5, value = 21.0479 // input[8]: defaulting = 0, visible = 0, type = 1, value = 767 // input[9]: defaulting = 0, visible = 0, type = 5, value = 1.06193 // input[10]: defaulting = 0, visible = 0, type = 8, value = [0.134675 0.463561 0.875771] // input[11]: defaulting = 1, visible = 0, type = 5, value = 100.808 // input[12]: defaulting = 0, visible = 0, type = 1, value = 0 // input[14]: defaulting = 0, visible = 0, type = 1, value = 1 // input[15]: defaulting = 1, visible = 0, type = 32, value = "none" // input[16]: defaulting = 1, visible = 0, type = 32, value = "none" // input[17]: defaulting = 1, visible = 0, type = 1, value = 1 // input[18]: defaulting = 1, visible = 0, type = 1, value = 1 // input[19]: defaulting = 0, visible = 0, type = 1, value = 0 // input[20]: visible = 1 // input[21]: visible = 1 // input[22]: defaulting = 0, visible = 0, type = 8, value = NULL // input[29]: defaulting = 1, visible = 0, type = 3, value = 0 // input[41]: defaulting = 0, visible = 0, type = 32, value = "rotate" // input[42]: defaulting = 0, visible = 0, type = 32, value = "FacesLoopsEdges" // page group: import // title: value = FacesLoopsEdges // depth: value = 16 // window: position = (0.0812,0.0684), size = 0.6102x0.8379 // internal caching: 1 // main_Image_4_out_1, main_Image_4_out_2, main_Image_4_out_3 = Image( main_Image_4_in_1, main_Collect_2_out_1, main_Image_4_in_3, main_Image_4_in_4, main_Image_4_in_5, main_Image_4_in_6, main_Image_4_in_7, main_Image_4_in_8, main_Image_4_in_9, main_Image_4_in_10, main_Image_4_in_11, main_Image_4_in_12, main_Image_4_in_13, main_Image_4_in_14, main_Image_4_in_15, main_Image_4_in_16, main_Image_4_in_17, main_Image_4_in_18, main_Image_4_in_19, main_AutoCamera_1_out_1, main_Reset_8_out_1, main_Image_4_in_22, main_Image_4_in_23, main_Image_4_in_24, main_Image_4_in_25, main_Image_4_in_26, main_Image_4_in_27, main_Image_4_in_28, main_Image_4_in_29, main_Image_4_in_30, main_Image_4_in_31, main_Image_4_in_32, main_Image_4_in_33, main_Image_4_in_34, main_Image_4_in_35, main_Image_4_in_36, main_Image_4_in_37, main_Image_4_in_38, main_Image_4_in_39, main_Image_4_in_40, main_Image_4_in_41, main_Image_4_in_42, main_Image_4_in_43, main_Image_4_in_44, main_Image_4_in_45, main_Image_4_in_46, main_Image_4_in_47, main_Image_4_in_48, main_Image_4_in_49 ) [instance: 4, cache: 1]; // network: end of macro body CacheScene(main_Image_4_in_1, main_Image_4_out_1, main_Image_4_out_2); } main_FileSelector_2_out_1 = "/home/mstamat/simple.dx"; main_String_3_out_1 = "dx"; main_Import_1_in_2 = NULL; main_Import_1_in_4 = NULL; main_Import_1_in_5 = NULL; main_Import_1_in_6 = NULL; main_Import_1_out_1 = NULL; main_AutoCamera_1_in_2 = "off-diagonal"; main_AutoCamera_1_in_3 = NULL; main_AutoCamera_1_in_4 = NULL; main_AutoCamera_1_in_5 = NULL; main_AutoCamera_1_in_6 = NULL; main_AutoCamera_1_in_7 = NULL; main_AutoCamera_1_in_8 = NULL; main_AutoCamera_1_in_9 = NULL; main_AutoCamera_1_out_1 = NULL; main_AutoColor_2_in_2 = NULL; main_AutoColor_2_in_3 = NULL; main_AutoColor_2_in_4 = NULL; main_AutoColor_2_in_5 = NULL; main_AutoColor_2_in_6 = NULL; main_AutoColor_2_in_7 = NULL; main_AutoColor_2_in_8 = NULL; main_AutoColor_2_in_9 = NULL; main_AutoColor_2_in_10 = NULL; main_AutoColor_2_out_1 = NULL; main_Select_1_in_2 = 1; main_Select_1_in_3 = NULL; main_Select_1_out_1 = NULL; main_Collect_2_in_2 = NULL; main_Collect_2_out_1 = NULL; main_Reset_8_in_1 = "main_Reset_8_out_1"; main_Reset_8_in_2 = 0; main_Reset_8_in_3 = 0; main_Reset_8_in_4 = NULL; main_Reset_8_in_5 = NULL; main_Reset_8_in_6 = NULL; main_Reset_8_out_1 = 0; macro Image( id, object, where, useVector, to, from, width, resolution, aspect, up, viewAngle, perspective, options, buttonState = 1, buttonUpApprox = "none", buttonDownApprox = "none", buttonUpDensity = 1, buttonDownDensity = 1, renderMode = 0, defaultCamera, reset, backgroundColor, throttle, RECenable = 0, RECfile, RECformat, RECresolution, RECaspect, AAenable = 0, AAlabels, AAticks, AAcorners, AAframe, AAadjust, AAcursor, AAgrid, AAcolors, AAannotation, AAlabelscale, AAfont, interactionMode, title, AAxTickLocs, AAyTickLocs, AAzTickLocs, AAxTickLabels, AAyTickLabels, AAzTickLabels, webOptions) -> ( object, camera, where) { ImageMessage( id, backgroundColor, throttle, RECenable, RECfile, RECformat, RECresolution, RECaspect, AAenable, AAlabels, AAticks, AAcorners, AAframe, AAadjust, AAcursor, AAgrid, AAcolors, AAannotation, AAlabelscale, AAfont, AAxTickLocs, AAyTickLocs, AAzTickLocs, AAxTickLabels, AAyTickLabels, AAzTickLabels, interactionMode, title, renderMode, buttonUpApprox, buttonDownApprox, buttonUpDensity, buttonDownDensity) [instance: 1, cache: 1]; autoCamera = AutoCamera( object, "front", object, resolution, aspect, [0,1,0], perspective, viewAngle, backgroundColor) [instance: 1, cache: 1]; realCamera = Camera( to, from, width, resolution, aspect, up, perspective, viewAngle, backgroundColor) [instance: 1, cache: 1]; coloredDefaultCamera = UpdateCamera(defaultCamera, background=backgroundColor) [instance: 1, cache: 1]; nullDefaultCamera = Inquire(defaultCamera, "is null + 1") [instance: 1, cache: 1]; resetCamera = Switch( nullDefaultCamera, coloredDefaultCamera, autoCamera) [instance: 1, cache: 1]; resetNull = Inquire( reset, "is null + 1") [instance: 2, cache: 1]; reset = Switch( resetNull, reset, 0) [instance: 2, cache: 1]; whichCamera = Compute( "($0 != 0 || $1 == 0) ? 1 : 2", reset, useVector) [instance: 1, cache: 1]; camera = Switch( whichCamera, resetCamera, realCamera) [instance: 3, cache: 1]; AAobject = AutoAxes( object, camera, AAlabels, AAticks, AAcorners, AAframe, AAadjust, AAcursor, AAgrid, AAcolors, AAannotation, AAlabelscale, AAfont, AAxTickLocs, AAyTickLocs, AAzTickLocs, AAxTickLabels, AAyTickLabels, AAzTickLabels) [instance: 1, cache: 1]; switchAAenable = Compute("$0+1", AAenable) [instance: 2, cache: 1]; object = Switch( switchAAenable, object, AAobject) [instance:4, cache: 1]; SWapproximation_options = Switch( buttonState, buttonUpApprox, buttonDownApprox) [instance: 5, cache: 1]; SWdensity_options = Switch( buttonState, buttonUpDensity, buttonDownDensity) [instance: 6, cache: 1]; HWapproximation_options = Format( "%s,%s", buttonDownApprox, buttonUpApprox) [instance: 1, cache: 1]; HWdensity_options = Format( "%d,%d", buttonDownDensity, buttonUpDensity) [instance: 2, cache: 1]; switchRenderMode = Compute( "$0+1", renderMode) [instance: 3, cache: 1]; approximation_options = Switch( switchRenderMode, SWapproximation_options, HWapproximation_options) [instance: 7, cache: 1]; density_options = Switch( switchRenderMode, SWdensity_options, HWdensity_options) [instance: 8, cache: 1]; renderModeString = Switch( switchRenderMode, "software", "hardware")[instance: 9, cache: 1]; object_tag = Inquire( object, "object tag")[instance: 3, cache: 1]; annoted_object = Options( object, "send boxes", 0, "cache", 1, "object tag", object_tag, "ddcamera", whichCamera, "rendering approximation", approximation_options, "render every", density_options, "button state", buttonState, "rendering mode", renderModeString) [instance: 1, cache: 1]; RECresNull = Inquire( RECresolution, "is null + 1") [instance: 4, cache: 1]; ImageResolution = Inquire( camera, "camera resolution") [instance: 5, cache: 1]; RECresolution = Switch( RECresNull, RECresolution, ImageResolution) [instance: 10, cache: 1]; RECaspectNull = Inquire( RECaspect, "is null + 1") [instance: 6, cache: 1]; ImageAspect = Inquire( camera, "camera aspect") [instance: 7, cache: 1]; RECaspect = Switch( RECaspectNull, RECaspect, ImageAspect) [instance: 11, cache: 1]; switchRECenable = Compute( "$0 == 0 ? 1 : (($2 == $3) && ($4 == $5)) ? ($1 == 1 ? 2 : 3) : 4", RECenable, switchRenderMode, RECresolution, ImageResolution, RECaspect, ImageAspect) [instance: 4, cache: 1]; NoRECobject, RECNoRerenderObject, RECNoRerHW, RECRerenderObject = Route(switchRECenable, annoted_object); Display( NoRECobject, camera, where, throttle) [instance: 1, cache: 1]; image = Render( RECNoRerenderObject, camera) [instance: 1, cache: 1]; Display( image, NULL, where, throttle) [instance: 2, cache: 1]; WriteImage( image, RECfile, RECformat) [instance: 1, cache: 1]; rec_where = Display( RECNoRerHW, camera, where, throttle) [instance: 1, cache: 0]; rec_image = ReadImageWindow( rec_where) [instance: 1, cache: 1]; WriteImage( rec_image, RECfile, RECformat) [instance: 1, cache: 1]; RECupdateCamera = UpdateCamera( camera, resolution=RECresolution, aspect=RECaspect) [instance: 2, cache: 1]; Display( RECRerenderObject, camera, where, throttle) [instance: 1, cache: 1]; RECRerenderObject = ScaleScreen( RECRerenderObject, NULL, RECresolution, camera) [instance: 1, cache: 1]; image = Render( RECRerenderObject, RECupdateCamera) [instance: 2, cache: 1]; WriteImage( image, RECfile, RECformat) [instance: 2, cache: 1]; } main_Image_4_in_1 = "Image_4"; main_Image_4_in_3 = "X16,,FacesLoopsEdges"; main_Image_4_in_4 = 1; main_Image_4_in_5 = [-1.26014 2.27466 -3.74413]; main_Image_4_in_6 = [3.66011 8.28093 -7.67998]; main_Image_4_in_7 = 21.0479; main_Image_4_in_8 = 767; main_Image_4_in_9 = 1.06193; main_Image_4_in_10 = [0.134675 0.463561 0.875771]; main_Image_4_in_11 = NULL; main_Image_4_in_12 = 0; main_Image_4_in_13 = NULL; main_Image_4_in_14 = 1; main_Image_4_in_15 = NULL; main_Image_4_in_16 = NULL; main_Image_4_in_17 = NULL; main_Image_4_in_18 = NULL; main_Image_4_in_19 = 0; main_Image_4_in_22 = NULL; main_Image_4_in_23 = NULL; main_Image_4_in_25 = NULL; main_Image_4_in_26 = NULL; main_Image_4_in_27 = NULL; main_Image_4_in_28 = NULL; main_Image_4_in_29 = NULL; main_Image_4_in_30 = NULL; main_Image_4_in_31 = NULL; main_Image_4_in_32 = NULL; main_Image_4_in_33 = NULL; main_Image_4_in_34 = NULL; main_Image_4_in_35 = NULL; main_Image_4_in_36 = NULL; main_Image_4_in_37 = NULL; main_Image_4_in_38 = NULL; main_Image_4_in_39 = NULL; main_Image_4_in_40 = NULL; main_Image_4_in_41 = "rotate"; main_Image_4_in_42 = "FacesLoopsEdges"; main_Image_4_in_43 = NULL; main_Image_4_in_44 = NULL; main_Image_4_in_45 = NULL; main_Image_4_in_46 = NULL; main_Image_4_in_47 = NULL; main_Image_4_in_48 = NULL; main_Image_4_in_49 = NULL; Executive("product version 4 1 0"); $sync main();