[GRASS-SVN] r64799 - in grass-promo/grassposter/2015_EGU_Python: . images listings

svn_grass at osgeo.org svn_grass at osgeo.org
Wed Mar 4 13:48:06 PST 2015


Author: wenzeslaus
Date: 2015-03-04 13:48:06 -0800 (Wed, 04 Mar 2015)
New Revision: 64799

Added:
   grass-promo/grassposter/2015_EGU_Python/Makefile
   grass-promo/grassposter/2015_EGU_Python/images/
   grass-promo/grassposter/2015_EGU_Python/images/grass_module_gui.png
   grass-promo/grassposter/2015_EGU_Python/listings/grass_module.tex
   grass-promo/grassposter/2015_EGU_Python/listings/grass_module_cli.tex
   grass-promo/grassposter/2015_EGU_Python/listings/pygrass_doc_syntax.tex
   grass-promo/grassposter/2015_EGU_Python/listings/script_doc_syntax.tex
   grass-promo/grassposter/2015_EGU_Python/listings_settings.tex
Removed:
   grass-promo/grassposter/2015_EGU_Python/listings/listings_settings.tex
   grass-promo/grassposter/2015_EGU_Python/listings/sample.tex
Modified:
   grass-promo/grassposter/2015_EGU_Python/main.tex
Log:
python poster: blocks for outline, bash in documentation to python block, generated interface block, width according to other EGU posters

