[pstricks] Re: PSTricks Linienfüllung

Herbert Voss Herbert.Voss at gmx.net
Sun Aug 28 10:24:44 CEST 2005


Klaus Boer wrote:

> 1) wie kann ich z. B. ein Rechteck mit Linien füllen, deren Abstände 
> inkrementel steigen und
> 2) wie kann ich z. B. ein Rechteck mit Linien füllen, deren strichstärke 
> inkrementel wächst, die Abstände aber gleich bleiben??

\listfiles
\documentclass[12pt]{article}
\usepackage{pstricks}

\makeatletter
\def\pst at ilinefill{%
   \psk at hatchangle rotate
   \psk at hatchwidth SLW
   \pst at usecolor\pshatchcolor
   \psk at hatchsep \tx at ILineFill}
\def\psfs at ilines{\pst at fill\pst at ilinefill}
\@namedef{psfs at ilines*}{\psfs at solid \psfs at ilines}
%
\def\psset at hatchinc#1{\pst at getlength{#1}\psk at hatchinc}
\psset at hatchinc{0}
\def\psset at hatchlineinc#1{\pst at getlength{#1}\psk at hatchlineinc}
\psset at hatchlineinc{0}
%
\pst at def{ILineFill}<
   gsave abs CLW add /a ED a 0 dtransform round exch round exch
   2 copy idtransform exch Atan rotate idtransform pop /a ED .25 .25
   itransform pathbbox /y2 ED a Div ceiling cvi /x2 ED /y1 ED a
   Div cvi /x1 ED /y2 y2 y1 sub def clip newpath 2 setlinecap systemdict
   /setstrokeadjust known { true setstrokeadjust } if
   x2 x1 sub 1 add {
     x1 a mul y1 moveto 0 y2 rlineto stroke
     /x1 x1 1 add \psk at hatchlineinc\space 0 gt {CLW add}if def
     /a a \psk at hatchinc\space add def
     CLW \psk at hatchlineinc\space add SLW
   } repeat
   grestore pop pop >
\makeatother

\begin{document}
\begin{pspicture}(10,3)
   \psframe[fillstyle=ilines,hatchangle=0,hatchsep=.5pt,%
      hatchwidth=1pt,hatchlineinc=0.25pt](10,3)
\end{pspicture}

\begin{pspicture}(10,3)
   \psframe[fillstyle=ilines,hatchangle=0,%
      hatchwidth=1pt,hatchsep=0.5pt,hatchinc=0.1pt](10,3)
\end{pspicture}

\begin{pspicture}(10,3)
   \psframe[fillstyle=ilines,hatchangle=0,hatchsep=0.6pt,%
      hatchwidth=1pt,hatchlineinc=0.3pt,hatchangle=60,
      hatchcolor=red](10,3)
\end{pspicture}

\begin{pspicture}(10,3)
   \psframe[fillstyle=ilines,hatchangle=0,hatchangle=-60,%
      hatchwidth=1pt,hatchsep=0.5pt,hatchinc=0.1pt,
      hatchcolor=blue](10,3)
\end{pspicture}

\end{document}


Herbert



-- 
http://TeXnik.de/
http://PSTricks.tug.org/
ftp://ftp.dante.de/tex-archive/info/math/voss/mathmode/Mathmode.pdf
http://www.dante.de/faq/de-tex-faq/
http://www.tex.ac.uk/cgi-bin/texfaq2html?introduction=yes




More information about the PSTricks mailing list