Main > Free Download Search >

Free directx 9.0c compatible graphics adapter software for linux

directx 9.0c compatible graphics adapter

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 3137
PDL::Graphics::AquaTerm 0.02

PDL::Graphics::AquaTerm 0.02


PDL::Graphics::AquaTerm is a Perl module that provides access to the AquaTerm Mac OS-X graphics terminal. more>>
PDL::Graphics::AquaTerm is a Perl module that provides access to the AquaTerm Mac OS-X graphics terminal.

SYNOPSIS

# example 1

use PDL;
use PDL::Graphics::LUT;
use PDL::Graphics::AquaTerm;
my $x_size = 255; my $y_size = 255;
aquaOpen({SIZE_X => $x_size, SIZE_Y => $y_size});
aquaSetColorTable(cat(lut_data(idl5)));
my $a = xvals(zeroes(byte,$x_size,$y_size));
aquaBitmap($a);
# example 2
use PDL;
use PDL::Graphics::AquaTerm;
my $x_size = 255; my $y_size = 255;
aquaOpen({WIN_NUM => 1, SIZE_X => $x_size, SIZE_Y => $y_size});
my $a = sin(xvals(zeroes(float, $x_size, $y_size)) * 0.1);
aquaBitmap($a, {AUTO_SCALE => 1});

This module interfaces PDL directly to the AquaTerm Mac OS-X graphics terminal. It is primarily intended for quickly and easily displaying bitmap images.

The coordinate system is defined by the window size (given in pixels) with (0,0) at the bottom left corner of the window. This means that if the window is set to be 300 x 200, then the bottom left corner will have coordinates (0,0) and the upper right corner will have coordinates (300,200). Anything that is drawn outside this boundary will be automatically clipped.

FUNCTIONS

aquaOpen

Open a new AquaTerm window

Usage: aquaOpen(); # open the window with the defaults
Usage: aquaOpen({SIZE_X => 200, SIZE_Y => 200, BACK_COLOR => [0.0, 0.0, 0.0]});

Opens a new AquaTerm window, it also starts AquaTerm if necessary.

Options recognized :

SIZE_X - window x size in pixels (default = 400)
SIZE_Y - window y size in pixels (default = 300)
WIN_NUM - The window number, used by the drawing commands to specify which window to draw in
WIN_TITLE - A title for the window, if desired (default = "Aquaterm.pm")
BACK_COLOR - [r, g, b] the windows background color (default = [1.0, 1.0, 1.0], i.e. white)
WARN_ON - set to 1 to turn on warning messages, 0 to turn off (default = 1)
DEBUG_ON - set to 1 to turn on debugging message, 0 to turn off (default = 0)
aquaBitmap

Display a PDL as a bitmap.

Usage: aquaDisplay($my_img); # display $my_img as a bitmap in the currently open window
Usage: aquaDisplay($my_img, {AUTO_SCALE => 1.0, TEXT => "my image", TEXT_C => [1.0, 0.0, 0.0]});

Displays a PDL as a bitmap. The PDL can be of size either (m,n) or (3,m,n). PDLs of size (m,n) are converted to indexed color based on the current color table (see aquaSetColorTable). PDLs of size (3,m,n) are displayed as true-color images with the first dimension specifying the color (RGB). Unless a re-scaling is specified, the minimum value displayed is 0.0 and the maximum is 255.0.

Options recognized :

DEST_X - position of the left side of the bitmap in pixels (default = 0)
DEST_Y - position of the bottom of the bitmap in pixels (default = 0)
DEST_W - width of the bitmap to be displayed (default = width of the PDL)
DEST_H - height of the bitmap to be displayed (default = height of the PDL)
AUTO_SCALE - if set equal to 1, the PDL will be rescaled such that its
minimum value is 1 and its max is 255 (default = 0)
M_MIN - the minimum value to be displayed (default = 0.0)
M_MAX - the maximum value to be displayed (default = 255.0)
WIN_NUM - specify which window to draw in (default = current window)
TEXT - text to display on the bitmap
TEXT_X - x location of the text in pixels (default = 6)
TEXT_Y - y location of the text in pixels (default = 10)
TEXT_C - RGB color of the text, (default = [0.0, 0.0, 0.0], i.e. black)
aquaSetColorTable

