more consistent figure naming

This commit is contained in:
Motiejus Jakštys 2021-05-18 11:48:28 +03:00
parent 8f72ba3d80
commit e8a5233392
3 changed files with 82 additions and 82 deletions

View File

@ -35,21 +35,21 @@ RIVERS = \
salvis-50k \
salvis-250k-10x \
salvis-grpk250-2x \
salvis-dp-64-50k \
salvis-vw-64-50k \
salvis-dp-64-chaikin-50k \
salvis-vw-64-chaikin-50k \
salvis-overlaid-dp-64-chaikin-50k \
salvis-overlaid-vw-64-chaikin-50k \
salvis-wm-250k-10x \
salvis-wm-250k-2x \
salvis-dp64-50k \
salvis-vw64-50k \
salvis-dpchaikin64-50k \
salvis-vwchaikin64-50k \
salvis-overlaid-dpchaikin64-50k \
salvis-overlaid-vwchaikin64-50k \
salvis-wm220-10x \
salvis-wm220-2x \
salvis-wm-50k \
salvis-wm-50k-nw \
salvis-wm-50k-ne \
salvis-wm-overlaid-250k-zoom \
salvis-wm-grpk50 \
salvis-wm-grpk50-ne \
salvis-wm-220
salvis-wm220
################################################################################
# FIGURES
@ -120,16 +120,16 @@ isolated-1-exaggerated_1COLOR = orange
# 250K
################################################################################
salvis-wm-250k-2x_1SELECT = wm_visuals where name='salvis-wm-220'
salvis-wm-250k-2x_WIDTHDIV = 2
salvis-wm220-250k-2x_1SELECT = wm_visuals where name='salvis-wm220'
salvis-wm220-250k-2x_WIDTHDIV = 2
salvis-wm-250k-10x_1SELECT = wm_visuals where name='salvis-wm-220'
salvis-wm-250k-10x_WIDTHDIV = 10
salvis-wm220-250k-10x_1SELECT = wm_visuals where name='salvis-wm220'
salvis-wm220-250k-10x_WIDTHDIV = 10
salvis-250k-10x_1SELECT = wm_visuals where name='salvis-grpk10'
salvis-250k-10x_WIDTHDIV = 10
salvis-wm-overlaid-250k-zoom_1SELECT = wm_visuals where name='salvis-wm-220'
salvis-wm-overlaid-250k-zoom_1SELECT = wm_visuals where name='salvis-wm220'
salvis-wm-overlaid-250k-zoom_2SELECT = wm_visuals where name='salvis-grpk10'
salvis-wm-overlaid-250k-zoom_1COLOR = orange
@ -146,52 +146,52 @@ salvis-25k_WIDTHDIV = 1
salvis-50k_1SELECT = wm_visuals where name='salvis-grpk10'
salvis-50k_WIDTHDIV = 2
salvis-dp-64-50k_1SELECT = wm_visuals where name='salvis-dp-64'
salvis-dp-64-50k_WIDTHDIV = 2
salvis-dp64-50k_1SELECT = wm_visuals where name='salvis-dp64'
salvis-dp64-50k_WIDTHDIV = 2
salvis-vw-64-50k_1SELECT = wm_visuals where name='salvis-vw-64'
salvis-vw-64-50k_WIDTHDIV = 2
salvis-vw64-50k_1SELECT = wm_visuals where name='salvis-vw64'
salvis-vw64-50k_WIDTHDIV = 2
salvis-dp-64-chaikin-50k_2SELECT = wm_visuals where name='salvis-dp-chaikin-64'
salvis-dp-64-chaikin-50k_WIDTHDIV = 2
salvis-dpchaikin64-50k_2SELECT = wm_visuals where name='salvis-dpchaikin64'
salvis-dpchaikin64-50k_WIDTHDIV = 2
salvis-vw-64-chaikin-50k_2SELECT = wm_visuals where name='salvis-vw-chaikin-64'
salvis-vw-64-chaikin-50k_WIDTHDIV = 2
salvis-vwchaikin64-50k_2SELECT = wm_visuals where name='salvis-vwchaikin64'
salvis-vwchaikin64-50k_WIDTHDIV = 2
salvis-overlaid-dp-64-chaikin-50k_1SELECT = wm_visuals where name='salvis-dp-chaikin-64'
salvis-overlaid-dp-64-chaikin-50k_2SELECT = wm_visuals where name='salvis-grpk10'
salvis-overlaid-dp-64-chaikin-50k_1COLOR = orange
salvis-overlaid-dp-64-chaikin-50k_WIDTHDIV = 2
salvis-overlaid-dp-64-chaikin-50k_QUADRANT = tl
salvis-overlaid-dpchaikin64-50k_1SELECT = wm_visuals where name='salvis-dpchaikin64'
salvis-overlaid-dpchaikin64-50k_2SELECT = wm_visuals where name='salvis-grpk10'
salvis-overlaid-dpchaikin64-50k_1COLOR = orange
salvis-overlaid-dpchaikin64-50k_WIDTHDIV = 2
salvis-overlaid-dpchaikin64-50k_QUADRANT = tl
salvis-overlaid-vw-64-chaikin-50k_1SELECT = wm_visuals where name='salvis-vw-chaikin-64'
salvis-overlaid-vw-64-chaikin-50k_2SELECT = wm_visuals where name='salvis-grpk10'
salvis-overlaid-vw-64-chaikin-50k_1COLOR = orange
salvis-overlaid-vw-64-chaikin-50k_WIDTHDIV = 2
salvis-overlaid-vw-64-chaikin-50k_QUADRANT = tl
salvis-overlaid-vwchaikin64-50k_1SELECT = wm_visuals where name='salvis-vwchaikin64'
salvis-overlaid-vwchaikin64-50k_2SELECT = wm_visuals where name='salvis-grpk10'
salvis-overlaid-vwchaikin64-50k_1COLOR = orange
salvis-overlaid-vwchaikin64-50k_WIDTHDIV = 2
salvis-overlaid-vwchaikin64-50k_QUADRANT = tl
salvis-wm-50k_1SELECT = wm_visuals where name='salvis-wm-75'
salvis-wm-50k_1SELECT = wm_visuals where name='salvis-wm75'
salvis-wm-50k_2SELECT = wm_visuals where name='salvis-grpk10'
salvis-wm-50k_1COLOR = orange
salvis-wm-50k-nw_1SELECT = wm_visuals where name='salvis-wm-75'
salvis-wm-50k-nw_1SELECT = wm_visuals where name='salvis-wm75'
salvis-wm-50k-nw_2SELECT = wm_visuals where name='salvis-grpk10'
salvis-wm-50k-nw_1COLOR = orange
salvis-wm-50k-nw_QUADRANT = tr
salvis-wm-50k-ne_1SELECT = wm_visuals where name='salvis-wm-75'
salvis-wm-50k-ne_1SELECT = wm_visuals where name='salvis-wm75'
salvis-wm-50k-ne_2SELECT = wm_visuals where name='salvis-grpk10'
salvis-wm-50k-ne_1COLOR = orange
salvis-wm-50k-ne_QUADRANT = tl
salvis-wm-grpk50_1SELECT = wm_visuals where name='salvis-wm-75'
salvis-wm-grpk50_1SELECT = wm_visuals where name='salvis-wm75'
salvis-wm-grpk50_2SELECT = wm_visuals where name='salvis-grpk50'
salvis-wm-grpk50_3SELECT = wm_visuals where name='salvis-grpk10'
salvis-wm-grpk50_1COLOR = orange
salvis-wm-grpk50_2COLOR = green
salvis-wm-grpk50_3LINESTYLE = dotted
salvis-wm-grpk50-ne_1SELECT = wm_visuals where name='salvis-wm-75'
salvis-wm-grpk50-ne_1SELECT = wm_visuals where name='salvis-wm75'
salvis-wm-grpk50-ne_2SELECT = wm_visuals where name='salvis-grpk50'
salvis-wm-grpk50-ne_3SELECT = wm_visuals where name='salvis-grpk10'
salvis-wm-grpk50-ne_1COLOR = orange
@ -199,14 +199,14 @@ salvis-wm-grpk50-ne_2COLOR = green
salvis-wm-grpk50-ne_3LINESTYLE = dotted
salvis-wm-grpk50-ne_QUADRANT = tl
salvis-wm-220_1SELECT = wm_visuals where name='salvis-wm-220'
salvis-wm-220_WIDTHDIV = 2
salvis-wm220_1SELECT = wm_visuals where name='salvis-wm220'
salvis-wm220_WIDTHDIV = 2
label_wm-75 = Wang--Müller
label_vw-64 = Visvalingam--Whyatt
label_dp-64 = Douglas \& Peucker
label_vw-64-chaikin = $(label_vw-64) and Chaikin
label_dp-64-chaikin = $(label_dp-64) and Chaikin
label_wm75 = Wang--Müller
label_vw64 = Visvalingam--Whyatt
label_dp64 = Douglas \& Peucker
label_vw64chaikin = $(label_vw64) and Chaikin
label_dp64chaikin = $(label_dp64) and Chaikin
legend_ = lower left
legend_tr = lower right
legend_tl = lower right
@ -225,10 +225,10 @@ salvis-$(1)-$(2)-50k$(3)_3LABEL = GRPK 1:\numprint{10000}
salvis-$(1)-$(2)-50k$(3)_QUADRANT = $(3)
salvis-$(1)-$(2)-50k$(3)_LEGEND = $(legend_$(3))
endef
$(foreach x,vw-64 dp-64 vw-chaikin-64 dp-chaikin-64,\
$(eval $(call wm_vwdp50k,wm-75,$(x),)) \
$(eval $(call wm_vwdp50k,wm-75,$(x),tl)) \
$(eval $(call wm_vwdp50k,wm-75,$(x),tr)) \
$(foreach x,vw64 dp64 vwchaikin64 dpchaikin64,\
$(eval $(call wm_vwdp50k,wm75,$(x),)) \
$(eval $(call wm_vwdp50k,wm75,$(x),tl)) \
$(eval $(call wm_vwdp50k,wm75,$(x),tr)) \
)
define FIG_template

View File

@ -207,7 +207,7 @@ as well as more modern ones, which only theorize, but do not provide an
implementation.
\subsubsection{{\DP}, {\VW} and Chaikin's}
\label{sec:dp-vw-chaikin}
\label{sec:dp-vwchaikin}
{\DP}\cite{douglas1973algorithms} and {\VW}\cite{visvalingam1993line} are
"classical" line simplification computer graphics algorithms. They are
@ -270,12 +270,12 @@ simplification for scale 1:\numprint{50000} and especially for
\begin{figure}[ht]
\centering
\begin{subfigure}[b]{.49\textwidth}
\includegraphics[width=\textwidth]{salvis-dp-64-50k}
\includegraphics[width=\textwidth]{salvis-dp64-50k}
\caption{Using {\DP}.}
\end{subfigure}
\hfill
\begin{subfigure}[b]{.49\textwidth}
\includegraphics[width=\textwidth]{salvis-vw-64-50k}
\includegraphics[width=\textwidth]{salvis-vw64-50k}
\caption{Using {\VW}.}
\end{subfigure}
\caption{Simplified using classical algorithms (1:\numprint{50000}).}
@ -291,15 +291,15 @@ generalization, illustrated in Figure~\ref{fig:salvis-generalized-chaikin-50k}.
\begin{figure}[ht!]
\centering
\begin{subfigure}[b]{.49\textwidth}
\includegraphics[width=\textwidth]{salvis-dp-64-chaikin-50k}
\includegraphics[width=\textwidth]{salvis-dpchaikin64-50k}
\caption{{\DP} and Chaikin's.}
\label{fig:salvis-dp-64-chaikin-50k}
\label{fig:salvis-dpchaikin64-50k}
\end{subfigure}
\hfill
\begin{subfigure}[b]{.49\textwidth}
\includegraphics[width=\textwidth]{salvis-vw-64-chaikin-50k}
\includegraphics[width=\textwidth]{salvis-vwchaikin64-50k}
\caption{{\VW} and Chaikin's.}
\label{fig:salvis-vw-64-chaikin-50k}
\label{fig:salvis-vwchaikin64-50k}
\end{subfigure}
\caption{Simplified and smoothened river (1:\numprint{50000}).}
\label{fig:salvis-generalized-chaikin-50k}
@ -308,18 +308,18 @@ generalization, illustrated in Figure~\ref{fig:salvis-generalized-chaikin-50k}.
\begin{figure}[ht!]
\centering
\begin{subfigure}[b]{.49\textwidth}
\includegraphics[width=\textwidth]{salvis-overlaid-dp-64-chaikin-50k}
\includegraphics[width=\textwidth]{salvis-overlaid-dpchaikin64-50k}
\caption{Original (fig.~\ref{fig:salvis-50k}) and simplified
(fig.~\ref{fig:salvis-dp-64-chaikin-50k}).}
(fig.~\ref{fig:salvis-dpchaikin64-50k}).}
\end{subfigure}
\hfill
\begin{subfigure}[b]{.49\textwidth}
\includegraphics[width=\textwidth]{salvis-overlaid-vw-64-chaikin-50k}
\includegraphics[width=\textwidth]{salvis-overlaid-vwchaikin64-50k}
\caption{Original (fig.~\ref{fig:salvis-50k}) and simplified
(fig.~\ref{fig:salvis-vw-64-chaikin-50k}.)}
(fig.~\ref{fig:salvis-vwchaikin64-50k}.)}
\end{subfigure}
\caption{Zoomed-in simplified and smoothened river and original.}
@ -499,7 +499,7 @@ wider cartographic society than proprietary ones.
\subsubsection{Unfitness of Line Simplification Algorithms}
Section~\ref{sec:dp-vw-chaikin} illustrates the current gaps with line
Section~\ref{sec:dp-vwchaikin} illustrates the current gaps with line
simplification algorithms for real rivers. To sum up, we highlight the
following cartographic problems from our examples:
@ -1432,9 +1432,9 @@ sharp edges for others.
\subsubsection{Large-scale (1:\numprint{250000})}
\label{sec:analyzed-large-scale}
As visible in Figure~\ref{fig:salvis-wm-250k-10x}, for large-scale map, some of the
As visible in Figure~\ref{fig:salvis-wm220-10x}, for large-scale map, some of the
resulting bends look significantly exaggerated. Why is that?
Figure~\ref{fig:salvis-wm-250k-overlaid-zoom} zooms in the large-scale
Figure~\ref{fig:salvis-wm220-overlaid-zoom} zooms in the large-scale
simplification and overlays the original.
\begin{figure}[ht]
@ -1447,18 +1447,18 @@ simplification and overlays the original.
\hfill
\begin{subfigure}[b]{.49\textwidth}
\centering
\includegraphics[width=.2\textwidth]{salvis-wm-250k-10x}
\includegraphics[width=.2\textwidth]{salvis-wm220-10x}
\caption{Simplified.}
\end{subfigure}
\caption{GDB10LT simplified with {\WM} for 1:\numprint{250000}.}
\label{fig:salvis-wm-250k-10x}
\label{fig:salvis-wm220-10x}
\end{figure}
\begin{figure}[ht]
\centering
\includegraphics[width=.8\textwidth]{salvis-wm-overlaid-250k-zoom}
\caption{10x zoomed-in {\WM} for 1:\numprint{250000}.}
\label{fig:salvis-wm-250k-overlaid-zoom}
\label{fig:salvis-wm220-overlaid-zoom}
\end{figure}
A conglomeration of bends is visible, especially in top--right side of the
@ -1538,7 +1538,7 @@ exaggerated by our implementation.
\subsubsection{Large-scale (1:\numprint{250000})}
\label{sec:national-large-scale}
Figure~\ref{fig:salvis-wm-250k} illustrates the original grpk250LT and the
Figure~\ref{fig:salvis-wm220} illustrates the original grpk250LT and the
{\WM}--simplified version. As section~\ref{sec:analyzed-large-scale} explains,
the algorithm tries to exaggerate many bends to a great size. However, grpk250LT
takes the opposite approach --- only the very basic shapes of the largest bends
@ -1555,11 +1555,11 @@ desired in section~\ref{sec:future-suggestions}.
\hfill
\begin{subfigure}[b]{.49\textwidth}
\centering
\includegraphics[width=\textwidth]{salvis-wm-220}
\includegraphics[width=\textwidth]{salvis-wm220}
\caption{{\WM}-simplified GDB10LT.}
\end{subfigure}
\caption{grpk250LT and {\WM}--simplified GDB10LT.}
\label{fig:salvis-wm-250k}
\label{fig:salvis-wm220}
\end{figure}
@ -1571,41 +1571,41 @@ needed for small-scale maps (1:\numprint{250000}), we will limit the comparison
in this section to 1:\numprint{50000}.
\begin{figure}[h!]
\includegraphics[width=\textwidth]{salvis-wm-dp-50k}
\includegraphics[width=\textwidth]{salvis-wm75-dp64-50k}
\caption{{\DP} (green), {\WM} (orange) and original (black dotted) at
1:\numprint{50000}.}
\label{fig:salvis-wm-dp-50k}
\label{fig:salvis-wm75-dp64-50k}
\end{figure}
\begin{figure}[h!]
\includegraphics[width=\textwidth]{salvis-wm-dp-chaikin-50k}
\includegraphics[width=\textwidth]{salvis-wm75-dpchaikin64-50k}
\caption{Chaikin--smoothened {\DP} (green), {\WM} (orange) and original
(black dotted) at 1:\numprint{50000}.}
\label{fig:salvis-wm-dp-chaikin-50k}
\label{fig:salvis-wm75-dpchaikin64-50k}
\end{figure}
\begin{figure}[h!]
\includegraphics[width=\textwidth]{salvis-wm-vw-50k}
\includegraphics[width=\textwidth]{salvis-wm75-vw64-50k}
\caption{{\VW} (green), {\WM} (orange) and original (black dotted) at
1:\numprint{50000}.}
\label{fig:salvis-wm-vw-50k}
\label{fig:salvis-wm75-vw64-50k}
\end{figure}
\begin{figure}[h!]
\includegraphics[width=\textwidth]{salvis-wm-vw-chaikin-50k}
\includegraphics[width=\textwidth]{salvis-wm75-vwchaikin64-50k}
\caption{Chaikin--smoothened {\VW} (green), {\WM} (orange) and original
(black dotted) at 1:\numprint{50000}.}
\label{fig:salvis-wm-vw-chaikin-50k}
\label{fig:salvis-wm75-vwchaikin64-50k}
\end{figure}

View File

@ -129,18 +129,18 @@ begin
geom1 = st_simplify((select way from wm_visuals where name='salvis-grpk10'), i);
geom2 = st_simplifyvw((select way from wm_visuals where name='salvis-grpk10'), i*i);
insert into wm_visuals(name, way) values
('salvis-dp-' || i, geom1),
('salvis-dp-chaikin-' || i, st_chaikinsmoothing(geom1, 5)),
('salvis-vw-' || i, geom2),
('salvis-vw-chaikin-' || i, st_chaikinsmoothing(geom2, 5));
('salvis-dp' || i, geom1),
('salvis-dpchaikin' || i, st_chaikinsmoothing(geom1, 5)),
('salvis-vw' || i, geom2),
('salvis-vwchaikin' || i, st_chaikinsmoothing(geom2, 5));
end loop;
-- more than 220 doesn't work, because there is an exaggerated bend near
-- Šalčia-Visinčia crossing, and it "exaggerates" to the
-- other river.
foreach i in array array[75, 220] loop
geom3 = st_simplifywm((select way from wm_visuals where name='salvis-grpk10'), i, 50, 'salvis-wm-' || i);
geom3 = st_simplifywm((select way from wm_visuals where name='salvis-grpk10'), i, 50, 'salvis-wm' || i);
insert into wm_visuals(name, way) values
('salvis-wm-' || i, geom3);
('salvis-wm' || i, geom3);
end loop;
end $$ language plpgsql;