TCL error: entity not found
Altair Forum User
Altair Employee
Hi all,
I am new at TCL macros and I tried to write the script above for get coordinates of box that includes selected nodes in HyperMesh.
*createmarkpanel nodes 1 'Select the nodes'
set nodeid [hm_getmark nodes 1]
set n [llength $nodeid]
set m [lindex $nodeid 0]
set x [hm_getentityvalue nodes $m 'x' 0]
set y [hm_getentityvalue nodes $m 'y' 0]
set z [hm_getentityvalue nodes $m 'z' 0]
set bx $x
set by $y
set bz $z
set kx $x
set ky $y
set kz $z
for {set i 1} {$i < $n}{incr i 1} {
set m [lindex $nodeid $i]
set x [hm_getentityvalue nodes $m 'x' 0]
set y [hm_getentityvalue nodes $m 'y' 0]
set z [hm_getentityvalue nodes $m 'z' 0]
if {$x > $bx} {set bx $x}
if {$y > $by} {set by $y}
if {$z > $bz} {set bz $z}
if {$x < $kx} {set kx $x}
if {$y < $ky} {set ky $y}
if {$z < $kz} {set kz $z}
}
hm_usermessage 'x1:[expr $bx+1] y1:[expr $by+1] z1:[expr $bz+1] x2:[expr $kx-1] y2:[expr $ky-1] z2:[expr $kz-1]'
When I run the script HM gives me the error above:
Tcl Error : hm_getentityvalue: entity not found.
while executing
'hm_getentityvalue nodes $m 'x' 0'
invoked from within
'set x [hm_getentityvalue nodes $m 'x' 0] '
Can anyone help about this error?
Thanks
Tuncel
0
Answers
-
Hi Tuncel
line 'for {set i 1} {$i < $n}{incr i 1} {' missing a space between } and {
0 -
Than you so much Tinh. I changed the script, it is working now.
for {set i 1} {$i < $n} {incr i 1} {
set x [hm_getentityvalue nodes [lindex $nodeid $i] 'x' 0]
set y [hm_getentityvalue nodes [lindex $nodeid $i] 'y' 0]
set z [hm_getentityvalue nodes [lindex $nodeid $i] 'z' 0]0