############################################################ # # PBCBOX: # ------- # # VERSION: 1.2 # # REQUIREMENTS: # The package PBCtools (v1.1 or later) from the VMD script library. # # DESCRIPTION: # Draws a box around the periodic unit cell boundaries. Also provides a # procedure that automatically updates the box when the frame is changed and # the unit cell changes. The procedures require the vmd unit cell properties # to be set. # # DOWNLOAD FILE: # pbcbox.tcl # # PROCEDURES: # pbcbox [OPTIONS...] # # Creates a box that shows the boundaries of the unit cell of # molecule $molid. Returns the list of GIDs. # # Options: # -molid $molid Add the box to the molecule $molid. (default: top) # -style lines|dashed|arrows|tubes # Choose the style of the box. (default: lines) # -width $w Use $width as the width of the lines/arrows/tubes. # (default: 3) # -resolution $res Use $res as the resolution of the cylinders in "tubes" # style. (default: 8) # -origin $origin $origin has to be a Tcl-list containing three numerical # values $a $b $c. Place the origin of the box at # ($a*A, $b*B, $c*C) (default: {-0.5 -0.5 -0.5}) # -positive Equal to "-origin {0.0 0.0 0.0}". # -parallelepiped|-rectangular # Draw the box be drawn as a parallelpiped, # or as the corresponding rectangular box. # (default: parallelepiped) # # # pbcbox_update [OPTIONS...] # # Creates a box that shows the boundaries of the unit cell of molecule # $molid. The box is automatically redrawn/updated when the frame is changed. # # Options: # -state on|off|toggle # Turn the box on, off or toggle the state. # -color $color Draw the box in $color. # All options from the pbcbox procedure can also be used. # # vmd_draw_pbcbox $molid [OPTIONS] # # Procedure to be used with the VMD "draw" procedure. All options from # the pbcbox procedure can be used. # # EXAMPLE USAGE: # require pbcbox # set box [ pbcbox -width 5 -style dashed ] # draw delete $box # # pbcbox_update -molid top -style arrows -width 5 -rectangular # pbcbox_update # # draw pbcbox -width 7 # # AUTHOR: # Olaf Lenz # olenz _at_ fias.uni-frankfurt.de # # This script copies a lot of the ideas and code from Jan Saams script # pbctools (that is used anyway) and Axel Kohlmeiers script # vmd_draw_unitcell. # # Feel free to send comments, bugs, etc. ############################################################