goocanvas r17 - in trunk: . docs
- From: damon svn gnome org
- To: svn-commits-list gnome org
- Subject: goocanvas r17 - in trunk: . docs
- Date: Sat, 11 Oct 2008 19:11:47 +0000 (UTC)
Author: damon
Date: Sat Oct 11 19:11:47 2008
New Revision: 17
URL: http://svn.gnome.org/viewvc/goocanvas?rev=17&view=rev
Log:
2008-10-11 Damon Chaplin <damon gnome org>
* docs/coordinates.xml: added section on Cairo limits.
* README: updated home page URL.
Modified:
trunk/ChangeLog
trunk/README
trunk/docs/coordinates.xml
Modified: trunk/README
==============================================================================
--- trunk/README (original)
+++ trunk/README Sat Oct 11 19:11:47 2008
@@ -5,7 +5,7 @@
(a cairo-based canvas widget for GTK+)
- GooCanvas Home Page : http://sourceforge.net/projects/goocanvas
+ GooCanvas Home Page : http://live.gnome.org/GooCanvas
GooCanvas is similar in many ways to GnomeCanvas and FooCanvas.
Modified: trunk/docs/coordinates.xml
==============================================================================
--- trunk/docs/coordinates.xml (original)
+++ trunk/docs/coordinates.xml Sat Oct 11 19:11:47 2008
@@ -3,13 +3,13 @@
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
<refentry id="goocanvas-coordinates">
<refmeta>
- <refentrytitle>Coordinate Spaces</refentrytitle>
+ <refentrytitle>Coordinate Spaces and Limits</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>GOOCANVAS Library</refmiscinfo>
</refmeta>
<refnamediv>
- <refname>Coordinate Spaces</refname>
+ <refname>Coordinate Spaces and Limits</refname>
<refpurpose>how coordinates are used.</refpurpose>
</refnamediv>
@@ -57,5 +57,30 @@
goo_canvas_convert_from_item_space() convert device space coordinates
to item space and vice versa.
</para>
+
+ <refsect2 id="coordinate-limits">
+ <title>Coordinate Limits</title>
+ <para>
+ GooCanvas uses the Cairo graphics library to render canvas items.
+ For performance reasons Cairo uses 32-bit fixed point integers
+ internally when rendering graphics, with 24 bits used for the integer
+ part of values and 8 bits used for the fractional part.
+ This means that values are limited to roughly +/- 8,388,608.
+ (Prior to Cairo 1.6 16 bits were used for the integer part and 16 bits
+ for the fractional part, meaning values were limited to +/- 32,768.)
+ </para>
+ <para>
+ GooCanvas includes code to work around the Cairo limits to some extent.
+ Subclasses of GooCanvasItemSimple (including all builtin items) can
+ use any desired translation using a transformation matrix.
+ But item space coordinates (modified by any scale, rotation or skew)
+ must be within the Cairo limits.
+ </para>
+ <para>
+ It is possible to create new canvas items that avoid the Cairo
+ limits completely. For an example of this see the "Large Items" page
+ in the GooCanvas demo application, and the corresponding code.
+ </para>
+ </refsect2>
</refsect1>
</refentry>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]