Boost logo

Boost-Commit :

From: jakevoytko_at_[hidden]
Date: 2007-07-15 15:47:50


Author: jakevoytko
Date: 2007-07-15 15:47:49 EDT (Sun, 15 Jul 2007)
New Revision: 7438
URL: http://svn.boost.org/trac/boost/changeset/7438

Log:
Iteratively improved docs. Still not fully current.

Text files modified:
   sandbox/SOC/2007/visualization/boost/svg_plot/detail/svg_tag.hpp | 4
   sandbox/SOC/2007/visualization/boost/svg_plot/svg.hpp | 9 -
   sandbox/SOC/2007/visualization/boost/svg_plot/svg_1d_plot.hpp | 2
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.qbk | 73 ++++++++------
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.xml | 196 ++++++++++++++++++++++++++-------------
   5 files changed, 173 insertions(+), 111 deletions(-)

Modified: sandbox/SOC/2007/visualization/boost/svg_plot/detail/svg_tag.hpp
==============================================================================
--- sandbox/SOC/2007/visualization/boost/svg_plot/detail/svg_tag.hpp (original)
+++ sandbox/SOC/2007/visualization/boost/svg_plot/detail/svg_tag.hpp 2007-07-15 15:47:49 EDT (Sun, 15 Jul 2007)
@@ -334,12 +334,12 @@
         return *this;
     }
 
- g_element& add_g_element(g_element& _g)
+ g_element& add_g_element()
     {
         return _g.add_g_element();
     }
 
- g_element& get_g_element(int i, g_element& _g)
+ g_element& get_g_element(int i)
     {
         return _g.g_tag(i);
     }

Modified: sandbox/SOC/2007/visualization/boost/svg_plot/svg.hpp
==============================================================================
--- sandbox/SOC/2007/visualization/boost/svg_plot/svg.hpp (original)
+++ sandbox/SOC/2007/visualization/boost/svg_plot/svg.hpp 2007-07-15 15:47:49 EDT (Sun, 15 Jul 2007)
@@ -58,7 +58,7 @@
 
 public:
 
- svg::svg():x_size(200), y_size(200)
+ svg::svg():x_size(400), y_size(400)
     {
 
     }
@@ -68,11 +68,6 @@
         
     }
 
- svg::~svg()
- {
-
- }
-
     svg& write(const std::string& _file)
     {
         std::ofstream f_out(_file.c_str());
@@ -117,7 +112,7 @@
         return *this;
     }
 
