no display name and no $DISPLAY environment variable
    while executing
"load /enadisk/commun/linux/local/ActiveTcl-8.6.11/lib/libtk8.6.so Tk"
    ("package ifneeded Tk 8.6.11" script)
    invoked from within
"package require Tk"
    (in namespace eval "::request" script line 46)
    invoked from within
"namespace eval ::request $script"
    ("::try" body line 12)

OUTPUT BUFFER:

# atlantis.tcl # # Copyright (c) Mark J. Kilgard, 1994. */ # # (c) Copyright 1993, 1994, Silicon Graphics, Inc. # ALL RIGHTS RESERVED # Permission to use, copy, modify, and distribute this software for # any purpose and without fee is hereby granted, provided that the above # copyright notice appear in all copies and that both the copyright notice # and this permission notice appear in supporting documentation, and that # the name of Silicon Graphics, Inc. not be used in advertising # or publicity pertaining to distribution of the software without specific, # written prior permission. # # THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" # AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, # INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR # FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON # GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, # SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY # KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, # LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF # THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN # ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON # ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE # POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. # # US Government Users Restricted Rights # Use, duplication, or disclosure by the Government is subject to # restrictions set forth in FAR 52.227.19(c)(2) or subparagraph # (c)(1)(ii) of the Rights in Technical Data and Computer Software # clause at DFARS 252.227-7013 and/or in similar or successor # clauses in the FAR or the DOD or NASA FAR Supplement. # Unpublished-- rights reserved under the copyright laws of the # United States. Contractor/manufacturer is Silicon Graphics, # Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. # # OpenGL(TM) is a trademark of Silicon Graphics, Inc. # # Original sources available at: # http://www.opengl.org/resources/code/samples/glut_examples/demos/demos.html # # Modified for Tcl3D by Paul Obermeier 2005/08/14 # See www.tcl3d.org for the Tcl3D extension. package require Tk package require tcl3d 0.5.0 set scriptDir [file dirname [info script]] source [file join $scriptDir "atlantis.tclinc"] source [file join $scriptDir "dolphin.tclinc"] source [file join $scriptDir "whale.tclinc"] source [file join $scriptDir "shark.tclinc"] source [file join $scriptDir "swim.tclinc"] # Font to be used in the Tk listbox. set listFont {-family {Courier} -size 10} # Show errors occuring in the Togl callbacks. proc bgerror { msg } { tk_messageBox -icon error -type ok -message "Error: $msg\n\n$::errorInfo" exit } # Print info message into widget a the bottom of the window. proc PrintInfo { msg } { if { [winfo exists .fr.info] } { .fr.info configure -text $msg } } proc poMisc:Abs { a } { if { $a < 0 } { return [expr -1 * $a] } else { return $a } } proc InitFishs {} { set dummy [expr srand (1)] for { set i 0 } { $i < $::NUM_SHARKS } { incr i } { set ::sharks($i,x) [expr 70000.0 + int (6000.0 * rand()) % 6000] set ::sharks($i,y) [expr double (int (6000.0 * rand()) % 6000)] set ::sharks($i,z) [expr double (int (6000.0 * rand()) % 6000)] set ::sharks($i,xt) 0.0 set ::sharks($i,yt) 0.0 set ::sharks($i,zt) 0.0 set ::sharks($i,v) 1.0 set ::sharks($i,psi) [expr int (6000.0 * rand()) % 360 - 180.0] set ::sharks($i,phi) 0.0 set ::sharks($i,theta) 0.0 set ::sharks($i,dtheta) 0.0 set ::sharks($i,htail) 0.0 set ::sharks($i,vtail) 0.0 set ::sharks($i,spurt) 0 set ::sharks($i,attack) 0 } set ::dolph(0,x) 30000.0 set ::dolph(0,y) 0.0 set ::dolph(0,z) 6000.0 set ::dolph(0,xt) 0.0 set ::dolph(0,yt) 0.0 set ::dolph(0,zt) 0.0 set ::dolph(0,v) 3.0 set ::dolph(0,psi) 90.0 set ::dolph(0,phi) 0.0 set ::dolph(0,theta) 0.0 set ::dolph(0,dtheta) 0.0 set ::dolph(0,htail) 0.0 set ::dolph(0,vtail) 0.0 set ::dolph(0,spurt) 0 set ::dolph(0,attack) 0 set ::momWhale(0,x) 70000.0 set ::momWhale(0,y) 0.0 set ::momWhale(0,z) 0.0 set ::momWhale(0,xt) 0.0 set ::momWhale(0,yt) 0.0 set ::momWhale(0,zt) 0.0 set ::momWhale(0,v) 3.0 set ::momWhale(0,psi) 90.0 set ::momWhale(0,phi) 0.0 set ::momWhale(0,theta) 0.0 set ::momWhale(0,dtheta) 0.0 set ::momWhale(0,htail) 0.0 set ::momWhale(0,vtail) 0.0 set ::momWhale(0,spurt) 0 set ::momWhale(0,attack) 0 set ::babyWhale(0,x) 60000.0 set ::babyWhale(0,y) -2000.0 set ::babyWhale(0,z) -2000.0 set ::babyWhale(0,xt) 0.0 set ::babyWhale(0,yt) 0.0 set ::babyWhale(0,zt) 0.0 set ::babyWhale(0,v) 3.0 set ::babyWhale(0,psi) 90.0 set ::babyWhale(0,phi) 0.0 set ::babyWhale(0,theta) 0.0 set ::babyWhale(0,dtheta) 0.0 set ::babyWhale(0,htail) 0.0 set ::babyWhale(0,vtail) 0.0 set ::babyWhale(0,spurt) 0 set ::babyWhale(0,attack) 0 } proc CreateCallback { toglwin } { set ambient {0.1 0.1 0.1 1.0} set diffuse {1.0 1.0 1.0 1.0} set position {0.0 1.0 0.0 0.0} set mat_shininess {90.0} set mat_specular {0.8 0.8 0.8 1.0} set mat_diffuse {0.46 0.66 0.795 1.0} set mat_ambient {0.0 0.1 0.2 1.0} set lmodel_ambient {0.4 0.4 0.4 1.0} set lmodel_localviewer {0.0} glFrontFace GL_CW glDepthFunc GL_LEQUAL glEnable GL_DEPTH_TEST glLightfv GL_LIGHT0 GL_AMBIENT $ambient glLightfv GL_LIGHT0 GL_DIFFUSE $diffuse glLightfv GL_LIGHT0 GL_POSITION $position glLightModelfv GL_LIGHT_MODEL_AMBIENT $lmodel_ambient glLightModelfv GL_LIGHT_MODEL_LOCAL_VIEWER $lmodel_localviewer glEnable GL_LIGHTING glEnable GL_LIGHT0 glMaterialfv GL_FRONT_AND_BACK GL_SHININESS $mat_shininess glMaterialfv GL_FRONT_AND_BACK GL_SPECULAR $mat_specular glMaterialfv GL_FRONT_AND_BACK GL_DIFFUSE $mat_diffuse glMaterialfv GL_FRONT_AND_BACK GL_AMBIENT $mat_ambient InitFishs glClearColor 0.0 0.5 0.9 0.0 } proc ReshapeCallback { toglwin { w -1 } { h -1 } } { set w [$toglwin width] set h [$toglwin height] glViewport 0 0 $w $h glMatrixMode GL_PROJECTION glLoadIdentity gluPerspective 400.0 2.0 10000.0 400000.0 glMatrixMode GL_MODELVIEW } proc Animate {} { for { set i 0 } { $i < $::NUM_SHARKS } { incr i } { SharkPilot ::sharks $i SharkMiss ::sharks $i } WhalePilot ::dolph 0 set ::dolph(0,phi) [expr $::dolph(0,phi) + 1.0] .fr.toglwin postredisplay WhalePilot ::momWhale 0 set ::momWhale(0,phi) [expr $::momWhale(0,phi) + 1.0] WhalePilot ::babyWhale 0 set ::babyWhale(0,phi) [expr $::babyWhale(0,phi) + 1.0] if { $::moving } { tcl3dAfterIdle Animate } } proc Step {} { if { ! $::moving } { Animate } } proc DisplayCallback { toglwin } { glClear [expr $::GL_COLOR_BUFFER_BIT | $::GL_DEPTH_BUFFER_BIT] # Viewport command is not really needed, but has been inserted for # Mac OSX. Presentation framework (Tk) does not send a reshape event, # when switching from one demo to another. glViewport 0 0 [$toglwin width] [$toglwin height] for { set i 0 } { $i < $::NUM_SHARKS } { incr i } { glPushMatrix FishTransform ::sharks $i DrawShark ::sharks $i glPopMatrix } glPushMatrix FishTransform ::dolph 0 DrawDolphin ::dolph 0 glPopMatrix glPushMatrix FishTransform ::momWhale 0 DrawWhale ::momWhale 0 glPopMatrix glPushMatrix FishTransform ::babyWhale 0 glScalef 0.45 0.45 0.3 DrawWhale ::babyWhale 0 glPopMatrix $toglwin swapbuffers } proc StartAnimation {} { set ::moving 1 Animate } proc StopAnimation {} { set ::moving 0 } proc OpenMenu { x y } { set w .atlantis:contextMenu catch { destroy $w } menu $w -tearoff false -disabledforeground white $w add command -label "Atlantis menu" -state disabled -background "#303030" $w add command -label "Start motion" -command "StartAnimation" $w add command -label "Stop motion" -command "StopAnimation" $w add command -label "Quit program" -command "exit" tk_popup $w $x $y } frame .fr pack .fr -expand 1 -fill both togl .fr.toglwin -width 500 -height 250 -double true -depth true \ -createproc CreateCallback \ -displayproc DisplayCallback \ -reshapeproc ReshapeCallback listbox .fr.usage -font $::listFont -height 5 label .fr.info grid .fr.toglwin -row 0 -column 0 -sticky news grid .fr.usage -row 1 -column 0 -sticky news grid .fr.info -row 2 -column 0 -sticky news grid rowconfigure .fr 0 -weight 1 grid columnconfigure .fr 0 -weight 1 wm title . "Tcl3D demo: Atlantis" bind . "exit" bind . "Step" bind . "StartAnimation" bind . "StopAnimation" bind . "OpenMenu %X %Y" bind . "OpenMenu %X %Y" bind . "OpenMenu %X %Y" .fr.usage insert end "Mouse-MR PopupMenu" .fr.usage insert end "Key-s Stop" .fr.usage insert end "Key-p Play" .fr.usage insert end "Key-n Next step" .fr.usage insert end "Key-Escape Exit" .fr.usage configure -state disabled PrintInfo [format "Running on %s with a %s (OpenGL %s, Tcl %s)" \ $tcl_platform(os) [glGetString GL_RENDERER] \ [glGetString GL_VERSION] [info patchlevel]] if { [file tail [info script]] == [file tail $::argv0] } { # If started directly from tclsh or wish, then start animation. update StartAnimation }