Graphics-VTK
view release on metacpan or search on metacpan
examples/old_examples/graphics/polyViewer.pl view on Meta::CPAN
#!/usr/local/bin/perl -w
#
use Graphics::VTK;
use Tk;
use Graphics::VTK::Tk;
$MW = Tk::MainWindow->new;
## Create a little app for loading and viewing polygonal files
##
$VTK_DATA = 0;
$VTK_DATA = $ENV{VTK_DATA};
use Graphics::VTK::Tk::vtkInteractor;
# Create gui
$MW->title("vtk Polygonal Data Viewer");
$MW->{'.mbar'} = $MW->Frame('-relief','raised','-bd',2);
$MW->{'.mbar'}->pack('-side','top','-fill','x');
$MW->{'.mbar.file'} = $MW->{'.mbar'}->Menubutton('-text','File');
$MW->{'.mbar.view'} = $MW->{'.mbar'}->Menubutton('-text','View');
$MW->{'.mbar.help'} = $MW->{'.mbar'}->Menubutton('-text','Help');
foreach $_ (($MW->{'.mbar.file'},$MW->{'.mbar.view'}))
{
$_->pack('-side','left');
}
$MW->{'.mbar.help'}->pack('-side','right');
# menu .mbar.file.menu
$MW->{'.mbar.file'}->command('-label','Open','-command',
sub
{
OpenFile();
}
);
$MW->{'.mbar.file'}->command('-label','Exit','-command',
sub
{
exit();
}
);
$view = 'Left';
# menu .mbar.view.menu
$MW->{'.mbar.view'}->radiobutton('-label','Front','-value','Front','-command',
sub
{
UpdateView(1,0,0,0,1,0);
}
,'-variable',\$view);
$MW->{'.mbar.view'}->radiobutton('-label','Back','-value','Back','-command',
sub
{
UpdateView(-1,0,0,0,1,0);
}
,'-variable',\$view);
$MW->{'.mbar.view'}->radiobutton('-label','Left','-value','Left','-command',
sub
{
UpdateView(0,0,1,0,1,0);
}
,'-variable',\$view);
$MW->{'.mbar.view'}->radiobutton('-label','Right','-value','Right','-command',
sub
{
UpdateView(0,0,-1,0,1,0);
}
,'-variable',\$view);
$MW->{'.mbar.view'}->radiobutton('-label','Top','-value','Top','-command',
sub
{
UpdateView(0,1,0,0,0,1);
}
,'-variable',\$view);
$MW->{'.mbar.view'}->radiobutton('-label','Bottom','-value','Bottom','-command',
sub
{
UpdateView(0,-1,0,0,0,1);
}
,'-variable',\$view);
$MW->{'.mbar.view'}->radiobutton('-label','Isometric','-value','Isometric','-command',
sub
{
UpdateView(1,1,1,0,1,0);
( run in 0.719 second using v1.01-cache-2.11-cpan-39bf76dae61 )