- svg& circle(double x, double y, int radius = 5)
+ svg& circle(double x, double y, unsigned int radius = 5)
     {
         document.push_back(new circle_element(x, y, radius));
         return *this;

Modified: sandbox/SOC/2007/visualization/boost/svg_plot/svg_1d_plot.hpp
==============================================================================
--- sandbox/SOC/2007/visualization/boost/svg_plot/svg_1d_plot.hpp (original)
+++ sandbox/SOC/2007/visualization/boost/svg_plot/svg_1d_plot.hpp 2007-07-15 15:47:49 EDT (Sun, 15 Jul 2007)
@@ -162,7 +162,7 @@
 public:
 
 // see documentation for default settings rationale
-svg_1d_plot(): x_label("X Axis"), x_min(-10), x_max(10),
+svg_1d_plot(): x_label("X Axis"), title("Plot of data"), x_min(-10), x_max(10),
                       legend_on(false), title_on(true),
                       axis_on(true), plot_window_on(false), x_label_on(false),
                       x_major_grid_on(false), x_minor_grid_on(false),

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.qbk
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.qbk (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.qbk 2007-07-15 15:47:49 EDT (Sun, 15 Jul 2007)
@@ -306,29 +306,32 @@
 This produces the following output:
 (Insert image)
 [endsect]
-[section:defaults Defaults]
+[section:defaults `svg_1d_plot` Defaults]
 You may have noticed that there are certain defaults that are true at the beginning of the plotting. Here is a table of the defaults:
 
-[table Default]
- [[object] [Default value]]
- [[Image size] [`500 by 300`]]
- [[X Axis Label] [`"", Off`]]
- [[X Range] [`(-10, 10)`]]
- [[Plot Window] [`Off`]]
- [[Grid lines] [`All off`]]
- [[Distance between major X ticks] [`3 units`]]
- [[Number of minor X ticks between each major X tick] [2]]
- [[Major tick length] [20 pixels]]
- [[Major tick width] [2 pixels]]
- [[Minor tick length] [10 pixels]]
- [[Minor tick width] [2 pixels]]
- [[Font size of the legend title] [12]]
- [[Font size of the X Label] [12]]
- [[Font size of the title] [30]]
- [[Image background] [white]]
- [[Plot window background] [white]]
- [[Legend background] [white]]
- [[All other colors] [black]]]
+[table Default Values]
+ [[object] [Default value] [Rationale]]
+ [[Image size] [`500 by 350`] [Details discernable. The image is easily viewable by those using 800x600 monitors]]
+ [[X Axis Label] [`"X Axis", Off`] ["X Axis" is the label because something should display were the user to turn on the X axis label without setting text, and this is the most informative]]
+ [[X Range] [`(-10, 10)`] [Traditional plot viewport]]
+ [[Axis] [On] [Most graphs include an axis of some kindl]]
+ [[Legend] [`Off`] [The goal of the defaults is to provide the cleanest possible plot as a default. Not including the legend meets this goal. If there is a public outcry, I can change this.]]
+ [[Title] [On, "Plot of data"] [The title is on because this is one of the most basic elements of a graph. The title is set to a default because when `title_on == true`, something should display]]
+ [[Plot Window] [`Off`] [Initially off because it is the simplest case. I will change this if there is an outcry]]
+ [[Grid lines] [`All off`] [Grid lines are a user's personal choice, so I default with the simpler model]]
+ [[Distance between major X ticks] [`3 units`] [Reasonably fits into a plot window]]
+ [[Number of minor X ticks between each major X tick] [2] [This allows the minor ticks to appear on the integers]]
+ [[Major tick length] [20 pixels] [Tasteful default when paired with the window size. This also makes the major ticks easily distinguishable from the minor ticks]]
+ [[Major tick width] [2 pixels] [Major ticks are more obvious than minor ticks]]
+ [[Minor tick length] [10 pixels] [Tasteful default when compared with the size of the grid. This makes the minor ticks less obvious than the major ticks]]
+ [[Minor tick width] [1 pixel] [This makes the minor tick less obvious than the major ticks]]
+ [[Font size of the legend title] [12] [Reasonable when paired with the image size]]
+ [[Font size of the X Label] [12] [Reasonable when paired with the image size]]
+ [[Font size of the title] [30] [Makes the title stand out]]
+ [[Image background] [white] [K.I.S.S. Coloring will be highly dependent on user needs.]]
+ [[Plot window background] [white] [As above]]
+ [[Legend background] [white] [As above]]
+ [[All other colors] [black] [As above]]]
 
 [endsect]
 
@@ -393,18 +396,22 @@
 
 [section:svg_interface SVG Public Interface]
 [table class svg
- [[Signature] [Description]]
- [[`svg()`] [Constructor]]
- [[`svg& image_size(unsigned int, unsigned int)`] [Sets the size of the image produced, in pixels]]
- [[`svg& write(const std::string&)`] [Writes the document to the file represented by the argument]]
- [[`svg& write(std::ostream&)`] [Writes the document to the stream represented by the argument]]
- [[`svg& point(double x, double y)`] [Adds a point at (x,y) in the root level of the document]]
- [[`svg& point(double x, double y, g_element& elem)`] [Adds a point at (x, y) at g_element `elem`]]
- [[`svg& line(double x1, double y1, double x2, double y2)`] [Adds a line from (x1,y1) to (x2,y2) in the root level of the document]]
- [[`svg& line(double x1, double y1, double x2, double y2, g_element& elem)`] [Adds a point at (x, y) at g_element `elem`]]
- [[`svg& text(double x, double y, std::string text)`] [Adds text `text` at (x,y) in the root level of the document]]
- [[`svg& rect(double x1, double y1, double width, double height)`] [Adds a rectangle at point (x1, y1) that has width `width` and height `height`]]
- [[`svg& rect(double x1, double y1, double x2, double y2, g_element& elem)`] [Adds a point at (x, y) at g_element `elem`]]]
+ [[Signature] [Description] [Notes]]
+ [[`svg()`] [Constructor] [The default image size is (400, 400)]]
+ [[`svg& image_size(unsigned int, unsigned int)`] [Sets the size of the image produced, in pixels][]]
+ [[`svg& get_x_size()`] [Returns the width of the image] []]
+ [[`svg& get_y_size()`] [Returns the height of the image] []]
+ [[`svg& write(const std::string&)`] [Writes the document to the file represented by the argument][Opens the file stream itself and tries to call `write(std::ostream&)`. Throws `std::runtime_exception` if it can not open the file.]]
+ [[`svg& write(std::ostream&)`] [Writes the document to the stream represented by the argument][]]
+ [[`svg& circle(double x, double y, unsigned int radius = 5)`] [Adds a point at (x,y) in the root level of the document][If the user is calling the circle method, odds are they would prefer a real circle instead of a degenerate circle (a point). 5 is as good a defaul as any other.]]
+ [[`svg& line(double x1, double y1, double x2, double y2)`] [Adds a line from (x1,y1) to (x2,y2) in the root level of the document][]]
+ [[`svg& text(double x, double y, std::string text)`] [Adds text `text` at (x,y) in the root level of the document][]]
+ [[`svg& rect(double x1, double y1, double width, double height)`] [Adds a rectangle at point (x1, y1) that has width `width` and height `height`][]]
+ [[`svg& clip_path(const rect_element&, g_element&, const std::string& id)`][Prevents the g_element in the argument from drawing outside of the rectangle in the argument. The string is provided to identify the clip.] [Currently unsupported]]
+ [[`g_element& add_g_element()`] [Adds a g_element at the root of the document tree. Acts as a `push_back()`] [Returns the `g_element` that is pushed back. This allows you to do something like the following: `image.add_g_element().line(/**/).line(/**/).rect(/**/); `
+Which adds two lines and a rectangle to the g_element that was just created.]]
+ [[`g_element& get_g_element(int)`] [Gets the g_element at the index specified] [Gives a runtime error if you specify an index that does not contain a `g_element`. This will be addressed]]
+]
 [endsect]
 
 [section:svg_graph_interface svg_graph Public Interface]

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.xml
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.xml (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.xml 2007-07-15 15:47:49 EDT (Sun, 15 Jul 2007)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<article id="svg_plot" name="SVG_Plot" dirname="svg_plot" last-revision="$Date: 2007/07/09 02:11:43 $"
+<article id="svg_plot" name="SVG_Plot" dirname="svg_plot" last-revision="$Date: 2007/07/14 20:09:55 $"
  xmlns:xi="http://www.w3.org/2001/XInclude">
   <articleinfo>
     <author>
@@ -439,81 +439,119 @@
       </para>
     </section>
     <section id="svg_plot.tutorial.defaults">
- <title> Defaults</title>
+ <title> <code><phrase role="identifier">svg_1d_plot</phrase></code> Defaults</title>
       <para>
         You may have noticed that there are certain defaults that are true at the
         beginning of the plotting. Here is a table of the defaults:
       </para>
       <informaltable frame="all">
         <bridgehead renderas="sect4">
- <phrase role="table-title">Default]</phrase>
+ <phrase role="table-title">Default Values]</phrase>
         </bridgehead>
