1puts "===========" 2puts "OCC28036" 3puts "Visualization, AIS_ColoredShape - handle correctly nested compounds within Shaded display mode" 4puts "===========" 5puts "" 6 7pload MODELING VISUALIZATION 8 9clear 10box b1 0 0 0 100 200 1 11box b2 150 0 0 100 50 1 12box b3 150 50 0 100 150 1 13 14for {set i 1} {$i <= 3} {incr i} { tcopy b${i} b1_${i}; ttranslate b1_${i} 0 -300 0 } 15for {set i 1} {$i <= 3} {incr i} { tcopy b${i} b2_${i}; ttranslate b2_${i} 0 0 0 } 16for {set i 1} {$i <= 3} {incr i} { tcopy b${i} b3_${i}; ttranslate b3_${i} 0 300 0 } 17 18# make a reference scene with per-object colors 19vclear 20vinit View1 21vsetdispmode 1 22vaxo 23 24vdisplay b1_1 b1_2 b1_3 25vsetcolor b1_1 RED 26vsetcolor b1_2 GREEN 27vsetcolor b1_3 BLUE 28 29vdisplay b2_1 b2_2 b2_3 30vsetcolor b2_1 RED 31vsetcolor b2_2 GREEN 32vsetcolor b2_3 BLUE 33 34vdisplay b3_1 b3_2 b3_3 35vsetcolor b3_1 RED 36vsetcolor b3_2 GREEN 37vsetcolor b3_3 BLUE 38vfit 39vdump $imagedir/${casename}_ref.png 40 41# make a scene with sub-colors and nested compounds 42for {set j 1} {$j <= 3} {incr j} { compound b${j}_2 b${j}_3 b${j}_23 } 43for {set j 1} {$j <= 3} {incr j} { compound b${j}_1 b${j}_23 b${j}_123 } 44compound b1_123 b2_123 b3_123 b123_123 45 46vclear 47vdisplay b123_123 48 49compound b1_23 b2_23 b3_23 b123_23 50vaspects b123_123 -subshapes b123_23 -setColor GREEN 51 52vaspects b123_123 -subshapes b1_123 -setColor RED 53vaspects b123_123 -subshapes b2_123 -setColor RED 54vaspects b123_123 -subshapes b3_123 -setColor RED 55 56compound b2_3 b3_3 b23_3 57vaspects b123_123 -subshapes b1_3 -setColor BLUE 58vaspects b123_123 -subshapes b23_3 -setColor BLUE 59 60if { [vreadpixel 50 250 rgb name] != "RED2" } { puts "Error: wrong color" } 61if { [vreadpixel 175 175 rgb name] != "RED2" } { puts "Error: wrong color" } 62if { [vreadpixel 300 100 rgb name] != "RED2" } { puts "Error: wrong color" } 63 64if { [vreadpixel 100 310 rgb name] != "GREEN2"} { puts "Error: wrong color" } 65if { [vreadpixel 200 230 rgb name] != "GREEN2"} { puts "Error: wrong color" } 66if { [vreadpixel 320 170 rgb name] != "GREEN2"} { puts "Error: wrong color" } 67 68if { [vreadpixel 130 280 rgb name] != "BLUE2" } { puts "Error: wrong color" } 69if { [vreadpixel 250 200 rgb name] != "BLUE2" } { puts "Error: wrong color" } 70if { [vreadpixel 350 150 rgb name] != "BLUE2" } { puts "Error: wrong color" } 71 72vdump $imagedir/${casename}.png 73