texlive[46922] Master: adigraph (10mar18)

commits+karl at tug.org commits+karl at tug.org
Sun Mar 11 21:26:48 CET 2018


Revision: 46922
          http://tug.org/svn/texlive?view=revision&revision=46922
Author:   karl
Date:     2018-03-11 21:26:48 +0100 (Sun, 11 Mar 2018)
Log Message:
-----------
adigraph (10mar18)

Modified Paths:
--------------
    trunk/Master/texmf-dist/tex/latex/adigraph/adigraph.sty
    trunk/Master/tlpkg/libexec/ctan2tds

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_documentation.pdf
    trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_documentation.tex
    trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_working_test.pdf
    trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_working_test.tex

Removed Paths:
-------------
    trunk/Master/texmf-dist/doc/latex/adigraph/documentation.pdf
    trunk/Master/texmf-dist/doc/latex/adigraph/documentation.tex
    trunk/Master/texmf-dist/doc/latex/adigraph/test.pdf
    trunk/Master/texmf-dist/doc/latex/adigraph/test.tex

Added: trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_documentation.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_documentation.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_documentation.pdf	2018-03-11 20:25:56 UTC (rev 46921)
+++ trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_documentation.pdf	2018-03-11 20:26:48 UTC (rev 46922)