- <tgroup cols="2">
+ <tgroup cols="3">
           <thead>
             <row>
- <entry>object</entry><entry>Default value</entry>
+ <entry>object</entry><entry>Default value</entry><entry>Rationale</entry>
             </row>
           </thead>
           <tbody>
             <row>
               <entry>Image size</entry><entry><code><phrase role="number">500</phrase>&nbsp;<phrase
- role="identifier">by</phrase>&nbsp;<phrase role="number">300</phrase></code></entry>
+ role="identifier">by</phrase>&nbsp;<phrase role="number">350</phrase></code></entry><entry>Details
+ discernable. The image is easily viewable by those using 800x600 monitors</entry>
             </row>
             <row>
- <entry>X Axis Label</entry><entry><code><phrase role="string">&quot;&quot;</phrase><phrase
- role="special">,</phrase>&nbsp;<phrase role="identifier">Off</phrase></code></entry>
+ <entry>X Axis Label</entry><entry><code><phrase role="string">&quot;X
+ Axis&quot;</phrase><phrase role="special">,</phrase>&nbsp;<phrase role="identifier">Off</phrase></code></entry><entry>&quot;X
+ Axis&quot; is the label because something should display were the user
+ to turn on the X axis label without setting text, and this is the most
+ informative</entry>
             </row>
             <row>
               <entry>X Range</entry><entry><code><phrase role="special">(-</phrase><phrase
               role="number">10</phrase><phrase role="special">,</phrase>&nbsp;<phrase
- role="number">10</phrase><phrase role="special">)</phrase></code></entry>
+ role="number">10</phrase><phrase role="special">)</phrase></code></entry><entry>Traditional
+ plot viewport</entry>
+ </row>
+ <row>
+ <entry>Axis</entry><entry>On</entry><entry>Most graphs include an axis
+ of some kindl</entry>
+ </row>
+ <row>
+ <entry>Legend</entry><entry><code><phrase role="identifier">Off</phrase></code></entry><entry>The
+ goal of the defaults is to provide the cleanest possible plot as a
+ default. Not including the legend meets this goal. If there is a public
+ outcry, I can change this.</entry>
             </row>
             <row>