Set the color table

Usage: aquaSetColorTable(cat(lut_data(idl5))); # set the color table to idl5

Makes a local copy of a user supplied color table. The color table must be a 256 x 4 pdl of the form (l,r,g,b), as would be generated by the command $ct = cat(lut_data("xyz")). The l value is ignored. The r, g and b values should be in the range 0.0 - 1.0.

aquaPolyLine

Draws a (2,n) PDL as a line

Usage: aquaPolyLine($line, {WIDTH => 3, COLOR => [0.0, 0.0, 0.0]}); # draw $line black with width 3

Draw a poly-line between a set of points given by a PDL of size (2,n). The first dimension of the PDL gives the x & y position of the individual points, n is the total number of points.

Options recognized WIN_NUM - which window to draw the line in ERASE - clear the selected window prior to drawing the line WIDTH - line width (default = 1) CAPS - line cap style, Im still unsure exactly what this is... COLOR - RGB color of the line (default is black)

aquaText

Draw text

# draw red hello world at position 20, 30 in the current window
Usage: aquaText("hello world", X => 20, Y => 30, COLOR => [1.0, 0.0, 0.0]);

Draws text.

Options recognized WIN_NUM - which window to draw the text in ERASE - clear the current window prior to drawing the text NAME - name of the font to use (default = "Times-Roman") ANGLE - angle to display the text relative to the horizontal in degrees (default = 0.0) X - position in the window of the text anchor point (which depends on the justification of the text) (default = 6) Y - position in the window of the bottom of the text (default = 10) JUST - text justification, left = 0, center = 1, right = -1? (default = 0) SIZE - font size in points (default = 12) COLOR - text color (default is black)

aquaMouse

= for ref

Returns location of next mouse click in the active window

= for usage

($mx, $my) = aquaMouse();

Returns the location of the next mouse click in the active window as a 2 element array. The elements of the array are the x and y coordinates of the mouse click in pixels. The coordinates are relative to the bottom left corner of the active area of the window.

Options recognized WIN_NUM - which window to get the mouse click in

<<less
Download (0.008MB)
Added: 2007-08-14 License: Perl Artistic License Price:
801 downloads
Small Antialiased Graphics Library 0.0.9

Small Antialiased Graphics Library 0.0.9


SAgl is a portable small antialiased graphics library. more>>
SAgl is a portable small antialiased graphics library. It offers lines, circles, and bezier curves, as well as thick lines and fills.

It can be used on top of SDL or with X or any other graphics system.
<<less
Download (0.084MB)
Added: 2005-07-06 License: GPL (GNU General Public License) Price:
1575 downloads
Chemistry::Artificial::Graphics 0.01

Chemistry::Artificial::Graphics 0.01


Chemistry::Artificial::Graphics is a graphic plot for artificial with database support. more>>
Chemistry::Artificial::Graphics is a graphic plot for artificial with database support.

SYNOPSIS

use strict;
use Chemistry::SQL;
use Chemistry::Artificial::Graphics;

my $dbname = $ARGV[0];
my $chaname = $ARGV[1];
my $file = $ARGV[2];
my $mode = $ARGV[3];

if (scalar(@ARGV)!=4)
{ print "Error in parameter number n";
print "perl chaplot.pl DB_NAME
CHA_NAME FILE_NAME MODE (svg | svg_static | text)n";
exit;
}
my $db1 =
Chemistry::SQL->new(db_host=>"127.0.0.1",db_user=>"root",db_port=>"3306",sb_pwd=>"",db_name=>"$dbname",db_driver=>"mysql");
$db1->connect_db;
my $pcha = Chemistry::Artificial::Graphics->new(db => $db1, width=> "800",height=>"600",radius=> "10",distanceh=>"200",file=> $file,
mode=> $mode);
$pcha->ch_plot("$chaname");

