set Labels [label list Atoms] puts "Color of the line from the list (blue, red, gray, orange, yellow, tan, silver, green, white, pink, cyan, purple, lime, mauve, ochre, iceblue, black, yellow2, yellow3, green2, green3, cyan2, cyan3, blue2, blue3, violet, violet2, magenta, magenta2, red2, red3, orange2, orange3) ?" gets stdin lcolor puts "Width of the line ?" gets stdin trait puts "End of the line free (F) or close (C) ?" gets stdin endline set i 0 set j 0 set k 0 set l 0 set molid 0 set pos0 {0.0 0.0 0.0} set pos1 {0.0 0.0 0.0} foreach item $Labels { foreach item1 $item { foreach item2 $item1 { # puts "i= $i ; j= $j ; k= $k ; value = $item2 \n" if { $k==(4*$i)} { set molid $item2 if {$lcolor ne ""} { if { $i==0} { graphics $molid color $lcolor} } } if {$k==(4*$i+1)} { set sel [atomselect $molid "index $item2"] lassign [$sel get {x y z}] coord # puts "$coord \n" if {$l == 0} { set init $coord # puts "init $init"} set pos1 $pos0 # puts "pos1 $pos1" set pos0 $coord # puts "pos0 $pos0" if { $l > 0 } { set idline [graphics $molid line $pos0 $pos1 width $trait] puts "Line number $l id = $idline" puts "pos1 $pos1" puts "pos0 $pos0" } incr l} incr k} incr j} incr i} if { $endline == "C" } { set idline [graphics $molid line $pos0 $init width $trait] puts "Line number $l id = $idline" puts "pos1 $pos1" puts "pos0 $pos0" incr l} display update puts "Do you want to keep (K) or delete (D) the lines ?" gets stdin erase if {$erase == "D" } { for {set i 1} {$i < $l} {incr i} { graphics $molid delete $idline puts "Line id = $idline deleted" set idline [expr {$idline - 1}] } }