- <entry>Plot Window</entry><entry><code><phrase role="identifier">Off</phrase></code></entry>
+ <entry>Title</entry><entry>On, &quot;Plot of data&quot;</entry><entry>The
+ title is on because this is one of the most basic elements of a graph.
+ The title is set to a default because when <code><phrase role="identifier">title_on</phrase>&nbsp;<phrase
+ role="special">==</phrase>&nbsp;<phrase role="keyword">true</phrase></code>,
+ something should display</entry>
+ </row>
+ <row>
+ <entry>Plot Window</entry><entry><code><phrase role="identifier">Off</phrase></code></entry><entry>Initially
+ off because it is the simplest case. I will change this if there is
+ an outcry</entry>
             </row>
             <row>
               <entry>Grid lines</entry><entry><code><phrase role="identifier">All</phrase>&nbsp;<phrase
- role="identifier">off</phrase></code></entry>
+ role="identifier">off</phrase></code></entry><entry>Grid lines are
+ a user's personal choice, so I default with the simpler model</entry>
             </row>
             <row>
               <entry>Distance between major X ticks</entry><entry><code><phrase role="number">3</phrase>&nbsp;<phrase
- role="identifier">units</phrase></code></entry>
+ role="identifier">units</phrase></code></entry><entry>Reasonably fits
+ into a plot window</entry>
             </row>
             <row>
- <entry>Number of minor X ticks between each major X tick</entry><entry>2</entry>
+ <entry>Number of minor X ticks between each major X tick</entry><entry>2</entry><entry>This
+ allows the minor ticks to appear on the integers</entry>
             </row>
             <row>
- <entry>Major tick length</entry><entry>20 pixels</entry>
+ <entry>Major tick length</entry><entry>20 pixels</entry><entry>Tasteful
+ default when paired with the window size. This also makes the major
+ ticks easily distinguishable from the minor ticks</entry>
             </row>
             <row>
- <entry>Major tick width</entry><entry>2 pixels</entry>
+ <entry>Major tick width</entry><entry>2 pixels</entry><entry>Major
+ ticks are more obvious than minor ticks</entry>
             </row>
             <row>