This package, along with Chemistry::SQL, includes all the necessary to generate graphics of the artificial chemistry in database.
<<less
Download (0.014MB)
Added: 2006-07-28 License: Perl Artistic License Price:
1184 downloads
Bio::Tree::Compatible 1.5.2_102

Bio::Tree::Compatible 1.5.2_102


Bio::Tree::Compatible is a Perl module for testing compatibility of phylogenetic trees with nested taxa. more>>
Bio::Tree::Compatible is a Perl module for testing compatibility of phylogenetic trees with nested taxa.

SYNOPSIS

use Bio::Tree::Compatible;
use Bio::TreeIO;
my $input = new Bio::TreeIO(-format => newick,
-file => input.tre);
my $t1 = $input->next_tree;
my $t2 = $input->next_tree;

my ($incompat, $ilabels, $inodes) = $t1->is_compatible($t2);
if ($incompat) {
my %cluster1 = %{ $t1->cluster_representation };
my %cluster2 = %{ $t2->cluster_representation };
print "incompatible treesn";
if (scalar(@$ilabels)) {
foreach my $label (@$ilabels) {
my $node1 = $t1->find_node(-id => $label);
my $node2 = $t2->find_node(-id => $label);
my @c1 = sort @{ $cluster1{$node1} };
my @c2 = sort @{ $cluster2{$node2} };
print "label $label";
print " cluster"; map { print " ",$_ } @c1;
print " cluster"; map { print " ",$_ } @c2; print "n";
}
}
if (scalar(@$inodes)) {
while (@$inodes) {
my $node1 = shift @$inodes;
my $node2 = shift @$inodes;
my @c1 = sort @{ $cluster1{$node1} };
my @c2 = sort @{ $cluster2{$node2} };
print "cluster"; map { print " ",$_ } @c1;
print " properly intersects cluster";
map { print " ",$_ } @c2; print "n";
}
}
} else {
print "compatible treesn";
}

Bio::Tree::Compatible is a Perl tool for testing compatibility of phylogenetic trees with nested taxa represented as Bio::Tree::Tree objects. It is based on a recent characterization of ancestral compatibility of semi-labeled trees in terms of their cluster representations.

A semi-labeled tree is a phylogenetic tree with some of its internal nodes labeled, and it can represent a classification tree as well as a phylogenetic tree with nested taxa, with labeled internal nodes corresponding to taxa at a higher level of aggregation or nesting than that of their descendents.

Two semi-labeled trees are compatible if their topological restrictions to the common labels are such that for each node label, the smallest clusters containing it in each of the trees coincide and, furthermore, no cluster in one of the trees properly intersects a cluster of the other tree.

Future extensions of Bio::Tree::Compatible include a Bio::Tree::Supertree module for combining compatible phylogenetic trees with nested taxa into a common supertree.

<<less
Download (5.6MB)
Added: 2007-06-28 License: Perl Artistic License Price:
848 downloads
Ovlada? USB Wireless adapter Atmel 1.6

Ovlada? USB Wireless adapter Atmel 1.6


Driver for USB Wireless LAN adapter based on the Atmel AT76C503/505A chipsets. more>>
Driver for USB Wireless LAN adapter based on the Atmel AT76C503/505A chipsets. Well matched to popular Micronet SP907BB adapters. It has less problems and better results than known atmelwlan driver from sourceforge.net.
Currently, the driver has some limitations:
no promiscous, monitor or station mode and no support for libpcap, i.e. it does not work with Kismet or Airsnort and it cannot act as an WLAN access point. This is a restriction imposed by the currently firmware
The firmware for Intersil radios is old (Atmel doesnt update it anymore) and has more restrictions. See the chipsets page for more information.
Support for 2.6.x kernels is now in main tree (versions 0.13+).
It has been tested with the usb host controller drivers usb-uhci, uhci and usb-ohci. It also works with more than one adapter on one
Enhancements:
- added switch to cope with Intersil firmware 0.84.0 which does not send FCS in rx data
- new module at76c503-rfmd-acc.o for SMC2664W, which got RMFD radio, but need a special firmware (Accton OEM products).
- added regulatory domains MKK1 and Israel
- added rudimentary ethtool support for SuSEs future hotplug
- added nickname ioctl for iwconfig
- added test of valid channel in reg. domain
- added big endian patch (by Kevin Cernekee), changed defines in ieee802_11.h
- supress unsupported iwconfig modes (monitor, master) - patch by Pavel Roskin
<<less
Download (0.72MB)
Added: 2006-06-27 License: GPL (GNU General Public License) Price:
1219 downloads
CAD::Drawing::Manipulate::Graphics 0.26

