1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
for {set i 0} {$i < [expr $argc - 1]} {incr i} {
if {[lindex $argv $i] == "-A"} {
set auto_path "$auto_path [lindex $argv [expr $i +1]]"
}
}
package require vtk
foreach array "Bit Char Double Float Int Long Short UnsignedChar UnsignedInt UnsignedLong UnsignedShort" {
puts "$array array"
vtk${array}Array a${array}Array
a${array}Array Allocate 1 1
a${array}Array SetNumberOfComponents 3
a${array}Array SetNumberOfTuples 4
# InsertComponent
set k 0
for {set i 0} {$i < [a${array}Array GetNumberOfTuples]} {incr i} {
for {set j 0} {$j < [a${array}Array GetNumberOfComponents]} {incr j} {
a${array}Array InsertComponent $i $j 1
incr k
}
}
# SetComponent
set k 0
for {set i 0} {$i < [a${array}Array GetNumberOfTuples]} {incr i} {
for {set j 0} {$j < [a${array}Array GetNumberOfComponents]} {incr j} {
a${array}Array SetComponent $i $j 1
incr k
}
}
# DeepCopy
vtk${array}Array b${array}Array
b${array}Array Allocate 1000 100
# force a resize
b${array}Array InsertComponent 2001 0 1
b${array}Array DeepCopy a${array}Array
# NewInstance
set m${array} [b${array}Array NewInstance]
eval [set m${array}] UnRegister b${array}Array
# confirm the deep copy
for {set i 0} {$i < [a${array}Array GetNumberOfTuples]} {incr i} {
for {set j 0} {$j < [a${array}Array GetNumberOfComponents]} {incr j} {
if { [a${array}Array GetComponent $i $j] != [b${array}Array GetComponent $i $j] } {
puts "${array}: bad component $i $j"
}
incr k
}
}
b${array}Array InsertComponent 2001 0 1
b${array}Array Resize 3000
a${array}Array Squeeze
a${array}Array Initialize
a${array}Array Delete
b${array}Array Delete
}
exit
|