summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2007-09-21 22:30:13 +0000
committerKarl Berry <karl@freefriends.org>2007-09-21 22:30:13 +0000
commitcb523ca4f4715c0ee6f2db3d67ad4a1542ea98c0 (patch)
treeacc9fbf100ac777db99e5defbc528165bb63db34 /Master
parentc5c5c60739865ca9075df66d33c5a4cdf183d6d0 (diff)
new package hexgame (20sep07)
git-svn-id: svn://tug.org/texlive/trunk@4994 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/latex/hexgame/README5
-rw-r--r--Master/texmf-dist/doc/latex/hexgame/hexgame.pdfbin0 -> 33071 bytes
-rw-r--r--Master/texmf-dist/doc/latex/hexgame/hexgame.tex98
-rw-r--r--Master/texmf-dist/tex/latex/hexgame/hexgame.sty97
-rw-r--r--Master/tlpkg/tlpsrc/collection-games.tlpsrc1
-rw-r--r--Master/tlpkg/tlpsrc/hexgame.tlpsrc2
6 files changed, 203 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/hexgame/README b/Master/texmf-dist/doc/latex/hexgame/README
new file mode 100644
index 00000000000..22fa8163f2e
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/hexgame/README
@@ -0,0 +1,5 @@
+Hex is a mathematical game invented by the Danish mathematician Piet Hein
+and independently by the mathematician John Nash. This package defines a new
+environment that enables the user to draw such a game in a trivial way.
+
+This package is under the LaTeX Project Public License version 1.2 or later. \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/hexgame/hexgame.pdf b/Master/texmf-dist/doc/latex/hexgame/hexgame.pdf
new file mode 100644
index 00000000000..b471541a375
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/hexgame/hexgame.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/hexgame/hexgame.tex b/Master/texmf-dist/doc/latex/hexgame/hexgame.tex
new file mode 100644
index 00000000000..3e2088abf9d
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/hexgame/hexgame.tex
@@ -0,0 +1,98 @@
+\documentclass{article}
+%
+% Use the following packages ------------
+\usepackage{hexgame}
+% Paper definitions ---------------------
+\setlength\paperheight {297mm}%
+\setlength\paperwidth {210mm}%
+\setlength\textwidth {165mm}%
+\setlength\evensidemargin {-4mm}%
+\setlength\oddsidemargin {-4mm}%
+\setlength\topmargin {-12mm}%
+\setlength\headheight {6mm}%
+\setlength\headsep {4mm}%
+\setlength\textheight {254mm}
+\setlength\parindent {0mm}
+\setlength\parskip {\baselineskip}
+\setlength\unitlength {1mm}
+\pagestyle{empty}
+\begin{document}
+\begin{center}
+ \textbf{\Huge hexgame.sty}
+
+ Meron Brouwer \\
+ (meron.brouwer@gmail.com)\\
+ \today
+\end{center}
+
+\section{Introduction}
+Hex is a mathematical game invented by the Danish mathematician Piet Hein and independently by the mathematician John Nash. This package defines a new
+environment that enables the user to draw such a game in a trivial way.
+
+\section{Usage}
+The package defines a new environment and two new commands. The environment is used to draw the board, the commands are used to color the hexagons or label them.
+
+ \begin{minipage}{80mm}
+ \verb+\begin{hexgame}{5}+ \\
+ \verb+ \colorhex{2}{playerone}+ \\
+ \verb+ \colorhex{4}{playertwo}+ \\
+ \verb+ \colorhex{6}{playertwo}+ \\
+ \verb+ \colorhex{25}{playerone}+ \\
+ \verb+ \labelhex{23}{37}+\\
+ \verb+\end{hexgame}+
+ \end{minipage}
+ \begin{minipage}{85mm}
+ \begin{hexgame}{5}
+ \colorhex{2}{playerone}
+ \colorhex{4}{playertwo}
+ \colorhex{6}{playertwo}
+ \colorhex{25}{playerone}
+ \labelhex{23}{37}
+ \end{hexgame}
+ \end{minipage}
+
+The hexagons are numbered from $1$ to $n^2$, starting at the bottom one. The argument after \verb+\begin{hexgame}+ gives $n$. When coloring a hexagon, the first argument gives which hexagon needs to be colored, the second argument defines the player that colored the hexagon. When labeling, the second argument will be printed in the hexagon.
+
+\section{Variables to set}
+Although everything is already defined the following variables can be reset by the user
+
+\begin{itemize}
+ \item \verb+ \setlength\hexgameboxwidth{0.45\textwidth}+ \\
+ This length gives the width the hexgame. All games are scaled to this width.
+ \item \verb+ \definecolor{playerone}{rgb}{0,0, .8}+ \\
+ playerone is a color, in this case set to blue. Use the same if you would like
+ this player to be a different color. See the pstricks manual for more information.
+ \item \verb+ \definecolor{playertwo}{rgb}{0.8,0,0}+ \\
+ Same as playerone.
+\end{itemize}
+
+\begin{center}
+\begin{hexgame}{3}
+ \colorhex{2}{playerone}
+ \colorhex{4}{playerone}
+ \colorhex{6}{playertwo}
+ \colorhex{9}{playertwo}
+ \labelhex{8}{6}
+ \labelhex{9}{7}
+\end{hexgame}
+\begin{hexgame}{16}
+ \colorhex{2}{playerone}
+ \colorhex{4}{playerone}
+ \colorhex{6}{playerone}
+ \colorhex{3}{playertwo}
+ \colorhex{12}{playertwo}
+ \colorhex{11}{playertwo}
+ \colorhex{23}{playertwo}
+ \colorhex{41}{playertwo}
+ \colorhex{19}{playertwo}
+ \colorhex{51}{playertwo}
+ \labelhex{51}{4}
+\end{hexgame}
+\end{center}
+\end{document}
+
+
+
+
+
+
diff --git a/Master/texmf-dist/tex/latex/hexgame/hexgame.sty b/Master/texmf-dist/tex/latex/hexgame/hexgame.sty
new file mode 100644
index 00000000000..97a7d71e5d4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/hexgame/hexgame.sty
@@ -0,0 +1,97 @@
+%%
+%% This is file `hexgame.sty',
+%%
+%% --------------------------------------------------------------------------
+%%
+%% This file may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.2
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% File: hexgame.sty Copyright (C) 2006 Meron Brouwer (meron.brouwer@gmail.com)
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{hexgame}
+ [2006/08/01 v1.0 `hexgame' package]
+\RequirePackage{pstcol}
+\RequirePackage{pst-poly}
+\RequirePackage{calc}
+\RequirePackage{ifthen}
+\newlength\halfhexheight
+\setlength\halfhexheight{0.866025404cm}
+\newlength\halfhexwidth
+\setlength\halfhexwidth{1cm}
+\newlength\hexgameboxwidth
+\setlength\hexgameboxwidth{0.45\textwidth}
+\newlength\hexgameheight
+\newlength\halfhexgameheight
+\newlength\hexgamewidth
+\newlength\halfhexgamewidth
+\newlength\startpointx
+\newlength\startpointy
+\newsavebox\hexgamebox
+\definecolor{playerone}{rgb}{0,0, .8}
+\definecolor{playertwo}{rgb}{0.8,0,0}
+\newcounter{hexboardsize}
+\newenvironment{hexgame}[1]
+ {\psset{unit=1cm,PstPicture=false}
+ \setcounter{hexboardsize}{#1}
+ \setlength\hexgamewidth{(#1\halfhexwidth*2)+(#1\halfhexwidth)+(\halfhexwidth)}
+ \setlength\hexgameheight{(#1\halfhexheight*2)+(\halfhexheight)}
+ \setlength\halfhexgameheight{0.5\hexgameheight}
+ \setlength\halfhexgamewidth{0.5\hexgamewidth}
+ \setlength\startpointx{0.5\hexgamewidth}
+ \setlength\startpointy{1.5\halfhexheight}
+ \begin{lrbox}{\hexgamebox}
+ \begin{pspicture}(\the\hexgamewidth,\the\hexgameheight)%
+ \psframe[fillstyle=solid,fillcolor=playerone,linewidth=0.8pt](0,0)(\the\halfhexgamewidth,\the\halfhexgameheight)
+ \psframe[fillstyle=solid,fillcolor=playerone,linewidth=0.8pt](\the\halfhexgamewidth,\the\halfhexgameheight)(\the\hexgamewidth,\the\hexgameheight)
+ \psframe[fillstyle=solid,fillcolor=playertwo,linewidth=0.8pt](0,\the\hexgameheight)(\the\halfhexgamewidth,\the\halfhexgameheight)
+ \psframe[fillstyle=solid,fillcolor=playertwo,linewidth=0.8pt](\the\halfhexgamewidth,\the\halfhexgameheight)(\the\hexgamewidth,0)
+ \psdiamond(\the\halfhexgamewidth,\the\halfhexgameheight)(\the\halfhexgamewidth,\the\halfhexgameheight)
+ \multirput(\the\startpointx,\the\startpointy)(1.5cm,\halfhexheight){#1}{
+ \multirput(0,0)(-1.5cm,\halfhexheight){#1}{\PstHexagon[linewidth=0.5pt,unit=1cm,fillstyle=solid,fillcolor=white]}}}
+ {\end{pspicture}
+ \end{lrbox}
+ \psscaleboxto(\the\hexgameboxwidth,0){\usebox{\hexgamebox}}}
+\newlength\refpointx
+\newlength\refpointy
+\newlength\nexthexx
+\newlength\nexthexy
+\newcounter{stepcounter}
+\newcounter{modulocounter}
+\newcounter{squaredboardsize}
+\newcommand\colorhex[2]{\setcounter{stepcounter}{\value{hexboardsize}}
+ \setcounter{modulocounter}{#1}
+ \setcounter{squaredboardsize}{\value{hexboardsize}*\value{hexboardsize}}
+ \ifthenelse{#1>\value{squaredboardsize}}{\PackageWarning{hexgame}{Number to big}}{
+ \setlength\refpointx{\startpointx}
+ \addtolength{\refpointx}{0.5mm}
+ \setlength\refpointy{\startpointy}
+ \whiledo{\value{stepcounter}<#1}{\addtocounter{stepcounter}{\value{hexboardsize}}
+ \addtolength{\refpointx}{-1.5\halfhexwidth}
+ \addtolength{\refpointy}{\halfhexheight}
+ \addtocounter{modulocounter}{-\value{hexboardsize}}}
+ \setlength\nexthexx{(\refpointx)+1.5\halfhexwidth*((\value{modulocounter})-1)}
+ \setlength\nexthexy{(\refpointy)+\halfhexheight*((\value{modulocounter})-1)}
+ \rput(\the\nexthexx,\the\nexthexy){\PstHexagon[linewidth=0.5pt,unit=1cm,fillstyle=solid,fillcolor=#2]}}}
+\newcommand\labelhex[2]{\setcounter{stepcounter}{\value{hexboardsize}}
+ \setcounter{modulocounter}{#1}
+ \setcounter{squaredboardsize}{\value{hexboardsize}*\value{hexboardsize}}
+ \ifthenelse{#1>\value{squaredboardsize}}{\PackageWarning{hexgame}{Number to big}}{
+ \setlength\refpointx{\startpointx}
+ \addtolength{\refpointx}{0.5mm}
+ \setlength\refpointy{\startpointy}
+ \whiledo{\value{stepcounter}<#1}{\addtocounter{stepcounter}{\value{hexboardsize}}
+ \addtolength{\refpointx}{-1.5\halfhexwidth}
+ \addtolength{\refpointy}{\halfhexheight}
+ \addtocounter{modulocounter}{-\value{hexboardsize}}}
+ \setlength\nexthexx{(\refpointx)+1.5\halfhexwidth*((\value{modulocounter})-1)}
+ \setlength\nexthexy{(\refpointy)+\halfhexheight*((\value{modulocounter})-1)}
+ \rput(\the\nexthexx,\the\nexthexy){\textbf{\large #2}}}}
+%%
+%% End of file `hexgame.sty'.
+
+
diff --git a/Master/tlpkg/tlpsrc/collection-games.tlpsrc b/Master/tlpkg/tlpsrc/collection-games.tlpsrc
index 24908b89d04..d9279fe2cdf 100644
--- a/Master/tlpkg/tlpsrc/collection-games.tlpsrc
+++ b/Master/tlpkg/tlpsrc/collection-games.tlpsrc
@@ -9,6 +9,7 @@ depend Package/cheq
depend Package/chess
depend Package/egameps
depend Package/go
+depend Package/hexgame
depend Package/jeopardy
depend Package/othello
depend Package/psgo
diff --git a/Master/tlpkg/tlpsrc/hexgame.tlpsrc b/Master/tlpkg/tlpsrc/hexgame.tlpsrc
new file mode 100644
index 00000000000..93ceb8bf8f0
--- /dev/null
+++ b/Master/tlpkg/tlpsrc/hexgame.tlpsrc
@@ -0,0 +1,2 @@
+name hexgame
+category Package