CAD::Drawing::Manipulate::Graphics 0.26


CAD::Drawing::Manipulate::Graphics - Gimp meets CAD. more>>
CAD::Drawing::Manipulate::Graphics - Gimp meets CAD.

Methods

All of these are CAD::Drawing methods (I force my own inheritance:)

image_init

Initialize the image at $addr based on the value at the fullpath key. This establishes the contained Image::Magick object and loads the image into memory in the image_handle key.

$drw->image_init($addr);

image_crop

Crops an image and its definition (actually, changes its insert point) according to the points given by @crop_points (which maybe had better be within the object (but I dont really sweat that.))

@crop_points should be in world coordinates as follows:

@crop_points = (
[$lower_left_x , $lower_left_y ],
[$upper_right_x, $upper_right_y],
);
# note that you can get these as
# ($drw->getExtentsRec($something))[0,2]

$drw->image_crop($addr, @crop_points);

image_scale

Scales both the image and the definition by $scale, starting at @base_point.

$drw->image_scale($addr, $scale, @base_point);

image_rotate

This leaves the definition orthoganal, expands the underlying image object, and resets the insert point and size properties accordingly.

$drw->image_rotate($addr, $angle, @point);

The current implementation does not handle the change to the image clipping boundary.

image_swap_context

This involves a scaling of the image (the contexts should be aligned over each other at this point or everything will go to hell.) Do your own move / rotate / crop before calling this, because all this does is to scale the underlying image object such that the vec property of the image definition at $dest_addr can be used correctly.

Note that this does not "swap" the image to $dest_addr, rather it uses the image definition of $dest_addr to change the image object and definition at $source_addr.
Also note that the image must fit completely inside (I think) of the destination in order for the composite to work correctly.

$drw->image_swap_context($source_addr, $dest_addr);

<<less
Download (0.039MB)
Added: 2006-10-25 License: Perl Artistic License Price:
1094 downloads
Class::Adapter 1.02

Class::Adapter 1.02


Class::Adapter is a Perl implementation of the Adapter Design Pattern. more>>
Class::Adapter is a Perl implementation of the "Adapter" Design Pattern.

The Class::Adapter class is intended as an abstract base class for creating any sort of class or object that follows the Adapter pattern.

What is an Adapter?

The term Adapter refers to a "Design Pattern" of the same name, from the famous "Gang of Four" book "Design Patterns". Although their original implementation was designed for Java and similar single-inheritance strictly-typed langauge, the situation for which it applies is still valid.

An Adapter in this Perl sense of the term is when a class is created to achieve by composition (objects containing other object) something that cant be achieved by inheritance (sub-classing).

This is similar to the Decorator pattern, but is intended to be applied on a class-by-class basis, as opposed to being able to be applied one object at a time, as is the case with the Decorator pattern.

The Class::Adapter object holds a parent object that it "wraps", and when a method is called on the Class::Adapter, it manually calls the same (or different) method with the same (or different) parameters on the parent object contained within it.

Instead of these custom methods being hooked in on an object-by-object basis, they are defined at the class level.

Basically, a Class::Adapter is one of your fall-back positions when Perls inheritance model fails you, or is no longer good enough, and you need to do something twisty in order to make several APIs play nicely with each other.

What can I do with the actual Class::Adapter class

Well... nothing really. It exist to provide some extremely low level fundamental methods, and to provide a common base for inheritance of Adapter classes.
The base Class::Adapter class doesnt even implement a way to push method calls through to the underlying object, since the way in which that happens is the bit that changes from case to case.

