From 93e7d576e2dfa866c01343c74185aafc8e3ac239 Mon Sep 17 00:00:00 2001 From: Martin Thoma Date: Tue, 9 Apr 2013 21:03:38 +0200 Subject: [PATCH] updated Makefile; added compiled png to examples --- tikz/3d-vector/3d-vector.png | Bin 0 -> 13210 bytes tikz/3d-vector/3d-vector.tex | 33 +++++++++++++++++ tikz/3d-vector/Makefile | 35 ++++++++++++++++++ tikz/3d-vector/Readme.md | 3 ++ tikz/vector-addition-and-scaling/Makefile | 8 +++- .../vector-addition-and-scaling.png | Bin 0 -> 19082 bytes tikz/vector-triangle-inequality/Makefile | 4 +- .../vector-triangle-inequality.png | Bin 0 -> 10289 bytes 8 files changed, 79 insertions(+), 4 deletions(-) create mode 100644 tikz/3d-vector/3d-vector.png create mode 100644 tikz/3d-vector/3d-vector.tex create mode 100644 tikz/3d-vector/Makefile create mode 100644 tikz/3d-vector/Readme.md create mode 100644 tikz/vector-addition-and-scaling/vector-addition-and-scaling.png create mode 100644 tikz/vector-triangle-inequality/vector-triangle-inequality.png diff --git a/tikz/3d-vector/3d-vector.png b/tikz/3d-vector/3d-vector.png new file mode 100644 index 0000000000000000000000000000000000000000..264ce0002fb72985284739d0150b1189d3393e3b GIT binary patch literal 13210 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 R3cg1JV2mw|s?T8){s;0hwy^*J literal 0 HcmV?d00001 diff --git a/tikz/3d-vector/3d-vector.tex b/tikz/3d-vector/3d-vector.tex new file mode 100644 index 0000000..3879bd9 --- /dev/null +++ b/tikz/3d-vector/3d-vector.tex @@ -0,0 +1,33 @@ +\documentclass{article} +\usepackage[pdftex,active,tightpage]{preview} +\setlength\PreviewBorder{2mm} +\usepackage{tikz} +\usepackage{tikz-3dplot} + +\begin{document} +\begin{preview} + \tdplotsetmaincoords{70}{110} + + \begin{tikzpicture}[scale=3,tdplot_main_coords] + \draw[thick,->] (0,0,0) -- (1,0,0) node[anchor=north east]{$x$}; + \draw[thick,->] (0,0,0) -- (0,1,0) node[anchor=north west]{$y$}; + \draw[thick,->] (0,0,0) -- (0,0,1) node[anchor=south]{$z$}; + \tdplotsetcoord{O}{0}{0}{0} + \tdplotsetcoord{P}{.8}{50}{70} + + %draw a vector from origin to point (P) + \draw[-stealth,color=red] (O) -- (P); + + %draw projection on xy plane, and a connecting line + \draw[dashed, color=red] (O) -- (Pxy); + \draw[dashed, color=red] (P) -- (Pxy); + \tdplotsetthetaplanecoords{70} + \draw[tdplot_rotated_coords,color=blue,thick,->] (0,0,0) + -- (.2,0,0) node[anchor=east]{$x'$}; + \draw[tdplot_rotated_coords,color=blue,thick,->] (0,0,0) + -- (0,.2,0) node[anchor=north]{$y'$}; + \draw[tdplot_rotated_coords,color=blue,thick,->] (0,0,0) + -- (0,0,.2) node[anchor=west]{$z'$}; + \end{tikzpicture} +\end{preview} +\end{document} diff --git a/tikz/3d-vector/Makefile b/tikz/3d-vector/Makefile new file mode 100644 index 0000000..453531a --- /dev/null +++ b/tikz/3d-vector/Makefile @@ -0,0 +1,35 @@ +SOURCE = 3d-vector +DELAY = 80 +DENSITY = 300 +WIDTH = 512 + +make: + pdflatex $(SOURCE).tex -output-format=pdf + make clean + +clean: + rm -rf $(TARGET) *.class *.html *.log *.aux *.data *.gnuplot + +gif: + pdfcrop $(SOURCE).pdf + convert -verbose -delay $(DELAY) -loop 0 -density $(DENSITY) $(SOURCE)-crop.pdf $(SOURCE).gif + make clean + +png: + make + make svg + inkscape $(SOURCE).svg -w $(WIDTH) --export-png=$(SOURCE).png + +transparentGif: + convert $(SOURCE).pdf -transparent white result.gif + make clean + +svg: + make + #inkscape $(SOURCE).pdf --export-plain-svg=$(SOURCE).svg + pdf2svg $(SOURCE).pdf $(SOURCE).svg + # Necessary, as pdf2svg does not always create valid svgs: + inkscape $(SOURCE).svg --export-plain-svg=$(SOURCE).svg + rsvg-convert -a -w $(WIDTH) -f svg $(SOURCE).svg -o $(SOURCE)2.svg + inkscape $(SOURCE)2.svg --export-plain-svg=$(SOURCE).svg + rm $(SOURCE)2.svg diff --git a/tikz/3d-vector/Readme.md b/tikz/3d-vector/Readme.md new file mode 100644 index 0000000..4032346 --- /dev/null +++ b/tikz/3d-vector/Readme.md @@ -0,0 +1,3 @@ +Manual +------ +[TikZ - 3d plot](http://sunsite.informatik.rwth-aachen.de/ftp/pub/mirror/ctan/graphics/pgf/contrib/tikz-3dplot/tikz-3dplot_documentation.pdf) diff --git a/tikz/vector-addition-and-scaling/Makefile b/tikz/vector-addition-and-scaling/Makefile index b00d208..10e10ac 100644 --- a/tikz/vector-addition-and-scaling/Makefile +++ b/tikz/vector-addition-and-scaling/Makefile @@ -1,14 +1,14 @@ SOURCE = vector-addition-and-scaling DELAY = 80 DENSITY = 300 -WIDTH = 500 +WIDTH = 512 make: pdflatex $(SOURCE).tex -output-format=pdf make clean clean: - rm -rf $(TARGET) *.class *.html *.log *.aux + rm -rf $(TARGET) *.class *.html *.log *.aux *.data *.gnuplot gif: pdfcrop $(SOURCE).pdf @@ -25,7 +25,11 @@ transparentGif: make clean svg: + make #inkscape $(SOURCE).pdf --export-plain-svg=$(SOURCE).svg pdf2svg $(SOURCE).pdf $(SOURCE).svg # Necessary, as pdf2svg does not always create valid svgs: inkscape $(SOURCE).svg --export-plain-svg=$(SOURCE).svg + rsvg-convert -a -w $(WIDTH) -f svg $(SOURCE).svg -o $(SOURCE)2.svg + inkscape $(SOURCE)2.svg --export-plain-svg=$(SOURCE).svg + rm $(SOURCE)2.svg diff --git a/tikz/vector-addition-and-scaling/vector-addition-and-scaling.png b/tikz/vector-addition-and-scaling/vector-addition-and-scaling.png new file mode 100644 index 0000000000000000000000000000000000000000..5e9b8c87f8cab425c910748a139278008c81e1ed GIT binary patch literal 19082 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