% Copyright 2006 by Till Tantau
%
% This file may be distributed and/or modified
%
% 1. under the LaTeX Project Public License and/or
% 2. under the GNU Public License.
%
% See the file doc/generic/pgf/licenses/LICENSE for more details.

\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/libraries/pgflibrarypatterns.code.tex,v 1.12 2008/01/15 10:27:34 tantau Exp $


% Lines in different directions

\pgfdeclarepatternformonly{horizontal lines}{\pgfpointorigin}{\pgfqpoint{100pt}{1pt}}{\pgfqpoint{100pt}{3pt}}%
{
  \pgfsetlinewidth{0.4pt}
  \pgfpathmoveto{\pgfqpoint{0pt}{0.5pt}}
  \pgfpathlineto{\pgfqpoint{100pt}{0.5pt}}
  \pgfusepath{stroke}
}

\pgfdeclarepatternformonly{vertical lines}{\pgfpointorigin}{\pgfqpoint{1pt}{100pt}}{\pgfqpoint{3pt}{100pt}}%
{
  \pgfsetlinewidth{0.4pt}
  \pgfpathmoveto{\pgfqpoint{0.5pt}{0pt}}
  \pgfpathlineto{\pgfqpoint{0.5pt}{100pt}}
  \pgfusepath{stroke}
}

\pgfdeclarepatternformonly{north east lines}{\pgfqpoint{-1pt}{-1pt}}{\pgfqpoint{4pt}{4pt}}{\pgfqpoint{3pt}{3pt}}%
{
  \pgfsetlinewidth{0.4pt}
  \pgfpathmoveto{\pgfqpoint{0pt}{0pt}}
  \pgfpathlineto{\pgfqpoint{3.1pt}{3.1pt}}
  \pgfusepath{stroke}
}

\pgfdeclarepatternformonly{north west lines}{\pgfqpoint{-1pt}{-1pt}}{\pgfqpoint{4pt}{4pt}}{\pgfqpoint{3pt}{3pt}}%
{
  \pgfsetlinewidth{0.4pt}
  \pgfpathmoveto{\pgfqpoint{0pt}{3pt}}
  \pgfpathlineto{\pgfqpoint{3.1pt}{-0.1pt}}
  \pgfusepath{stroke}
}

% Crossed lines in different directions

\pgfdeclarepatternformonly{grid}{\pgfqpoint{-1pt}{-1pt}}{\pgfqpoint{4pt}{4pt}}{\pgfqpoint{3pt}{3pt}}%
{
  \pgfsetlinewidth{0.4pt}
  \pgfpathmoveto{\pgfqpoint{0pt}{0pt}}
  \pgfpathlineto{\pgfqpoint{0pt}{3.1pt}}
  \pgfpathmoveto{\pgfqpoint{0pt}{0pt}}
  \pgfpathlineto{\pgfqpoint{3.1pt}{0pt}}
  \pgfusepath{stroke}
}

\pgfdeclarepatternformonly{crosshatch}{\pgfqpoint{-1pt}{-1pt}}{\pgfqpoint{4pt}{4pt}}{\pgfqpoint{3pt}{3pt}}%
{
  \pgfsetlinewidth{0.4pt}
  \pgfpathmoveto{\pgfqpoint{3.1pt}{0pt}}
  \pgfpathlineto{\pgfqpoint{0pt}{3.1pt}}
  \pgfpathmoveto{\pgfqpoint{0pt}{0pt}}
  \pgfpathlineto{\pgfqpoint{3.1pt}{3.1pt}}
  \pgfusepath{stroke}
}


% Dotted regions

\pgfdeclarepatternformonly{dots}{\pgfqpoint{-1pt}{-1pt}}{\pgfqpoint{1pt}{1pt}}{\pgfqpoint{3pt}{3pt}}%
{
  \pgfpathcircle{\pgfqpoint{0pt}{0pt}}{.5pt}
  \pgfusepath{fill}
}

\pgfdeclarepatternformonly{crosshatch dots}{\pgfqpoint{-1pt}{-1pt}}{\pgfqpoint{2.5pt}{2.5pt}}{\pgfqpoint{3pt}{3pt}}%
{
  \pgfpathcircle{\pgfqpoint{0pt}{0pt}}{.5pt}
  \pgfpathcircle{\pgfqpoint{1.5pt}{1.5pt}}{.5pt}
  \pgfusepath{fill}
}




