X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=lib%2FLaTeX%2FTikZ.pm;h=1d2306c6fd1ca92046997369a7dd62db4c390137;hb=95aada0ec5b3c5a0d78ed0ad53436b0e70860bc7;hp=c425f296e94f1e7f017684f38fade652b077b773;hpb=d8d667d1c5266bff861df78c252c92d1504be92c;p=perl%2Fmodules%2FLaTeX-TikZ.git diff --git a/lib/LaTeX/TikZ.pm b/lib/LaTeX/TikZ.pm index c425f29..1d2306c 100644 --- a/lib/LaTeX/TikZ.pm +++ b/lib/LaTeX/TikZ.pm @@ -9,11 +9,11 @@ LaTeX::TikZ - Perl object model for generating PGF/TikZ code. =head1 VERSION -Version 0.01 +Version 0.02 =cut -our $VERSION = '0.01'; +our $VERSION = '0.02'; =head1 SYNOPSIS @@ -53,20 +53,20 @@ It allows you to build structures representing geometrical figures, apply a wide =head1 CONCEPTS -Traditionally, in TikZ, there are two ways of grouping elements, or I, together : +Traditionally, in TikZ, there are two ways of grouping paths together : =over 4 =item * -either as a I, where each element is drawn in its own line : +either as a I, where each path is drawn in its own line : \draw (0cm,0cm) -- (0cm,1cm) ; \draw (0cm,0cm) -- (1cm,0cm) ; =item * -or as a I, where elements are all drawn as one line : +or as an I, where paths are all drawn as one line : \draw (0cm,0cm) -- (0cm,1cm) (0cm,0cm) -- (1cm,0cm) ; @@ -74,7 +74,7 @@ or as a I, where elements are all drawn as one line : This distinction is important because there are some primitives that only apply to paths but not to sequences, and vice versa. -Figures are made of ops, path or sequence I assembled together in a tree. +Figures are made of path or sequence I assembled together in a tree. I can be applied onto any set to alter the way in which it is generated. The two TikZ concepts of I and I have been unified with the modifiers. @@ -83,12 +83,12 @@ The two TikZ concepts of I and I have been unified with the modif =head2 Containers -=head3 C<< Tikz->path(@ops) >> +=head3 C<< Tikz->union(@seq) >> -Creates a L object out of the ops C<@ops>. +Creates a L object out of the paths C<@kids>. # A path made of two circles - Tikz->path( + Tikz->union( Tikz->circle(0, 1), Tikz->circle(1, 1), ) @@ -97,9 +97,26 @@ Creates a L object out of the ops C<@ops>. 'even odd rule', ); +=head3 C<< Tikz->join($connector, @kids) >> + +Creates a L object that joins the paths C<@kinds> with the given C<$connector> which can be, according to L, a string, an array reference or a code reference. + + # A stair + Tikz->join('-|', map [ $_, $_ ], 0 .. 5); + +=head3 C<< Tikz->chain($kid0, $link0, $kid1, $link1, ... $kidn) >> + +Creates a L object that chains C<$kid0> to C<$kid1> with the string C<$link0>, C<$kid1> to C<$kid2> with C<$link1>, and so on. + + # An heart-like shape + Tikz->chain([ 0, 1 ] + => '.. controls (-1, 1.5) and (-0.75, 0.25) ..' => [ 0, 0 ] + => '.. controls (0.75, 0.25) and (1, 1.5) ..' => [ 0, 1 ] + ); + =head3 C<< Tikz->seq(@kids) >> -Creates a L object out of the sequences, paths or ops C<@kids>. +Creates a L object out of the sequences or paths C<@kids>. my $bag = Tikz->seq($sequence, $path, $circle, $raw, $point); @@ -260,7 +277,7 @@ Creates a L object that sets the line width to C<$line_ =head3 C<< Tikz->color($color) >> -Creates a Lobject that sets the line color to C<$color> (given in the C syntax). +Creates a L object that sets the line color to C<$color> (given in the C syntax). # Paint the previous $thick_arrow in red. $thick_arrow->mod(Tikz->color('red')); @@ -358,7 +375,7 @@ sub import { =head1 DEPENDENCIES -L with L 0.63 or greater. +L with L 0.80 or greater. L.