Property changes on: trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_documentation.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_documentation.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_documentation.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_documentation.tex	2018-03-11 20:26:48 UTC (rev 46922)
@@ -0,0 +1,746 @@
+\documentclass{report}
+
+\title{Adigraph, V1.3}
+\author{Luca Cappelletti}
+\date{March 2018}
+
+\usepackage{adigraph}
+\usepackage{xcolor}
+\usepackage[colorlinks=true,urlcolor=blue,pdfpagelabels,hyperindex=false]{hyperref}
+\usepackage{minted}
+\usepackage{multicol}
+\usepackage{graphicx} % for images and generally graphics
+\usepackage{caption} % enabling of nice captions
+\usepackage{subcaption} % and subcaptions of images
+\definecolor{mintedbackground}{rgb}{0.95,0.95,0.95}
+\setminted{
+  bgcolor=mintedbackground,
+  fontfamily=tt,
+  linenos=true,
+  numberblanklines=true,
+  numbersep=5pt,
+  gobble=0,
+  frame=leftline,
+  framerule=0.4pt,
+  framesep=2mm,
+  funcnamehighlighting=true,
+  tabsize=4,
+  obeytabs=false,
+  mathescape=false
+  samepage=false, %with this setting you can force the list to appear on the same page
+  showspaces=false,
+  showtabs =false,
+  texcl=false,
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% THE FOLLOWING CENTERS ALL FLOATING ITEMS BY DEFAULT   %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\makeatletter
+\g at addto@macro\@floatboxreset\centering
+\makeatother
+
+\makeatletter
+\apptocmd\subcaption at minipage{\centering}{}{}
+\makeatother
+
+\makeatletter
+\providecommand*\setfloatlocations[2]{\@namedef{fps@#1}{#2}}
+\makeatother
+\setfloatlocations{figure}{H}
+\setfloatlocations{table}{H}
+
+\begin{document}
+
+\maketitle
+
+{\hypersetup{hidelinks}
+	\tableofcontents  % Generates the table of contents
+}
+
+\chapter{Introduction}
+\section{What is Adigraph?}
+\textbf{\href{https://ctan.org/pkg/adigraph}{Adigraph}} is a latex library for drawing directed graphs and augmenting directed graphs, and to draw cuts over them.
+
+It handles automatically the positioning of labels, with the exception of the horizontal position, and the inclinations of cuts.
+
+The latest version is available on \href{https://github.com/LucaCappelletti94/adigraph}{Github}.
+
+\section{License}
+Copyright 2018 Luca Cappelletti
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sub-license, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\\
+
+\chapter{Setup}
+\section{Installing the dependencies}
+Clearly you need to have texlive installed. Then, make sure you have the following packages:
+
+\begin{description}
+	\item[\href{https://ctan.org/pkg/fp}{fp}] Used for floating point calculations.
+	\item[\href{https://ctan.org/pkg/xparse}{xparse}] Used for elaborating parameters.
+	\item[\href{https://ctan.org/pkg/xstring}{xstring}] Used for elaborating strings.
+	\item[\href{https://ctan.org/pkg/etoolbox}{etoolbox}] Used for operations on lists.
+	\item[tikz] Used for drawing the actual graphs.
+	\item[tikz calc library] Used for some internal calculations in tikz.
+\end{description}
+
+To be sure you can run the following, that will install the packages only if they are not already present:
+
+\begin{minted}{sh}
+sudo tlmgr install etoolbox fp xstring
+\end{minted}
+
+\section{Installing Adigraph}
+You can install Adigraph, if it isn't already present in your setup, by running the following on Unix systems:
+
+\begin{minted}{sh}
+sudo tlmgr install adigraph
+\end{minted}
+
+On windows you should check on your package manager of choice (some latex distribution have a tlmgr implementation on windows too.)
+
+\chapter{Usage}
+\section{Creating a new graph}
+Here we create a new Adigraph object, called \textit{myAdigraph}.
+
+\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+	<nodes here, separated by semicolon>
+}{
+	<edges here, separated by semicolon>
+}{
+	<cuts here, separated by semicolon>
+}
+\end{minted}
+
+\section{Changing an existing graph}
+You can renovate an older graph by calling \textbackslash RenewAdigraph
+
+\begin{minted}{latex}
+\RenewAdigraph{myAdigraph}{
+	<nodes here, separated by semicolon>
+}{
+	<edges here, separated by semicolon>
+}{
+	<cuts here, separated by semicolon>
+}
+\end{minted}
+
+\section{Adding nodes}
+We set its nodes with the following syntax: \textit{<node name, color: \(x\) coordinate, \(y\) coordinate: label>}.
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+ 	s:0,0;
+ 	t:4,0;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			s:0,0;
+			t:4,0;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+\subsection{Custom node colors}
+To color a node you can use the following syntax: \textit{<node name, textual color: \(x\) coordinate, \(y\) coordinate>}. For example, to draw s in red and t in blue we would write:
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+ 	s,red:0,0;
+ 	t,blue:4,0;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			s,red:0,0;
+			t,blue:4,0;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+Tested available colors are: red, blue, black, green. You may extend the possible colors with LaTex libraries such as xcolor.
+
+\subsection{Custom node labels}
+To add a custom label you can use the following syntax: either \textit{<node name: \(x\) coordinate, \(y\) coordinate: node label>} or \textit{<node name,textual color: \(x\) coordinate, \(y\) coordinate: node label>} will work:
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+ 	s,red:0,0:start;
+ 	t:4,0:end;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			s,red:0,0:start;
+			t:4,0:end;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+\section{Automatically position nodes}
+When no coordinates are given or you just don't have time to think abount where to put those nodes, just choose a radius and Adigraph will position them on the circle of that radius.
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+	1:0,0;
+	2:2;
+	3:2;
+	4:2;
+	5:2;
+	6:2;
+	7:2;
+	8:2;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			1:0,0;
+			2:2;
+			3:2;
+			4:2;
+			5:2;
+			6:2;
+			7:2;
+			8:2;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+\subsection{Colored automatically positioned nodes}
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+	1:0,0;
+	2,purple:2;
+	3,brown:2;
+	4,gray:2;
+	5,blue:2;
+	6,red:2;
+	7,green:2;
+	8,pink:2;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			1:0,0;
+			2,purple:2;
+			3,brown:2;
+			4,gray:2;
+			5,blue:2;
+			6,red:2;
+			7,green:2;
+			8,pink:2;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+
+\section{Adding edges}
+We set its nodes with the following syntax: \textit{<node name: \(x\) coordinate, \(y\) coordinate, color : label>}.
+
+\subsection{A simple edge}
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+ 	s:0,0;
+ 	t:4,0;
+}{
+	s,t;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			s:0,0;
+			t:4,0;
+		}{
+			s,t;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+\subsection{A colored simple edge}
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+ 	s:0,0;
+ 	t:4,0;
+}{
+	s,t,red;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			s:0,0;
+			t:4,0;
+		}{
+			s,t,red;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+\subsection{A weighted edge}
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+ 	s:0,0;
+ 	t:4,0;
+}{
+	s,t:56;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			s:0,0;
+			t:4,0;
+		}{
+			s,t:56;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+\subsection{A weighted edge with label}
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+ 	s:0,0;
+ 	t:4,0;
+}{
+	s,t:56:myLabel;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			s:0,0;
+			t:4,0;
+		}{
+			s,t:56:myLabel;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+\subsection{Edge in both directions}
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+ 	s:0,0;
+ 	t:4,0;
+}{
+	s,t;
+	t,s;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			s:0,0;
+			t:4,0;
+		}{
+			s,t;
+			t,s;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+\subsection{Edge with weights in both directions}
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+ 	s:0,0;
+ 	t:4,0;
+}{
+	s,t:5;
+	t,s:5;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			s:0,0;
+			t:4,0;
+		}{
+			s,t:5;
+			t,s:5;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+\subsection{Positioning labels}
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+	1:0,0;
+	2:0,2;
+	3:4,2;
+	4:4,0;
+}{
+	1,3,red:1:a:near start;
+	2,4,blue:1:b:near end;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			1:0,0;
+			2:0,2;
+			3:4,2;
+			4:4,0;
+		}{
+			1,3,red:1:a:near start;
+			2,4,blue:1:b:near end;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+\subsection{Positioning weights}
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+	1:0,0;
+	2:0,2;
+	3:4,2;
+	4:4,0;
+}{
+	1,3,red:1::near start;
+	2,4,blue:1::near end;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			1:0,0;
+			2:0,2;
+			3:4,2;
+			4:4,0;
+		}{
+			1,3,red:1::near start;
+			2,4,blue:1::near end;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+
+\subsection{Multiple edges with weights}
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+	s:0,0;
+	t:4,0;
+	1:0,3;
+	2:4,3;
+}{
+	s,t:5;
+	t,s:5;
+	s,1:5;
+	1,s:5;
+	1,2:5;
+	2,1:5;
+	2,t:5;
+	t,2:5;
+	t,1:5;
+	1,t:5;
+}
+\myAdigraph{}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\NewAdigraph{myAdigraph}{
+			s:0,0;
+			t:4,0;
+			1:0,3;
+			2:4,3;
+		}{
+			s,t:5;
+			t,s:5;
+			s,1:5;
+			1,s:5;
+			1,2:5;
+			2,1:5;
+			2,t:5;
+			t,2:5;
+			t,1:5;
+			1,t:5;
+		}
+		\myAdigraph{}
+	\end{subfigure}
+\end{figure}
+
+\section{Augmenting paths}
+An augmenting path is specified by the following syntax: \textit{<comma separated list of nodes:units>}. It is \textbf{very important} to note that incremental paths called upon the same object are memorized by default.
+
+\NewAdigraph{myAdigraph}{
+	s:0,0;
+	1:2,2;
+	3:2,-2;
+	2:6,2;
+	4:6,-2;
+	t:8,0;
+}{
+	s,1:25;
+	s,3:25;
+	3,4:25;
+	1,2:35;
+	2,t:20;
+	4,t:30;
+	3,1:10;
+	4,2:10;
+	2,3:15::near start;
+	4,1:5::near start;
+}
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\NewAdigraph{myAdigraph}{
+	s:0,0;
+	1:2,2;
+	3:2,-2;
+	2:6,2;
+	4:6,-2;
+	t:8,0;
+}{
+	s,1:25;
+	s,3:25;
+	3,4:25;
+	1,2:35;
+	2,t:20;
+	4,t:30;
+	3,1:10;
+	4,2:10;
+	2,3:15::near start;
+	4,1:5::near start;
+}
+\myAdigraph{
+	s,3,4,2,t:5;
+}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\myAdigraph{
+			s,3,4,2,t:5;
+		}
+	\end{subfigure}
+\end{figure}
+
+For example, suppose now we'd like to send another 5 units on the graph edited by the previous incremental path, we'll have just to write the following:
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\myAdigraph{
+	s,3,4,1,2,t:5;
+}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\myAdigraph{
+			s,3,4,1,2,t:5;
+		}
+	\end{subfigure}
+\end{figure}
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\myAdigraph{
+	s,3,4,t:15;
+}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\myAdigraph{
+			s,3,4,t:15;
+		}
+	\end{subfigure}
+\end{figure}
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\myAdigraph{
+	s,1,4,t:5;
+}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\myAdigraph{
+			s,1,4,t:5;
+		}
+	\end{subfigure}
+\end{figure}
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\myAdigraph{
+	s,1,2,t:10;
+}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\myAdigraph{
+			s,1,2,t:10;
+		}
+	\end{subfigure}
+\end{figure}
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\myAdigraph{
+	s,1,2,4,t:5;
+}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\myAdigraph{
+			s,1,2,4,t:5;
+		}
+	\end{subfigure}
+\end{figure}
+
+\section{Cuts}
+
+The following is to add cuts to show minimum cuts for example, the syntax is: \textit{<first node, second node;>}
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\myAdigraph{}{
+	3,4;
+	2,t;
+}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\myAdigraph{}{
+			2,t;
+			3,4;
+		}
+	\end{subfigure}
+\end{figure}
+
+\subsection{Colored cuts}
+If you'd like to color the cuts you just have to add the color as follows: \textit{<first node, second node, color;>}
+
+\begin{figure}
+	\begin{subfigure}{0.49\textwidth}
+		\begin{minted}{latex}
+\myAdigraph{}{
+	3,4,red;
+	2,t,blue;
+}
+\end{minted}
+	\end{subfigure}
+	\begin{subfigure}{0.49\textwidth}
+		\myAdigraph{}{
+			2,t,red;
+			3,4,blue;
+		}
+	\end{subfigure}
+\end{figure}
+
+
+\chapter{Warnings}
+\section{Reserved words}
+I reserve to use for the package the following tokens:
+
+\begin{multicols}{2}
+	\begin{enumerate}
+		\item \textbackslash Adigraph
+		\item \textbackslash AdigraphBuildEdge
+		\item \textbackslash AdigraphBuildEdgeWrapper
+		\item \textbackslash AdigraphBuildNode
+		\item \textbackslash AdigraphBuildNodeWrapper
+		\item \textbackslash AdigraphBuildPath
+		\item \textbackslash AdigraphCalculateOrientation
+		\item \textbackslash AdigraphCountPaths
+		\item \textbackslash AdigraphCutBuilder
+		\item \textbackslash AdigraphDrawEdge
+		\item \textbackslash AdigraphDrawNode
+		\item \textbackslash AdigraphEdgeBuilder
+		\item \textbackslash AdigraphEdgeDrawer
+		\item \textbackslash AdigraphElaboratePath
+		\item \textbackslash AdigraphExecuteCutBuilder
+		\item \textbackslash AdigraphGenerateNodeName
+		\item \textbackslash AdigraphMemorizeEdge
+		\item \textbackslash AdigraphMemorizeNode
+		\item \textbackslash AdigraphNodeBuilder
+		\item \textbackslash AdigraphNodeCounter
+		\item \textbackslash AdigraphNodeCounterSecondWrapper
+		\item \textbackslash AdigraphNodeCounterWrapper
+		\item \textbackslash AdigraphNodesCounter
+		\item \textbackslash AdigraphPathBuilder
+		\item \textbackslash AdigraphProcessAugmentingPaths
+		\item \textbackslash AdigraphProcessAugmentingPathsList
+		\item \textbackslash AdigraphProcessCuts
+		\item \textbackslash AdigraphProcessEdges
+		\item \textbackslash AdigraphProcessNodes
+		\item \textbackslash AdigraphProcessPaths
+		\item \textbackslash AdigraphSimpleSum
+		\item \textbackslash NewAdigraph
+		\item \textbackslash RenewAdigraph
+	\end{enumerate}
+\end{multicols}
+
+\end{document}
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_documentation.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_working_test.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_working_test.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_working_test.pdf	2018-03-11 20:25:56 UTC (rev 46921)
+++ trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_working_test.pdf	2018-03-11 20:26:48 UTC (rev 46922)

Property changes on: trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_working_test.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_working_test.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_working_test.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_working_test.tex	2018-03-11 20:26:48 UTC (rev 46922)
@@ -0,0 +1,75 @@
+\documentclass{report}
+
+\usepackage{adigraph}
+
+\title{Adigraph, V1.3, small working test}
+\author{Luca Cappelletti}
+\date{March 2018}
+
+\begin{document}
+\maketitle
+\NewAdigraph{myAdigraph}{
+  s:0,0;
+  1:2,2;
+  3:2,-2;
+  2:6,2;
+  4:6,-2;
+  t:8,0;
+}{
+  s,1:25;
+  s,3:25;
+  3,4:25;
+  1,2:35;
+  2,t:20;
+  4,t:30;
+  3,1:10;
+  4,2:10;
+  2,3:15::near start;
+  4,1:5::near start;
+}
+
+\myAdigraph{}
+
+
+\myAdigraph{
+  s,3,4,2,t:5;
+}
+
+\myAdigraph{}{
+  2,t,red;
+  3,4,blue;
+}
+
+\NewAdigraph{mySecondAdigraph}{
+  s:3;
+  1:3;
+  3:3;
+  2:3;
+  4:3;
+  t:3;
+}{
+  s,1:25;
+  s,3:25;
+  3,4:25;
+  1,2:35;
+  2,t:20;
+  4,t:30;
+  3,1:10;
+  4,2:10;
+  2,3:15::near start;
+  4,1:5::near start;
+}
+
+\mySecondAdigraph{}
+
+
+\mySecondAdigraph{
+  s,3,4,2,t:5;
+}
+
+\mySecondAdigraph{}{
+  2,t,red;
+  3,4,blue;
+}
+
+\end{document}
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/adigraph/adigraph_working_test.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Deleted: trunk/Master/texmf-dist/doc/latex/adigraph/documentation.pdf
===================================================================
(Binary files differ)

Deleted: trunk/Master/texmf-dist/doc/latex/adigraph/documentation.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/adigraph/documentation.tex	2018-03-11 20:25:56 UTC (rev 46921)
+++ trunk/Master/texmf-dist/doc/latex/adigraph/documentation.tex	2018-03-11 20:26:48 UTC (rev 46922)
@@ -1,670 +0,0 @@
-\documentclass{report}
-
-\title{Adigraph, V1.2}
-\author{Luca Cappelletti}
-\date{March 2018}
-
-\usepackage{adigraph}
-\usepackage{xcolor}
-\usepackage[colorlinks=true,urlcolor=blue,pdfpagelabels,hyperindex=false]{hyperref}
-\usepackage{minted}
-\usepackage{multicol}
-\usepackage{graphicx} % for images and generally graphics
-\usepackage{caption} % enabling of nice captions
-\usepackage{subcaption} % and subcaptions of images
-\definecolor{mintedbackground}{rgb}{0.95,0.95,0.95}
-\setminted{
-  bgcolor=mintedbackground,
-  fontfamily=tt,
-  linenos=true,
-  numberblanklines=true,
-  numbersep=5pt,
-  gobble=0,
-  frame=leftline,
-  framerule=0.4pt,
-  framesep=2mm,
-  funcnamehighlighting=true,
-  tabsize=4,
-  obeytabs=false,
-  mathescape=false
-  samepage=false, %with this setting you can force the list to appear on the same page
-  showspaces=false,
-  showtabs =false,
-  texcl=false,
-}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% THE FOLLOWING CENTERS ALL FLOATING ITEMS BY DEFAULT   %
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\makeatletter
-\g at addto@macro\@floatboxreset\centering
-\makeatother
-
-\makeatletter
-\apptocmd\subcaption at minipage{\centering}{}{}
-\makeatother
-
-\makeatletter
-\providecommand*\setfloatlocations[2]{\@namedef{fps@#1}{#2}}
-\makeatother
-\setfloatlocations{figure}{H}
-\setfloatlocations{table}{H}
-
-\begin{document}
-
-\maketitle
-
-{\hypersetup{hidelinks}
-	\tableofcontents  % Generates the table of contents
-}
-
-\chapter{Introduction}
-\section{What is Adigraph?}
-\textbf{\href{https://ctan.org/pkg/adigraph}{Adigraph}} is a latex library for drawing directed graphs and augmenting directed graphs, and to draw cuts over them.
-
-It handles automatically the positioning of labels, with the exception of the horizontal position, and the inclinations of cuts.
-
-The latest version is available on \href{https://github.com/LucaCappelletti94/adigraph}{Github}.
-
-\section{License}
-Copyright 2018 Luca Cappelletti
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sub-license, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\\
-
-\chapter{Setup}
-\section{Installing the dependencies}
-Clearly you need to have texlive installed. Then, make sure you have the following packages:
-
-\begin{description}
-	\item[\href{https://ctan.org/pkg/fp}{fp}] Used for floating point calculations.
-	\item[\href{https://ctan.org/pkg/xparse}{xparse}] Used for elaborating parameters.
-	\item[\href{https://ctan.org/pkg/xstring}{xstring}] Used for elaborating strings.
-	\item[\href{https://ctan.org/pkg/etoolbox}{etoolbox}] Used for operations on lists.
-	\item[tikz] Used for drawing the actual graphs.
-	\item[tikz calc library] Used for some internal calculations in tikz.
-\end{description}
-
-To be sure you can run the following, that will install the packages only if they are not already present:
-
-\begin{minted}{sh}
-sudo tlmgr install etoolbox fp xstring
-\end{minted}
-
-\section{Installing Adigraph}
-You can install Adigraph, if it isn't already present in your setup, by running the following on Unix systems:
-
-\begin{minted}{sh}
-sudo tlmgr install adigraph
-\end{minted}
-
-On windows you should check on your package manager of choice (some latex distribution have a tlmgr implementation on windows too.)
-
-\chapter{Usage}
-\section{Creating a new graph}
-Here we create a new Adigraph object, called \textit{myAdigraph}.
-
-\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
-	<nodes here, separated by semicolon>
-}{
-	<edges here, separated by semicolon>
-}{
-	<cuts here, separated by semicolon>
-}
-\end{minted}
-
-\section{Adding nodes}
-We set its nodes with the following syntax: \textit{<node name: \(x\) coordinate, \(y\) coordinate, color: label>}.
-
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
- 	s:0,0;
- 	t:4,0;
-}
-\myAdigraph{}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\NewAdigraph{myAdigraph}{
-			s:0,0;
-			t:4,0;
-		}
-		\myAdigraph{}
-	\end{subfigure}
-\end{figure}
-
-
-\subsection{Custom node colors}
-To color a node you can use the following syntax: \textit{<node name: \(x\) coordinate, \(y\) coordinate, textual color>}. For example, to draw s in red and t in blue we would write:
-
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
- 	s:0,0,red;
- 	t:4,0,blue;
-}
-\myAdigraph{}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\NewAdigraph{myAdigraph}{
-			s:0,0,red;
-			t:4,0,blue;
-		}
-		\myAdigraph{}
-	\end{subfigure}
-\end{figure}
-
-Tested available colors are: red, blue, black, green. You may extend the possible colors with LaTex libraries such as xcolor.
-
-\subsection{Custom node labels}
-To add a custom label you can use the following syntax: either \textit{<node name: \(x\) coordinate, \(y\) coordinate: node label>} or \textit{<node name: \(x\) coordinate, \(y\) coordinate, textual color: node label>} will work:
-
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
- 	s:0,0,red:start;
- 	t:4,0:end;
-}
-\myAdigraph{}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\NewAdigraph{myAdigraph}{
-			s:0,0,red:start;
-			t:4,0:end;
-		}
-		\myAdigraph{}
-	\end{subfigure}
-\end{figure}
-
-\section{Adding edges}
-We set its nodes with the following syntax: \textit{<node name: \(x\) coordinate, \(y\) coordinate, color : label>}.
-
-\subsection{A simple edge}
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
- 	s:0,0;
- 	t:4,0;
-}{
-	s,t;
-}
-\myAdigraph{}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\NewAdigraph{myAdigraph}{
-			s:0,0;
-			t:4,0;
-		}{
-			s,t;
-		}
-		\myAdigraph{}
-	\end{subfigure}
-\end{figure}
-
-\subsection{A colored simple edge}
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
- 	s:0,0;
- 	t:4,0;
-}{
-	s,t,red;
-}
-\myAdigraph{}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\NewAdigraph{myAdigraph}{
-			s:0,0;
-			t:4,0;
-		}{
-			s,t,red;
-		}
-		\myAdigraph{}
-	\end{subfigure}
-\end{figure}
-
-\subsection{A weighted edge}
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
- 	s:0,0;
- 	t:4,0;
-}{
-	s,t:56;
-}
-\myAdigraph{}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\NewAdigraph{myAdigraph}{
-			s:0,0;
-			t:4,0;
-		}{
-			s,t:56;
-		}
-		\myAdigraph{}
-	\end{subfigure}
-\end{figure}
-
-\subsection{A weighted edge with label}
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
- 	s:0,0;
- 	t:4,0;
-}{
-	s,t:56:myLabel;
-}
-\myAdigraph{}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\NewAdigraph{myAdigraph}{
-			s:0,0;
-			t:4,0;
-		}{
-			s,t:56:myLabel;
-		}
-		\myAdigraph{}
-	\end{subfigure}
-\end{figure}
-
-\subsection{Edge in both directions}
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
- 	s:0,0;
- 	t:4,0;
-}{
-	s,t;
-	t,s;
-}
-\myAdigraph{}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\NewAdigraph{myAdigraph}{
-			s:0,0;
-			t:4,0;
-		}{
-			s,t;
-			t,s;
-		}
-		\myAdigraph{}
-	\end{subfigure}
-\end{figure}
-
-\subsection{Edge with weights in both directions}
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
- 	s:0,0;
- 	t:4,0;
-}{
-	s,t:5;
-	t,s:5;
-}
-\myAdigraph{}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\NewAdigraph{myAdigraph}{
-			s:0,0;
-			t:4,0;
-		}{
-			s,t:5;
-			t,s:5;
-		}
-		\myAdigraph{}
-	\end{subfigure}
-\end{figure}
-
-\subsection{Positioning labels}
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
-	1:0,0;
-	2:0,2;
-	3:4,2;
-	4:4,0;
-}{
-	1,3,red:1:a:near start;
-	2,4,blue:1:b:near end;
-}
-\myAdigraph{}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\NewAdigraph{myAdigraph}{
-			1:0,0;
-			2:0,2;
-			3:4,2;
-			4:4,0;
-		}{
-			1,3,red:1:a:near start;
-			2,4,blue:1:b:near end;
-		}
-		\myAdigraph{}
-	\end{subfigure}
-\end{figure}
-
-\subsection{Positioning weights}
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
-	1:0,0;
-	2:0,2;
-	3:4,2;
-	4:4,0;
-}{
-	1,3,red:1::near start;
-	2,4,blue:1::near end;
-}
-\myAdigraph{}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\NewAdigraph{myAdigraph}{
-			1:0,0;
-			2:0,2;
-			3:4,2;
-			4:4,0;
-		}{
-			1,3,red:1::near start;
-			2,4,blue:1::near end;
-		}
-		\myAdigraph{}
-	\end{subfigure}
-\end{figure}
-
-
-\subsection{Multiple edges with weights}
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
-	s:0,0;
-	t:4,0;
-	1:0,3;
-	2:4,3;
-}{
-	s,t:5;
-	t,s:5;
-	s,1:5;
-	1,s:5;
-	1,2:5;
-	2,1:5;
-	2,t:5;
-	t,2:5;
-	t,1:5;
-	1,t:5;
-}
-\myAdigraph{}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\NewAdigraph{myAdigraph}{
-			s:0,0;
-			t:4,0;
-			1:0,3;
-			2:4,3;
-		}{
-			s,t:5;
-			t,s:5;
-			s,1:5;
-			1,s:5;
-			1,2:5;
-			2,1:5;
-			2,t:5;
-			t,2:5;
-			t,1:5;
-			1,t:5;
-		}
-		\myAdigraph{}
-	\end{subfigure}
-\end{figure}
-
-\section{Augmenting paths}
-An augmenting path is specified by the following syntax: \textit{<comma separated list of nodes:units>}. It is \textbf{very important} to note that incremental paths called upon the same object are memorized by default.
-
-\NewAdigraph{myAdigraph}{
-	s:0,0;
-	1:2,2;
-	3:2,-2;
-	2:6,2;
-	4:6,-2;
-	t:8,0;
-}{
-	s,1:25;
-	s,3:25;
-	3,4:25;
-	1,2:35;
-	2,t:20;
-	4,t:30;
-	3,1:10;
-	4,2:10;
-	2,3:15::near start;
-	4,1:5::near start;
-}
-
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\NewAdigraph{myAdigraph}{
-	s:0,0;
-	1:2,2;
-	3:2,-2;
-	2:6,2;
-	4:6,-2;
-	t:8,0;
-}{
-	s,1:25;
-	s,3:25;
-	3,4:25;
-	1,2:35;
-	2,t:20;
-	4,t:30;
-	3,1:10;
-	4,2:10;
-	2,3:15::near start;
-	4,1:5::near start;
-}
-\myAdigraph{
-	s,3,4,2,t:5;
-}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\myAdigraph{
-			s,3,4,2,t:5;
-		}
-	\end{subfigure}
-\end{figure}
-
-For example, suppose now we'd like to send another 5 units on the graph edited by the previous incremental path, we'll have just to write the following:
-
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\myAdigraph{
-	s,3,4,1,2,t:5;
-}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\myAdigraph{
-			s,3,4,1,2,t:5;
-		}
-	\end{subfigure}
-\end{figure}
-
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\myAdigraph{
-	s,3,4,t:15;
-}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\myAdigraph{
-			s,3,4,t:15;
-		}
-	\end{subfigure}
-\end{figure}
-
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\myAdigraph{
-	s,1,4,t:5;
-}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\myAdigraph{
-			s,1,4,t:5;
-		}
-	\end{subfigure}
-\end{figure}
-
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\myAdigraph{
-	s,1,2,t:10;
-}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\myAdigraph{
-			s,1,2,t:10;
-		}
-	\end{subfigure}
-\end{figure}
-
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\myAdigraph{
-	s,1,2,4,t:5;
-}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\myAdigraph{
-			s,1,2,4,t:5;
-		}
-	\end{subfigure}
-\end{figure}
-
-\section{Cuts}
-
-The following is to add cuts to show minimum cuts for example, the syntax is: \textit{<first node, second node;>}
-
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\myAdigraph{}{
-	3,4;
-	2,t;
-}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\myAdigraph{}{
-			2,t;
-			3,4;
-		}
-	\end{subfigure}
-\end{figure}
-
-\subsection{Colored cuts}
-If you'd like to color the cuts you just have to add the color as follows: \textit{<first node, second node, color;>}
-
-\begin{figure}
-	\begin{subfigure}{0.49\textwidth}
-		\begin{minted}{latex}
-\myAdigraph{}{
-	3,4,red;
-	2,t,blue;
-}
-\end{minted}
-	\end{subfigure}
-	\begin{subfigure}{0.49\textwidth}
-		\myAdigraph{}{
-			2,t,red;
-			3,4,blue;
-		}
-	\end{subfigure}
-\end{figure}
-
-\chapter{Warnings}
-\section{Reserved words}
-I reserve to use for the package the following tokens:
-
-\begin{multicols}{2}
-	\begin{enumerate}
-		\item Adigraph
-		\item AdigraphAugmentingPaths
-		\item AdigraphBuildEdge
-		\item AdigraphBuildEdgeWrapper
-		\item AdigraphBuildNode
-		\item AdigraphBuildPath
-		\item AdigraphCalculateOrientation
-		\item AdigraphCounter
-		\item AdigraphCountPaths
-		\item AdigraphCurrentPathNumber
-		\item AdigraphCutBuilder
-		\item AdigraphDrawEdge
-		\item AdigraphDrawNode
-		\item AdigraphEdgeBuilder
-		\item AdigraphEdgeDrawer
-		\item AdigraphEdgeList
-		\item AdigraphEdgeName
-		\item AdigraphElaboratePath
-		\item AdigraphElaboratePath
-		\item AdigraphExecuteCutBuilder
-		\item AdigraphFirstNode
-		\item AdigraphMemorizeEdge
-		\item AdigraphMemorizeNode
-		\item AdigraphNodeBuilder
-		\item AdigraphNodeList
-		\item AdigraphNodeName
-		\item AdigraphNumberOfPaths
-		\item AdigraphPathBuilder
-		\item AdigraphProcessAugmentingPaths
-		\item AdigraphProcessCuts
-		\item AdigraphProcessEdges
-		\item AdigraphProcessNodes
-		\item AdigraphProcessPaths
-		\item AdigraphRom
-		\item AdigraphSecondNode
-		\item AdigraphSimpleSum
-		\item AdigraphTwinEdgeWeight
-		\item NewAdigraph
-	\end{enumerate}
-\end{multicols}
-
-\end{document}
\ No newline at end of file

Deleted: trunk/Master/texmf-dist/doc/latex/adigraph/test.pdf
===================================================================
(Binary files differ)

Deleted: trunk/Master/texmf-dist/doc/latex/adigraph/test.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/adigraph/test.tex	2018-03-11 20:25:56 UTC (rev 46921)
+++ trunk/Master/texmf-dist/doc/latex/adigraph/test.tex	2018-03-11 20:26:48 UTC (rev 46922)
@@ -1,42 +0,0 @@
-\documentclass{report}
-
-\usepackage{adigraph}
-
-\title{Adigraph, V1.2, small working test}
-\author{Luca Cappelletti}
-\date{March 2018}
-
-\begin{document}
-\maketitle
-\NewAdigraph{myAdigraph}{
-  s:0,0;
-  1:2,2;
-  3:2,-2;
-  2:6,2;
-  4:6,-2;
-  t:8,0;
-}{
-  s,1:25;
-  s,3:25;
-  3,4:25;
-  1,2:35;
-  2,t:20;
-  4,t:30;
-  3,1:10;
-  4,2:10;
-  2,3:15::near start;
-  4,1:5::near start;
-}
-
-\myAdigraph{}
-
-
-\myAdigraph{
-  s,3,4,2,t:5;
-}
-
-\myAdigraph{}{
-  2,t,red;
-  3,4,blue;
-}
-\end{document}
\ No newline at end of file

Modified: trunk/Master/texmf-dist/tex/latex/adigraph/adigraph.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/adigraph/adigraph.sty	2018-03-11 20:25:56 UTC (rev 46921)
+++ trunk/Master/texmf-dist/tex/latex/adigraph/adigraph.sty	2018-03-11 20:26:48 UTC (rev 46922)
@@ -9,7 +9,7 @@
 %
 \NeedsTeXFormat{LaTeX2e}[1994/06/01]
 \ProvidesPackage{adigraph}
-[2018/03/09 v1.2 LaTeX package for creating augmenting directed graphs]
+[2018/03/10 v1.3 LaTeX package for creating augmenting directed graphs]
 
 \RequirePackage{etoolbox}
 \RequirePackage{fp}
@@ -22,11 +22,10 @@
 \newcommand*{\AdigraphRom}[1]{\expandafter\@slowromancap\romannumeral #1@}
 \makeatother
 
+\newcounter{AdigraphTotalNodeCounter}
+\newcounter{AdigraphCurrentNodeCounter}
 \newcounter{AdigraphNumberOfPaths}
-\setcounter{AdigraphNumberOfPaths}{0}
-
 \newcounter{AdigraphCurrentPathNumber}
-\setcounter{AdigraphCurrentPathNumber}{0}
 
 \NewDocumentCommand{\AdigraphDrawNode}{m}{%
 	%
@@ -53,11 +52,32 @@
 		\letcs{\secondX}{adigraphNode#2X}
 		\letcs{\secondY}{adigraphNode#2Y}
 
-		\ifnumgreater{\secondX-\firstX}{0}{%
+		\providebool{equalX}
+		\FPifeq{\firstX}{\secondX}
+		\booltrue{equalX}
+		\else
+		\boolfalse{equalX}
+		\fi
+
+		\providebool{ltX}
+		\FPiflt{\firstX}{\secondX}
+		\booltrue{ltX}
+		\else
+		\boolfalse{ltX}
+		\fi
+
+		\providebool{ltY}
+		\FPiflt{\firstY}{\secondY}
+		\booltrue{ltY}
+		\else
+		\boolfalse{ltY}
+		\fi
+
+		\ifbool{ltX}{%
 			\def\AdigraphLabelPosition{above}
 		}{%
-			\ifnumequal{\secondX-\firstX}{0}{%
-				\ifnumgreater{\secondY-\firstY}{0}{%
+			\ifbool{equalX}{%
+				\ifbool{ltY}{%
 					\def\AdigraphLabelPosition{left}
 				}{%
 					\def\AdigraphLabelPosition{right}
@@ -96,32 +116,56 @@
 	}
 }
 
+\NewDocumentCommand{\AdigraphGenerateNodeName}{m m G{black}}{}
 \NewDocumentCommand{\AdigraphMemorizeNode}{m m G{black}}{}
 
-\NewDocumentCommand{\AdigraphBuildNode}{m > { \SplitArgument{ 2 } {,} } m G{#1}}{%
+\NewDocumentCommand{\AdigraphBuildNode}{> { \SplitArgument{ 1 } {,} } m > { \SplitArgument{ 1 } {,} } m m}{%
 	%
 	% #1 -> given node name, not normalized
 	% #2 -> list of coordinates and color
 	% #3 -> optional label
 	%
-	\ifblank{#1}{%
-		%Do nothing, this is the tail of the list
-	}{%
-		\IfInteger{#1}{%
-			\def\AdigraphNodeName{\AdigraphRom{#1}}%
-			\listgadd{\AdigraphNodeList}{\AdigraphRom{#1}}
+	\RenewDocumentCommand{\AdigraphGenerateNodeName}{m G{black}}{%
+		\IfInteger{##1}{%
+			\def\AdigraphNodeName{\AdigraphRom{##1}}%
+			\listgadd{\AdigraphNodeList}{\AdigraphRom{##1}}
 		}{%
-			\def\AdigraphNodeName{#1}%
-			\listgadd{\AdigraphNodeList}{#1}
+			\def\AdigraphNodeName{##1}%
+			\listgadd{\AdigraphNodeList}{##1}
 		}%
-		\RenewDocumentCommand{\AdigraphMemorizeNode}{m m G{black}}{%
+		\csdef{adigraphNode\AdigraphNodeName Color}{##2}%
+		\ifblank{#3}{
+			\csdef{adigraphNode\AdigraphNodeName Label}{##1}%
+		}{
 			\csdef{adigraphNode\AdigraphNodeName Label}{#3}%
+		}
+	}
+	\RenewDocumentCommand{\AdigraphMemorizeNode}{m G{}}{%
+		\ifblank{##2}{
+			\newcount\radius
+			\newcount\myi
+			\newcount\myn
+			\newcount\mydpi
+			\radius ##1\relax
+			\myi \value{AdigraphCurrentNodeCounter}\relax
+			\myn \value{AdigraphTotalNodeCounter}\relax
+			\FPset{\mydpi}{6.283185307179586476}
+			\FPmul{\numerator}{\the\myi}{\mydpi}
+			\FPdiv{\anomaly}{\numerator}{\the\myn}
+			\FPcos{\nodeX}{\anomaly}
+			\FPsin{\nodeY}{\anomaly}
+			\FPmul{\nodeX}{\nodeX}{\the\radius}
+			\FPmul{\nodeY}{\nodeY}{\the\radius}
+			\csedef{adigraphNode\AdigraphNodeName X}{\nodeX}%
+			\csedef{adigraphNode\AdigraphNodeName Y}{\nodeY}%
+			\stepcounter{AdigraphCurrentNodeCounter}
+		}{
 			\csdef{adigraphNode\AdigraphNodeName X}{##1}%
 			\csdef{adigraphNode\AdigraphNodeName Y}{##2}%
-			\csdef{adigraphNode\AdigraphNodeName Color}{##3}%
-		}%
-		\AdigraphMemorizeNode#2
-	}
+		}
+	}%
+	\AdigraphGenerateNodeName#1
+	\AdigraphMemorizeNode#2
 }
 
 \NewDocumentCommand{\AdigraphMemorizeEdge}{m m G{black}}{}
@@ -187,7 +231,6 @@
 
 \NewDocumentCommand{\AdigraphElaboratePath}{m m G{black}}{}
 
-\newcount\AdigraphCounter
 \NewDocumentCommand{\AdigraphSimpleSum}{m m m}{%
 	%
 	% #1 -> First addendum
@@ -194,8 +237,9 @@
 	% #2 -> Second addendum
 	% #3 -> Variable to store sum
 	%
+	\newcount\AdigraphCounter
 	\AdigraphCounter #1\relax
-	\advance\AdigraphCounter +#2\relax
+	\advance\AdigraphCounter #2\relax
 	\FPset{#3}{\the\AdigraphCounter}
 }
 
@@ -273,8 +317,16 @@
 	\undef{\AdigraphLastParsedNode}
 }
 
+\NewDocumentCommand{\AdigraphBuildNodeWrapper}{m m G{}}{
+	\ifblank{#1}{
+		%end of list
+	}{
+		\AdigraphBuildNode{#1}{#2}{#3}
+	}
+}
+
 \NewDocumentCommand{\AdigraphNodeBuilder}{ > { \SplitArgument{ 2 } {:} } m }{%
-	\AdigraphBuildNode#1
+	\AdigraphBuildNodeWrapper#1
 }
 
 \NewDocumentCommand{\AdigraphEdgeBuilder}{ > { \SplitArgument{ 3 } {:} } m }{%
@@ -285,6 +337,26 @@
 	\AdigraphDrawEdge#1
 }
 
+\NewDocumentCommand{\AdigraphNodeCounter}{m G{}}{%
+	\ifblank{#2}{
+		\stepcounter{AdigraphTotalNodeCounter}
+	}{}
+}
+
+\NewDocumentCommand{\AdigraphNodeCounterWrapper}{m > { \SplitArgument{ 1 } {,} } m m m }{%
+	\ifblank{#1}{}{
+		\AdigraphNodeCounter#2
+	}
+}
+
+\NewDocumentCommand{\AdigraphNodeCounterSecondWrapper}{ > { \SplitArgument{ 3 } {:} } m }{%
+	\AdigraphNodeCounterWrapper#1
+}
+
+\NewDocumentCommand{\AdigraphNodesCounter}{> { \SplitList{;} } m}{%
+	\ProcessList{#1}{\AdigraphNodeCounterSecondWrapper}
+}
+
 \NewDocumentCommand{\AdigraphProcessNodes}{> { \SplitList{;} } m}{%
 	\ProcessList{#1}{\AdigraphNodeBuilder}
 	\forlistloop{\AdigraphDrawNode}{\AdigraphNodeList}
@@ -309,6 +381,13 @@
 	\letcs{\secondX}{adigraphNode#3X}
 	\letcs{\secondY}{adigraphNode#3Y}
 
+	\providebool{equalX}
+	\FPifeq{\firstX}{\secondX}
+	\booltrue{equalX}
+	\else
+	\boolfalse{equalX}
+	\fi
+
 	\ifnumequal{\secondX-\firstX}{0}{%
 		\FPset{#1}{90}
 	}{%
@@ -368,6 +447,7 @@
 		\ifblank{#1}{%
 			% List is empty
 		}{%
+			\AdigraphNodesCounter{#1}
 			\AdigraphProcessNodes{#1}
 		}
 
@@ -394,15 +474,18 @@
 			\forlistloop{\AdigraphEdgeDrawer}{\AdigraphEdgeList}
 		}
 
-		%cuts
-		\ifblank{#4}{%
-			% List is empty
-		}{%
-			\AdigraphProcessCuts{#4}
-		}
+		% %cuts
+		% \ifblank{#4}{%
+		% 	% List is empty
+		% }{%
+		% 	\AdigraphProcessCuts{#4}
+		% }
 	\end{tikzpicture}
 }
 
+\NewDocumentCommand{\AdigraphProcessAugmentingPaths}{m}{}
+\NewDocumentCommand{\AdigraphProcessAugmentingPathsList}{m}{}
+
 \NewDocumentCommand{\NewAdigraph}{m m G{}}{%
 	%
 	% #1 -> Variable to assign to as command
@@ -409,22 +492,69 @@
 	% #2 -> Nodes
 	% #3 -> Edges
 	%
-	\csdef{Adigraph#1AugmentingPaths}{}%
-	\expandafter\NewDocumentCommand{\AdigraphProcessAugmentingPaths}{m}{%
-		\listcsgadd{Adigraph#1AugmentingPaths}{##1}
+	\ifcsdef{#1}{
+		\PackageError{adigraph}{%
+			You have already define an adigraph called #1.
+		}{%
+			Identify the duplicate and change its name, e.g. Second#1
+		}
+	}{
+		\csdef{Adigraph#1AugmentingPaths}{}%
+		\expandafter\RenewDocumentCommand{\AdigraphProcessAugmentingPaths}{m}{%
+			\listcsgadd{Adigraph#1AugmentingPaths}{##1}
+		}
+		\expandafter\RenewDocumentCommand{\AdigraphProcessAugmentingPathsList}{> { \SplitList{;} } m}{%
+			\AdigraphProcessAugmentingPaths##1
+		}
+		\expandafter\NewDocumentCommand\expandafter{\csname #1\endcsname}{m G{}}{%
+			%
+			% ##1 -> Augmenting path
+			%
+			\setcounter{AdigraphCurrentNodeCounter}{0}
+			\setcounter{AdigraphTotalNodeCounter}{0}
+			\setcounter{AdigraphNumberOfPaths}{0}
+			\setcounter{AdigraphCurrentPathNumber}{0}
+			\AdigraphProcessAugmentingPathsList{##1}
+			\Adigraph{#2}{#3}{Adigraph#1AugmentingPaths}{##2}{##1}
+		}%
 	}
-	\expandafter\NewDocumentCommand{\AdigraphProcessAugmentingPathsList}{> { \SplitList{;} } m}{%
-		\AdigraphProcessAugmentingPaths##1
+}
+
+\NewDocumentCommand{\RenewAdigraph}{m m G{}}{%
+	%
+	% #1 -> Variable to assign to as command
+	% #2 -> Nodes
+	% #3 -> Edges
+	%
+	\ifcsdef{#1}{
+		\csdef{Adigraph#1AugmentingPaths}{}%
+		\expandafter\RenewDocumentCommand{\AdigraphProcessAugmentingPaths}{m}{%
+			\listcsgadd{Adigraph#1AugmentingPaths}{##1}
+		}
+		\expandafter\RenewDocumentCommand{\AdigraphProcessAugmentingPathsList}{> { \SplitList{;} } m}{%
+			\AdigraphProcessAugmentingPaths##1
+		}
+		\expandafter\RenewDocumentCommand\expandafter{\csname #1\endcsname}{m G{}}{%
+			%
+			% ##1 -> Augmenting path
+			%
+			\setcounter{AdigraphCurrentNodeCounter}{0}
+			\setcounter{AdigraphTotalNodeCounter}{0}
+			\setcounter{AdigraphNumberOfPaths}{0}
+			\setcounter{AdigraphCurrentPathNumber}{0}
+			\AdigraphProcessAugmentingPathsList{##1}
+			\Adigraph{#2}{#3}{Adigraph#1AugmentingPaths}{##2}{##1}
+		}%
+	}{
+		\PackageError{adigraph}{%
+			You cannot renew a graph called #1 without having it defined first.
+		}{%
+			Create the first graph using \textbackslash NewAdigraph
+		}
 	}
-	\expandafter\NewDocumentCommand\expandafter{\csname #1\endcsname}{m G{}}{%
-		%
-		% ##1 -> Augmenting path
-		%
-		\AdigraphProcessAugmentingPathsList{##1}
-		\Adigraph{#2}{#3}{Adigraph#1AugmentingPaths}{##2}{##1}
-	}%
 }
 
+
 \endinput
 %%
 %% End of file `adigraph.sty'.
\ No newline at end of file

Modified: trunk/Master/tlpkg/libexec/ctan2tds
===================================================================
--- trunk/Master/tlpkg/libexec/ctan2tds	2018-03-11 20:25:56 UTC (rev 46921)
+++ trunk/Master/tlpkg/libexec/ctan2tds	2018-03-11 20:26:48 UTC (rev 46922)
@@ -766,6 +766,7 @@
  'mol2chemfig', "die 'skipping, python dependencies'",
  'montex',      "&MAKEflatten",
  'morehelp',    "die 'skipping, nonfree license'",
+ 'morisawa',	"die 'skipping, nonfree font support'",
  'morse',       "die 'skipping, nosell license'",
  'mp3d',        "&MAKEflatten",
  'mpcolornames',"&MAKEcopy",



More information about the tex-live-commits mailing list