To actually DO something, you probably want to go take a look at Class::Adapter::Builder, which makes the creation of Adapter classes relatively quick and easy.

<<less
Download (0.024MB)
Added: 2007-06-20 License: Perl Artistic License Price:
856 downloads
PDL::Graphics::TriD 2.4.3

PDL::Graphics::TriD 2.4.3


PDL::Graphics::TriD is a PDL 3D interface. more>>
PDL::Graphics::TriD is a PDL 3D interface.

SYNOPSIS

use PDL::Graphics::TriD;

# After each graph, let the user rotate is and # wait for him to press q, then make new graph line3d($coords); # $coords = (3,n,...) line3d($coords,$colors); # $colors = (3,n,...) line3d([$x,$y,$z]); imagrgb([$r,$g,$b]); lattice3d([$x,$y,$z]); # 2-d piddles points3d([$x,$y,$z]);
hold3d(); # the following graphs are on top of each other and the previous line3d([$x,$y,$z]); line3d([$x,$y,$z+1]); $pic = grabpic3d(); # Returns the picture in a (3,$x,$y) float piddle (0..1).
release3d(); # the next graph will again wipe out things.

WARNING

These modules are still in a somewhat unfocused state: dont use them yet if you dont know how to make them work if they happen to do something strange.

This module implements a generic 3D plotting interface for PDL. Points, lines and surfaces (among other objects) are supported.

With OpenGL, it is easy to manipulate the resulting 3D objects with the mouse in real time - this helps data visualization a lot.

<<less
Download (2.1MB)
Added: 2007-06-21 License: Perl Artistic License Price:
858 downloads
Apache XML Graphics Commons 1.1

Apache XML Graphics Commons 1.1


Apache XML Graphics Commons project is a library that consists of several reusable components. more>>
Apache XML Graphics Commons project is a library that consists of several reusable components used by Apache Batik and Apache FOP.
Many of these components can easily be used separately outside the domains of SVG and XSL-FO. You will find components such as a PDF library, an RTF library, Graphics2D implementations that let you generate PDF & PostScript files, and much more.
Apache XML Graphics Commons has only just begun. Its in the process of being populated with components coming from Apache Batik and Apache FOP. Stay tuned for exciting treasures made available.
In the Wiki, we have a plan for building Apache XML Graphics Commons. The plan provides an idea of what you can expect to find here when were finished migrating components.
Main features:
- Image codecs for PNG and TIFF
- Bitmap image writer abstraction with implementation for the above codecs and for the Image I/O API.
- Java2D helper classes
- Graphics2D implementation that produces PostScript and EPS
- Helper classes for PostScript code production
- XMP metadata framework
- Various I/O classes, encoders and decoders for various formats
Enhancements:
- The ImageWriter abstraction now supports the writing of multi-page formats like TIFF.
- This uses the Image I/O API. A default implementation was provided for AbstractGraphics2D.drawText(ACI, float, float) so that PSGraphics2D supports painting of text using the AttributedCharacterIterator.
- Various fixes and improvements were made in the ImageWriter abstraction.
- A problem where the generation of the PostScript setdash command was assuming that only integer values can be used was fixed.
<<less
Download (MB)
Added: 2006-12-27 License: The Apache License 2.0 Price:
1035 downloads
GD Graphics Library 2.0.35

GD Graphics Library 2.0.35


Gd is a graphics library. more>>
Gd is a graphics library. It allows your code to quickly draw images complete with lines, arcs, text, multiple colors, cut and paste from other images, and flood fills, and write out the result as a PNG or JPEG file. This is particularly useful in World Wide Web applications, where PNG and JPEG are two of the formats accepted for inline images by most browsers.

In gd 1.0, it stood for "gif draw." After the Unisys patent on the LZW compression used in GIF came to light and GIF support was dropped, it did not officially stand for anything, but lets just say "graphics draw" and leave it at that. (GIF support is back, thanks to the expiration of the patent, but gd can draw much more than GIFs.)

This is a quick install guide:

