8 ##########################################################################
9 # Add UpdateAssemblies() method for top-down update of assembly compounds
10 ##########################################################################
12 ##########################################################################
15 if {[IsSameShapes $s1 $s2] == 1} {return 1}
18 ##########################################################################
20 ReadStep d [locate_data_file trj3_as1-tc-214.stp]
25 # Explode on solids for comparison
29 checkview -screenshot -3d -path ${imagedir}/${::casename}_1.png
31 # Update part's geometry
32 box box_nut -2 -2 0 22 18 8;
33 XSetShape d 0:1:1:5 box_nut
37 # Explode on solids for comparison
41 # 0 means "different", 1 means "same"
42 set same_mask {1 0 1 0 1 0 1 1 1 0 1 0 1 0 1 1 0 0}; list
43 set n [llength $same_mask]
45 # Compare subshapes (exploded compounds) with respect to the reference mask
47 foreach same_flag $same_mask {
48 set same [IsSame model1_$i model2_$i]
49 puts "Comparison result for subshape $i: $same"
50 if {$same!=$same_flag} {
52 puts "Error: shapes are expected to be identical"
54 puts "Error: shapes are expected to be different"
60 checkview -screenshot -3d -path ${imagedir}/${::casename}_2.png