<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <!-- /home/espenr/tmp/qt-3.3.8-espenr-2499/qt-x11-free-3.3.8/doc/canvas.doc:36 --> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Canvas Module</title> <style type="text/css"><!-- fn { margin-left: 1cm; text-indent: -1cm; } a:link { color: #004faf; text-decoration: none } a:visited { color: #672967; text-decoration: none } body { background: #ffffff; color: black; } --></style> </head> <body> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr bgcolor="#E5E5E5"> <td valign=center> <a href="index.html"> <font color="#004faf">Home</font></a> | <a href="classes.html"> <font color="#004faf">All Classes</font></a> | <a href="mainclasses.html"> <font color="#004faf">Main Classes</font></a> | <a href="annotated.html"> <font color="#004faf">Annotated</font></a> | <a href="groups.html"> <font color="#004faf">Grouped Classes</font></a> | <a href="functions.html"> <font color="#004faf">Functions</font></a> </td> <td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>Canvas Module</h1> <p> <p> The canvas module provides a highly optimized 2D graphic area called <a href="ntqcanvas.html">TQCanvas</a>. The canvas can contain an arbitrary number of <a href="qcanvasitem.html">TQCanvasItems</a>. Canvas items can have an arbitrary shape, size and content, can be freely moved around in the canvas, and can be checked for collisions. Canvas items can be set to move across the canvas automatically and animated canvas items are supported with <a href="qcanvassprite.html">TQCanvasSprite</a>. (If you require 3D graphics see TQt's <a href="opengl.html">OpenGL module</a>.) <p> The canvas module uses a document/view model. The <a href="qcanvasview.html">TQCanvasView</a> class is used to show a particular view of a canvas. Multiple views can operate on the same canvas at the same time. Every view can use an arbitrary <a href="ntqwmatrix.html#TransformationMode">transformation matrix</a> on the canvas which makes it easy to implement features such as zooming. <p> <center><a href="ntqcanvas.html"> <img src="qcanvas.png" alt="Screenshot of a canvas"></a></center> <p> TQt provides a number of predefined <a href="ntqcanvas.html">TQCanvas</a> items as listed below. <p> <ul> <li> <a href="qcanvasitem.html">TQCanvasItem</a> -- An abstract base class for all canvas items. <li> <a href="qcanvasellipse.html">TQCanvasEllipse</a> -- An ellipse or "pie segment". <li> <a href="qcanvasline.html">TQCanvasLine</a> -- A line segment. <li> <a href="qcanvaspolygon.html">TQCanvasPolygon</a> -- A polygon. <li> <a href="qcanvaspolygonalitem.html">TQCanvasPolygonalItem</a> -- A base class for items that have a non-rectangular shape. Most canvas items derive from this class. <li> <a href="qcanvasrectangle.html">TQCanvasRectangle</a> -- A rectangle. The rectangle cannot be tilted or rotated. Rotated rectangles can be drawn using TQCanvasPolygon. <li> <a href="qcanvasspline.html">TQCanvasSpline</a> -- A multi-bezier spline. <li> <a href="qcanvassprite.html">TQCanvasSprite</a> -- An animated pixmap. <li> <a href="qcanvastext.html">TQCanvasText</a> -- A text string. </ul> <p> The two classes <a href="qcanvaspixmap.html">TQCanvasPixmap</a> and <a href="qcanvaspixmaparray.html">TQCanvasPixmapArray</a> are used by <a href="qcanvassprite.html">TQCanvasSprite</a> to show animated and moving pixmaps on the canvas. <p> More specialized items can be created by inheriting from one of the canvas item classes. It is easiest to inherit from one of <a href="qcanvasitem.html">TQCanvasItem</a>'s derived classes (usually <a href="qcanvaspolygonalitem.html">TQCanvasPolygonalItem</a>) rather than inherit TQCanvasItem directly. <p> See <tt>examples/canvas</tt> for an example that shows off some of <a href="ntqcanvas.html">TQCanvas</a>'s capabilities. <p> <!-- eof --> <p><address><hr><div align=center> <table width=100% cellspacing=0 border=0><tr> <td>Copyright © 2007 <a href="troll.html">Trolltech</a><td align=center><a href="trademarks.html">Trademarks</a> <td align=right><div align=right>TQt 3.3.8</div> </table></div></address></body> </html>