1. Type ./configure
2. Type make install
<<less
Download (1.2MB)
Added: 2007-06-22 License: GPL (GNU General Public License) Price:
860 downloads
The Mesa 3D Graphics Library 7.0

The Mesa 3D Graphics Library 7.0


Mesa is a 3-D graphics library with an API which is very similar to that of OpenGL. more>>
Mesa is a 3-D graphics library with an API which is very similar to that of OpenGL. To the extent that Mesa utilizes the OpenGL command syntax or state machine, it is being used with authorization from Silicon Graphics, Inc.(SGI). However, the author does not possess an OpenGL license from SGI, and makes no claim that Mesa is in any way a compatible replacement for OpenGL or associated with SGI. Those who want a licensed implementation of OpenGL should contact a licensed vendor.
Please do not refer to the library as MesaGL (for legal reasons). Its just Mesa or The Mesa 3-D graphics libraryand thats all.
Enhancements:
New features
- OpenGL 2.0 and 2.1 API support.
Bug fixes
- Fixed a few fog-related bugs.
- Fixed broken GLSL mix() function.
- Fixed broken GLSL exp() functions.
- Fixed GLSL mod4(vec4, vec4) bug.
- Implemented GLSL asin(), acos(), atan() functions.
- Fixed an R300 driver bug that caused Xorg composite manager to crash
- Fixed R300 vertex program/matrix bug (10848)
- GLSL dFdx() and dFdy() work for fragment program inputs now (texcoords)
- Specifying an invalid texture unit as a sampler could lead to a crash
- The GLX protocol request for glXDestroyPBuffer() was incorrect (bug 10983)
- ARB vp state.light[n].half value was incorrect (bug 10987)
- Fixed a positional light source bug (bug 11009)
- Fixed point size attenuation problem (bug 11042)
- glPopAttrib didnt restore texture objects LOD bias (bug 11049)
- Fixed a TLS / TEXTREL problem (bug 7459)
Internal code changes
- Some texture code consolidation and simplifiction (Ian Romanick)
- R300 driver clean-ups.
Driver Status
- Driver Status
---------------------- ----------------------
- DRI drivers varies with the driver
- XMesa/GLX (on Xlib) implements OpenGL 2.1
- OSMesa (off-screen) implements OpenGL 2.1
- Windows/Win32 implements OpenGL 2.1
- Glide (3dfx Voodoo1/2) implements OpenGL 1.3
- SVGA unsupported
- Wind River UGL unsupported
- DJGPP unsupported
- GGI unsupported
- BeOS unsupported
- Allegro unsupported
- D3D unsupported
<<less
Download (3.2MB)
Added: 2007-06-27 License: GPL (GNU General Public License) Price:
857 downloads
Text::Graphics 1.0001

Text::Graphics 1.0001


Text::Graphics is a text graphics rendering toolkit. more>>
Text::Graphics is a text graphics rendering toolkit.

This is a toolkit for rendering plain text via an API like that used for graphics rendering in GUI toolkits. This package might be used when you want to do sophisticated rendering of plain text, e.g., for graphing, creating of complex forms for email and fax, and so on.

SYNOPSIS

use Text::Graphics;
my $text = "A text graphics rendering toolkit.n";
my $page = Text::Graphics::Page->new( 20, 10);
my $panel0 = Text::Graphics::BorderedPanel->new( 20, 10);
my $panel1 =
Text::Graphics::FilledBorderedTextPanel->new($text x 3, 25, 12);
$panel0->setBackground("#");
$panel1->setBackground(" ");
$page->add($panel0);
$page->add($panel1, 5, 2);
$page->render();

+-------------------+
|###################|
|####+--------------+
|####|A text graphic|
|####|rendering tool|
|####|text graphics |
|####|toolkit. A tex|
|####|graphics rende|
|####|toolkit. |
|####| |
+----+--------------+

<<less
Download (0.006MB)
Added: 2006-08-28 License: Perl Artistic License Price:
1152 downloads
g3d Graphic Tools 1.2

g3d Graphic Tools 1.2