Added: grass-promo/grassposter/2015_EGU_Python/Makefile
===================================================================
--- grass-promo/grassposter/2015_EGU_Python/Makefile	                        (rev 0)
+++ grass-promo/grassposter/2015_EGU_Python/Makefile	2015-03-04 21:48:06 UTC (rev 64799)
@@ -0,0 +1,45 @@
+# dependencies are wrong, it does not compile TEXPDF
+# `make distclean && make` must be used
+
+FILE=main
+SVGDIR = svg_images
+ODPDIR = odp_slides
+TEXDIR = listings
+
+SVGFILES = $(shell ls $(SVGDIR)/*.svg)
+SVGPDF = $(patsubst %.svg, %.pdf, $(SVGFILES))
+ODPFILES = $(shell ls $(ODPDIR)/*.odp)
+ODPPDF = $(patsubst %.odp, %.pdf, $(ODPFILES))
+TEXFILES = $(shell ls $(TEXDIR)/*.tex)
+TEXPDF = $(patsubst %.tex, %.pdf, $(TEXFILES))
+
+all: $(FILE).pdf
+
+$(FILE).pdf: *.tex Makefile
+	make pdf
+	make pdf
+	@while grep Rerun $(FILE).log >/dev/null 2>&1 ; do \
+		make pdf; \
+	done
+
+pdf: fig
+	pdflatex -interaction=nonstopmode $(FILE).tex
+
+fig: $(SVGPDF) $(ODPPDF) $(TEXPDF)
+
+$(SVGPDF): %.pdf: %.svg
+	inkscape -z --export-pdf=$@ --export-area-drawing --export-dpi=300 $<
+
+$(ODPPDF): %.pdf: %.odp
+	libreoffice --headless --convert-to pdf --outdir $(ODPDIR) $<
+
+$(TEXPDF): %.pdf: %.tex
+	pdflatex -interaction=nonstopmode -shell-escape -output-directory=$(TEXDIR) $< 
+
+clean:
+	rm -f *~ *.aux *.log *.out *.toc *.bbl *.blg *-blx.bib *.ps
+	rm -f $(SVGPDF) $(ODPPDF) $(TEXPDF) $(TEXDIR)/*.aux $(TEXDIR)/*.log
+
+distclean:
+	make clean
+	rm -f $(FILE).pdf

Added: grass-promo/grassposter/2015_EGU_Python/images/grass_module_gui.png
===================================================================
(Binary files differ)


Property changes on: grass-promo/grassposter/2015_EGU_Python/images/grass_module_gui.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: grass-promo/grassposter/2015_EGU_Python/listings/grass_module.tex
===================================================================
--- grass-promo/grassposter/2015_EGU_Python/listings/grass_module.tex	                        (rev 0)
+++ grass-promo/grassposter/2015_EGU_Python/listings/grass_module.tex	2015-03-04 21:48:06 UTC (rev 64799)
@@ -0,0 +1,33 @@
+% taken from grass-promo/grassposter, written by me I think
+
+\documentclass{standalone}
+
+\usepackage[active,tightpage]{preview}
+\usepackage{listings}
+\PreviewEnvironment{lstlisting}
+
+\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
+
+\input{listings_settings}
+
+\begin{document}
+
+\begin{lstlisting}[language=Python,linewidth=34.2em]
+#%module
+#% description: Adds the values of two rasters (A + B)
+#% keywords: raster
+#% keywords: algebra
+#% keywords: sum
+#%end
+#%option G_OPT_R_INPUT
+#% key: araster
+#% description: Raster A in the expression A + B
+#%end
+#%option G_OPT_R_INPUT
+#% key: braster
+#% description: Raster B in the expression A + B
+#%end
+#%option G_OPT_R_OUTPUT
+#%end
+\end{lstlisting}
+\end{document}

Added: grass-promo/grassposter/2015_EGU_Python/listings/grass_module_cli.tex
===================================================================
--- grass-promo/grassposter/2015_EGU_Python/listings/grass_module_cli.tex	                        (rev 0)
+++ grass-promo/grassposter/2015_EGU_Python/listings/grass_module_cli.tex	2015-03-04 21:48:06 UTC (rev 64799)
@@ -0,0 +1,39 @@
+% taken from grass-promo/grassposter, written by me I think
+
+\documentclass{standalone}
+
+\usepackage[active,tightpage]{preview}
+\usepackage{listings}
+\PreviewEnvironment{lstlisting}
+
+\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
+
+\input{listings_settings}
+
+\begin{document}
+
+% do some trim here, do more trim when including if needed
+\begin{lstlisting}[linewidth=34.2em]
+Description:
+ Adds the values of two rasters (A + B)
+
+Keywords:
+ raster, algebra, sum
+
+Usage:
+ r.plus araster=name braster=name output=name [--overwrite] [--help]
+   [--verbose] [--quiet] [--ui]
+
+Flags:
+ --o   Allow output files to overwrite existing files
+ --h   Print usage summary
+ --v   Verbose module output
+ --q   Quiet module output
+ --ui  Force launching GUI dialog
+
+Parameters:
+  araster   Name of input raster A in an expression A + B
+  braster   Name of input raster B in an expression A + B
+   output   Name for output raster map
+\end{lstlisting}
+\end{document}  
\ No newline at end of file

Deleted: grass-promo/grassposter/2015_EGU_Python/listings/listings_settings.tex
===================================================================
--- grass-promo/grassposter/2015_EGU_Python/listings/listings_settings.tex	2015-03-04 01:37:30 UTC (rev 64798)
+++ grass-promo/grassposter/2015_EGU_Python/listings/listings_settings.tex	2015-03-04 21:48:06 UTC (rev 64799)
@@ -1,42 +0,0 @@
-% http://tex.stackexchange.com/questions/34896/coloring-digits-with-the-listings-package
-\makeatletter
-\newcommand{\ProcessDigit}[1]
-{%
-  \ifnum\lst at mode=\lst at Pmode\relax%
-   {\digitstyle #1}%
-  \else
-    #1%
-  \fi
-}
-\makeatother
-\lstset{literate=%
-    {0}{{{\ProcessDigit{0}}}}1
-    {1}{{{\ProcessDigit{1}}}}1
-    {2}{{{\ProcessDigit{2}}}}1
-    {3}{{{\ProcessDigit{3}}}}1
-    {4}{{{\ProcessDigit{4}}}}1
-    {5}{{{\ProcessDigit{5}}}}1
-    {6}{{{\ProcessDigit{6}}}}1
-    {7}{{{\ProcessDigit{7}}}}1
-    {8}{{{\ProcessDigit{8}}}}1
-    {9}{{{\ProcessDigit{9}}}}1
-    {<=}{{\(\leq\)}}1,
-    morestring=[b]",
-    morestring=[b]',
-    morecomment=[l]//,
-}
-
-\lstset{
-%   language=Python,
-  showstringspaces=false,
-  basicstyle=\ttfamily\small,
-  commentstyle=\itshape\color{OliveGreen},
-  keywordstyle=\bfseries, % needs different \ttdefault
-  stringstyle=\color{Dandelion}, % Green Goldenrod
-  identifierstyle=\color{black},
-  emph=[1]{self},
-  emphstyle=[1]{\color{Emerald}},
-}
-
-\definecolor{poster-dark-blue}{HTML}{2222AA}
-\newcommand\digitstyle{\color{poster-dark-blue}}

Added: grass-promo/grassposter/2015_EGU_Python/listings/pygrass_doc_syntax.tex
===================================================================
--- grass-promo/grassposter/2015_EGU_Python/listings/pygrass_doc_syntax.tex	                        (rev 0)
+++ grass-promo/grassposter/2015_EGU_Python/listings/pygrass_doc_syntax.tex	2015-03-04 21:48:06 UTC (rev 64799)
@@ -0,0 +1,20 @@
+% taken from grass-promo/grassposter, written by me I think
+
+\documentclass{standalone}
+
+\usepackage[active,tightpage]{preview}
+\usepackage{listings}
+\PreviewEnvironment{lstlisting}
+
+\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
+
+\input{listings_settings}
+
+\begin{document}
+
+\begin{lstlisting}[language=Python,linewidth=34.2em]
+r_neighbors = Module('r.neighbors', input='elevation',
+                     output='elevation_smooth',
+                     method='median', flags='c')
+\end{lstlisting}
+\end{document}  
\ No newline at end of file

Deleted: grass-promo/grassposter/2015_EGU_Python/listings/sample.tex
===================================================================
--- grass-promo/grassposter/2015_EGU_Python/listings/sample.tex	2015-03-04 01:37:30 UTC (rev 64798)
+++ grass-promo/grassposter/2015_EGU_Python/listings/sample.tex	2015-03-04 21:48:06 UTC (rev 64799)
@@ -1,33 +0,0 @@
-% taken from grass-promo/grassposter, written by me I think
-
-\documentclass{standalone}
-
-\usepackage[active,tightpage]{preview}
-\usepackage{listings}
-\PreviewEnvironment{lstlisting}
-
-\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
-
-\input{listings_settings}
-
-\begin{document}
-
-% do some trim here, do more trim when including if needed
-\begin{lstlisting}[language=Python,linewidth=34.2em]
-class TestSlopeAspect(grass.gunittest.TestCase):
-    """Test basic functionality of r.slope.aspect module"""
-    def test_limits(self):
-        """Test if basic constraints are kept"""
-        slope = 'limits_slope'
-        aspect = 'limits_aspect'
-        self.assertModule(
-          'r.slope.aspect', elevation='elevation',
-          slope=slope, aspect=aspect)
-        self.assertRasterMinMax(
-          map=slope, refmin=0, refmax=90,
-          msg="Slope in degrees must be between 0 and 90")
-        self.assertRasterMinMax(
-          map=aspect, refmin=0, refmax=360,
-          msg="Aspect in degrees must be between 0 and 360")
-\end{lstlisting}
-\end{document}  
\ No newline at end of file

Added: grass-promo/grassposter/2015_EGU_Python/listings/script_doc_syntax.tex
===================================================================
--- grass-promo/grassposter/2015_EGU_Python/listings/script_doc_syntax.tex	                        (rev 0)
+++ grass-promo/grassposter/2015_EGU_Python/listings/script_doc_syntax.tex	2015-03-04 21:48:06 UTC (rev 64799)
@@ -0,0 +1,20 @@
+% taken from grass-promo/grassposter, written by me I think
+
+\documentclass{standalone}
+
+\usepackage[active,tightpage]{preview}
+\usepackage{listings}
+\PreviewEnvironment{lstlisting}
+
+\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
+
+\input{listings_settings}
+
+\begin{document}
+
+\begin{lstlisting}[language=Python,linewidth=34.2em]
+run_command('r.neighbors', input='elevation',
+            output='elevation_smooth',
+            method='median', flags='c')
+\end{lstlisting}
+\end{document}  
\ No newline at end of file

Copied: grass-promo/grassposter/2015_EGU_Python/listings_settings.tex (from rev 64798, grass-promo/grassposter/2015_EGU_Python/listings/listings_settings.tex)
===================================================================
--- grass-promo/grassposter/2015_EGU_Python/listings_settings.tex	                        (rev 0)
+++ grass-promo/grassposter/2015_EGU_Python/listings_settings.tex	2015-03-04 21:48:06 UTC (rev 64799)
@@ -0,0 +1,42 @@
+% http://tex.stackexchange.com/questions/34896/coloring-digits-with-the-listings-package
+\makeatletter
+\newcommand{\ProcessDigit}[1]
+{%
+  \ifnum\lst at mode=\lst at Pmode\relax%
+   {\digitstyle #1}%
+  \else
+    #1%
+  \fi
+}
+\makeatother
+\lstset{literate=%
+    {0}{{{\ProcessDigit{0}}}}1
+    {1}{{{\ProcessDigit{1}}}}1
+    {2}{{{\ProcessDigit{2}}}}1
+    {3}{{{\ProcessDigit{3}}}}1
+    {4}{{{\ProcessDigit{4}}}}1
+    {5}{{{\ProcessDigit{5}}}}1
+    {6}{{{\ProcessDigit{6}}}}1
+    {7}{{{\ProcessDigit{7}}}}1
+    {8}{{{\ProcessDigit{8}}}}1
+    {9}{{{\ProcessDigit{9}}}}1
+    {<=}{{\(\leq\)}}1,
+    morestring=[b]",
+    morestring=[b]',
+    morecomment=[l]//,
+}
+
+\lstset{
+%   language=Python,
+  showstringspaces=false,
+  basicstyle=\ttfamily\small,
+  commentstyle=\itshape\color{OliveGreen},
+  keywordstyle=\bfseries, % needs different \ttdefault
+  stringstyle=\color{Dandelion}, % Green Goldenrod
+  identifierstyle=\color{black},
+  emph=[1]{self},
+  emphstyle=[1]{\color{Emerald}},
+}
+
+\definecolor{poster-dark-blue}{HTML}{2222AA}
+\newcommand\digitstyle{\color{poster-dark-blue}}

Modified: grass-promo/grassposter/2015_EGU_Python/main.tex
===================================================================
--- grass-promo/grassposter/2015_EGU_Python/main.tex	2015-03-04 01:37:30 UTC (rev 64798)
+++ grass-promo/grassposter/2015_EGU_Python/main.tex	2015-03-04 21:48:06 UTC (rev 64799)
@@ -1,25 +1,39 @@
 \documentclass[innermargin=10mm]{tikzposter}
 \usepackage{enumitem}
-\geometry{paperwidth=63in,paperheight=42in}
+\geometry{paperwidth=197cm,paperheight=100cm}
 \usepackage{url}
 
+\usepackage{alltt}
+
+\newcommand{\inst}[1]{\hspace{2pt}$^{\mbox{\normalsize#1}}$\hspace{-7pt}}
+\newcommand{\instlist}[1]{\hspace{1pt}$^{#1}$}
+
 \title{
   \begin{minipage}{\textwidth}
     \centering
     Analyzing rasters, vectors and time series using new Python interfaces in GRASS GIS 7
+    \bigskip
   \end{minipage}
 }
 \author{
-V\'{a}clav Petr\'{a}\v{s} (1), Anna Petr\'{a}\v{s}ov\'{a} (1), Yann Chemin (2), Pietro Zambelli (3), Martin Landa (4), \\
-S\"{o}ren Gebbert (5), Markus Neteler (6), and Peter L\"{o}we (7)
+V\'{a}clav Petr\'{a}\v{s}\inst{1},
+Anna Petr\'{a}\v{s}ov\'{a}\inst{1},
+Yann Chemin\inst{2},
+Pietro Zambelli\inst{3},
+Martin Landa\inst{4},
+S\"{o}ren Gebbert\inst{5},
+Markus Neteler\inst{6}, and
+Peter L\"{o}we\inst{7}
 }
 \institute{
-\large  % using smaller size of font than default because the list is long
-(1) North Carolina State University, Raleigh, USA (wenzeslaus at gmail.com, vpetras at ncsu.edu), (2) International Water Management Institute,
-Pelawatta, Sri Lanka, (3) EURAC Research, Institute for Renewable Energy, Bolzano/Bozen, Italy, (4) Faculty of Civil
-Engineering, Czech Technical University in Prague, Czech Republic, (5) Th\"{u}nen Institute of Climate-Smart Agriculture,
-Braunschweig, Germany, (6) Research and Innovation Centre, Fondazione Edmund Mach, San Michele all'Adige, Italy, (7)
-German National Library for Science and Technology, Hanover, Germany
+\large
+\instlist{1}North Carolina State University, Raleigh, USA (wenzeslaus at gmail.com, vpetras at ncsu.edu),
+\instlist{2}International Water Management Institute, Pelawatta, Sri Lanka,
+\instlist{3}EURAC Research, Institute for Renewable Energy, Bolzano/Bozen, Italy,
+\instlist{4}Faculty of Civil Engineering, Czech Technical University in Prague, Czech Republic,
+\instlist{5}Th\"{u}nen Institute of Climate-Smart Agriculture, Braunschweig, Germany,
+\instlist{6}Research and Innovation Centre, Fondazione Edmund Mach, San Michele all'Adige, Italy,
+\instlist{7}German National Library for Science and Technology, Hanover, Germany
 }
 % \titlegraphic{}
 
@@ -32,6 +46,9 @@
 
 \definecolor{textcolor}{HTML}{000000}
 
+\definecolor{titleTextColor}{HTML}{2E652E}
+
+
 \definecolorpalette{sampleColorPalette} {
   \definecolor{colorOne}{HTML}{419041}
   % \definecolor{colorTwo}{HTML}{cccccc}
@@ -46,46 +63,49 @@
 \useblockstyle{Default} % Basic
 % \usecolorpalette{e}
 
-
 \makeatletter
 \renewcommand\TP at maketitle{%
-    \begin{minipage}{0.2\linewidth}
+    \begin{minipage}{0.12\linewidth}
        \centering
        
+       \newcommand{\logowidth}{0.17\textwidth}
+       \newcommand{\logovspace}{\vspace{3ex}}
+       \newcommand{\logohspace}{\hspace{1ex}}
+       
        % TODO: get other logos
-       \includegraphics[width=0.2\textwidth]{ncstate}
-       \hspace{2ex}
-       \includegraphics[width=0.2\textwidth]{iwmi}
+       \includegraphics[width=\logowidth]{ncstate}
+       \logohspace
+       \includegraphics[width=\logowidth]{iwmi}
 
-       \vspace{4ex}
+       \logovspace
 
-       \includegraphics[width=0.2\textwidth]{ncstate}
-       \hspace{2ex}
-       \includegraphics[width=0.2\textwidth]{ctu_prague}
-       \hspace{2ex}
-       \includegraphics[width=0.2\textwidth]{ncstate}
+       \includegraphics[width=\logowidth]{ncstate}
+       \logohspace
+       \includegraphics[width=\logowidth]{ctu_prague}
+       \logohspace
+       \includegraphics[width=\logowidth]{ncstate}
 
-       \vspace{4ex}
+       \logovspace
 
-       \includegraphics[width=0.2\textwidth]{fem_cri}
-       \hspace{2ex}
-       \includegraphics[width=0.2\textwidth]{ncstate}
+       \includegraphics[width=\logowidth]{fem_cri}
+       \logohspace
+       \includegraphics[width=\logowidth]{ncstate}
     \end{minipage}%
     \hfill
-   \begin{minipage}{0.6\linewidth}
+   \begin{minipage}{0.74\linewidth}
         \centering
         \color{titlefgcolor}
-        {\bfseries  \sc {\fontsize{85}{60}\selectfont \@title}  \par}
+        {\textcolor{titleTextColor}{\textsf{\textbf{{\fontsize{85}{60}\selectfont \@title}}}}  \par}
         \vspace*{1em}
         {\huge \@author \par}
         \vspace*{1em}
         {\LARGE \@institute}
     \end{minipage}%
     \hfill
-    \begin{minipage}{0.2\linewidth}
+    \begin{minipage}{0.12\linewidth}
        \centering
-       \includegraphics[width=0.39\textwidth]{grass}\\
-       \LARGE \textbf{\textsf{GRASS GIS}}
+       \includegraphics[width=0.35\textwidth]{grass}\\
+       \Large \textbf{\textsf{GRASS GIS}}
     \end{minipage}
 }
 \setlength{\TP at visibletextwidth}{\textwidth-3\TP at innermargin}
@@ -97,13 +117,21 @@
 
 \graphicspath{{images/}{logos/}{qrcodes/}{listings/}}
 
+% listings package does not work well with the tikzposter class,
+% so we need to include PDFs with code generated separately
+
 \newcommand{\partitle}[1]{\bigskip \textbf{#1}\\[1ex]}
 \newcommand{\parinlinetitle}[1]{\bigskip \textbf{#1}\ }
 \newcommand{\textfontsize}{\LARGE}
 
+% GRASS module
 \newcommand{\gmodule}[1]{\emph{#1}}
+
 \newcommand{\rafun}[1]{\texttt{#1()}}
 
+% GRASS Python package
+\newcommand{\pkg}[1]{\emph{#1}}
+
 \begin{document}
 \maketitle[width=0.95\textwidth]
 
@@ -150,7 +178,6 @@
 % TODO: the two blocks below are just taken from testing poster
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \block{Highlights}{
 % \setlength{\parskip}{1em}
 \textfontsize
@@ -161,7 +188,6 @@
 }
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \block{Description}{
 % \textfontsize
 \Large
@@ -223,38 +249,120 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \column{0.25}
 
-\block{Example of including code generated aside}{
 
-% listings package does not work well with the tikzposter class,
-% so we need to include pdf
-\includegraphics[width=\linewidth, clip, trim=0 0 0 0]{sample}
+\block{GRASS Scripting library interface to GRASS GIS modules}{
 
+The same applies to \pkg{grass.pygrass} syntax:
+
+\includegraphics[width=\linewidth, clip, trim=0 0 0 0]{script_doc_syntax}
+
 }
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\block{PyGRASS interface to GRASS GIS modules}{
+
+The same applies to \pkg{grass.pygrass} syntax:
+
+\includegraphics[width=\linewidth, clip, trim=0 0 0 0]{pygrass_doc_syntax}
+
+}
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\block{Using documentation for GRASS GIS modules}{
+
+Documentation of GRASS GIS modules usually use Bash syntax for examples:
+
+\begin{alltt}
+r.neighbors input=elevation output=elevation\_smooth method=median -c
+\end{alltt}
+
+This can be easily rewritten to \pkg{grass.script} syntax:
+
+\includegraphics[width=\linewidth, clip, trim=0 0 0 0]{script_doc_syntax}
+
+The same applies to \pkg{grass.script} syntax:
+
+\includegraphics[width=\linewidth, clip, trim=0 0 0 0]{pygrass_doc_syntax}
+
+}
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\block{\pkg{ctypes} interface to C libraries}{
+
+}
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\block{Using NumPy}{
+
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\block{Using IPython Notebook}{
+
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \column{0.25}
 
-\block{Sample block}{
-\textfontsize
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\block{Automatic creation of GUI and CLI}{
 
-See abstact for topics which can become blocks.
+\includegraphics[width=\linewidth, clip, trim=0 0 0 0]{grass_module}
+
+\includegraphics[width=0.5\linewidth, clip, trim=0 0 0 0]{grass_module_gui}
+\includegraphics[width=0.5\linewidth, clip, trim=0 0 0 0]{grass_module_cli}
+
 }
 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\block{PyGRASS interface to C libraries}{
 
+}
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\block{Python script versus GRASS GIS module}{
+and running code from IDE
+}
+
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \column{0.25}
 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\block{Temporal framework}{
 
+}
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\block{Testing the code}{
+
+}
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\block{GRASS GIS Addons}{
+The GRASS GIS Addons ensures long-term preservation of the code.
+Well maintained modules in Addons can be moved to GRASS GIS itself.
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\block{Alternatives to Python}{
+GRASS GIS modules are command line tools, so they can be used in shell scripting (e.g. Bash)
+and as subprocesses virtually any language as long as proper environment is set.
+
+The GRASS GIS library has a C API which is often used to create GRASS modules in C and C++.
+
+GRASS GIS modules can be used in R using \pkg{rgrass7} package.
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \block{Acknowledgements}{
-\begin{tabular}{cp{28em}}
+\begin{tabular}{cp{0.75\linewidth}}
 \raisebox{-.4\height}{
 \includegraphics[width=0.2\linewidth]{osgeo}
 }
@@ -263,13 +371,12 @@
 \raisebox{-.8\height}{
 \includegraphics[width=0.2\linewidth]{google}
 }
-& Initial development of pygrass and gunittest packages was done during Google Summer of Code.
+& Initial development of \pkg{pygrass} and \pkg{gunittest} packages was done during Google Summer of Code.
 \end{tabular}
 }
 
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \block{References}{
 
 % disable the title



More information about the grass-commit mailing list