- <entry>Minor tick length</entry><entry>10 pixels</entry>
+ <entry>Minor tick length</entry><entry>10 pixels</entry><entry>Tasteful
+ default when compared with the size of the grid. This makes the minor
+ ticks less obvious than the major ticks</entry>
             </row>
             <row>
- <entry>Minor tick width</entry><entry>2 pixels</entry>
+ <entry>Minor tick width</entry><entry>1 pixel</entry><entry>This makes
+ the minor tick less obvious than the major ticks</entry>
             </row>
             <row>
- <entry>Font size of the legend title</entry><entry>12</entry>
+ <entry>Font size of the legend title</entry><entry>12</entry><entry>Reasonable
+ when paired with the image size</entry>
             </row>
             <row>
- <entry>Font size of the X Label</entry><entry>12</entry>
+ <entry>Font size of the X Label</entry><entry>12</entry><entry>Reasonable
+ when paired with the image size</entry>
             </row>
             <row>
- <entry>Font size of the title</entry><entry>30</entry>
+ <entry>Font size of the title</entry><entry>30</entry><entry>Makes
+ the title stand out</entry>
             </row>
             <row>
- <entry>Image background</entry><entry>white</entry>
+ <entry>Image background</entry><entry>white</entry><entry>K.I.S.S.
+ Coloring will be highly dependent on user needs.</entry>
             </row>
             <row>
- <entry>Plot window background</entry><entry>white</entry>
+ <entry>Plot window background</entry><entry>white</entry><entry>As
+ above</entry>
             </row>
             <row>
- <entry>Legend background</entry><entry>white</entry>
+ <entry>Legend background</entry><entry>white</entry><entry>As above</entry>
             </row>
             <row>
- <entry>All other colors</entry><entry>black</entry>
+ <entry>All other colors</entry><entry>black</entry><entry>As above</entry>
             </row>
           </tbody>
         </tgroup>
@@ -639,15 +677,16 @@
       <bridgehead renderas="sect4">
         <phrase role="table-title">class svg</phrase>
       </bridgehead>
- <tgroup cols="2">
+ <tgroup cols="3">
         <thead>
           <row>
- <entry>Signature</entry><entry>Description</entry>
+ <entry>Signature</entry><entry>Description</entry><entry>Notes</entry>
           </row>
         </thead>
         <tbody>
           <row>
- <entry><code><phrase role="identifier">svg</phrase><phrase role="special">()</phrase></code></entry><entry>Constructor</entry>
+ <entry><code><phrase role="identifier">svg</phrase><phrase role="special">()</phrase></code></entry><entry>Constructor</entry><entry>The
+ default image size is (400, 400)</entry>
           </row>
           <row>
             <entry><code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
@@ -655,7 +694,17 @@
             role="keyword">unsigned</phrase>&nbsp;<phrase role="keyword">int</phrase><phrase
             role="special">,</phrase>&nbsp;<phrase role="keyword">unsigned</phrase>&nbsp;<phrase
             role="keyword">int</phrase><phrase role="special">)</phrase></code></entry><entry>Sets
- the size of the image produced, in pixels</entry>
+ the size of the image produced, in pixels</entry><entry></entry>
+ </row>
+ <row>
+ <entry><code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
+ role="identifier">get_x_size</phrase><phrase role="special">()</phrase></code></entry><entry>Returns
+ the width of the image</entry><entry></entry>
+ </row>
+ <row>
+ <entry><code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
+ role="identifier">get_y_size</phrase><phrase role="special">()</phrase></code></entry><entry>Returns
+ the height of the image</entry><entry></entry>
           </row>
           <row>
             <entry><code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
@@ -663,32 +712,34 @@
             role="keyword">const</phrase>&nbsp;<phrase role="identifier">std</phrase><phrase
             role="special">::</phrase><phrase role="identifier">string</phrase><phrase
             role="special">&amp;)</phrase></code></entry><entry>Writes the document
