diff options
Diffstat (limited to 'src/hex-paper.ps')
-rw-r--r-- | src/hex-paper.ps | 190 |
1 files changed, 0 insertions, 190 deletions
diff --git a/src/hex-paper.ps b/src/hex-paper.ps deleted file mode 100644 index 4a117cc..0000000 --- a/src/hex-paper.ps +++ /dev/null @@ -1,190 +0,0 @@ -%!PS-Adobe-1.0 -%%Title: hex-paper - part of rpgTools by Elena of Valhalla -%%Pages:1 -%%BoundingBox: 0 0 596 842 -%%DocumentPaperSizes: a4 -%%CreationDate: 2004/10/04 -%%DocumentData: Clean7Bit -%%LanguageLevel: 1 -%%EndComments -%%BeginProlog -% Copyright (C) 2004 Elena Grandi -% All rights reserved. -% -% Redistribution and use in source and binary forms, with or without -% modification, are permitted provided that the following conditions are met: -% -% * Redistributions of source code must retain the above copyright -% notice, this list of conditions and the following disclaimer. -% * Redistributions in binary form must reproduce the above copyright -% notice, this list of conditions and the following disclaimer in the -% documentation and/or other materials provided with the distribution. -% * Neither the name of the <organization> nor the -% names of its contributors may be used to endorse or promote products -% derived from this software without specific prior written permission. -% -% THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -% AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -% IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -% ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY -% DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -% (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -% LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -% ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -% (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -% SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -% ------ Usage ---------------------------------------------------------------- - -% To use this file either send it to a postscript printer, or use your -% favourite postscript interpreter to visualize and print it. - -% You can customize the result by changing the values in the Settings -% section below (see the comments for details) - -% ------ sizes ---------------------------------------------------------------- -% This will allow you to give measurements in inches or millimiters -% do not change -/inch {72 mul} def -/mm {0.03937 inch mul} def - -% ------ Settings ------------------------------------------------------------- - -% ------ Basic settings - -/HexSide 24 mm def % lenght of hexagon side (or "radius") - -/LineSize 0.5 def % lines width -/LineColo { 0.5 0.5 0.5 } def % rgb triplet of line color -/FillColo { 1.0 1.0 1.0 } def % rgb triplet of hexagon color -/BackColo { 1.0 1.0 1.0 } def % rgb triplet of background color - -% page size: if you change this, you should change the BoundingBox -% in line 4 accordingly (you CAN'T use mm or inch over there) -% Default is A4 paper ( BoundingBox: 0 0 596 842 ) -/PageWidth 210 mm def -/PageHeight 297 mm def -% alternate page sizes (with BoundingBox values) may be -% A3 paper ( BoundingBox: 0 0 842 1192) -%/PageWidth 297 mm def -%/PageHeight 420 mm def -% Letter paper ( BoundingBox: 0 0 612 792) -%/PageWidth 8.5 inch def -%/PageHeight 11 inch def - -% white margins -/BorderTop 10 mm def -/BorderBottom 10 mm def -/BorderLeft 10 mm def -/BorderRight 10 mm def - -% ------ Advanced settings - -% spacing between consecutive hexes (hor and vert) -/HexSpaceX 0 def -/HexSpaceY 0 def -% uncomment the following line to have uniform spacing -%/HexSpaceY HexSpaceX 3 sqrt 0.5 mul mul def - -% translation of the starting point of the pattern -/PattTrasX 10 mm def -/PattTrasY 10 mm def - -% ------ Behaviour - -% Whether to print a line around the margins (1) or not (0) -/WillPrintBorder 1 def - -% From here on you shouldn't worry about changing or configuring anything -% ------ Variables ------------------------------------------------------------ - -% Spacing between hexagons -/HexSpacingX HexSide 3 sqrt mul HexSpaceX add def -/RowSpacingY HexSide 1.5 mul HexSpaceY add def -/ColSpacingX HexSide 3 sqrt 0.5 mul mul HexSpaceX 2 div add def - -% x y movements to get oblique sides -/HexSideX HexSide 3 sqrt 0.5 mul mul def -/HexSideY HexSide 2 div def - -% number of hexagons in a row and of rows in a page -/HexRowNum PageWidth HexSpacingX div 2 add def -/HexColNum PageHeight RowSpacingY div 2 add def - -% starting hexagon number in a row and row number in a page -/HexRowSta PattTrasX HexSpacingX div cvi neg 1 sub def -/HexColSta PattTrasY RowSpacingY div cvi neg 1 sub def - -% ending hexagon number in a row and row number in a page -/HexRowEnd HexRowSta HexRowNum add def -/HexColEnd HexColSta HexColNum add def - -% ------ Procedures ----------------------------------------------------------- - -% Describes the printable area (does NOT print anything) -/UsedArea { - newpath - BorderLeft BorderBottom moveto - BorderLeft PageHeight BorderTop sub lineto - PageWidth BorderRight sub PageHeight BorderTop sub lineto - PageWidth BorderRight sub BorderBottom lineto - closepath -} def - -% Prints an hexagon in the given position -% x y = cohordinates of bottom point of left side -/PrintHex { %stk: x y - newpath - moveto - 0 HexSide rlineto - HexSideX HexSideY rlineto - HexSideX HexSideY neg rlineto - 0 HexSide neg rlineto - HexSideX neg HexSideY neg rlineto - HexSideX neg HexSideY rlineto - closepath - gsave - FillColo setrgbcolor - fill - grestore - LineColo setrgbcolor - LineSize setlinewidth - stroke -} def - -% Prints a row in the given position -% x y = cohordinates of first hexagon in the row -/PrintRow { %stk: x y - /RowY exch def - /RowX exch def - HexRowSta 1 HexRowEnd { - HexSpacingX mul RowX add RowY PrintHex - } for -} def - -%%EndProlog -%%Page: 1 - -% set printing area -UsedArea clip - -% print background -BackColo setrgbcolor -UsedArea fill - -% print hex pattern -HexColSta 2 HexColEnd { - /rownum exch def - PattTrasX RowSpacingY rownum mul PattTrasY add PrintRow - PattTrasX ColSpacingX add RowSpacingY rownum mul PattTrasY add RowSpacingY add PrintRow -} for - -% print border (if WillPrintBorder is not 0 ) -WillPrintBorder 0 ne { - LineSize setlinewidth - LineColo setrgbcolor - UsedArea stroke -} if - -showpage -%%Trailer |