From 59313f2a6089951b2292c25d5c13fdf7d6967487 Mon Sep 17 00:00:00 2001 From: James Bowman <no@email> Date: Tue, 30 Nov 2010 23:35:03 +0000 Subject: [PATCH] Added lang to sphinx template, linked py to cookbook and cpp to cheatseet, #723 --- doc/core_introduction.tex | 42 +++++++++++++++++++++++ doc/latex2sphinx/_themes/blue/layout.html | 9 ++++- doc/latex2sphinx/_themes/blue/theme.conf | 1 + doc/latex2sphinx/buildall | 2 +- doc/latex2sphinx/conf.py | 4 ++- 5 files changed, 55 insertions(+), 3 deletions(-) diff --git a/doc/core_introduction.tex b/doc/core_introduction.tex index 6f1f8049fd..a003c5ec67 100644 --- a/doc/core_introduction.tex +++ b/doc/core_introduction.tex @@ -618,4 +618,46 @@ For a 3D array of size $j \times k \times l$, it returns a Alternatively, use \cross{fromarray} with the \texttt{allowND} option to always return a \cross{cvMatND}. +\subsection{OpenCV to pygame} + +To convert an OpenCV image to a \href{http://www.pygame.org/}{pygame} surface: + +\begin{lstlisting} +>>> import pygame.image, cv +>>> src = cv.LoadImage("lena.jpg") +>>> src_rgb = cv.CreateMat(src.height, src.width, cv.CV_8UC3) +>>> cv.CvtColor(src, src_rgb, cv.CV_BGR2RGB) +>>> pg_img = pygame.image.frombuffer(src_rgb.tostring(), cv.GetSize(src_rgb), "RGB") +>>> print pg_img +<Surface(512x512x24 SW)> +\end{lstlisting} + +\subsection{OpenCV and OpenEXR} + +Using \href{http://www.excamera.com/sphinx/articles-openexr.html}{OpenEXR's Python bindings} you can make a simple +image viewer: + +\begin{lstlisting} +import OpenEXR, Imath, cv +filename = "GoldenGate.exr" +exrimage = OpenEXR.InputFile(filename) + +dw = exrimage.header()['dataWindow'] +(width, height) = (dw.max.x - dw.min.x + 1, dw.max.y - dw.min.y + 1) + +def fromstr(s): + mat = cv.CreateMat(height, width, cv.CV_32FC1) + cv.SetData(mat, s) + return mat + +pt = Imath.PixelType(Imath.PixelType.FLOAT) +(r, g, b) = [fromstr(s) for s in exrimage.channels("RGB", pt)] + +bgr = cv.CreateMat(height, width, cv.CV_32FC3) +cv.Merge(b, g, r, None, bgr) + +cv.ShowImage(filename, bgr) +cv.WaitKey() +\end{lstlisting} + \fi diff --git a/doc/latex2sphinx/_themes/blue/layout.html b/doc/latex2sphinx/_themes/blue/layout.html index 4aa67a8a1a..63dbfccda2 100644 --- a/doc/latex2sphinx/_themes/blue/layout.html +++ b/doc/latex2sphinx/_themes/blue/layout.html @@ -14,7 +14,14 @@ <h2>Help and Feedback</h2> You did not find what you were looking for? <ul> - <li>Try the <a href="faq.html">FAQ</a>.</li> + {% if theme_lang == 'c' %} + {% endif %} + {% if theme_lang == 'cpp' %} + <li>Try the <a href="http://opencv.willowgarage.com/wiki/Welcome?action=AttachFile&do=get&target=opencv_cheatsheet.pdf">Cheatsheet</a>.</li> + {% endif %} + {% if theme_lang == 'py' %} + <li>Try the <a href="cookbook.html">Cookbook</a>.</li> + {% endif %} <li>Ask a question in the <a href="http://tech.groups.yahoo.com/group/OpenCV/">user group/mailing list</a>.</li> <li>If you think something is missing or wrong in the documentation, please file a <a href="https://code.ros.org/trac/opencv/wiki">bug report</a>.</li> diff --git a/doc/latex2sphinx/_themes/blue/theme.conf b/doc/latex2sphinx/_themes/blue/theme.conf index dbd8fd8823..b9691ffd39 100644 --- a/doc/latex2sphinx/_themes/blue/theme.conf +++ b/doc/latex2sphinx/_themes/blue/theme.conf @@ -29,3 +29,4 @@ feedbacklinkcolor = #ffffff bodyfont = sans-serif headfont = 'Trebuchet MS', sans-serif +lang = none diff --git a/doc/latex2sphinx/buildall b/doc/latex2sphinx/buildall index 422fba593d..1fe8b00228 100644 --- a/doc/latex2sphinx/buildall +++ b/doc/latex2sphinx/buildall @@ -10,7 +10,7 @@ for D in $LANGUAGES do echo $D mkdir -p $D - cp conf.py $D + sed "s/%LANG%/$D/" conf.py > $D/conf.py TEXINPUTS=$PWD: sphinx-build -w $D/sphinx.errors -D "lang=$D" -b html -d _build/doctrees/$D $D _build/html/$D #Insert javascript links to load the Wiki in a frame diff --git a/doc/latex2sphinx/conf.py b/doc/latex2sphinx/conf.py index a26aa47ceb..f87b2a1f0e 100644 --- a/doc/latex2sphinx/conf.py +++ b/doc/latex2sphinx/conf.py @@ -97,7 +97,9 @@ html_theme = 'blue' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. -#html_theme_options = {} +html_theme_options = { + "lang" : "%LANG%" # buildall substitutes this for c, cpp, py +} # Add any paths that contain custom themes here, relative to this directory. html_theme_path = ['../_themes'] -- 2.18.0