our $VERSION = '0.01';
-use LaTeX::TikZ::API;
+=head1 SYNOPSIS
+
+ use LaTeX::TikZ;
+
+ # A couple of lines
+ my $hline = Tikz->line(-1 => 1);
+ my $vline = Tikz->line([ 0, -1 ] => [ 0, -1 ]);
+
+ # Paint them in red
+ $_->mod(Tikz->color('red')) for $hline, $vline;
+
+ # An octogon
+ use Math::Complex;
+ my $octo = Tikz->closed_polyline(
+ map Math::Complex->emake(1, ($_ * pi)/4), 0 .. 7
+ );
+
+ # Only keep a portion of it
+ $octo->clip(Tikz->rectangle(-0.5*(1+i), 2*(1+i)));
+
+ # Fill it with dots
+ $octo->mod(Tikz->pattern(class => 'Dots'));
+
+ # Create a formatter object
+ my $tikz = Tikz->formatter;
+
+ # Put those objects all together and print them
+ my $seq = Tikz->seq($octo, $hline, $vline);
+ my ($head, $decl, $body) = $tikz->render($seq);
+ print "$_\n" for map @$_, $head, $decl, $body;
+
+=head1 DESCRIPTION
+
+This module provides an object model for TikZ, a graphical tookit for LaTeX.
+It allows you to build structures representing geometrical figures, apply a wide set of modifiers on them, transform them globally with functors, and print them in the context of an existing TeX document.
+
+=cut
+
+use LaTeX::TikZ::Interface;
sub import {
shift;
}
my $pkg = caller;
- my $const = sub () { 'LaTeX::TikZ::API' };
+ my $const = sub () { 'LaTeX::TikZ::Interface' };
{
no strict 'refs';
*{$pkg . '::' . $name} = $const;
}
- LaTeX::TikZ::API->load;
+ LaTeX::TikZ::Interface->load;
return;
}
+=head1 SEE ALSO
+
+PGF/TikZ - L<http://pgf.sourceforge.net>.
+
=head1 AUTHOR
Vincent Pit, C<< <perl at profvince.com> >>, L<http://www.profvince.com>.