g3d Graphic Tools project consists of a XML file format and generic development tools for games. more>>
g3d Graphic Tools project consists of a XML file format and generic development tools for games.
The problem is that often as a games developer you need to work with many 3d editing tools and rendering engines, and there should be an easy and portable way to move objects, levels, etc. around.
By having a common intermediate file format, you only need to write one exporter per tool and one importer per graphics engine. Also, you can develop generic tools which are not tied to any particular engine.
Enhancements:
- Added the skeleton object (beginnings of animation ;)
- Added asset management info in the file header (ie date, time, author, source, description)
- Fixed exporter bugs (3dsmax) relating to heiarchy stuff
<<less
Download (2.3MB)
Added: 2006-11-28 License: GPL (GNU General Public License) Price:
1092 downloads
PDL::Graphics::X 0.04

PDL::Graphics::X 0.04


PDL::Graphics::X is a PDL OO access to X windows. more>>
PDL::Graphics::X is a PDL OO access to X windows.

SYNOPSIS

# example 1

use PDL;
use PDL::Graphics::X;

my $x_size = 255; my $y_size = 255;
my $win1 = PDL::Graphics::X->new({SIZE_X => $x_size, SIZE_Y => $y_size});
my $a = xvals(zeroes(byte,$x_size,$y_size));
$win1->imag($a);

# example 2

use PDL;
use PDL::Graphics::X;

my $win1 = PDL::Graphics::X->new({WIN_TITLE => "PDL", SIZE_X => 210, SIZE_Y => 210});
my $x = pdl(10, 100, 100, 10);
my $y = pdl(10, 10, 100, 100);
$win1->line($x, $y, {COLOR => [1,0,0], LINEWIDTH => 5});

This module interfaces PDL directly to X windows in a OO fashion. Each X object has an associated X window and handles opening, closing and drawing in the associated window. Hopefully it is reasonably intuitive to use. The vision is that this will serve as a base upon which other fully native PDL graphics modules could be built.

Common options such as LINEWIDTH are remembered from function call to function call, i.e. if you call $win1->line($x, $y, {COLOR => [1,0,0], LINEWIDTH => 5}) then the rectangle drawn by $win1->rect(10, 10, 190, 190) will also have a red border of width equal to 5.

FUNCTIONS

new

Constructor for a new X window object.

Usage: my $win1 = PDL::Graphics::X->new(); # open the window with the defaults
Usage: my $win1 = PDL::Graphics::X->new({WIN_TITLE => "PDL", SIZE_X => 210, SIZE_Y => 210});

Creates a new X object & its associated X window.

Options recognized :

SIZE_X - window x size in pixels (default = 400)
SIZE_Y - window y size in pixels (default = 300)
WIN_TITLE - A title for the window, if desired (default = "X")
BACK_COLOR - [r, g, b] the windows background color (default = [1.0, 1.0, 1.0], i.e. white)
imag

Display a PDL as a bitmap.

Usage: $win1->imag($my_img); # display an image with default size and scaling
Usage: $win1->imag($my_img, {AUTO_SCALE => 1.0}); # display an auto-scaled image

Displays a PDL as a bitmap. The PDL can be of size either (m,n) or (m,n,3). PDLs of size (m,n) are converted to indexed color based on the current color table (see ctab). PDLs of size (m,n,3) are displayed as true-color images with the last dimension specifying the color (RGB). Unless a re-scaling is specified, the minimum value displayed is 0.0 and the maximum is 255.0. If the PDL is larger then the window then the window will be re-scaled to accomodate the PDL;

Options recognized :

DEST_X - position of the left side of the bitmap in pixels (default = 0)
DEST_Y - position of the bottom of the bitmap in pixels (default = 0)
DEST_W - width of the bitmap to be displayed (default = width of the PDL)
DEST_H - height of the bitmap to be displayed (default = height of the PDL)
AUTO_SCALE - if set equal to 1, the PDL will be rescaled such that its
minimum value is 1 and its max is 255 (default = 0)
MIN - the minimum value to be displayed (default = 0.0)
MAX - the maximum value to be displayed (default = 255.0)
ctab

