|
|
Carnac

Fast C++ Toolkit for 2D Graphics
 Carnac
offers fully interactive data display, from map-based graphical selection to interactive
schematics, as well as the ability to share views across the web.
Cross-platform
Tools and Outstanding Performance
Carnac has been designed with performance as its primary goal, with
every component tailored to optimally drive the native graphics pipeline.
Most Carnac-written applications will be faster than applications written
using native graphics directly. Carnac also permits developers
to fast-track development of their applications under Qt, Windows MFC
or Unix Motif. Carnac's outstanding performance and cross-platform support
make it the leading product in its target market.
Carnac's
Distributed Architecture
Carnac's
distributed architecture is ideal for developing Web applications, including enabling
technologies such as ActiveX controls and Netscape plug-ins. Carnac's
components are connected using a proxy interface, which can be easily distributed.
For example, Carnac's Web scene is used to distribute graphic objects across the
Web.
Benefits
- Full cross-platform
support
- Extensible, portable,
integratable
- Scalable graphics
- Built-in view
management
|
Features
- CGM
- support extended to 3.0 standard
- Shapes
- Primitive shapes include bezier curves, ellipses, images,
polygons, polylines, polymarkers, rectangles, restricted text
and scalable text.
- Flavors
- Flavors are used to augment the primitive shapes, provide
application specific symbols, lines symbology, animation sprites,
etc.
- Attributes
- Attributes encapsulate visual properties of shapes, including
line color, line style, line pattern, fill color, fill style,
fill pattern, font attributes and marker styles. Different attributes
can be set per target device (hardcopy, for example).
- Scenes
- Memory scenes: optimized for very fast shape creation. Suitable
to handle tens of thousands of objects. Paged scenes: shapes
are spatially stored in a file. Application has control over
the size of the memory cache. Optimized to handle up to millions
of objects. Dynamic scenes: provides a mechanism to generate
shapes on the fly from a database, an algorithm or over the
web. Data compression techniques and filtering can be implemented
to minimize network traffic.
|
 |
- Views
- Support View laying, filtering and buffering. Extensive View composition
support, including embedded views. Scenes can be visualized using
multiple views, with automatic propagation of updates.
- Interaction
- Extensive support for interaction is available, including selection,
scaling, reshaping and rotation. Interaction primitives can be applied
to single or multiple shapes.
- Thread safe
- Systems that support multithreading can implement the rendering
part of Carnac, as a separate thread. Methods are provided to enforce
internal locking and preserve data integrity.
- Persistence
- Built-in support for binary and ASCII serialization of scenes and
palettes.
- Drivers
- Drivers are available for Qt3. Qt4. Win32, X-Window, OpenGL, PostScript
and CGM.
- Online documentation
- All documentation (Getting Started, Users Guide, and Reference)
is available in HTML format for easy access on-line
- Hardcopy output
- PostScript is provided, and CGM is optional.
Plot
Toolkit - The integrated Plot components can be used for
general plotting purpose, to display XY-plots for example, or for more
domain specific applications, including contour, seismic or log displays.
Some of the main features provided in the Plot Framework are described
below:
CGMOutput
CGMOutput
is an add-on module that can be used to output a display to a CGM file. CGM (Computer
Graphic Metafile) is particularly well-suited for describing large plots and is
a standard graphics file format used by many industries such as Oil & Gas, Aerospace
and Automotive. The CGMOutput module is compatible with other Carnac modules,
including Seismic, where it uses the special CGM+ extensions for generating seismic
traces.
Availability
Carnac is available on Linux, Windows, SGI and Solaris for 32bit and
64bit architectures.
|
|