- to the file represented by the argument</entry>
+ to the file represented by the argument</entry><entry>Opens the file
+ stream itself and tries to call <code><phrase role="identifier">write</phrase><phrase
+ role="special">(</phrase><phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">ostream</phrase><phrase
+ role="special">&amp;)</phrase></code>. Throws <code><phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">runtime_exception</phrase></code>
+ if it can not open the file.</entry>
           </row>
           <row>
             <entry><code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
             role="identifier">write</phrase><phrase role="special">(</phrase><phrase
             role="identifier">std</phrase><phrase role="special">::</phrase><phrase
             role="identifier">ostream</phrase><phrase role="special">&amp;)</phrase></code></entry><entry>Writes
- the document to the stream represented by the argument</entry>
+ the document to the stream represented by the argument</entry><entry></entry>
           </row>
           <row>
             <entry><code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
- role="identifier">point</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase>&nbsp;<phrase role="identifier">x</phrase><phrase
- role="special">,</phrase>&nbsp;<phrase role="keyword">double</phrase>&nbsp;<phrase
- role="identifier">y</phrase><phrase role="special">)</phrase></code></entry><entry>Adds
- a point at (x,y) in the root level of the document</entry>
- </row>
- <row>
- <entry><code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
- role="identifier">point</phrase><phrase role="special">(</phrase><phrase
+ role="identifier">circle</phrase><phrase role="special">(</phrase><phrase
             role="keyword">double</phrase>&nbsp;<phrase role="identifier">x</phrase><phrase
             role="special">,</phrase>&nbsp;<phrase role="keyword">double</phrase>&nbsp;<phrase
             role="identifier">y</phrase><phrase role="special">,</phrase>&nbsp;<phrase
- role="identifier">g_element</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
- role="identifier">elem</phrase><phrase role="special">)</phrase></code></entry><entry>Adds
- a point at (x, y) at g_element <code><phrase role="identifier">elem</phrase></code></entry>
+ role="keyword">unsigned</phrase>&nbsp;<phrase role="keyword">int</phrase>&nbsp;<phrase
+ role="identifier">radius</phrase>&nbsp;<phrase role="special">=</phrase>&nbsp;<phrase
+ role="number">5</phrase><phrase role="special">)</phrase></code></entry><entry>Adds
+ a point at (x,y) in the root level of the document</entry><entry>If the
+ user is calling the circle method, odds are they would prefer a real
+ circle instead of a degenerate circle (a point). 5 is as good a defaul
+ as any other.</entry>
           </row>
           <row>
             <entry><code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
@@ -699,20 +750,7 @@
             role="keyword">double</phrase>&nbsp;<phrase role="identifier">x2</phrase><phrase
             role="special">,</phrase>&nbsp;<phrase role="keyword">double</phrase>&nbsp;<phrase
             role="identifier">y2</phrase><phrase role="special">)</phrase></code></entry><entry>Adds
- a line from (x1,y1) to (x2,y2) in the root level of the document</entry>
- </row>
- <row>
- <entry><code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
- role="identifier">line</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase>&nbsp;<phrase role="identifier">x1</phrase><phrase
- role="special">,</phrase>&nbsp;<phrase role="keyword">double</phrase>&nbsp;<phrase
- role="identifier">y1</phrase><phrase role="special">,</phrase>&nbsp;<phrase
- role="keyword">double</phrase>&nbsp;<phrase role="identifier">x2</phrase><phrase
- role="special">,</phrase>&nbsp;<phrase role="keyword">double</phrase>&nbsp;<phrase
- role="identifier">y2</phrase><phrase role="special">,</phrase>&nbsp;<phrase
- role="identifier">g_element</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
- role="identifier">elem</phrase><phrase role="special">)</phrase></code></entry><entry>Adds
- a point at (x, y) at g_element <code><phrase role="identifier">elem</phrase></code></entry>
+ a line from (x1,y1) to (x2,y2) in the root level of the document</entry><entry></entry>
           </row>
           <row>
             <entry><code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