Set the color table

Usage: $win1->ctab(cat(lut_data(idl5))); # set the color table to idl5

Makes a local copy of a user supplied color table. The color table must be a 256 x 4 pdl of the form (l,r,g,b), as would be generated by the command $ct = cat(lut_data("xyz")). The l value is ignored. The r, g and b values should be in the range 0.0 - 1.0.

line

Draws a vector as connected points.

Usage: $win1->line($x, $y, {COLOR => [0,0,0], LINEWIDTH => 5}); # draw black line of width 5

Draw a poly-line between a set of points given by two PDLs of size (n). The first PDL gives the x position & the second piddle gives the y position of the individual points, n is the total number of points.

Options recognized

LINEWIDTH - line width
LINESTYLE - line style (0 = normal, 1 = dashed)
COLOR - [r, g, b] color of the line
rect

Draws a rectangle.

Usage: $win1->rect($x1, $y1, $x2, $y2);

Draws a rectangle with corners at ($x1, $y1) and ($x2, $y2).

Options recognized

LINEWIDTH - line width
LINESTYLE - line style (0 = normal, 1 = dashed)
COLOR - [r, g, b] color of the line
circle

Draws a circle.

Usage: $win1->circle($x, $y, $r);

Draws a circle centered at ($x, $y) with radius $r.

Options recognized

LINEWIDTH - line width
LINESTYLE - line style (0 = normal, 1 = dashed)
COLOR - [r, g, b] color of the line
ellipse

Draws an oval.

Usage: $win1->ellipse($x, $y, $a, $b);

Draws a oval centered at ($x, $y) with x size $a and y size $b.

Options recognized

LINEWIDTH - line width
LINESTYLE - line style (0 = normal, 1 = dashed)
COLOR - [r, g, b] color of the line
erase

Erases the contents of the window.

Usage: $win1->erase();

Resets the contents of the window to the background color.

text

Draw text

Usage: $win1->text("hello", $x, $y, $angle);

Draws text starting at $x and $y with baseline angle given by $angle. If you know how to draw truly rotated text in X, please let me know. How fonts are currently dealt with is imperfect at best. So that the font size can easily be changed, a search is performed for a scalable font with specified font name. If such a font cannot be found then the text will be displayed with the default X font and no font scaling.

Options recognized

FONT_NAME - name of the font family (default = "courier")
CHARSIZE - desired font size in points
COLOR - [r, g, b] color of the font

cursor

Returns the location of next mouse click in the window

Usage : my($x,$y) = $win1->cursor();

Returns the x & y locations of the next mouse click in the window.

we_exist

Returns 0 if the window still exists, 1 if it does not

Usage : my $exists = $win1->we_exist();

Originally written to help debug some problems with associated with X windows being closed by the user with a mouse. Preserved on the off chance that it will be useful to a dependent module.

winsize

Returns the window size & maximum window size (in pixels) in x and y

Usage : my ($win_x, $win_y, $max_x, $max_y) = $win1->winsize();

Primarily intended for use by dependent modules that might want to know what the current and maximum window size is.

resize

resizes a window & returns the new size (which might not be what you requested)

Usage : my ($new_x, $new_y) = $win1->resize($size_x, $size_y);

Primarily intended for use by dependent modules that might want to resize a window without destroying it and creating another one.

<<less
Download (0.010MB)
Added: 2007-07-09 License: Perl Artistic License Price:
837 downloads
General Graphical User Interface 0.5.1

General Graphical User Interface 0.5.1


General Graphical User Interface is a wizard-like environment to execute console commands graphically. more>>
General Graphics User Interface is an effort to produce a common graphical user interface for any command-line program.

It uses a wizard-like input front end to collect the information needed. It then calls the desired program automatically with all the necessary options.

The user is able to point&click on various options and select them in a convenient way. In order to create a new user-interface, a user doesnt need to know a programming language, since there is a graphical editor for new GGUI "scripts".
<<less
Download (0.21MB)
Added: 2005-04-28 License: GPL (GNU General Public License) Price:
1642 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5