Browse Source

update class diagrams

Eren Yilmaz 6 years ago
parent
commit
f86bc6d24e

+ 3 - 1
.gitignore

@@ -4,4 +4,6 @@ out
 auxil
 auxil
 svg-inkscape
 svg-inkscape
 *.synctex*
 *.synctex*
-*.vpp.bak*
+*.vpp.bak*
+*.vpp.lck
+*.vpp.vbak

+ 18 - 11
doc/chapter/2architecture.tex

@@ -25,7 +25,7 @@ The structure is as follows:
 \end{itemize}
 \end{itemize}
 For parsing the JSON file the JSON-java library~\cite{leary_json-java:_2018} is used.
 For parsing the JSON file the JSON-java library~\cite{leary_json-java:_2018} is used.
 The classes for reading and writing those JSON files are displayed in figure~\ref{fig:io}.
 The classes for reading and writing those JSON files are displayed in figure~\ref{fig:io}.
-The internal representation of graphs is further explained in the section~\ref{sec:model}.
+The internal representation of graphs is further explained in the section~\ref{sec:graph}.
 
 
 \centering
 \centering
 \begin{longtable}{|l|l|l|p{8.5cm}|}
 \begin{longtable}{|l|l|l|p{8.5cm}|}
@@ -83,7 +83,7 @@ The internal representation of graphs is further explained in the section~\ref{s
     \label{fig:json-example}
     \label{fig:json-example}
 \end{figure}
 \end{figure}
 
 
-\section{Internal graph representation, \enquote{graph}}\label{sec:model}
+\section{Internal graph representation, \enquote{graph}}\label{sec:graph}
 One feature that is important to us, is to be able to work with hierarchical graphs (cf.\ chapter~\ref{ch:progress}).
 One feature that is important to us, is to be able to work with hierarchical graphs (cf.\ chapter~\ref{ch:progress}).
 Therefore a node not only has edges to other nodes, but also it can contain other nodes and edges.
 Therefore a node not only has edges to other nodes, but also it can contain other nodes and edges.
 So far this is similar to what we described in section~\ref{sec:inputFileFormat}.
 So far this is similar to what we described in section~\ref{sec:inputFileFormat}.
@@ -102,13 +102,13 @@ Similarly, edges have additional attributes:
     \item \enquote{bindPoints} is a list of bend points for the edge, including the beginning and end point of the edge.
     \item \enquote{bindPoints} is a list of bend points for the edge, including the beginning and end point of the edge.
 \end{itemize}
 \end{itemize}
 
 
-A class diagram of the package \enquote{graph} is displayed in figure~\ref{fig:model}.
+A class diagram of the package \enquote{graph} is displayed in figure~\ref{fig:graph}.
 
 
 \begin{figure}[htp]
 \begin{figure}[htp]
     \centering
     \centering
-    \includegraphics[width=\linewidth,trim=0 6cm 0 0,clip]{img/model.pdf}
+    \includegraphics[width=\linewidth,trim=0 7.5cm 0 0,clip]{img/graph.pdf}
     \caption{Class diagram of the \enquote{graph} package.}
     \caption{Class diagram of the \enquote{graph} package.}
-    \label{fig:model}
+    \label{fig:graph}
 \end{figure}
 \end{figure}
 
 
 
 
@@ -135,7 +135,7 @@ We recommend section 3.2.1 of Carstens~\cite{carstens_node_2012} for a detailed
 A \enquote{stage} of the algorithm, interface \enquote{AlgorithmStage}, is an interval during which each step of the algorithm is performed in a similar way.
 A \enquote{stage} of the algorithm, interface \enquote{AlgorithmStage}, is an interval during which each step of the algorithm is performed in a similar way.
 Each time such a step is performed it returns whether the stage is already finished.
 Each time such a step is performed it returns whether the stage is already finished.
 For example, a forward step in the stage of calculating one extremal layout, class \enquote{ExtremalLayoutCalc}, consists of either a step of calculating the blocks, class \enquote{BlockCalc}, or a step of compacting the layout, class \enquote{Compaction}.
 For example, a forward step in the stage of calculating one extremal layout, class \enquote{ExtremalLayoutCalc}, consists of either a step of calculating the blocks, class \enquote{BlockCalc}, or a step of compacting the layout, class \enquote{Compaction}.
-All the stages are displayed in class diagram~\ref{fig:animated}.
+All the stages are displayed in class diagram~\ref{fig:animation_and_bk}.
 
 
 To be able to undo a step each stage needs to implement methods for both forward and backward steps.
 To be able to undo a step each stage needs to implement methods for both forward and backward steps.
 
 
@@ -151,12 +151,11 @@ This works the following:
     \item The algorithm potentially calls the step function of other alogrithms while executing one step.
     \item The algorithm potentially calls the step function of other alogrithms while executing one step.
 \end{enumerate}
 \end{enumerate}
 
 
-\TODO{outdated}
 \begin{figure}[htp]
 \begin{figure}[htp]
     \centering
     \centering
-    \includegraphics[width=\linewidth,trim=0 9cm 0 0,clip]{img/algorithms_animated.pdf}
-    \caption{Class diagram of the package \enquote{algorithms.animated}.}
-    \label{fig:animated}
+    \includegraphics[width=\linewidth,trim=0 13cm 0 0,clip]{img/animation_and_bk.pdf}
+    \caption{Class diagram of the packages \enquote{bk} and\enquote{animation}.}
+    \label{fig:animation_and_bk}
 \end{figure}
 \end{figure}
 
 
 \section{View}\label{sec:view}
 \section{View}\label{sec:view}
@@ -169,4 +168,12 @@ The distinguish two kinds of views:
     For this we use a JFrame from the Swing library.
     For this we use a JFrame from the Swing library.
     \item \enquote{EdgeView} and \enquote{NodeView} are JPanels, which means they can be drawn onto the JFrame.
     \item \enquote{EdgeView} and \enquote{NodeView} are JPanels, which means they can be drawn onto the JFrame.
     For this they have to know about which part of the graph and which layout they belong to.
     For this they have to know about which part of the graph and which layout they belong to.
-\end{itemize}
+\end{itemize}
+A class diagram of the packages \enquote{view} and \enquote{main} is displayed in figure~\ref{fig:view}.
+
+\begin{figure}[htp]
+    \centering
+    \includegraphics[width=\linewidth,trim=0 11cm 0 0,clip]{img/view.pdf}
+    \caption{Class diagram of the packages \enquote{view} and \enquote{main}.}
+    \label{fig:view}
+\end{figure}

+ 2 - 2
doc/chapter/4progress.tex

@@ -33,6 +33,6 @@ The following features are either planned (\planned), under construction (\progr
     \item[\done] Working with hierarchical graphs.
     \item[\done] Working with hierarchical graphs.
     \item[\done] Scaling the display with the (adjustable) window size.
     \item[\done] Scaling the display with the (adjustable) window size.
     \item[\planned] Work with disconnected graphs (cf.\ section~\ref{sec:assumptions}), either by modifying the algorithm or by processing the connected components one by one.
     \item[\planned] Work with disconnected graphs (cf.\ section~\ref{sec:assumptions}), either by modifying the algorithm or by processing the connected components one by one.
-    \item[\planned] Creating ElkNode~\cite{noauthor_elk:_2018} objects from LayeredNode (\ref{sec:model}) objects.
-    \item[\planned] Creating LayeredNode (\ref{sec:model}) objects from ElkNode~\cite{noauthor_elk:_2018} objects (low priority).
+    \item[\planned] Creating ElkNode~\cite{noauthor_elk:_2018} objects from LayeredNode (\ref{sec:graph}) objects.
+    \item[\planned] Creating LayeredNode (\ref{sec:graph}) objects from ElkNode~\cite{noauthor_elk:_2018} objects (low priority).
 \end{itemize}
 \end{itemize}

BIN
doc/img/algorithms_animated.pdf


BIN
doc/img/animation_and_bk.pdf


BIN
doc/img/graph.pdf


BIN
doc/img/model.pdf


BIN
doc/img/view.pdf


BIN
doc/vpp/animation.animated.vpp → doc/vpp/animation.vpp


BIN
doc/vpp/model.vpp → doc/vpp/graph.vpp


BIN
doc/vpp/io.vpp


BIN
doc/vpp/view.vpp