|
A detailled documentation is available in the
Tcl3D User Manual (PDF).
Two articles about Tcl3D appeared in the
July (07/06)
and
October (10/06)
editions of the German Linux Magazin.
|
The Tcl3D package currently consists of the following modules:
|
| tcl3dTogl |
Enhanced Togl widget, a Tk widget for displaying OpenGL content. |
|
| tcl3dUtil |
Tcl3D utility library (math functions, shapes, stop watch, et al). |
| tcl3dOgl |
Wrapper for basic OpenGL functionality (GL Version 1.1, GLU Version 1.2). |
| tcl3dOglExt |
Wrapper for enhanced OpenGL functionality (GL Version 1.2 through 2.0) and OpenGL extensions. |
|
| tcl3dCg |
Wrapper for NVidia's Cg shading language. |
| tcl3dSDL |
Wrapper for the Simple DirectMedia Library. |
| tcl3dFTGL |
Wrapper for the OpenGL Font Rendering Library. |
| tcl3dGl2ps |
Wrapper for the OpenGL To Postscript library. |
| tcl3dOde |
Wrapper for the Open Dynamics Engine. |
|
| tcl3dGauges |
A Tcl3D package for displaying gauges. |
|
| tcl3dDemoUtil |
C/C++ based utility functions for some of the demo applications. |
|
|
This module is an enhanced version of the Togl widget,
a Tk canvas for displaying OpenGL graphics.
The following enhancements are currently implemented:
- Callback functions in Tcl.
- Better bitmap font support.
- Multisampling support.
- Swap Interval support.
Requirements for this module:
None, all files are contained in the Tcl3D distribution.
The original Togl
widget is copyrighted by Brian Paul and Benjamin Bederson.
The modified Tcl3D version is copyrighted by Paul Obermeier and distributed
under the BSD license.
|
This module implements C/C++ and Tcl utilities offering functionality needed for 3D programs.
It currently contains the following modules:
- 3D vector and transformation matrix module.
- Information module.
- Color names module.
- Large data module (tcl3dVector).
- Image utility module.
- Screen capture module.
- Timing module.
- 3D-model and shapes module.
- Virtual trackball module.
Requirements for this module:
None, all files are contained in the Tcl3D distribution.
The Tcl3D utility library files (see below for exceptions) are copyrighted
by Paul Obermeier and distributed under the BSD license.
The following files of this module have differing copyrights:
- tcl3dModelFmtObj.c and tcl3dModelFmtObj.h are copyrighted by Nate Robins.
- tcl3dSpheres is copyrighted by Paul Bourke.
|
|
This module wraps OpenGL functionality based on OpenGL Version 1.1,
as well as the GLU library functions based on Version 1.2.
This is due to the fact, that Windows still does not support newer versions of OpenGL.
OpenGL features defined in newer versions have to be accessed via the OpenGL extension
mechanism on Windows.
Standard shapes (box, sphere, cylinder, teapot, ...) with a GLUT compatible syntax
are supplied here, too.
Requirements for this module: An OpenGL
1.1 compatible library.
OpenGL header files are contained in the Tcl3D distribution.
The Tcl3D wrapper library for basic OpenGL is copyrighted by Paul Obermeier and
distributed under the BSD license.
The following files of this module have differing copyrights:
- glutShapes.c and glutTeapot.c are copyrighted by Mark Kilgard.
|
|
This module wraps OpenGL functionality based on versions 1.2 till 2.0,
lots of OpenGL extensions not contained in the OpenGL core,
as well as Windows specific extensions.
The files of this logical building block are contained in the same directory as the
basic OpenGL wrapper files for practial compilation reasons.
This is an optional module.
Requirements for this module: An OpenGL
compatible library.
OpenGL header files are contained in the Tcl3D distribution.
To have access to all wrapped features, the OpenGL library should support Version 2.0.
The Tcl3D wrapper library for extended OpenGL is copyrighted by Paul Obermeier and
distributed under the BSD license.
|
|
This module wraps NVidia's Cg shader library based on version 1.5.0015
and adds some Cg related utility procedures.
This is an optional module.
Requirements for this module:
The Cg
library and header files.
The Tcl3D wrapper library for Cg is copyrighted by Paul Obermeier and
distributed under the BSD license.
|
|
This module wraps the SDL library based on version 1.2.9
and adds some SDL related utility procedures.
Currently only the functions related to joystick and CD-ROM
handling have been used and tested.
This is an optional module.
Requirements for this module:
The SDL library and header files.
The Tcl3D wrapper library for SDL is copyrighted by Paul Obermeier and
distributed under the BSD license.
|
|
This module wraps the FTGL library based on version 2.1.2
and adds some FTGL related utility procedures.
The following font types are available:
- Bitmap font (2D)
- Pixmap font (2D)
- Outline font
- Polygon font
- Texture font
- Extruded font
This is an optional module.
Requirements for this module:
The FTGL
and Freetype2
library and header files.
The Tcl3D wrapper library for FTGL is copyrighted by Paul Obermeier and
distributed under the BSD license.
|
|
This module wraps the GL2PS library based on version 1.3.2
and adds some GL2PS related utility procedures.
GL2PS
is a C library providing high quality vector output (PostScript, PDF, SVG)
for any OpenGL application. It does not support textures.
This is an optional module.
Requirements for this module: None, all files are contained in the Tcl3D distribution.
The Tcl3D wrapper library for GL2PS is copyrighted by Paul Obermeier and
distributed under the BSD license.
|
|
This module wraps the OpenSource physics engine ODE based on version 0.7
and adds some ODE related utility procedures.
This is an optional module.
Requirements for this module:
The ODE library and header files.
The Tcl3D wrapper library for ODE is copyrighted by Paul Obermeier and
distributed under the BSD license.
|
|
This package implements the following gauges: airspeed, altimeter, compass, tiltmeter.
This is an optional module.
Requirements for this module: None, all files are contained in the Tcl3D distribution.
The Tcl3D gauge library is copyrighted by Victor G. Bonilla and
distributed under the BSD license.
|
|
This package implements some C/C++ modules needed by some of the demo applications
for speed issues or laziness of the Tcl3D demo converter ;-).
This is an optional module.
Requirements for this module: None, all files are contained in the Tcl3D distribution.
See the source files for license issues.
|