% Star shaped patterns

\pgfdeclarepatternformonly{fivepointed stars}{\pgfpointorigin}{\pgfqpoint{3mm}{3mm}}{\pgfqpoint{3mm}{3mm}}%
{
  \pgftransformshift{\pgfqpoint{1mm}{1mm}}
  \pgfpathmoveto{\pgfqpointpolar{18}{1mm}}
  \pgfpathlineto{\pgfqpointpolar{162}{1mm}}
  \pgfpathlineto{\pgfqpointpolar{306}{1mm}}
  \pgfpathlineto{\pgfqpointpolar{90}{1mm}}
  \pgfpathlineto{\pgfqpointpolar{234}{1mm}}
  \pgfpathclose%
  \pgfusepath{fill}
}

\pgfdeclarepatternformonly{sixpointed stars}{\pgfpointorigin}{\pgfqpoint{3mm}{3mm}}{\pgfqpoint{3mm}{3mm}}%
{
  \pgftransformshift{\pgfqpoint{1mm}{1mm}}
  \pgfpathmoveto{\pgfqpointpolar{30}{1mm}}
  \pgfpathlineto{\pgfqpointpolar{150}{1mm}}
  \pgfpathlineto{\pgfqpointpolar{270}{1mm}}
  \pgfpathclose%
  \pgfpathmoveto{\pgfqpointpolar{-30}{1mm}}
  \pgfpathlineto{\pgfqpointpolar{-270}{1mm}}
  \pgfpathlineto{\pgfqpointpolar{-150}{1mm}}
  \pgfpathclose%
  \pgfsetnonzerorule
  \pgfusepath{fill}
}



% Bricks

\pgfdeclarepatternformonly{bricks}{\pgfqpoint{-1pt}{-1pt}}{\pgfqpoint{5mm}{5mm}}{\pgfqpoint{4mm}{4mm}}%
{
  \pgfsetlinewidth{0.8pt}
  \pgfpathmoveto{\pgfqpoint{0mm}{1mm}}
  \pgfpathlineto{\pgfqpoint{4mm}{1mm}}
  \pgfpathmoveto{\pgfqpoint{0mm}{3mm}}
  \pgfpathlineto{\pgfqpoint{4mm}{3mm}}
  \pgfpathmoveto{\pgfqpoint{1mm}{0mm}}
  \pgfpathlineto{\pgfqpoint{1mm}{1mm}}
  \pgfpathmoveto{\pgfqpoint{3mm}{1mm}}
  \pgfpathlineto{\pgfqpoint{3mm}{3mm}}
  \pgfpathmoveto{\pgfqpoint{1mm}{3mm}}
  \pgfpathlineto{\pgfqpoint{1mm}{4mm}}
  \pgfusepath{stroke}
}


% Checkerboards

\pgfdeclarepatternformonly{checkerboard}{\pgfpointorigin}{\pgfqpoint{4mm}{4mm}}{\pgfqpoint{4mm}{4mm}}%
{
  \pgfpathrectangle{\pgfpointorigin}{\pgfqpoint{2mm}{2mm}}
  \pgfpathrectangle{\pgfqpoint{2mm}{2mm}}{\pgfqpoint{2mm}{2mm}}
  \pgfusepath{fill}
}



% Backgrounds

\pgfdeclarepatterninherentlycolored{checkerboard light gray}
{\pgfpointorigin}{\pgfqpoint{4mm}{4mm}}{\pgfqpoint{4mm}{4mm}}%
{
  \pgfsetfillcolor{black!10}
  \pgfpathrectangle{\pgfpointorigin}{\pgfqpoint{4.1mm}{4.1mm}}% make
                                % slightly larger to ensure that tiles
                                % are really solid
  \pgfusepath{fill}
  \pgfsetfillcolor{black!20}
  \pgfpathrectangle{\pgfpointorigin}{\pgfqpoint{2mm}{2mm}}
  \pgfpathrectangle{\pgfqpoint{2mm}{2mm}}{\pgfqpoint{2mm}{2mm}}
  \pgfusepath{fill}
}

\pgfdeclarepatterninherentlycolored{horizontal lines light gray}
{\pgfpointorigin}{\pgfpoint{100pt}{4pt}}
{\pgfpoint{100pt}{4pt}}
{
  \pgfsetfillcolor{black!10}
  \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{100pt}{2.5pt}}
  \pgfusepath{fill}
  \pgfsetfillcolor{black!15}
  \pgfpathrectangle{\pgfpoint{0pt}{2pt}}{\pgfpoint{100pt}{2.5pt}}
  \pgfusepath{fill}
}

