OpenCSG is a library that does image-based CSG rendering using OpenGL.
OpenCSG is written in C++ and supports most modern graphics hardware.
CSG is short for Constructive Solid Geometry and denotes an approach
to model complex 3D-shapes using simpler ones. I.e., two shapes can be
combined by taking the union of them, by intersecting them, or by
subtracting one shape of the other. The most basic shapes, which are
not result of such a CSG operation, are called primitives. Primitives
must be solid, i.e., they must have a clearly defined interior and
exterior. By construction, a CSG shape is also solid then.
Image-based CSG rendering (also z-buffer CSG rendering) is a term that
denotes algorithms for rendering CSG shapes without an explicit
calculation of the geometric boundary of a CSG shape. Such algorithms
use frame-buffer settings of the graphics hardware, e.g., the depth
and stencil buffer, to compose CSG shapes. OpenCSG implements a
variety of those algorithms, namely the Goldfeather algorithm and the
SCS algorithm, both of them in several variants.
This port installs section 3 manpages for the OpenGL 3d graphics API so
that they are directly accessable from the man(1) command. Especially
useful for the graphics/Mesa port/package.
Included OpenGL related libraries: gl, glx, glu, gle, glut.
gl, glx and glu are taken from ftp.sgi.com. They carried no version
information. Stored in the same directory at the time I grabbed them
was the OpenGL spec 1.2.1, which may or may not indicate the state of
the manpages. :-/
The gl, glx and glu manpages are unusable when just unpacking them. I
repackaged them so that
- the file name actually is the name of the function, including
gl... etc prefixes and respecting case.
- all filenames end in *.3
- hard links are created so that the man command works for all
functions in a manpage, not just the first one.
gle and glut are taken from the glut-3.7 distribution (where the
Webpage says it is beta, but the distfile name does not). These are
unchanged, but there are currently no hardlinks to secondary functions
names.
Image::Size is a library based on the image-sizing code in the wwwimagesize
script, a tool that analyzes HTML files and adds HEIGHT and WIDTH tags to
IMG directives. Image::Size has generalized that code to return a raw (X, Y)
pair, and included wrappers to pre-format that output into either HTML or a
set of attribute pairs suitable for the CGI.pm library by Lincoln Stein.
Currently, Image::Size can size images in XPM, XBM, GIF, JPEG and PNG
formats.
I did this because my WWW server generates a lot of documents on demand
rather than keeping them in static files. These documents not only use
directional icons and buttons, but other graphics to annotate and highlight
sections of the text. Without size attributes, browsers cannot render the
text of a page until the image data is loaded and the size known for layout.
This library enables scripts to size their images at run-time and include
that as part of the generated HTML. Or for any other utility that uses and
manipulates graphics. The idea of the basic interface + wrappers is to not
limit the programmer to a certain data format.
Context Free Design Grammar compiler.
About CFDG:
Chris Coyne created a small language for design grammars called CFDG.
These grammars are sets of non-deterministic rules to produce images.
The images are surprisingly beautiful, often from very simple grammars.
Context Free is a full graphical environment for editing, rendering,
and exploring CFDG design grammars.
Features:
* Simultaneously available for Macintosh, Windows and Posix/Unix.
* Progressive image update: watch it generate
* Save generated images in PNG or SVG format.
* Produce animations
* Edit grammars and re-render easily.
* Render very large images (as large as 100 Mega-pixels).
* Can handle generated images with millions of shapes.
* Carefully tuned graphics rendering
* Many built-in examples
* Automatic checking for updates (Mac only).
* It's free, as in beer and as in speech.
Geomview and OOGL are part of an ongoing effort at the Geometry Center
to provide interactive 3D graphics software which is particularly
appropriate for displaying the kinds of objects and doing the kinds of
operations of interest in mathematics research and education. You can
compute an OOGL data file of a mathematical object that would be
difficult or impossible to build a model of in the real world. In
geomview, besides examining an object in ordinary Euclidean 3-space,
you can look at objects in hyperbolic 3-space and Euclidean 4-space.
The hyperbolic model is the projective one, where geodesics are
straight lines and isometries are represented as 4x4 projective
matrices. While geomview is tailored for mathematical visualization,
it is written to be extensible and can serve as a general-purpose
tool. Its functionality can be extended in an almost unlimited fashion
by external modules.
libAfterImage is the imaging library implemented for AfterStep X Window
Manager. It has been generalized to be suitable for any application in
need of robust graphics engine.
It provides facilities for loading images from files of different formats,
compressed in memory storage of images, scaling, tinting/shading, flipping
and superimposition of arbitrary number of images over each other. In
addition it allows for linear gradients drawing, and antialiased/smoothed
text drawing using both FreeType library and X Window fonts.
Primary goals of this library are to achieve exceptional quality of images
and text, making code fast and small at the same time. Additional steps are
taken to compensate for screen colordepth limitation, and different error
diffusion algorithms are used to provide for smooth images even in low
colordepth modes.
MozJPEG is a fork of libjpeg-turbo with 'jpgcrush' functionality built in.
This project's goal is to reduce the size of JPEG files without reducing quality
or compatibility with the vast majority of the world's deployed decoders.
The idea is to reduce transfer times for JPEGs on the Web, thus reducing page
load times.
'mozjpeg' is not intended to be a general JPEG library replacement. It makes
tradeoffs that are intended to benefit Web use cases and focuses solely on
improving encoding. It is best used as part of a Web encoding workflow. For a
general JPEG library (e.g. your system libjpeg), especially if you care about
decoding, we recommend graphics/libjpeg-turbo port.
MuPDF is a lightweight PDF viewer and toolkit written in portable C.
The renderer in MuPDF is tailored for high quality anti-aliased graphics. It
renders text with metrics and spacing accurate to within fractions of a
pixel for the highest fidelity in reproducing the look of a printed page on
screen.
MuPDF has a small footprint. A binary that includes the standard Roman fonts
is only one megabyte. A build with full CJK support (including an Asian
font) is approximately five megabytes.
MuPDF has support for all non-interactive PDF 1.7 features, and the toolkit
provides a simple API for accessing the internal structures of the PDF
document. Example code for navigating interactive links and bookmarks,
encrypting PDF files, extracting fonts, images, and searchable text, and
rendering pages to image files is provided.
This module makes it easy to visualise data structures, even recursive or
circular ones.
It is provided as an alternative to GraphViz::Data::Grapher. Differences:
- GraphViz::Data::Structure handles structures of arbitrary depth and
complexity, automatically following links using a standard graph
traversal algorithm.
- GraphViz::Data::Grapher creates graphics of indiividual substructures
(arrays, scalars, hashes) which keep the substructure type and data
together; GraphViz::Data::Structure does this by shape alone.
- GraphViz::Data::Structure encapsulates object info (if any) directly
into the node being used to represent the class.
- GraphViz::Data::Grapher colors its graphs; GraphViz::Data::Structure
doesn't by default.
- GraphViz::Data:Structure can parse out globs and CODE references (almost
as well as the debugger does).
Gnash is a GNU Flash movie player. Previously, it was only possible
to play flash movies with proprietary software. While there are
some other free flash players, none support anything beyond SWF v4.
Gnash is based on GameSWF, and supports many SWF v7 features.
- Runs standalone
Gnash can run standalone to play flash movies.
- Browser plugin
Gnash can also run as a plugin from within most Mozilla derived
browsers, such as Firefox. Gnash also has support for Konqueror.
- SWF v7+ compliant
Gnash can play many current flash movies.
- Streaming Video
Gnash supports the viewing of streaming video from popular video
sharing sites like Lulu.tv or YouTube.com.
- XML Message server
Gnash also supports an XML based message system as documented in
the Flash Format specification.
- High Quality Output
Gnash uses OpenGL for rendering the graphics on the desktop, and
AntiGrain (AGG) for embedded framebuffer only devices.
- Free Software
Gnash is 100% free software. For more information on the GPL, go
to the Free Software Foundation web site.
- Better Security
Gnash pays extra attention to all network connections, and allows
the user to control access.
- Extensible
Gnash supports extending ActionScript by creating your own. You
can write wrappers for any development library, and import them
into the player.