summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/blox
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2014-08-20 20:01:43 +0000
committerKarl Berry <karl@freefriends.org>2014-08-20 20:01:43 +0000
commit10c3673a8a4e6bf901bc7aac6d2d021de03472fe (patch)
tree1ddde6298b3fb1ddd07f8c73157f098eea5037e6 /Master/texmf-dist/tex/latex/blox
parent5e4c051df1c07e3c4e68bee6df046cbadb36acff (diff)
blox (20aug14)
git-svn-id: svn://tug.org/texlive/trunk@34992 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/blox')
-rw-r--r--Master/texmf-dist/tex/latex/blox/bloX.sty247
1 files changed, 247 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/blox/bloX.sty b/Master/texmf-dist/tex/latex/blox/bloX.sty
new file mode 100644
index 00000000000..e5d17208eb6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/blox/bloX.sty
@@ -0,0 +1,247 @@
+%%
+%% This is file `bloX.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% bloX.dtx (with options: `package')
+%% This is a generated file.
+%% Copyright (C) 2014 by Ben Reish
+%% This file may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3 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.3 or later is part of all distributions of
+%% LaTeX version 1999/12/01 or later.
+\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+\ProvidesPackage{bloX}%
+[2014/08/18 v2.4 Just an English translation of schemabloc]
+
+
+
+
+
+
+\typeout{* }
+\typeout{bloX: Just an English translation of schemabloc package.}
+\typeout{bloX Copyright (C) 2014 Ben Reish}
+\typeout{* }
+\typeout{This program comes with ABSOLUTELY NO WARRANTY.}
+\typeout{This is free software, and you are welcome to redistribute it}
+\typeout{under certain conditions.}
+\typeout{* }
+\RequirePackage{ifthen}
+\RequirePackage{tikz}
+\RequirePackage{pgffor}
+\usetikzlibrary{shapes,arrows}
+\tikzstyle{bXLineStyle}=[->,>=latex',]
+\tikzstyle{bXStyleBloc}=[draw, rectangle,]
+\tikzstyle{bXStyleBlocPotato}=[]
+\tikzstyle{bXStyleSum}=[draw, circle,]%style Sum CC
+\tikzstyle{bXLabelStyle}=[]
+\newcommand{\bXDefaultLineStyle}{
+\tikzstyle{bXLineStyle}=[->,>=latex']
+}
+\newcommand{\bXLineStyle}[1]{
+\tikzstyle{bXLineStyle}+=[#1]
+}
+\newcommand{\bXStyleBloc}[1]{
+\tikzstyle{bXStyleBloc}+=[#1]
+}
+\newcommand{\bXStyleBlocDefault}{
+\tikzstyle{bXStyleBloc}=[draw, rectangle,]
+}
+\newcommand{\bXStylePotato}[1]{
+\tikzstyle{bXStyleBlocPotato}+=[#1]
+}
+\newcommand{\bXStylePotatoDefault}{
+\tikzstyle{bXStyleBlocPotato}=[draw, cloud, cloud puffs=5,]
+}
+\newcommand{\bXStyleSum}[1]{
+\tikzstyle{bXStyleSum}+=[#1]
+}
+\newcommand{\bXStyleSumDefault}{
+\tikzstyle{bXStyleSum}=[draw, circle,]
+}
+\newcommand{\bXLabelStyle}[1]{
+\tikzstyle{bXLabelStyle}+=[#1]
+}
+\newcommand{\bXLabelStyleDefault}{
+\tikzstyle{bXLabelStyle}=[font=\normalfont,]
+}
+\newcommand{\bXInput}{%
+ \@ifnextchar[{\@bXInputi}{\@bXInputii}
+}
+\newcommand{\@bXInputi}[2][]{%
+ \node [coordinate,name=#2,bXLabelStyle] {#1};
+ \bXBranchx[0]{#2}{#2};
+ \draw (0,0) node [anchor=east,name=#2label,] {#1};
+}
+\newcommand{\@bXInputii}[1]{%
+ \node [coordinate,name=#1] { };
+ \bXBranchx[0]{#1}{#1};
+}
+\newcommand{\bXOutput}[3][2]{
+ \node [coordinate, right of=#3right,
+ node distance=#1em, minimum size=0em,right] (#2) {};
+}
+\newcommand{\bXBloc}[4][2]{
+\node [draw, rectangle,
+ minimum height=3em, minimum width=3em, right of = #4right,
+node distance=#1em,bXStyleBloc,right] (#2) {#3};
+\node (#2right) at (#2.east){};
+\node (Blocrightend) at (#2.east){};
+}
+\newcommand{\bXBlocr}[4][2]{
+\node [
+ minimum height=3em, minimum width=3em, left of = #4left,
+node distance=#1em, bXStyleBloc,left] (#2) {#3};
+\node (#2left) at (#2.west){};
+}
+\newcommand{\bXBlocL}[4][2]{
+\node [draw, rectangle,
+ minimum height=3em, minimum width=3em,
+ right of = #4right,node distance=#1em,bXStyleBloc,right] (#2) {#3};
+\node (#2right) at (#2.east){};
+\node (Blocrightend) at (#2.east){};
+ \draw [bXLineStyle,auto] (#4) -- node[name=#4-#2] {} (#2);
+}
+\newcommand{\bXBlocrL}[4][2]{
+\node [draw, rectangle,
+ minimum height=3em, minimum width=3em, left of = #4left,
+node distance=#1em, bXStyleBloc,left] (#2) {#3};
+\node (#2left) at (#2.west){};
+\node (Blocleftend) at (#2.west){};
+ \draw [bXLineStyle,auto] (#4) -- node[name=#4-#2] {} (#2);
+}
+
+\newcommand{\bXBlocPotato}[4][2]{
+\node [draw, cloud, cloud puffs=5, draw,
+ minimum height=3em, minimum width=5em, right of = #4right,
+node distance=#1em,bXStyleBlocPotato,right] (#2) {#3};
+\node (#2right) at (#2.east){};
+}
+\newcommand{\bXonlyOneBloc}[4][1.5]{
+\bXInput{E1}
+\bXBloc[#1]{B1}{#3}{E1}
+\bXOutput[#1]{S1}{B1}
+\bXLink{E1}{B1}{#2}
+\bXLink{B1}{S1}{#4}
+}
+\newcommand{\bXLink}[3][]{
+ \draw [bXLineStyle,auto] (#2) -- node[name=#2-#3] {#1} (#3);
+}
+\newcommand{\bXLinkyx}[2]{
+\draw [bXLineStyle] (#1.south) |- (#2) ;
+}
+\newcommand{\bXLinkxy}[3][]{
+\draw [bXLineStyle] (#2) -|
+ node[name=#2-#3,near end,right] {#1} (#3) ;
+}
+\newcommand{\bXReturn}[4][4]{
+\node [below of=#2, node distance=#1em,
+ minimum size=0em](return#2) {};
+\draw [bXLineStyle] (#2.south)--(return#2.south)
+-| node[name=#2-#3,near end,right] {#4} (#3) ;
+}
+\newcommand{\bXLinkName}[3][0.4]{
+\node[above of=#2, node distance=#1em, bXLabelStyle] (#2name) at (#2) {#3};
+}
+\newcommand*{\bXCompSum}{\@ifstar\bX@CompSumNorm\bX@CompSumOnly}
+\newcommand{\bX@CompSumOnly}[7][4]{
+ \node [draw, circle,minimum size=2em,
+right of=#3,node distance=#1em] (#2) {};
+ \node [draw, cross out,minimum size=1.414em,
+right of=#3,node distance=#1em] {};
+ \node [above of=#2,node distance=0.6em] {$#4$};
+ \node [below of=#2,node distance=0.6em] {$#5$};
+ \node [left of=#2,node distance=0.6em] {$#6$};
+ \node [right of=#2,node distance=0.6em] {$#7$};
+\node (#2right) at (#2.east){};
+\node (#2left) at (#2.west){};
+}
+\newcommand{\bX@CompSumNorm}[7][4]{
+ \node [draw, circle,minimum size=1.5em,
+right of=#3,node distance=#1em,
+label=85:$#4$,label=-85:$#5$,label=175:$#6$,
+label=5:$#7$,bXStyleSum] (#2) {};
+\node (#2right) at (#2.east){};
+\node (#2left) at (#2.west){};
+}
+\newcommand*{\bXComp}{\@ifstar\bX@CompNorm\bX@CompOnly}
+\newcommand{\bX@CompOnly}[3][4]{
+\bXCompSum[#1]{#2}{#3}{}{-}{+}{}
+}
+\newcommand{\bX@CompNorm}[3][4]{
+\bXCompSum*[#1]{#2}{#3}{}{-}{+}{}
+}
+\newcommand*{\bXCompa}{\@ifstar\bX@CompaNorm\bX@CompaOnly}
+\newcommand{\bX@CompaOnly}[3][4]{
+\bXCompSum[#1]{#2}{#3}{-}{}{+}{}
+}
+\newcommand{\bX@CompaNorm}[3][4]{
+\bXCompSum*[#1]{#2}{#3}{-}{}{+}{}
+}
+\newcommand*{\bXSuma}{\@ifstar\bX@SumaNorm\bX@SumaOnly}
+\newcommand{\bX@SumaOnly}[3][4]{
+\bXCompSum[#1]{#2}{#3}{+}{}{+}{}
+}
+\newcommand{\bX@SumaNorm}[3][4]{
+\bXCompSum*[#1]{#2}{#3}{+}{}{+}{}
+}
+\newcommand*{\bXSumb}{\@ifstar\bX@SumbNorm\bX@SumbOnly}
+\newcommand{\bX@SumbOnly}[3][4]{
+\bXCompSum[#1]{#2}{#3}{}{+}{+}{}
+}
+\newcommand{\bX@SumbNorm}[3][4]{
+\bXCompSum*[#1]{#2}{#3}{}{+}{+}{}
+}
+\newcommand{\bXSum}[6][4]{
+ \node [draw, circle,minimum size=1.5em,
+right of=#3,node distance=#1em,
+label=175:$#4$,label=-85:$#5$,
+label=85:$#6$,bXStyleSum] (#2) {};
+\node (#2right) at (#2.east){};
+\node (#2left) at (#2.west){};
+}
+\newcommand{\bXBranchy}[3][5]{
+\node [below of=#2, node distance=#1em, minimum size=0em](#3) {};
+\node (#3right) at (#3){};
+\node (#3left) at (#3){};
+}
+\newcommand{\bXNodeShifty}[3][5]{
+ \bXBranchy[#1]{#2}{#3}
+}
+\newcommand{\bXBranchx}[3][5]{
+\node [right of=#2, node distance=#1em, minimum size=0em](#3) {};
+\node (#3right) at (#3){};
+\node (#3left) at (#3){};
+}
+\newcommand{\bXNodeShiftx}[3][5]{
+ \bXBranchx[#1]{#2}{#3}
+}
+\newcommand{\bXChain}[3][4]{
+ \def\lastx{#2}%
+ \foreach \x / \y in {#3}%
+ {\bXBlocL[#1]{\x}{\y}{\lastx} %
+ \typeout{\x, \y, \lastx}%
+ \global\let\lastx\x}
+}
+\newcommand{\bXChainReturn}[3][4]{
+ \def\lastx{#2}%
+ \foreach \x / \y in {#3}%
+ {\bXBlocrL[#1]{\x}{\y}{\lastx} %
+ \typeout{\x, \y, \lastx}%
+ \global\let\lastx\x}
+}
+\newcommand{\bXLoop}[3][4]{
+\bXComp[#1]{Comp#2}{#2}\bXLink{#2}{Comp#2}
+\bXChain[#1]{Comp#2}{#3}
+\draw [bXLineStyle,auto,-] (Blocrightend.base) --++
+ (1em,0)coordinate[name=EndofChain];
+\bXReturn{EndofChain}{Comp#2}{}
+}
+\endinput
+%%
+%% End of file `bloX.sty'.