\pgfdeclarepatterninherentlycolored{horizontal lines gray}
{\pgfpointorigin}{\pgfpoint{100pt}{4pt}}
{\pgfpoint{100pt}{4pt}}
{
  \pgfsetfillcolor{black!30}
  \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{100pt}{2.5pt}}
  \pgfusepath{fill}
  \pgfsetfillcolor{black!35}
  \pgfpathrectangle{\pgfpoint{0pt}{2pt}}{\pgfpoint{100pt}{2.5pt}}
  \pgfusepath{fill}
}

\pgfdeclarepatterninherentlycolored{horizontal lines dark gray}
{\pgfpointorigin}{\pgfpoint{100pt}{4pt}}
{\pgfpoint{100pt}{4pt}}
{
  \pgfsetfillcolor{black!90}
  \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{100pt}{2.5pt}}
  \pgfusepath{fill}
  \pgfsetfillcolor{black!85}
  \pgfpathrectangle{\pgfpoint{0pt}{2pt}}{\pgfpoint{100pt}{2.5pt}}
  \pgfusepath{fill}
}

\pgfdeclarepatterninherentlycolored{horizontal lines light blue}
{\pgfpointorigin}{\pgfpoint{100pt}{4pt}}
{\pgfpoint{100pt}{4pt}}
{
  \pgfsetfillcolor{blue!10}
  \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{100pt}{2.5pt}}
  \pgfusepath{fill}
  \pgfsetfillcolor{blue!15}
  \pgfpathrectangle{\pgfpoint{0pt}{2pt}}{\pgfpoint{100pt}{2.5pt}}
  \pgfusepath{fill}
}

\pgfdeclarepatterninherentlycolored{horizontal lines dark blue}
{\pgfpointorigin}{\pgfpoint{100pt}{4pt}}
{\pgfpoint{100pt}{4pt}}
{
  \pgfsetfillcolor{blue!90}
  \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{100pt}{2.5pt}}
  \pgfusepath{fill}
  \pgfsetfillcolor{blue!85}
  \pgfpathrectangle{\pgfpoint{0pt}{2pt}}{\pgfpoint{100pt}{2.5pt}}
  \pgfusepath{fill}
}


\pgfdeclarepatterninherentlycolored{crosshatch dots gray}
{\pgfpointorigin}{\pgfpoint{8pt}{8pt}}
{\pgfpoint{8pt}{8pt}}
{
  \pgfsetfillcolor{black!20}
  \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{8pt}{8pt}}
  \pgfusepath{fill}
  \pgfsetfillcolor{black!10}
  \pgfpathcircle{\pgfpoint{2pt}{1.75pt}}{1pt}
  \pgfpathcircle{\pgfpoint{6pt}{5.75pt}}{1pt}
  \pgfusepath{fill}
  \pgfsetfillcolor{black!70}
  \pgfpathcircle{\pgfpoint{2pt}{2.25pt}}{1pt}
  \pgfpathcircle{\pgfpoint{6pt}{6.25pt}}{1pt}
  \pgfusepath{fill}
}

\pgfutil@definecolor{pgf@lightsteelblue}{rgb}{0.6875,0.765625,0.8671875}

\pgfdeclarepatterninherentlycolored{crosshatch dots light steel blue}
{\pgfpointorigin}{\pgfpoint{8pt}{8pt}}
{\pgfpoint{8pt}{8pt}}
{
  \pgfsetfillcolor{pgf@lightsteelblue}
  \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{8pt}{8pt}}
  \pgfusepath{fill}
  \pgfsetfillcolor{black!80!pgf@lightsteelblue!10}
  \pgfpathcircle{\pgfpoint{2pt}{1.75pt}}{1pt}
  \pgfpathcircle{\pgfpoint{6pt}{5.75pt}}{1pt}
  \pgfusepath{fill}
  \pgfsetfillcolor{black!80!pgf@lightsteelblue!70}
  \pgfpathcircle{\pgfpoint{2pt}{2.25pt}}{1pt}
  \pgfpathcircle{\pgfpoint{6pt}{6.25pt}}{1pt}
  \pgfusepath{fill}
}




\endinput
