Start explaining exaggeration

This commit is contained in:
Motiejus Jakštys 2021-05-19 22:57:50 +03:00 committed by Motiejus Jakštys
parent 7b31e4fdcf
commit 5360ea911e

View File

@ -1096,32 +1096,41 @@ Combination operator was not implemented in this version.
\subsection{Exaggeration Operator} \subsection{Exaggeration Operator}
Exaggeration operator finds bends whose \textsc{adjusted size} is smaller than Exaggeration operator finds bends of which \textsc{adjusted size} is smaller
the incoming parameter --- \textsc{half-circle diameter}. Once it finds the than the \textsc{diameter of the half-circle}. Once a target bend is found, it
bend, it will exaggerate it in increments until either becomes true: will be exaggerated it in increments until either becomes true:
\begin{itemize} \begin{itemize}
\item \textsc{adjusted size} of the exaggerated bend is larger than area of \item \textsc{adjusted size} of the exaggerated bend is larger than area of
the half-circle. the half-circle.
\item The exaggerated bend starts intersecting with a neighboring bend. Then,
\item The exaggerated bend starts intersecting with a neighboring bend.
Then exaggeration aborts, and the bend remains as if it were one step
before the intersection.
\end{itemize} \end{itemize}
Exaggeration operator requires a constant \textsc{exaggeration step} $s$, which Exaggeration operator uses a hardcoded parameter \textsc{exaggeration step} $s
should be between 1 and 2. It was arbitrarily picked to \exaggerationEnthusiasm \in (1,2]$. It was arbitrarily picked to {\exaggerationEnthusiasm} for this
for this implementation. A single exaggeration increment is done as follows: implementation. A single exaggeration increment is done as follows:
\begin{enumerate} \begin{enumerate}
\item Find a candidate bend. \item Find a candidate bend.
\item Find the bend's baseline. \item Find the bend's baseline.
\item Find \textsc{midpoint}, the center of the bend's baseline. \item Find \textsc{midpoint}, the center of the bend's baseline.
\item Mark each bend's vertex with a number between $[1,s]$. The number is \item Find \textsc{midbend}, the center of the bend. Distance from one
derived with elements linearly interpolated between the start and baseline vertex to \textsc{midbend} should be the same as from
mid-points of the bend. The other half of the bend, from mid-point to \textsc{midbend} to the other baseline vertex.
the final vertex, is linearly interpolated between $[s,1]$.
\item Each point will be placed farther away from the baseline. The length \item Mark each bend's vertex with a number between $[1,s]$. The number is
of misplacement is the marked value in the previous step. I.e. derived with elements linearly interpolated between the start vertex
and \textsc{midbend}. The other half of the bend, from \textsc{midbend}
to the final vertex, is linearly interpolated between $[s,1]$.
\item Each point (except the beginning and end vertices of the bend) will
be placed farther away from the baseline. The length of misplacement is
the marked value in the previous step.
\end{enumerate} \end{enumerate}