7
$SIG{__DIE__} = sub {print Carp::longmess(@_);
14
use PDL::Graphics::OpenGL;
17
$numwins = 1 unless(defined $numwins);
23
#PDL::Graphics::OpenGL::glpSetDebug(1);
25
foreach(0..$numwins-1){
26
$opt->{x} = ($numwins % 10) *100;
27
$opt->{y} = int($numwins / 10) *100;
29
my $win=new PDL::Graphics::OpenGL::OO($opt);
36
my $out = Dumper($windows[0]);
43
foreach my $win (@windows){
44
$win->glXMakeCurrent() || die "glXMakeCurrent failed\n";
45
if(PDL::Graphics::OpenGL::XPending($win->{Display})>0){
46
my @ev = PDL::Graphics::OpenGL::glpXNextEvent($win->{Display});
48
if($ev[0] == PDL::Graphics::OpenGL::ConfigureNotify){
51
glViewport(0, 0, $opt->{width}, $opt->{height});
52
glMatrixMode(GL_PROJECTION);
54
glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0);
58
# my $out = Dumper($win);
61
glShadeModel(GL_FLAT);
64
glClearColor(0., 0.5, 0., 1.0);
66
glClear(GL_COLOR_BUFFER_BIT);
71
glRotatef($angle, 0, 0, 1);
73
glBegin(GL_TRIANGLES);
77
glColor3f(1.0, 0.3, 0.5);
79
glVertex2f(-0.8, -0.7);
86
$win->glXSwapBuffers();