@@ -724,7 +762,7 @@
             role="identifier">string</phrase>&nbsp;<phrase role="identifier">text</phrase><phrase
             role="special">)</phrase></code></entry><entry>Adds text <code><phrase
             role="identifier">text</phrase></code> at (x,y) in the root level of
- the document</entry>
+ the document</entry><entry></entry>
           </row>
           <row>
             <entry><code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
@@ -736,20 +774,42 @@
             role="special">,</phrase>&nbsp;<phrase role="keyword">double</phrase>&nbsp;<phrase
             role="identifier">height</phrase><phrase role="special">)</phrase></code></entry><entry>Adds
             a rectangle at point (x1, y1) that has width <code><phrase role="identifier">width</phrase></code>
- and height <code><phrase role="identifier">height</phrase></code></entry>
+ and height <code><phrase role="identifier">height</phrase></code></entry><entry></entry>
           </row>
           <row>
             <entry><code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
- role="identifier">rect</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase>&nbsp;<phrase role="identifier">x1</phrase><phrase
- role="special">,</phrase>&nbsp;<phrase role="keyword">double</phrase>&nbsp;<phrase
- role="identifier">y1</phrase><phrase role="special">,</phrase>&nbsp;<phrase
- role="keyword">double</phrase>&nbsp;<phrase role="identifier">x2</phrase><phrase
- role="special">,</phrase>&nbsp;<phrase role="keyword">double</phrase>&nbsp;<phrase
- role="identifier">y2</phrase><phrase role="special">,</phrase>&nbsp;<phrase
- role="identifier">g_element</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
- role="identifier">elem</phrase><phrase role="special">)</phrase></code></entry><entry>Adds
- a point at (x, y) at g_element <code><phrase role="identifier">elem</phrase></code></entry>
+ role="identifier">clip_path</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase>&nbsp;<phrase role="identifier">rect_element</phrase><phrase
+ role="special">&amp;,</phrase>&nbsp;<phrase role="identifier">g_element</phrase><phrase
+ role="special">&amp;,</phrase>&nbsp;<phrase role="keyword">const</phrase>&nbsp;<phrase
+ role="identifier">std</phrase><phrase role="special">::</phrase><phrase
+ role="identifier">string</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
+ role="identifier">id</phrase><phrase role="special">)</phrase></code></entry><entry>Prevents
+ the g_element in the argument from drawing outside of the rectangle in
+ the argument. The string is provided to identify the clip.</entry><entry>Currently
+ unsupported</entry>
+ </row>
+ <row>
+ <entry><code><phrase role="identifier">g_element</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
+ role="identifier">add_g_element</phrase><phrase role="special">()</phrase></code></entry><entry>Adds
+ a g_element at the root of the document tree. Acts as a <code><phrase
+ role="identifier">push_back</phrase><phrase role="special">()</phrase></code></entry><entry>Returns
+ the <code><phrase role="identifier">g_element</phrase></code> that is
+ pushed back. This allows you to do something like the following: <code><phrase
+ role="identifier">image</phrase><phrase role="special">.</phrase><phrase
+ role="identifier">add_g_element</phrase><phrase role="special">().</phrase><phrase
+ role="identifier">line</phrase><phrase role="special">(/**/).</phrase><phrase
+ role="identifier">line</phrase><phrase role="special">(/**/).</phrase><phrase
+ role="identifier">rect</phrase><phrase role="special">(/**/);</phrase>&nbsp;</code>
+ Which adds two lines and a rectangle to the g_element that was just created.</entry>
+ </row>
+ <row>
+ <entry><code><phrase role="identifier">g_element</phrase><phrase role="special">&amp;</phrase>&nbsp;<phrase
+ role="identifier">get_g_element</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code></entry><entry>Gets
+ the g_element at the index specified</entry><entry>Gives a runtime error
+ if you specify an index that does not contain a <code><phrase role="identifier">g_element</phrase></code>.
+ This will be addressed</entry>
           </row>
         </tbody>
       </tgroup>


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk