diff options
author | Karl Berry <karl@freefriends.org> | 2019-12-19 22:11:59 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-12-19 22:11:59 +0000 |
commit | 8876a8021514f190d676e4e5261f1084a66754d3 (patch) | |
tree | 9a496107a312a1acbbdb06ea0e1657c285109729 /Master/texmf-dist/doc/generic | |
parent | 693eacf895c01285e2992460bb489142ead8ae8a (diff) |
pgf (19dec19)
git-svn-id: svn://tug.org/texlive/trunk@53187 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/generic')
242 files changed, 11272 insertions, 3237 deletions
diff --git a/Master/texmf-dist/doc/generic/pgf/ChangeLog b/Master/texmf-dist/doc/generic/pgf/ChangeLog index 4715f302ef0..4bc16d14917 100644 --- a/Master/texmf-dist/doc/generic/pgf/ChangeLog +++ b/Master/texmf-dist/doc/generic/pgf/ChangeLog @@ -1,3 +1,499 @@ +2019-12-19 Henri Menke + + Release 3.1.5 + +2019-12-19 Henri Menke + + - [CI] bigintcalc, etexcmds, gettitlestring, hycolor, intcalc, kvdefinekeys, kvsetkeys, ltxcmds, refcount, uniquecounter + +2019-12-17 Henri Menke + + - Reseed the RNG before every use + +2019-12-16 Benjamin Desef + + - Remove redundant definition of `center` anchor + +2019-12-16 Benjamin Desef + + - Rewrite explanation for `\anchorborder` + +2019-12-16 Henri Menke + + - Document loading order for translator #804 + +2019-12-15 Henri Menke + + - Hash doubling in pgfkeys edef only for numbers #305 #669 + +2019-12-15 Henri Menke + + - Add conditional for externalize to manual + +2019-12-14 Henri Menke + + - Check \ifmeasuring@ #759 + +2019-12-13 Henri Menke + + - Add comment about 8 character filename limit in old ConTeXt #769 + +2019-12-13 Henri Menke + + - [CI] atbegshi, atveryend, bitset, pdfescape, rerunfilecheck + +2019-12-13 Henri Menke + + - Typos in the manual #805 #806 + +2019-12-04 Henri Menke + + - New build system + +2019-12-05 Henri Menke + + - [CI] letltxmacro + +2019-12-05 Henri Menke + + - Document that matrix on path need ampersand replacement #801 + +2019-12-05 Henri Menke + + - More nitpicking #803 + +2019-12-05 fmitha + + - Minor typo fixes and word change suggestions. + +2019-12-03 Henri Menke + + - Missing letter in functional tokens #798 + +2019-12-02 Henri Menke + + - [CI] stringenc + +2019-12-02 Henri Menke + + - Remove cleanuplink and friends #796 + +2019-12-01 Henri Menke + + - [CI] kvoptions + +2019-12-01 Henri Menke + + - Execute size hook unconditionally #795 + +2019-11-30 Stefan Pinnow + + - issue #775 - corrected some spellings - harmonized e.g. "$x$ direction" --> "$x$-direction" with the rest of the manual - adjusted "mystars" example so it fits to the "blue code box" - renamed `lines` to `mylines` in last `codeexample` to match the previous `mystars` example + +2019-11-29 Henri Menke + + - Fix sorting of intersections #480 + +2019-11-29 Henri Menke + + - Update TeX Live CI + +2019-11-29 Henri Menke + + - Document shorten < and > #387 + +2019-11-29 Henri Menke + + - pgfinterruptpath is not a scope #442 + +2019-11-28 Henri Menke + + - \pgfkeys@temp is not safe to transport over other macros #428 + +2019-11-28 Henri Menke + + - Draw to target instead of computed anchor #730 + +2019-11-27 Henri Menke + + - Implement and document new patterns #775 #776 + +2019-11-27 Henri Menke + + - \pgfmath@ensureregister produced missing characters #400 + +2019-11-27 Henri Menke + + - Wrong numerical constant in ln #788 + +2019-11-27 Henri Menke + + - AtBeginDocument for ConTeXt #790 + +2019-11-26 Henri Menke + + - Some packages got moved out of oberdiek + +2019-11-26 Henri Menke + + - Protect parens and order of operations in turtle #789 + +2019-11-24 Henri Menke + + - Missing name prefix in "<dir> of=" positioning #512 + +2019-11-20 Henri Menke + + - Fix style key for datavisualization #726 + +2019-11-18 Henri Menke + + - New pgfkeys handler .evaluated + +2019-11-18 Henri Menke + + - Forward scanned coordinate untouched #785 + +2019-11-18 Henri Menke + + - Nitpick #784 + +2019-11-16 JouleV + + - Fix spacing for keys in decorations manual + +2019-11-15 Matteo Gamboz + + - Correct typo in tutorial + +2019-11-14 Henri Menke + + - Revert "Add \rawx, \rawy, \rawz to let operation" + +2019-11-14 Henri Menke + + - Revert "Check for \pgfpointxyz before \rawx, \rawy, \rawz" + +2019-11-14 Henri Menke + + - Revert "Making the declared coordinate accessible" + +2019-11-13 samcarter + + - Improvements for markup in the manual + +2019-11-13 Henri Menke + + - Support for RGB for Plain TeX (docs) + +2019-11-12 Henri Menke + + - GitHub: Add mailing list link + +2019-11-12 Henri Menke + + - GitHub: Issue templates + +2019-11-10 Henri Menke + + - Add bbox library to manual (oops) + +2019-09-13 Stefan Pinnow + + - - corrected spelling of `\todosp` + +2019-09-13 Stefan Pinnow + + - - added some `\todosp` comments to `... Barb` arrows where no space between the two words is shown in the manual (v3.1.4b) + +2019-09-13 Stefan Pinnow + + - - replaced all instances of `arrows.spaced` with `arrows.meta` - replaced most of the instances of `arrows` with `arrows.meta` + +2019-09-01 Stefan Pinnow + + - - fixed some more wrongly spelled library names (related to issue #736) - marked more libraries in horizontal bars, i.e. `|...|` + +2019-11-10 Henri Menke + + - Change order of options in label and pin #643 #773 #774 + +2019-11-10 Henri Menke + + - Support for RGB for Plain TeX + +2019-11-08 Henri Menke + + - Reset transformation in grow cyclic #770 + +2019-11-06 Henri Menke + + - First version of the bbox library + +2019-11-05 Henri Menke + + - Correct example for every pic #519 #751 + +2019-11-05 Henri Menke + + - Support styling of outer \pgfmatrix node #627 + +2019-11-05 Henri Menke + + - Add some predefined patterns to patterns.meta + +2019-11-05 Henri Menke + + - Improve the 'lines' example for patterns.meta #602 + +2019-11-05 Henri Menke + + - pgfmathfloat@parser@install in pgfmathfloatparse #727 + +2019-11-04 Henri Menke + + - Reverse anchor of spy node #767 + +2019-11-04 Henri Menke + + - Cannot use commas in pgfkeys #728 + +2019-11-04 Henri Menke + + - Add generated gnuplot files #719 + +2019-11-04 Henri Menke + + - Fix `name prefix' for pics + +2019-11-04 Henri Menke + + - Add quotes to error message #747 + +2019-11-04 Henri Menke + + - Cheap trick to avoid leading space problem #753 + +2019-11-04 Henri Menke + + - Fix pgfkeys pretty printer for single key-value pair #762 + +2019-11-04 Henri Menke + + - Merge branch 'master' of https://github.com/lockywolf/pgf + +2019-11-03 Lockywolf + + - Update doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex + +2019-11-03 Henri Menke + + - Install iftex in CI + +2019-11-03 Henri Menke + + - /tikz/radius dropped units #768 + +2019-11-01 Lockywolf + + - Update pgfmanual-en-tutorial.tex + +2019-10-29 quark67 + + - Fix of a typo + +2019-10-28 doraTeX + + - Support pattern objects with dvipdfmx + +2019-10-18 Henri Menke + + - Race condition in circle radius #756 + +2019-10-20 Mo-Gul + + - Merge pull request #757 from Lipen/patch-1 + +2019-10-19 Konstantin Chukharev + + - Fix typo 'arrow.meta' -> 'arrows.meta' + +2019-09-13 Henri Menke + + - Reset some text parameters inside a node #743 + +2019-09-17 Henri Menke + + - principle -> principal + +2019-09-01 Stefan Pinnow + + - Fix misspelled library names + +2019-09-11 Henri Menke + + - Definition should be deferred to \pgfutil@guessdriver + +2019-09-11 Henri Menke + + - ConTeXt MKIV needs the LuaTeX driver #742 + +2019-09-06 Henri Menke + + - Merge remote-tracking branch 'Mo-Gul/master' + +2019-08-28 Henri Menke + + - Reset \tikz@intersect@namedpaths at scope boundaries, fixes #284 + +2019-08-29 Henri Menke + + - Make \node foreach work if loop variable is used for positioning, fixes #735 + +2019-08-29 Henri Menke + + - Correct some typos, fixes #736 + +2019-08-27 Stefan Pinnow + + - - checked `pattern.meta` library stuff and fixed some minor issues + +2019-08-27 Stefan Pinnow + + - - corrected a word in `pgfmanual-en-dv-axes.tex` - harmonized spelling of `i.e.` and `e.g.` - corrected line breaking in `pgfmanual-en-math-numberprinting.tex` where a |...| was split across lines + +2019-08-27 Mo-Gul + + - Merge pull request #733 from hmenke/PimpCodeexamples + +2019-08-27 Henri Menke + + - New .gitignore needs some special treatment + +2019-08-20 Stefan Pinnow + + - - handled one more `codeexample` that was added after branching. (related issues #640, #711, #729) + +2019-08-05 Mo-Gul + + - - moved `colorlet` to the `codeexample` itself instead of to `pre` in `pgfmanual-en-base-quick.tex` + +2019-07-28 Stefan Pinnow + + - - included issue #720 ("sub-library" should load "main library" by default) - therefore added loading `graphs` library in `graphs.standard` library - adjusted `preamble` code in `codeexample`s accordingly - there exist `graphdrawing` `codeexample`s in the manual that don't need the `graphs` library --> adjusted `codeexample`s accordingly + +2019-07-27 Stefan Pinnow + + - - fixed issue #718 ([manual] \usepgflibrary vs. \usetikzlibrary) + +2019-07-24 Stefan Pinnow + + - - missed to commit/push the Lua documentation stuff - had a look at the `codeexample`s where a leading space was introduced (see https://github.com/pgf-tikz/pgf/pull/711#issuecomment-514506025). Some of them could be removed but others are introduced because of code added to the `pre` key where I don't have a clue if/how this can be avoided + +2019-07-23 Stefan Pinnow + + - - continued(/finished) moving `setup code,hidden` to `preamble` of the `codeexample`s - minor stuff + +2019-07-20 Stefan Pinnow + + - - corrected wrongly commented Lua comments in the Lua documentation files (of commit 900d47729d91dd9ba3eb59de56d5d9a4ba2eb155 + +2019-07-20 Stefan Pinnow + + - - moved `setup code` before `pre` in `extract.lua` - started moving `setup code,hidden` to `preamble` of the `codeexample`s + +2019-07-18 Stefan Pinnow + + - - also need to Lua comment LaTeX comment in the Lua documentation files + +2019-07-18 Stefan Pinnow + + - - commented some more `\begin{codeexample}[setup code,hidden]` (as @hmenke suggested in https://github.com/pgf-tikz/pgf/pull/711#discussion_r304140166) + +2019-07-18 Stefan Pinnow + + - - implemented suggestions given in https://github.com/pgf-tikz/pgf/pull/711 + +2019-07-18 Stefan Pinnow + + - - removed commented/unnecessary stuff from `extract.lua` - minor stuff + +2019-07-14 Stefan Pinnow + + - - accounted for some more `codeexample`s in `tex/generic/graphdrawing/lua/pgf/gd` + +2019-07-13 Stefan Pinnow + + - - adapted `extract.lua` after Henri changed it in Master to also account for the manual files at `/tex/generic/pgf/graphdrawing/lua/pgf/` - accounted for some more `codeexample`s in `doc/generic/pgf/text-en/` + +2019-07-03 Stefan Pinnow + + - - removed an unnecessary empty line + +2019-07-03 Stefan Pinnow + + - - % TODOsp: ... --> % TODOsp: codeexamples: ... (so they can be found more easily) + +2019-07-03 Stefan Pinnow + + - - continued adding code to make extracted `codeexample`s work + +2019-07-02 Stefan Pinnow + + - - changed order of `setup code` and `preamble` in `extract.lua` - continued adding code to make extracted `codeexample`s work + +2019-07-02 Stefan Pinnow + + - - continued adding code to make extracted `codeexample`s work + +2019-07-01 Stefan Pinnow + + - - continued adding code to make extracted `codeexample`s work + +2019-06-27 Stefan Pinnow + + - - finished switching from `libraries/tikz={...}` to `preamble={\usetikzlibrary{...}}` - continued with following files in the manual + +2019-06-26 Stefan Pinnow + + - - adapted `extract.lua` - incorporated fixes from main PGF repository (provided by Henri) - changed `\documentclass` from `article` to `standalone` - reordered some stuff - started switching from `libraries/tikz={...}` to `preamble={\usetikzlibrary{...}}` + +2019-06-25 Stefan Pinnow + + - - added `pre` stuff to codeexamples of the tutorial doc files so fewer files fail TeXing using the build bash script. + +2019-06-25 Stefan Pinnow + + - - finished adding libraries to codeexamples of the tutorial doc files (so far not all needed styles and definitions were added using `pre` key) + +2019-06-24 Stefan Pinnow + + - - commented line that adds all libraries to the extracted codeexamples in `extract.lua` - started adding libraries to the codeexamples + +2019-07-23 Jonathan Spratte + + - fixes #715 + +2019-07-30 Henri Menke + + - .cvsignore -> .gitignore #721 + +2019-07-28 Sašo Živanović + + - Fix a leaking space. + +2019-07-12 Henri Menke + + - Fix text color in nodes #361 + +2019-07-19 Henri Menke + + - Halt on error + +2019-07-18 samcarter + + - On behalf of @marmot : Improving the calculation of bounding boxes for Bezier curves + 2019-08-03 Henri Menke - Release 3.1.4b diff --git a/Master/texmf-dist/doc/generic/pgf/FILES b/Master/texmf-dist/doc/generic/pgf/FILES index 43cfc8e9120..ccea7e29e51 100644 --- a/Master/texmf-dist/doc/generic/pgf/FILES +++ b/Master/texmf-dist/doc/generic/pgf/FILES @@ -1,773 +1,915 @@ -pgf/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-protocol.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-external.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-transformations.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-chains.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-coordinates.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-main-body.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-math-numberprinting.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-svg-path.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-circular.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-backgrounds.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-layers.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-paths.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-dv-polar.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-animations.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-pgf.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-phylogenetics.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-math-parsing.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-binding-layer.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-animations.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-views.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-images.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-fadings.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-commands.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-math-algorithms.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-design.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-arrows.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-transparency.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-spy.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-pgfkeysfiltered.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-license.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-design.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-paths.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-pgffor.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-trees.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-dv-axes.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-math-design.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-automata.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-edges.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-misc.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-shadings.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-plots.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-calendar.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-overview.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-actions.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-math.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-patterns.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tutorial-map.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-plot-marks.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-lsystems.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-trees.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-animations.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-rdf.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-internalregisters.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithm-layer.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-mindmaps.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-pics.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-decorations.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-through.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-scopes.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-external.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-babel.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-dv-visualizers.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-transparency.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-points.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-trees.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-tikz.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tutorial-chains.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-fit.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-plot-handlers.tex -pgf/doc/generic/pgf/text-en/plots/pgf-exp.table -pgf/doc/generic/pgf/text-en/plots/pgfmanual-sine.table -pgf/doc/generic/pgf/text-en/plots/pgf-parametric-example.gnuplot -pgf/doc/generic/pgf/text-en/plots/pgfmanual-sine.gnuplot -pgf/doc/generic/pgf/text-en/plots/pgfplotgnuplot-example.table -pgf/doc/generic/pgf/text-en/plots/pgf-tan-example.gnuplot -pgf/doc/generic/pgf/text-en/plots/pgf-x.gnuplot -pgf/doc/generic/pgf/text-en/plots/pgf-tan-example.table -pgf/doc/generic/pgf/text-en/plots/pgf-asymptotic-example.table -pgf/doc/generic/pgf/text-en/plots/pgfplotgnuplot-example.gnuplot -pgf/doc/generic/pgf/text-en/plots/pgf-parametric-example.table -pgf/doc/generic/pgf/text-en/plots/pgf-asymptotic-example.gnuplot -pgf/doc/generic/pgf/text-en/plots/pgf-sin.gnuplot -pgf/doc/generic/pgf/text-en/plots/pgf-exp.gnuplot -pgf/doc/generic/pgf/text-en/plots/pgf-x.table -pgf/doc/generic/pgf/text-en/plots/pgf-sin.table -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-matrices.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-turtle.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-dv-examples.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-display-layer.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-oo.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-edge-routing.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-patterns.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-shadows.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-xxcolor.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-3d.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-decorations.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tikz-transformations.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-installation.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithms-in-c.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-fixedpoint.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-dv-introduction.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-drivers.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-petri.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-fpu.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-ogdf.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-main-preamble.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-calc.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-pages.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-dv-main.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-circuits.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-examples.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-shadings.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-matrices.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-shapes.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-quick.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-scopes.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-force.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tutorial-nodes.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-guidelines.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-dv-backend.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-angles.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-base-matrices.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-decorations.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-math-commands.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-pgfcalendar.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-introduction.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-overview.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-gd-layered.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-perspective.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-main.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-er.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-folding.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-library-profiler.tex -pgf/doc/generic/pgf/text-en/pgfmanual-en-tutorial-Euclid.tex -pgf/doc/generic/pgf/extract.lua -pgf/doc/generic/pgf/version-for-pdftex/en/Makefile -pgf/doc/generic/pgf/version-for-pdftex/en/pgfmanual.tex -pgf/doc/generic/pgf/version-for-pdftex/pgfmanual-pdftex.cfg -pgf/doc/generic/pgf/pgfmanual.pdf -pgf/doc/generic/pgf/version-for-dvisvgm/pgfmanual-dvisvgm.cfg -pgf/doc/generic/pgf/version-for-dvisvgm/en/pgfmanual-test.tex -pgf/doc/generic/pgf/version-for-dvisvgm/en/Makefile -pgf/doc/generic/pgf/version-for-dvisvgm/en/pgfmanual.html -pgf/doc/generic/pgf/version-for-dvisvgm/en/pgfmanual-test.html -pgf/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-exp.table -pgf/doc/generic/pgf/version-for-dvisvgm/en/plots/pgfmanual-sine.table -pgf/doc/generic/pgf/version-for-dvisvgm/en/plots/pgfplotgnuplot-example.table -pgf/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-tan-example.table -pgf/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-asymptotic-example.table -pgf/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-parametric-example.table -pgf/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-x.table -pgf/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-sin.table -pgf/doc/generic/pgf/version-for-dvisvgm/en/pgfmanual.tex -pgf/doc/generic/pgf/ChangeLog -pgf/doc/generic/pgf/licenses/manifest-documentation.txt -pgf/doc/generic/pgf/licenses/manifest-code.txt -pgf/doc/generic/pgf/licenses/LICENSE -pgf/doc/generic/pgf/licenses/gnu-public-license-2.txt -pgf/doc/generic/pgf/licenses/gnu-free-documentation-license-1.2.txt -pgf/doc/generic/pgf/licenses/latex-project-public-license-1.3c.txt -pgf/doc/generic/pgf/version-for-luatex/pgfmanual-luatex.cfg -pgf/doc/generic/pgf/version-for-luatex/en/pgfmanual-test.tex -pgf/doc/generic/pgf/version-for-luatex/en/Makefile -pgf/doc/generic/pgf/version-for-luatex/en/pgfmanual.tex -pgf/doc/generic/pgf/README-3.0.0 -pgf/doc/generic/pgf/macros/pgfmanual-en-macros.tex -pgf/doc/generic/pgf/FILES -pgf/doc/generic/pgf/version-for-tex4ht/en/Makefile -pgf/doc/generic/pgf/version-for-tex4ht/en/pgfmanual.tex -pgf/doc/generic/pgf/version-for-tex4ht/pgfmanual-tex4ht.cfg -pgf/doc/generic/pgf/images/pgfmanual-mindmap-2.pdf -pgf/doc/generic/pgf/images/brave-gnu-world-logo.25.bb -pgf/doc/generic/pgf/images/brave-gnu-world-logo.25.jpg -pgf/doc/generic/pgf/images/brave-gnu-world-logo.jpg -pgf/doc/generic/pgf/images/brave-gnu-world-logo.xbb -pgf/doc/generic/pgf/images/brave-gnu-world-logo-mask.bb -pgf/doc/generic/pgf/images/brave-gnu-world-logo.bb -pgf/doc/generic/pgf/images/brave-gnu-world-logo.25.eps -pgf/doc/generic/pgf/images/brave-gnu-world-logo-mask.jpg -pgf/doc/generic/pgf/images/pgfmanual-mindmap-1.pdf -pgf/doc/generic/pgf/images/brave-gnu-world-logo.eps -pgf/doc/generic/pgf/version-for-dvipdfmx/pgfmanual-dvipdfmx.cfg -pgf/doc/generic/pgf/version-for-dvipdfmx/en/pgfmanual-test.tex -pgf/doc/generic/pgf/version-for-dvipdfmx/en/Makefile -pgf/doc/generic/pgf/version-for-dvipdfmx/en/pgfmanual.tex -pgf/doc/generic/pgf/version-for-vtex/pgfmanual-vtex.cfg -pgf/doc/generic/pgf/version-for-vtex/en/Makefile -pgf/doc/generic/pgf/version-for-vtex/en/pgfmanual.tex -pgf/doc/generic/pgf/README -pgf/doc/generic/pgf/version-for-dvips/pgfmanual-dvips.cfg -pgf/doc/generic/pgf/version-for-dvips/en/Makefile -pgf/doc/generic/pgf/version-for-dvips/en/pgfmanual.tex -pgf/doc/generic/pgf/INSTALL -pgf/doc/generic/pgf/version-for-dvipdfm/pgfmanual-dvipdfm.cfg -pgf/doc/generic/pgf/version-for-dvipdfm/en/Makefile -pgf/doc/generic/pgf/version-for-dvipdfm/en/pgfmanual.tex -pgf/doc/generic/pgf/version-for-xetex/pgfmanual-xetex.cfg -pgf/doc/generic/pgf/version-for-xetex/en/Makefile -pgf/doc/generic/pgf/version-for-xetex/en/pgfmanual.tex -pgf/doc/generic/pgf/AUTHORS -pgf/source/generic/pgf/testsuite/mathtest/unittest_luamathparser.tex -pgf/source/generic/pgf/testsuite/mathtest/pgfmathtestsuite.tex -pgf/source/generic/pgf/testsuite/external/tikzexternaltest.code.tex -pgf/source/generic/pgf/testsuite/external/Makefile -pgf/source/generic/pgf/testsuite/external/tikzexternaltest.sharedpreamble.tex -pgf/source/generic/pgf/testsuite/external/tikzexternaltest.tex -pgf/source/generic/pgf/testsuite/external/tikzexternaltestmakefile.tex -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/examples/c/SimpleDemoC.c -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/examples/c/SimpleDemoCPlusPlus.c++ -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/examples/c/Makefile -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/interface/c/InterfaceFromC++.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/interface/c/Makefile -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/interface/c/InterfaceFromC++.c++ -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/interface/c/InterfaceFromC.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/interface/c/InterfaceFromC.c -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/SimpleDemoOGDF.c++ -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/planarity/planarity_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/planarity/PlanarizationLayout_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/module/module_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/Makefile -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/ogdf_script.c++ -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/energybased_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/CirclePlacer_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/MatchingMerger_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/IndependentSetMerger_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/SolarPlacer_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/LocalBiconnectedMerger_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/RandomMerger_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/EdgeCoverMerger_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/ZeroPlacer_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/multilevelmixer_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/SolarMerger_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/RandomPlacer_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/MedianPlacer_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/BarycenterPlacer_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/FMMMLayout_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/FastMultipoleEmbedder_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/SpringEmbedderFR_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/SpringEmbedderKK_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/GEMLayout_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/MultilevelLayout_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/SpringEmbedderFRExact_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/InterfaceFromOGDF.c++ -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/DfsAcyclicSubgraph_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/BarycenterHeuristic_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/LongestPathRanking_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/SplitHeuristic_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/MedianHeuristic_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/GreedyCycleRemoval_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/SugiyamaLayout_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/layered_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/SiftingHeuristic_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/GreedyInsertHeuristic_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/CoffmanGrahamRanking_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/OptimalRanking_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/FastHierarchyLayout_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/FastSimpleHierarchyLayout_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/InterfaceFromOGDF.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/misclayout/misclayout_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/misclayout/CircularLayout_script.h -pgf/source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/misclayout/BalloonLayout_script.h -pgf/source/generic/pgf/c/Makefile -pgf/source/generic/pgf/c/INSTALL -pgf/source/generic/pgf/c/config/ExampleLocalMakefileConfig.mk -pgf/source/generic/pgf/c/config/MakefileConfig.mk -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/SpringLayouts.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/CoarseGraph.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlElectric.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlSprings.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/QuadTree.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/SpringElectricalHu2006.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlCoarsening.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/base/ForceTemplate.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/base/CoarseGraphFW.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/base/InitialTemplate.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/base/Preprocessing.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/base/ForceController.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/base/PathLengthsFW.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/doc.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/forcetypes/ForceGraphDistance.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/forcetypes/ForceCanvasDistance.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/forcetypes/ForceAbsoluteValue.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/forcetypes/ForceCanvasPosition.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/forcetypes/ForcePullToGrid.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/forcetypes/ForcePullToPoint.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/SocialGravityDegree.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/SimpleSpring.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/SocialGravityCloseness.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/FruchtermanReingold.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/HuSpringElectricalFW.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/initialpositioning/CircularInitialPositioning.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/initialpositioning/GridInitialPositioning.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/initialpositioning/RandomInitialPositioning.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/SpringHu2006.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlStart.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlIteration.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlDeclare.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/SpringElectricalLayouts.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force/SpringElectricalWalshaw2000.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/force.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/interface.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/ASCIIDisplayer.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/BindingToASCII.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/SimpleDemo.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/SimpleEdgeDemo.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/SimpleHuffman.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/example_graph_for_ascii_displayer.txt -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/interface/InterfaceCore.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/interface/InterfaceToC.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/interface/Scope.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/interface/InterfaceToDisplay.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/interface/InterfaceToAlgorithms.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/planar.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/model.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/PhylogeneticTree.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/Maeusle2012.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/AuthorDefinedPhylogeny.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/DistanceMatrix.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/BalancedNearestNeighbourInterchange.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/BalancedMinimumEvolution.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/SokalMichener1958.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/bindings/BindingToPGF.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/bindings/Binding.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/trees/doc.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/trees/ChildSpec.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/trees/SpanningTreeComputation.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/trees/ReingoldTilford1981.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/trees/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/lib.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/DepthFirstSearch.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Bezier.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Simplifiers.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/PriorityQueue.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Stack.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Storage.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Event.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Direct.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/LookupTable.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/PathLengths.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Transform.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/planarity/PlanarizationLayout.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/module/AcyclicSubgraphModule.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/module/InitialPlacer.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/module/HierarchyLayoutModule.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/module/RankingModule.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/module/MultilevelBuilder.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/module/TwoLayerCrossMin.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/planarity.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/SpringEmbedderFRExact.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/MultilevelLayout.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/IndependentSetMerger.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/BarycenterPlacer.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/MatchingMerger.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/MedianPlacer.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/RandomPlacer.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/EdgeCoverMerger.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/RandomMerger.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/SolarMerger.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/CirclePlacer.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/LocalBiconnectedMerger.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/SolarPlacer.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/ZeroPlacer.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/SpringEmbedderKK.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/FMMMLayout.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/GEMLayout.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/SpringEmbedderFR.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/FastMultipoleEmbedder.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/misclayout.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/SplitHeuristic.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/SugiyamaLayout.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/MedianHeuristic.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/DfsAcyclicSubgraph.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/BarycenterHeuristic.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/FastHierarchyLayout.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/LongestPathRanking.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/OptimalRanking.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/FastSimpleHierarchyLayout.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/GreedyCycleRemoval.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/SiftingHeuristic.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/GreedyInsertHeuristic.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/CoffmanGrahamRanking.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/misclayout/BalloonLayout.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/misclayout/CircularLayout.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/ogdf.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/pedigrees/Koerner2015.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/pedigrees/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/ComponentAlign.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/doc.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/FineTune.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/Orientation.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/ComponentDistance.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/NodeAnchors.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/Anchoring.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/ComponentOrder.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/Components.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/ComponentDirection.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/LayoutPipeline.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/Distances.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/control/Sublayouts.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/circular.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/routing.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Hyperedge.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Digraph.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/model/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Vertex.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Coordinate.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Arc.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Collection.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Edge.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Path_arced.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Path.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/pedigrees.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/examples.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/deprecated/Node.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/deprecated/Graph.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/deprecated/Iterators.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/deprecated/Vector.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/deprecated/Cluster.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/deprecated/Edge.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/NodePositioningGansnerKNV1993.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/node_ranking.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/Ranking.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/CycleRemovalEadesLS1993.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/crossing_minimization.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/CycleRemovalBergerS1990b.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/Sugiyama.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/edge_routing.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/node_positioning.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/cycle_removal.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/NetworkSimplex.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/EdgeRoutingGansnerKNV1993.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/CrossingMinimizationGansnerKNV1993.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/CycleRemovalBergerS1990a.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/NodeRankingMinimumHeight.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/NodeRankingGansnerKNV1993.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/CycleRemovalGansnerKNV1993.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/trees.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/ogdf/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/routing/NecklaceRouting.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/routing/Hints.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/routing/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/ShiftMethod.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/LinkedList.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/BoyerMyrvold2004.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/PDP.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/parameters.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/Embedding.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/PlanarLayout.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/List.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/tools/make_gd_wrap.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/SupergraphVertexSplitOptimization.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/doc.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/GreedyTemporalCycleRemoval.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/Supergraph.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/Skambath2016.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/layered.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/GraphAnimationCoordination.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/TimeSpec.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/bindings.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/circular/Tantau2012.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/circular/doc.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd/circular/library.lua -pgf/tex/generic/pgf/graphdrawing/lua/pgf/gd.lua -pgf/tex/generic/pgf/graphdrawing/lua/LUA_CODING_STYLE -pgf/tex/generic/pgf/graphdrawing/lua/pgf.lua -pgf/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.force.code.tex -pgf/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.code.tex -pgf/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.layered.code.tex -pgf/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.circular.code.tex -pgf/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.trees.code.tex -pgf/tex/generic/pgf/graphdrawing/tex/experimental/tikzlibrarygraphdrawing.evolving.code.tex -pgf/tex/generic/pgf/graphdrawing/tex/tikzlibrarygraphdrawing.code.tex -pgf/tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.examples.code.tex -pgf/tex/generic/pgf/modules/pgfmoduledecorations.code.tex -pgf/tex/generic/pgf/modules/pgfmodulesorting.code.tex -pgf/tex/generic/pgf/modules/pgfmoduledatavisualization.code.tex -pgf/tex/generic/pgf/modules/pgfmoduleplot.code.tex -pgf/tex/generic/pgf/modules/pgfmodulebending.code.tex -pgf/tex/generic/pgf/modules/pgfmodulenonlineartransformations.code.tex -pgf/tex/generic/pgf/modules/pgfmodulesnakes.code.tex -pgf/tex/generic/pgf/modules/pgfmoduleoo.code.tex -pgf/tex/generic/pgf/modules/pgfmodulematrix.code.tex -pgf/tex/generic/pgf/modules/pgfmoduleparser.code.tex -pgf/tex/generic/pgf/modules/pgfmoduleshapes.code.tex -pgf/tex/generic/pgf/modules/pgfmoduleanimations.code.tex -pgf/tex/generic/pgf/lua/pgf/manual/DocumentParser.lua -pgf/tex/generic/pgf/lua/pgf/manual.lua -pgf/tex/generic/pgf/math/pgfmath.code.tex -pgf/tex/generic/pgf/math/pgfmathfunctions.misc.code.tex -pgf/tex/generic/pgf/math/pgfmathutil.code.tex -pgf/tex/generic/pgf/math/pgfmathfunctions.random.code.tex -pgf/tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex -pgf/tex/generic/pgf/math/pgfmathparser.code.tex -pgf/tex/generic/pgf/math/pgfmathode.code.tex -pgf/tex/generic/pgf/math/pgfint.code.tex -pgf/tex/generic/pgf/math/pgfmathcalc.code.tex -pgf/tex/generic/pgf/math/pgfmathfunctions.base.code.tex -pgf/tex/generic/pgf/math/pgfmathfunctions.basic.code.tex -pgf/tex/generic/pgf/math/pgfmathfunctions.integerarithmetics.code.tex -pgf/tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex -pgf/tex/generic/pgf/math/pgfmathfloat.code.tex -pgf/tex/generic/pgf/math/pgfmathfunctions.round.code.tex -pgf/tex/generic/pgf/math/pgfmathfunctions.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathreplacing.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryturtle.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypositioning.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplothandlers.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryscopes.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryanimations.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymindmap.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.US.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.footprints.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryspy.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybabel.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryviews.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfpu.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymath.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarychains.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryer.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarylindenmayersystems.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfixedpointarithmetic.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryperspective.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.IEC.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.IEC.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.US.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.CDH.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryautomata.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.meta.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysvg.path.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.fractals.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.text.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytrees.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadings.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypetri.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.standard.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalendar.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryintersections.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysnakes.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzexternalshared.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.polar.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.formats.functions.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.sparklines.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.barcharts.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.3d.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryangles.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalc.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplotmarks.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryrdf.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarythrough.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.shapes.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.IEC.code.tex -pgf/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathmorphing.code.tex -pgf/tex/generic/pgf/utilities/pgfcalendar.code.tex -pgf/tex/generic/pgf/utilities/pgfexternalwithdepth.tex -pgf/tex/generic/pgf/utilities/pgffor.code.tex -pgf/tex/generic/pgf/utilities/pgfutil-common.tex -pgf/tex/generic/pgf/utilities/pgfrcs.code.tex -pgf/tex/generic/pgf/utilities/pgfexternal.tex -pgf/tex/generic/pgf/utilities/pgfutil-context.def -pgf/tex/generic/pgf/utilities/pgfutil-plain.def -pgf/tex/generic/pgf/utilities/pgfutil-latex.def -pgf/tex/generic/pgf/utilities/pgfkeysfiltered.code.tex -pgf/tex/generic/pgf/utilities/pgfkeys.code.tex -pgf/tex/generic/pgf/utilities/pgfutil-common-lists.tex -pgf/tex/generic/pgf/libraries/pgflibraryintersections.code.tex -pgf/tex/generic/pgf/libraries/pgflibraryarrows.code.tex -pgf/tex/generic/pgf/libraries/pgflibraryarrows.spaced.code.tex -pgf/tex/generic/pgf/libraries/pgflibraryfadings.code.tex -pgf/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex -pgf/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex -pgf/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex -pgf/tex/generic/pgf/libraries/shapes/pgflibraryshapes.code.tex -pgf/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex -pgf/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.US.code.tex -pgf/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.ee.IEC.code.tex -pgf/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.ee.code.tex -pgf/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.code.tex -pgf/tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.IEC.code.tex -pgf/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex -pgf/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex -pgf/tex/generic/pgf/libraries/pgflibrarypatterns.meta.code.tex -pgf/tex/generic/pgf/libraries/pgflibrarycurvilinear.code.tex -pgf/tex/generic/pgf/libraries/luamath/pgf/luamath/parser.lua -pgf/tex/generic/pgf/libraries/luamath/pgf/luamath/functions.lua -pgf/tex/generic/pgf/libraries/luamath/pgflibraryluamath.code.tex -pgf/tex/generic/pgf/libraries/pgflibraryplotmarks.code.tex -pgf/tex/generic/pgf/libraries/pgflibrarylindenmayersystems.code.tex -pgf/tex/generic/pgf/libraries/pgflibrarytimelines.code.tex -pgf/tex/generic/pgf/libraries/pgflibrarysnakes.code.tex -pgf/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex -pgf/tex/generic/pgf/libraries/pgflibraryarrows.meta.code.tex -pgf/tex/generic/pgf/libraries/pgflibraryprofiler.code.tex -pgf/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.polar.code.tex -pgf/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.formats.functions.code.tex -pgf/tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.barcharts.code.tex -pgf/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.footprints.code.tex -pgf/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.pathreplacing.code.tex -pgf/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.shapes.code.tex -pgf/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.pathmorphing.code.tex -pgf/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.fractals.code.tex -pgf/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.markings.code.tex -pgf/tex/generic/pgf/libraries/decorations/pgflibrarydecorations.text.code.tex -pgf/tex/generic/pgf/libraries/pgflibraryshadings.code.tex -pgf/tex/generic/pgf/libraries/pgflibraryfixedpointarithmetic.code.tex -pgf/tex/generic/pgf/libraries/pgflibrarypatterns.code.tex -pgf/tex/generic/pgf/libraries/pgflibrarysvg.path.code.tex -pgf/tex/generic/pgf/libraries/pgflibraryfpu.code.tex -pgf/tex/generic/pgf/pgf.revision.tex -pgf/tex/generic/pgf/systemlayer/pgfsys-common-postscript.def -pgf/tex/generic/pgf/systemlayer/pgfsys-dvi.def -pgf/tex/generic/pgf/systemlayer/pgfsys-dvips.def -pgf/tex/generic/pgf/systemlayer/pgfsys-dvipdfmx.def -pgf/tex/generic/pgf/systemlayer/pgfsys-dvisvgm.def -pgf/tex/generic/pgf/systemlayer/pgfsys-common-pdf-via-dvi.def -pgf/tex/generic/pgf/systemlayer/pgfsys-pdftex.def -pgf/tex/generic/pgf/systemlayer/pgf.cfg -pgf/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex -pgf/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex -pgf/tex/generic/pgf/systemlayer/pgfsys-xetex.def -pgf/tex/generic/pgf/systemlayer/pgfsys-dvipdfm.def -pgf/tex/generic/pgf/systemlayer/pgfsys-luatex.def -pgf/tex/generic/pgf/systemlayer/pgfsys-vtex.def -pgf/tex/generic/pgf/systemlayer/pgfsys.code.tex -pgf/tex/generic/pgf/systemlayer/pgfsys-common-pdf.def -pgf/tex/generic/pgf/systemlayer/pgfsysanimations.code.tex -pgf/tex/generic/pgf/systemlayer/pgfsys-common-svg.def -pgf/tex/generic/pgf/systemlayer/pgfsys-textures.def -pgf/tex/generic/pgf/systemlayer/pgfsys-tex4ht.def -pgf/tex/generic/pgf/basiclayer/pgfcorepoints.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcorequick.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcore.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcorearrows.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcorescopes.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcorelayers.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcorerdf.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcoreshade.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcoreimage.code.tex -pgf/tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex -pgf/tex/plain/pgf/math/pgfmath.tex -pgf/tex/plain/pgf/frontendlayer/tikz.tex -pgf/tex/plain/pgf/utilities/pgfcalendar.tex -pgf/tex/plain/pgf/utilities/pgfkeys.tex -pgf/tex/plain/pgf/utilities/pgfrcs.tex -pgf/tex/plain/pgf/utilities/pgffor.tex -pgf/tex/plain/pgf/systemlayer/pgfsys.tex -pgf/tex/plain/pgf/basiclayer/pgfbasepatterns.tex -pgf/tex/plain/pgf/basiclayer/pgfbasematrix.tex -pgf/tex/plain/pgf/basiclayer/pgfbasesnakes.tex -pgf/tex/plain/pgf/basiclayer/pgfbaseplot.tex -pgf/tex/plain/pgf/basiclayer/pgfbaseimage.tex -pgf/tex/plain/pgf/basiclayer/pgfbaselayers.tex -pgf/tex/plain/pgf/basiclayer/pgfbaseshapes.tex -pgf/tex/plain/pgf/basiclayer/pgf.tex -pgf/tex/plain/pgf/basiclayer/pgfcore.tex -pgf/tex/latex/pgf/doc/pgfmanual.prettyprinter.code.tex -pgf/tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex -pgf/tex/latex/pgf/doc/pgfmanual.code.tex -pgf/tex/latex/pgf/doc/pgfmanual.sty -pgf/tex/latex/pgf/math/pgfmath.sty -pgf/tex/latex/pgf/frontendlayer/tikz.sty -pgf/tex/latex/pgf/frontendlayer/libraries/tikzlibraryexternal.code.tex -pgf/tex/latex/pgf/frontendlayer/pgfpict2e.sty -pgf/tex/latex/pgf/utilities/pgfrcs.sty -pgf/tex/latex/pgf/utilities/pgfkeys.sty -pgf/tex/latex/pgf/utilities/pgfpages.sty -pgf/tex/latex/pgf/utilities/pgfcalendar.sty -pgf/tex/latex/pgf/utilities/xxcolor.sty -pgf/tex/latex/pgf/utilities/tikzexternal.sty -pgf/tex/latex/pgf/utilities/pgffor.sty -pgf/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty -pgf/tex/latex/pgf/compatibility/pgflibrarysnakes.sty -pgf/tex/latex/pgf/compatibility/pgflibraryshapes.sty -pgf/tex/latex/pgf/compatibility/pgfautomata.sty -pgf/tex/latex/pgf/compatibility/pgflibraryplotmarks.sty -pgf/tex/latex/pgf/compatibility/pgfheaps.sty -pgf/tex/latex/pgf/compatibility/pgfshade.sty -pgf/tex/latex/pgf/compatibility/pgflibraryplothandlers.sty -pgf/tex/latex/pgf/compatibility/pgflibrarytikzbackgrounds.sty -pgf/tex/latex/pgf/compatibility/pgflibraryarrows.sty -pgf/tex/latex/pgf/compatibility/pgflibrarytikztrees.sty -pgf/tex/latex/pgf/compatibility/pgfnodes.sty -pgf/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty -pgf/tex/latex/pgf/compatibility/pgfarrows.sty -pgf/tex/latex/pgf/compatibility/pgflibraryautomata.sty -pgf/tex/latex/pgf/systemlayer/pgfsys.sty -pgf/tex/latex/pgf/basiclayer/pgfbasematrix.sty -pgf/tex/latex/pgf/basiclayer/pgfbasepatterns.sty -pgf/tex/latex/pgf/basiclayer/pgfcore.sty -pgf/tex/latex/pgf/basiclayer/pgf.sty -pgf/tex/latex/pgf/basiclayer/pgfbaseplot.sty -pgf/tex/latex/pgf/basiclayer/pgfbaseimage.sty -pgf/tex/latex/pgf/basiclayer/pgfbasesnakes.sty -pgf/tex/latex/pgf/basiclayer/pgfbaselayers.sty -pgf/tex/latex/pgf/basiclayer/pgfbaseshapes.sty -pgf/tex/context/third/pgf/math/t-pgfmat.tex -pgf/tex/context/third/pgf/frontendlayer/t-tikz.tex -pgf/tex/context/third/pgf/utilities/t-pgfrcs.tex -pgf/tex/context/third/pgf/utilities/t-pgfkey.tex -pgf/tex/context/third/pgf/utilities/t-pgfcal.tex -pgf/tex/context/third/pgf/utilities/t-pgfmod.tex -pgf/tex/context/third/pgf/utilities/t-pgffor.tex -pgf/tex/context/third/pgf/systemlayer/t-pgfsys.tex -pgf/tex/context/third/pgf/basiclayer/t-pgfbla.tex -pgf/tex/context/third/pgf/basiclayer/t-pgfcor.tex -pgf/tex/context/third/pgf/basiclayer/t-pgfbpt.tex -pgf/tex/context/third/pgf/basiclayer/t-pgfbsh.tex -pgf/tex/context/third/pgf/basiclayer/t-pgfbma.tex -pgf/tex/context/third/pgf/basiclayer/t-pgf.tex -pgf/tex/context/third/pgf/basiclayer/t-pgfbim.tex -pgf/tex/context/third/pgf/basiclayer/t-pgfbsn.tex -pgf/tex/context/third/pgf/basiclayer/t-pgfbpl.tex +doc/generic/pgf/AUTHORS +doc/generic/pgf/ChangeLog +doc/generic/pgf/FILES +doc/generic/pgf/INSTALL +doc/generic/pgf/README +doc/generic/pgf/extract.lua +doc/generic/pgf/images/brave-gnu-world-logo-mask.bb +doc/generic/pgf/images/brave-gnu-world-logo-mask.jpg +doc/generic/pgf/images/brave-gnu-world-logo.25.bb +doc/generic/pgf/images/brave-gnu-world-logo.25.eps +doc/generic/pgf/images/brave-gnu-world-logo.25.jpg +doc/generic/pgf/images/brave-gnu-world-logo.bb +doc/generic/pgf/images/brave-gnu-world-logo.eps +doc/generic/pgf/images/brave-gnu-world-logo.jpg +doc/generic/pgf/images/brave-gnu-world-logo.xbb +doc/generic/pgf/images/pgfmanual-mindmap-1.pdf +doc/generic/pgf/images/pgfmanual-mindmap-2.pdf +doc/generic/pgf/licenses/LICENSE +doc/generic/pgf/licenses/gnu-free-documentation-license-1.2.txt +doc/generic/pgf/licenses/gnu-public-license-2.txt +doc/generic/pgf/licenses/latex-project-public-license-1.3c.txt +doc/generic/pgf/licenses/manifest-code.txt +doc/generic/pgf/licenses/manifest-documentation.txt +doc/generic/pgf/macros/pgfmanual-en-macros.tex +doc/generic/pgf/pgfmanual.pdf +doc/generic/pgf/text-en/pgfmanual-en-base-actions.tex +doc/generic/pgf/text-en/pgfmanual-en-base-animations.tex +doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex +doc/generic/pgf/text-en/pgfmanual-en-base-decorations.tex +doc/generic/pgf/text-en/pgfmanual-en-base-design.tex +doc/generic/pgf/text-en/pgfmanual-en-base-external.tex +doc/generic/pgf/text-en/pgfmanual-en-base-images.tex +doc/generic/pgf/text-en/pgfmanual-en-base-internalregisters.tex +doc/generic/pgf/text-en/pgfmanual-en-base-layers.tex +doc/generic/pgf/text-en/pgfmanual-en-base-matrices.tex +doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex +doc/generic/pgf/text-en/pgfmanual-en-base-paths.tex +doc/generic/pgf/text-en/pgfmanual-en-base-patterns.tex +doc/generic/pgf/text-en/pgfmanual-en-base-plots.tex +doc/generic/pgf/text-en/pgfmanual-en-base-points.tex +doc/generic/pgf/text-en/pgfmanual-en-base-quick.tex +doc/generic/pgf/text-en/pgfmanual-en-base-scopes.tex +doc/generic/pgf/text-en/pgfmanual-en-base-shadings.tex +doc/generic/pgf/text-en/pgfmanual-en-base-transformations.tex +doc/generic/pgf/text-en/pgfmanual-en-base-transparency.tex +doc/generic/pgf/text-en/pgfmanual-en-drivers.tex +doc/generic/pgf/text-en/pgfmanual-en-dv-axes.tex +doc/generic/pgf/text-en/pgfmanual-en-dv-backend.tex +doc/generic/pgf/text-en/pgfmanual-en-dv-examples.tex +doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex +doc/generic/pgf/text-en/pgfmanual-en-dv-introduction.tex +doc/generic/pgf/text-en/pgfmanual-en-dv-main.tex +doc/generic/pgf/text-en/pgfmanual-en-dv-polar.tex +doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex +doc/generic/pgf/text-en/pgfmanual-en-dv-visualizers.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-algorithm-layer.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-algorithms-in-c.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-binding-layer.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-circular.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-display-layer.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-edge-routing.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-examples.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-force.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-layered.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-misc.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-ogdf.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-overview.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-phylogenetics.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-trees.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-usage-pgf.tex +doc/generic/pgf/text-en/pgfmanual-en-gd-usage-tikz.tex +doc/generic/pgf/text-en/pgfmanual-en-guidelines.tex +doc/generic/pgf/text-en/pgfmanual-en-installation.tex +doc/generic/pgf/text-en/pgfmanual-en-introduction.tex +doc/generic/pgf/text-en/pgfmanual-en-library-3d.tex +doc/generic/pgf/text-en/pgfmanual-en-library-angles.tex +doc/generic/pgf/text-en/pgfmanual-en-library-arrows.tex +doc/generic/pgf/text-en/pgfmanual-en-library-automata.tex +doc/generic/pgf/text-en/pgfmanual-en-library-babel.tex +doc/generic/pgf/text-en/pgfmanual-en-library-backgrounds.tex +doc/generic/pgf/text-en/pgfmanual-en-library-bbox.tex +doc/generic/pgf/text-en/pgfmanual-en-library-calc.tex +doc/generic/pgf/text-en/pgfmanual-en-library-calendar.tex +doc/generic/pgf/text-en/pgfmanual-en-library-chains.tex +doc/generic/pgf/text-en/pgfmanual-en-library-circuits.tex +doc/generic/pgf/text-en/pgfmanual-en-library-decorations.tex +doc/generic/pgf/text-en/pgfmanual-en-library-edges.tex +doc/generic/pgf/text-en/pgfmanual-en-library-er.tex +doc/generic/pgf/text-en/pgfmanual-en-library-external.tex +doc/generic/pgf/text-en/pgfmanual-en-library-fadings.tex +doc/generic/pgf/text-en/pgfmanual-en-library-fit.tex +doc/generic/pgf/text-en/pgfmanual-en-library-fixedpoint.tex +doc/generic/pgf/text-en/pgfmanual-en-library-folding.tex +doc/generic/pgf/text-en/pgfmanual-en-library-fpu.tex +doc/generic/pgf/text-en/pgfmanual-en-library-lsystems.tex +doc/generic/pgf/text-en/pgfmanual-en-library-math.tex +doc/generic/pgf/text-en/pgfmanual-en-library-matrices.tex +doc/generic/pgf/text-en/pgfmanual-en-library-mindmaps.tex +doc/generic/pgf/text-en/pgfmanual-en-library-patterns.tex +doc/generic/pgf/text-en/pgfmanual-en-library-perspective.tex +doc/generic/pgf/text-en/pgfmanual-en-library-petri.tex +doc/generic/pgf/text-en/pgfmanual-en-library-plot-handlers.tex +doc/generic/pgf/text-en/pgfmanual-en-library-plot-marks.tex +doc/generic/pgf/text-en/pgfmanual-en-library-profiler.tex +doc/generic/pgf/text-en/pgfmanual-en-library-rdf.tex +doc/generic/pgf/text-en/pgfmanual-en-library-shadings.tex +doc/generic/pgf/text-en/pgfmanual-en-library-shadows.tex +doc/generic/pgf/text-en/pgfmanual-en-library-shapes.tex +doc/generic/pgf/text-en/pgfmanual-en-library-spy.tex +doc/generic/pgf/text-en/pgfmanual-en-library-svg-path.tex +doc/generic/pgf/text-en/pgfmanual-en-library-through.tex +doc/generic/pgf/text-en/pgfmanual-en-library-trees.tex +doc/generic/pgf/text-en/pgfmanual-en-library-turtle.tex +doc/generic/pgf/text-en/pgfmanual-en-library-views.tex +doc/generic/pgf/text-en/pgfmanual-en-license.tex +doc/generic/pgf/text-en/pgfmanual-en-main-body.tex +doc/generic/pgf/text-en/pgfmanual-en-main-preamble.tex +doc/generic/pgf/text-en/pgfmanual-en-main.tex +doc/generic/pgf/text-en/pgfmanual-en-math-algorithms.tex +doc/generic/pgf/text-en/pgfmanual-en-math-commands.tex +doc/generic/pgf/text-en/pgfmanual-en-math-design.tex +doc/generic/pgf/text-en/pgfmanual-en-math-numberprinting.tex +doc/generic/pgf/text-en/pgfmanual-en-math-parsing.tex +doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex +doc/generic/pgf/text-en/pgfmanual-en-oo.tex +doc/generic/pgf/text-en/pgfmanual-en-pages.tex +doc/generic/pgf/text-en/pgfmanual-en-pgfcalendar.tex +doc/generic/pgf/text-en/pgfmanual-en-pgffor.tex +doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex +doc/generic/pgf/text-en/pgfmanual-en-pgfkeysfiltered.tex +doc/generic/pgf/text-en/pgfmanual-en-pgfsys-animations.tex +doc/generic/pgf/text-en/pgfmanual-en-pgfsys-commands.tex +doc/generic/pgf/text-en/pgfmanual-en-pgfsys-overview.tex +doc/generic/pgf/text-en/pgfmanual-en-pgfsys-paths.tex +doc/generic/pgf/text-en/pgfmanual-en-pgfsys-protocol.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-animations.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-coordinates.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-decorations.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-design.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-matrices.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-pics.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-scopes.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-transformations.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-transparency.tex +doc/generic/pgf/text-en/pgfmanual-en-tikz-trees.tex +doc/generic/pgf/text-en/pgfmanual-en-tutorial-Euclid.tex +doc/generic/pgf/text-en/pgfmanual-en-tutorial-chains.tex +doc/generic/pgf/text-en/pgfmanual-en-tutorial-map.tex +doc/generic/pgf/text-en/pgfmanual-en-tutorial-nodes.tex +doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex +doc/generic/pgf/text-en/pgfmanual-en-xxcolor.tex +doc/generic/pgf/text-en/plots/pgf-asymptotic-example.gnuplot +doc/generic/pgf/text-en/plots/pgf-asymptotic-example.table +doc/generic/pgf/text-en/plots/pgf-exp.gnuplot +doc/generic/pgf/text-en/plots/pgf-exp.table +doc/generic/pgf/text-en/plots/pgf-parametric-example.gnuplot +doc/generic/pgf/text-en/plots/pgf-parametric-example.table +doc/generic/pgf/text-en/plots/pgf-sin.gnuplot +doc/generic/pgf/text-en/plots/pgf-sin.table +doc/generic/pgf/text-en/plots/pgf-tan-example.gnuplot +doc/generic/pgf/text-en/plots/pgf-tan-example.table +doc/generic/pgf/text-en/plots/pgf-x.gnuplot +doc/generic/pgf/text-en/plots/pgf-x.table +doc/generic/pgf/text-en/plots/pgfmanual-sine.gnuplot +doc/generic/pgf/text-en/plots/pgfmanual-sine.table +doc/generic/pgf/text-en/plots/pgfplotgnuplot-example.gnuplot +doc/generic/pgf/text-en/plots/pgfplotgnuplot-example.table +doc/generic/pgf/version-for-dvipdfm/en/Makefile +doc/generic/pgf/version-for-dvipdfm/en/pgfmanual.tex +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-asymptotic-example.gnuplot +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-asymptotic-example.table +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-exp.gnuplot +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-exp.table +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-parametric-example-cut.gnuplot +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-parametric-example.gnuplot +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-parametric-example.table +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-sin.gnuplot +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-sin.table +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-tan-example.gnuplot +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-tan-example.table +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-x.gnuplot +doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-x.table +doc/generic/pgf/version-for-dvipdfm/en/plots/pgfmanual-sine.gnuplot +doc/generic/pgf/version-for-dvipdfm/en/plots/pgfmanual-sine.table +doc/generic/pgf/version-for-dvipdfm/en/plots/pgfplotgnuplot-example.gnuplot +doc/generic/pgf/version-for-dvipdfm/en/plots/pgfplotgnuplot-example.table +doc/generic/pgf/version-for-dvipdfm/pgfmanual-dvipdfm.cfg +doc/generic/pgf/version-for-dvipdfmx/en/Makefile +doc/generic/pgf/version-for-dvipdfmx/en/pgfmanual-test.tex +doc/generic/pgf/version-for-dvipdfmx/en/pgfmanual.tex +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-asymptotic-example.gnuplot +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-asymptotic-example.table +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-exp.gnuplot +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-exp.table +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example-cut.gnuplot +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example-cut.table +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example.gnuplot +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example.table +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-sin.gnuplot +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-sin.table +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-tan-example.gnuplot +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-tan-example.table +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-x.gnuplot +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-x.table +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfmanual-sine.gnuplot +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfmanual-sine.table +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfplotgnuplot-example.gnuplot +doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfplotgnuplot-example.table +doc/generic/pgf/version-for-dvipdfmx/pgfmanual-dvipdfmx.cfg +doc/generic/pgf/version-for-dvips/en/Makefile +doc/generic/pgf/version-for-dvips/en/pgfmanual-test.tex +doc/generic/pgf/version-for-dvips/en/pgfmanual.tex +doc/generic/pgf/version-for-dvips/en/plots/pgf-asymptotic-example.gnuplot +doc/generic/pgf/version-for-dvips/en/plots/pgf-asymptotic-example.table +doc/generic/pgf/version-for-dvips/en/plots/pgf-exp.gnuplot +doc/generic/pgf/version-for-dvips/en/plots/pgf-exp.table +doc/generic/pgf/version-for-dvips/en/plots/pgf-parametric-example-cut.gnuplot +doc/generic/pgf/version-for-dvips/en/plots/pgf-parametric-example.gnuplot +doc/generic/pgf/version-for-dvips/en/plots/pgf-parametric-example.table +doc/generic/pgf/version-for-dvips/en/plots/pgf-sin.gnuplot +doc/generic/pgf/version-for-dvips/en/plots/pgf-sin.table +doc/generic/pgf/version-for-dvips/en/plots/pgf-tan-example.gnuplot +doc/generic/pgf/version-for-dvips/en/plots/pgf-tan-example.table +doc/generic/pgf/version-for-dvips/en/plots/pgf-x.gnuplot +doc/generic/pgf/version-for-dvips/en/plots/pgf-x.table +doc/generic/pgf/version-for-dvips/en/plots/pgfmanual-sine.gnuplot +doc/generic/pgf/version-for-dvips/en/plots/pgfmanual-sine.table +doc/generic/pgf/version-for-dvips/en/plots/pgfplotgnuplot-example.gnuplot +doc/generic/pgf/version-for-dvips/en/plots/pgfplotgnuplot-example.table +doc/generic/pgf/version-for-dvips/pgfmanual-dvips.cfg +doc/generic/pgf/version-for-dvisvgm/en/Makefile +doc/generic/pgf/version-for-dvisvgm/en/color.cfg +doc/generic/pgf/version-for-dvisvgm/en/pgfmanual-test.html +doc/generic/pgf/version-for-dvisvgm/en/pgfmanual-test.tex +doc/generic/pgf/version-for-dvisvgm/en/pgfmanual.html +doc/generic/pgf/version-for-dvisvgm/en/pgfmanual.tex +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-asymptotic-example.gnuplot +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-asymptotic-example.table +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-exp.gnuplot +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-exp.table +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-parametric-example-cut.gnuplot +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-parametric-example.gnuplot +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-parametric-example.table +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-sin.gnuplot +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-sin.table +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-tan-example.gnuplot +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-tan-example.table +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-x.gnuplot +doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-x.table +doc/generic/pgf/version-for-dvisvgm/en/plots/pgfmanual-sine.table +doc/generic/pgf/version-for-dvisvgm/en/plots/pgfplotgnuplot-example.gnuplot +doc/generic/pgf/version-for-dvisvgm/en/plots/pgfplotgnuplot-example.table +doc/generic/pgf/version-for-dvisvgm/pgfmanual-dvisvgm.cfg +doc/generic/pgf/version-for-luatex/en/Makefile +doc/generic/pgf/version-for-luatex/en/pgfmanual-test.tex +doc/generic/pgf/version-for-luatex/en/pgfmanual.tex +doc/generic/pgf/version-for-luatex/en/plots/pgf-asymptotic-example.gnuplot +doc/generic/pgf/version-for-luatex/en/plots/pgf-asymptotic-example.table +doc/generic/pgf/version-for-luatex/en/plots/pgf-exp.gnuplot +doc/generic/pgf/version-for-luatex/en/plots/pgf-exp.table +doc/generic/pgf/version-for-luatex/en/plots/pgf-parametric-example-cut.gnuplot +doc/generic/pgf/version-for-luatex/en/plots/pgf-parametric-example.gnuplot +doc/generic/pgf/version-for-luatex/en/plots/pgf-parametric-example.table +doc/generic/pgf/version-for-luatex/en/plots/pgf-sin.gnuplot +doc/generic/pgf/version-for-luatex/en/plots/pgf-sin.table +doc/generic/pgf/version-for-luatex/en/plots/pgf-tan-example.gnuplot +doc/generic/pgf/version-for-luatex/en/plots/pgf-tan-example.table +doc/generic/pgf/version-for-luatex/en/plots/pgf-x.gnuplot +doc/generic/pgf/version-for-luatex/en/plots/pgf-x.table +doc/generic/pgf/version-for-luatex/en/plots/pgfplotgnuplot-example.gnuplot +doc/generic/pgf/version-for-luatex/en/plots/pgfplotgnuplot-example.table +doc/generic/pgf/version-for-luatex/pgfmanual-luatex.cfg +doc/generic/pgf/version-for-pdftex/en/Makefile +doc/generic/pgf/version-for-pdftex/en/pgfmanual.tex +doc/generic/pgf/version-for-pdftex/en/plots/pgf-asymptotic-example.gnuplot +doc/generic/pgf/version-for-pdftex/en/plots/pgf-asymptotic-example.table +doc/generic/pgf/version-for-pdftex/en/plots/pgf-exp.gnuplot +doc/generic/pgf/version-for-pdftex/en/plots/pgf-exp.table +doc/generic/pgf/version-for-pdftex/en/plots/pgf-parametric-example-cut.gnuplot +doc/generic/pgf/version-for-pdftex/en/plots/pgf-parametric-example.gnuplot +doc/generic/pgf/version-for-pdftex/en/plots/pgf-parametric-example.table +doc/generic/pgf/version-for-pdftex/en/plots/pgf-sin.gnuplot +doc/generic/pgf/version-for-pdftex/en/plots/pgf-sin.table +doc/generic/pgf/version-for-pdftex/en/plots/pgf-tan-example.gnuplot +doc/generic/pgf/version-for-pdftex/en/plots/pgf-tan-example.table +doc/generic/pgf/version-for-pdftex/en/plots/pgf-x.gnuplot +doc/generic/pgf/version-for-pdftex/en/plots/pgf-x.table +doc/generic/pgf/version-for-pdftex/en/plots/pgfmanual-sine.gnuplot +doc/generic/pgf/version-for-pdftex/en/plots/pgfmanual-sine.table +doc/generic/pgf/version-for-pdftex/en/plots/pgfplotgnuplot-example.gnuplot +doc/generic/pgf/version-for-pdftex/en/plots/pgfplotgnuplot-example.table +doc/generic/pgf/version-for-pdftex/pgfmanual-pdftex.cfg +doc/generic/pgf/version-for-tex4ht/en/Makefile +doc/generic/pgf/version-for-tex4ht/en/pgfmanual.tex +doc/generic/pgf/version-for-tex4ht/en/plots/pgf-asymptotic-example.gnuplot +doc/generic/pgf/version-for-tex4ht/en/plots/pgf-asymptotic-example.table +doc/generic/pgf/version-for-tex4ht/en/plots/pgf-exp.gnuplot +doc/generic/pgf/version-for-tex4ht/en/plots/pgf-exp.table +doc/generic/pgf/version-for-tex4ht/en/plots/pgf-parametric-example.gnuplot +doc/generic/pgf/version-for-tex4ht/en/plots/pgf-parametric-example.table +doc/generic/pgf/version-for-tex4ht/en/plots/pgf-sin.gnuplot +doc/generic/pgf/version-for-tex4ht/en/plots/pgf-sin.table +doc/generic/pgf/version-for-tex4ht/en/plots/pgf-x.gnuplot +doc/generic/pgf/version-for-tex4ht/en/plots/pgf-x.table +doc/generic/pgf/version-for-tex4ht/en/plots/pgfmanual-sine.gnuplot +doc/generic/pgf/version-for-tex4ht/en/plots/pgfmanual-sine.table +doc/generic/pgf/version-for-tex4ht/en/plots/pgfplotgnuplot-example.gnuplot +doc/generic/pgf/version-for-tex4ht/en/plots/pgfplotgnuplot-example.table +doc/generic/pgf/version-for-tex4ht/pgfmanual-tex4ht.cfg +doc/generic/pgf/version-for-vtex/en/Makefile +doc/generic/pgf/version-for-vtex/en/pgfmanual.tex +doc/generic/pgf/version-for-vtex/en/plots/pgf-asymptotic-example.gnuplot +doc/generic/pgf/version-for-vtex/en/plots/pgf-asymptotic-example.table +doc/generic/pgf/version-for-vtex/en/plots/pgf-exp.gnuplot +doc/generic/pgf/version-for-vtex/en/plots/pgf-exp.table +doc/generic/pgf/version-for-vtex/en/plots/pgf-parametric-example.gnuplot +doc/generic/pgf/version-for-vtex/en/plots/pgf-parametric-example.table +doc/generic/pgf/version-for-vtex/en/plots/pgf-sin.gnuplot +doc/generic/pgf/version-for-vtex/en/plots/pgf-sin.table +doc/generic/pgf/version-for-vtex/en/plots/pgf-x.gnuplot +doc/generic/pgf/version-for-vtex/en/plots/pgf-x.table +doc/generic/pgf/version-for-vtex/en/plots/pgfmanual-sine.gnuplot +doc/generic/pgf/version-for-vtex/en/plots/pgfmanual-sine.table +doc/generic/pgf/version-for-vtex/en/plots/pgfplotgnuplot-example.gnuplot +doc/generic/pgf/version-for-vtex/en/plots/pgfplotgnuplot-example.table +doc/generic/pgf/version-for-vtex/pgfmanual-vtex.cfg +doc/generic/pgf/version-for-xetex/en/Makefile +doc/generic/pgf/version-for-xetex/en/pgfmanual.tex +doc/generic/pgf/version-for-xetex/en/plots/pgf-asymptotic-example.gnuplot +doc/generic/pgf/version-for-xetex/en/plots/pgf-asymptotic-example.table +doc/generic/pgf/version-for-xetex/en/plots/pgf-exp.gnuplot +doc/generic/pgf/version-for-xetex/en/plots/pgf-exp.table +doc/generic/pgf/version-for-xetex/en/plots/pgf-parametric-example-cut.gnuplot +doc/generic/pgf/version-for-xetex/en/plots/pgf-parametric-example.gnuplot +doc/generic/pgf/version-for-xetex/en/plots/pgf-parametric-example.table +doc/generic/pgf/version-for-xetex/en/plots/pgf-sin.gnuplot +doc/generic/pgf/version-for-xetex/en/plots/pgf-sin.table +doc/generic/pgf/version-for-xetex/en/plots/pgf-tan-example.gnuplot +doc/generic/pgf/version-for-xetex/en/plots/pgf-tan-example.table +doc/generic/pgf/version-for-xetex/en/plots/pgf-x.gnuplot +doc/generic/pgf/version-for-xetex/en/plots/pgf-x.table +doc/generic/pgf/version-for-xetex/en/plots/pgfmanual-sine.gnuplot +doc/generic/pgf/version-for-xetex/en/plots/pgfmanual-sine.table +doc/generic/pgf/version-for-xetex/en/plots/pgfplotgnuplot-example.gnuplot +doc/generic/pgf/version-for-xetex/en/plots/pgfplotgnuplot-example.table +doc/generic/pgf/version-for-xetex/pgfmanual-xetex.cfg +scripts/pgf/Makefile.pgf_release +scripts/pgf/pgfrevisionfile.sh +source/generic/pgf/c/INSTALL +source/generic/pgf/c/Makefile +source/generic/pgf/c/config/ExampleLocalMakefileConfig.mk +source/generic/pgf/c/config/MakefileConfig.mk +source/generic/pgf/c/graphdrawing/pgf/gd/examples/c/Makefile +source/generic/pgf/c/graphdrawing/pgf/gd/examples/c/SimpleDemoC.c +source/generic/pgf/c/graphdrawing/pgf/gd/examples/c/SimpleDemoCPlusPlus.c++ +source/generic/pgf/c/graphdrawing/pgf/gd/interface/c/InterfaceFromC++.c++ +source/generic/pgf/c/graphdrawing/pgf/gd/interface/c/InterfaceFromC++.h +source/generic/pgf/c/graphdrawing/pgf/gd/interface/c/InterfaceFromC.c +source/generic/pgf/c/graphdrawing/pgf/gd/interface/c/InterfaceFromC.h +source/generic/pgf/c/graphdrawing/pgf/gd/interface/c/Makefile +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/InterfaceFromOGDF.c++ +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/InterfaceFromOGDF.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/Makefile +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/SimpleDemoOGDF.c++ +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/FMMMLayout_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/FastMultipoleEmbedder_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/GEMLayout_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/MultilevelLayout_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/SpringEmbedderFRExact_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/SpringEmbedderFR_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/SpringEmbedderKK_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/energybased_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/BarycenterPlacer_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/CirclePlacer_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/EdgeCoverMerger_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/IndependentSetMerger_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/LocalBiconnectedMerger_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/MatchingMerger_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/MedianPlacer_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/RandomMerger_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/RandomPlacer_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/SolarMerger_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/SolarPlacer_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/ZeroPlacer_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/energybased/multilevelmixer/multilevelmixer_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/BarycenterHeuristic_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/CoffmanGrahamRanking_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/DfsAcyclicSubgraph_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/FastHierarchyLayout_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/FastSimpleHierarchyLayout_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/GreedyCycleRemoval_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/GreedyInsertHeuristic_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/LongestPathRanking_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/MedianHeuristic_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/OptimalRanking_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/SiftingHeuristic_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/SplitHeuristic_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/SugiyamaLayout_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/layered/layered_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/misclayout/BalloonLayout_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/misclayout/CircularLayout_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/misclayout/misclayout_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/module/module_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/ogdf_script.c++ +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/planarity/PlanarizationLayout_script.h +source/generic/pgf/c/graphdrawing/pgf/gd/ogdf/c/planarity/planarity_script.h +source/generic/pgf/testsuite/external/Makefile +source/generic/pgf/testsuite/external/tikzexternaltest.code.tex +source/generic/pgf/testsuite/external/tikzexternaltest.sharedpreamble.tex +source/generic/pgf/testsuite/external/tikzexternaltest.tex +source/generic/pgf/testsuite/external/tikzexternaltestmakefile.tex +source/generic/pgf/testsuite/mathtest/pgfmathtestsuite.tex +source/generic/pgf/testsuite/mathtest/unittest_luamathparser.tex +tex/context/third/pgf/basiclayer/t-pgf.tex +tex/context/third/pgf/basiclayer/t-pgfbim.tex +tex/context/third/pgf/basiclayer/t-pgfbla.tex +tex/context/third/pgf/basiclayer/t-pgfbma.tex +tex/context/third/pgf/basiclayer/t-pgfbpl.tex +tex/context/third/pgf/basiclayer/t-pgfbpt.tex +tex/context/third/pgf/basiclayer/t-pgfbsh.tex +tex/context/third/pgf/basiclayer/t-pgfbsn.tex +tex/context/third/pgf/basiclayer/t-pgfcor.tex +tex/context/third/pgf/frontendlayer/t-tikz.tex +tex/context/third/pgf/math/t-pgfmat.tex +tex/context/third/pgf/systemlayer/t-pgfsys.tex +tex/context/third/pgf/utilities/t-pgfcal.tex +tex/context/third/pgf/utilities/t-pgffor.tex +tex/context/third/pgf/utilities/t-pgfkey.tex +tex/context/third/pgf/utilities/t-pgfmod.tex +tex/context/third/pgf/utilities/t-pgfrcs.tex +tex/generic/pgf/basiclayer/pgfcore.code.tex +tex/generic/pgf/basiclayer/pgfcorearrows.code.tex +tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex +tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex +tex/generic/pgf/basiclayer/pgfcoreimage.code.tex +tex/generic/pgf/basiclayer/pgfcorelayers.code.tex +tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex +tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex +tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex +tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex +tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex +tex/generic/pgf/basiclayer/pgfcorepoints.code.tex +tex/generic/pgf/basiclayer/pgfcorequick.code.tex +tex/generic/pgf/basiclayer/pgfcorerdf.code.tex +tex/generic/pgf/basiclayer/pgfcorescopes.code.tex +tex/generic/pgf/basiclayer/pgfcoreshade.code.tex +tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex +tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.IEC.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.CDH.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.IEC.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.US.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.3d.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.barcharts.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.formats.functions.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.polar.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.sparklines.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.standard.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzexternalshared.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryangles.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryanimations.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryautomata.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybabel.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalc.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalendar.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarychains.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.footprints.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.fractals.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathmorphing.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathreplacing.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.shapes.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.text.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryer.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfixedpointarithmetic.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfpu.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryintersections.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarylindenmayersystems.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymath.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymindmap.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.meta.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryperspective.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypetri.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplothandlers.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplotmarks.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypositioning.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryrdf.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryscopes.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadings.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.IEC.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.US.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysnakes.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryspy.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysvg.path.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarythrough.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytrees.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryturtle.code.tex +tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryviews.code.tex +tex/generic/pgf/frontendlayer/tikz/tikz.code.tex +tex/generic/pgf/graphdrawing/lua/LUA_CODING_STYLE +tex/generic/pgf/graphdrawing/lua/pgf.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/bindings.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/bindings/Binding.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/bindings/BindingToPGF.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/circular.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/circular/Tantau2012.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/circular/doc.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/circular/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/Anchoring.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/ComponentAlign.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/ComponentDirection.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/ComponentDistance.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/ComponentOrder.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/Components.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/Distances.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/FineTune.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/LayoutPipeline.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/NodeAnchors.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/Orientation.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/Sublayouts.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/doc.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/control/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/deprecated/Cluster.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/deprecated/Edge.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/deprecated/Graph.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/deprecated/Iterators.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/deprecated/Node.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/deprecated/Vector.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/FMMMLayout.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/FastMultipoleEmbedder.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/GEMLayout.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/MultilevelLayout.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/SpringEmbedderFR.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/SpringEmbedderFRExact.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/SpringEmbedderKK.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/BarycenterPlacer.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/CirclePlacer.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/EdgeCoverMerger.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/IndependentSetMerger.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/LocalBiconnectedMerger.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/MatchingMerger.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/MedianPlacer.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/RandomMerger.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/RandomPlacer.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/SolarMerger.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/SolarPlacer.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/energybased/multilevelmixer/ZeroPlacer.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/BarycenterHeuristic.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/CoffmanGrahamRanking.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/DfsAcyclicSubgraph.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/FastHierarchyLayout.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/FastSimpleHierarchyLayout.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/GreedyCycleRemoval.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/GreedyInsertHeuristic.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/LongestPathRanking.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/MedianHeuristic.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/OptimalRanking.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/SiftingHeuristic.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/SplitHeuristic.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/layered/SugiyamaLayout.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/misclayout.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/misclayout/BalloonLayout.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/misclayout/CircularLayout.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/module/AcyclicSubgraphModule.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/module/HierarchyLayoutModule.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/module/InitialPlacer.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/module/MultilevelBuilder.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/module/RankingModule.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/module/TwoLayerCrossMin.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/planarity.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/doc/ogdf/planarity/PlanarizationLayout.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/examples.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/ASCIIDisplayer.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/BindingToASCII.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/SimpleDemo.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/SimpleEdgeDemo.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/SimpleHuffman.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/example_graph_for_ascii_displayer.txt +tex/generic/pgf/graphdrawing/lua/pgf/gd/examples/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/GraphAnimationCoordination.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/GreedyTemporalCycleRemoval.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/Skambath2016.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/Supergraph.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/SupergraphVertexSplitOptimization.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/TimeSpec.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/doc.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/layered.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/experimental/evolving/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/CoarseGraph.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlCoarsening.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlDeclare.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlElectric.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlIteration.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlSprings.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/ControlStart.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/QuadTree.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/SpringElectricalHu2006.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/SpringElectricalLayouts.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/SpringElectricalWalshaw2000.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/SpringHu2006.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/SpringLayouts.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/FruchtermanReingold.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/HuSpringElectricalFW.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/SimpleSpring.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/SocialGravityCloseness.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/algorithms/SocialGravityDegree.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/base/CoarseGraphFW.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/base/ForceController.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/base/ForceTemplate.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/base/InitialTemplate.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/base/PathLengthsFW.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/base/Preprocessing.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/doc.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/forcetypes/ForceAbsoluteValue.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/forcetypes/ForceCanvasDistance.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/forcetypes/ForceCanvasPosition.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/forcetypes/ForceGraphDistance.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/forcetypes/ForcePullToGrid.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/forcetypes/ForcePullToPoint.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/initialpositioning/CircularInitialPositioning.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/initialpositioning/GridInitialPositioning.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/initialpositioning/RandomInitialPositioning.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/jedi/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/force/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/interface.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/interface/InterfaceCore.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/interface/InterfaceToAlgorithms.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/interface/InterfaceToC.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/interface/InterfaceToDisplay.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/interface/Scope.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/CrossingMinimizationGansnerKNV1993.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/CycleRemovalBergerS1990a.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/CycleRemovalBergerS1990b.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/CycleRemovalEadesLS1993.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/CycleRemovalGansnerKNV1993.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/EdgeRoutingGansnerKNV1993.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/NetworkSimplex.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/NodePositioningGansnerKNV1993.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/NodeRankingGansnerKNV1993.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/NodeRankingMinimumHeight.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/Ranking.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/Sugiyama.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/crossing_minimization.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/cycle_removal.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/edge_routing.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/node_positioning.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/layered/node_ranking.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/lib.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Bezier.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/DepthFirstSearch.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Direct.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Event.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/LookupTable.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/PathLengths.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/PriorityQueue.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Simplifiers.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Stack.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Storage.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/lib/Transform.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/model.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Arc.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Collection.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Coordinate.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Digraph.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Edge.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Hyperedge.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Path.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Path_arced.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/model/Vertex.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/model/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/ogdf.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/ogdf/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/pedigrees.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/pedigrees/Koerner2015.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/pedigrees/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/AuthorDefinedPhylogeny.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/BalancedMinimumEvolution.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/BalancedNearestNeighbourInterchange.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/DistanceMatrix.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/Maeusle2012.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/PhylogeneticTree.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/SokalMichener1958.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/phylogenetics/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/planar.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/BoyerMyrvold2004.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/Embedding.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/LinkedList.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/List.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/PDP.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/PlanarLayout.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/ShiftMethod.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/planar/parameters.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/routing.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/routing/Hints.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/routing/NecklaceRouting.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/routing/library.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/tools/make_gd_wrap.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/trees.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/trees/ChildSpec.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/trees/ReingoldTilford1981.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/trees/SpanningTreeComputation.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/trees/doc.lua +tex/generic/pgf/graphdrawing/lua/pgf/gd/trees/library.lua +tex/generic/pgf/graphdrawing/tex/experimental/tikzlibrarygraphdrawing.evolving.code.tex +tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.circular.code.tex +tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.code.tex +tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.examples.code.tex +tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.force.code.tex +tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.layered.code.tex +tex/generic/pgf/graphdrawing/tex/pgflibrarygraphdrawing.trees.code.tex +tex/generic/pgf/graphdrawing/tex/tikzlibrarygraphdrawing.code.tex +tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.barcharts.code.tex +tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.formats.functions.code.tex +tex/generic/pgf/libraries/datavisualization/pgflibrarydatavisualization.polar.code.tex +tex/generic/pgf/libraries/decorations/pgflibrarydecorations.footprints.code.tex +tex/generic/pgf/libraries/decorations/pgflibrarydecorations.fractals.code.tex +tex/generic/pgf/libraries/decorations/pgflibrarydecorations.markings.code.tex +tex/generic/pgf/libraries/decorations/pgflibrarydecorations.pathmorphing.code.tex +tex/generic/pgf/libraries/decorations/pgflibrarydecorations.pathreplacing.code.tex +tex/generic/pgf/libraries/decorations/pgflibrarydecorations.shapes.code.tex +tex/generic/pgf/libraries/decorations/pgflibrarydecorations.text.code.tex +tex/generic/pgf/libraries/luamath/pgf/luamath/functions.lua +tex/generic/pgf/libraries/luamath/pgf/luamath/parser.lua +tex/generic/pgf/libraries/luamath/pgflibraryluamath.code.tex +tex/generic/pgf/libraries/pgflibraryarrows.code.tex +tex/generic/pgf/libraries/pgflibraryarrows.meta.code.tex +tex/generic/pgf/libraries/pgflibraryarrows.spaced.code.tex +tex/generic/pgf/libraries/pgflibrarybbox.code.tex +tex/generic/pgf/libraries/pgflibrarycurvilinear.code.tex +tex/generic/pgf/libraries/pgflibraryfadings.code.tex +tex/generic/pgf/libraries/pgflibraryfixedpointarithmetic.code.tex +tex/generic/pgf/libraries/pgflibraryfpu.code.tex +tex/generic/pgf/libraries/pgflibraryintersections.code.tex +tex/generic/pgf/libraries/pgflibrarylindenmayersystems.code.tex +tex/generic/pgf/libraries/pgflibrarypatterns.code.tex +tex/generic/pgf/libraries/pgflibrarypatterns.meta.code.tex +tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex +tex/generic/pgf/libraries/pgflibraryplotmarks.code.tex +tex/generic/pgf/libraries/pgflibraryprofiler.code.tex +tex/generic/pgf/libraries/pgflibraryshadings.code.tex +tex/generic/pgf/libraries/pgflibrarysnakes.code.tex +tex/generic/pgf/libraries/pgflibrarysvg.path.code.tex +tex/generic/pgf/libraries/pgflibrarytimelines.code.tex +tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.ee.IEC.code.tex +tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.ee.code.tex +tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.IEC.code.tex +tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.US.code.tex +tex/generic/pgf/libraries/shapes/circuits/pgflibraryshapes.gates.logic.code.tex +tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex +tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex +tex/generic/pgf/libraries/shapes/pgflibraryshapes.code.tex +tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex +tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex +tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex +tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex +tex/generic/pgf/lua/pgf/manual.lua +tex/generic/pgf/lua/pgf/manual/DocumentParser.lua +tex/generic/pgf/math/pgfint.code.tex +tex/generic/pgf/math/pgfmath.code.tex +tex/generic/pgf/math/pgfmathcalc.code.tex +tex/generic/pgf/math/pgfmathfloat.code.tex +tex/generic/pgf/math/pgfmathfunctions.base.code.tex +tex/generic/pgf/math/pgfmathfunctions.basic.code.tex +tex/generic/pgf/math/pgfmathfunctions.code.tex +tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex +tex/generic/pgf/math/pgfmathfunctions.integerarithmetics.code.tex +tex/generic/pgf/math/pgfmathfunctions.misc.code.tex +tex/generic/pgf/math/pgfmathfunctions.random.code.tex +tex/generic/pgf/math/pgfmathfunctions.round.code.tex +tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex +tex/generic/pgf/math/pgfmathode.code.tex +tex/generic/pgf/math/pgfmathparser.code.tex +tex/generic/pgf/math/pgfmathutil.code.tex +tex/generic/pgf/modules/pgfmoduleanimations.code.tex +tex/generic/pgf/modules/pgfmodulebending.code.tex +tex/generic/pgf/modules/pgfmoduledatavisualization.code.tex +tex/generic/pgf/modules/pgfmoduledecorations.code.tex +tex/generic/pgf/modules/pgfmodulematrix.code.tex +tex/generic/pgf/modules/pgfmodulenonlineartransformations.code.tex +tex/generic/pgf/modules/pgfmoduleoo.code.tex +tex/generic/pgf/modules/pgfmoduleparser.code.tex +tex/generic/pgf/modules/pgfmoduleplot.code.tex +tex/generic/pgf/modules/pgfmoduleshapes.code.tex +tex/generic/pgf/modules/pgfmodulesnakes.code.tex +tex/generic/pgf/modules/pgfmodulesorting.code.tex +tex/generic/pgf/pgf.revision.tex +tex/generic/pgf/systemlayer/pgf.cfg +tex/generic/pgf/systemlayer/pgfsys-common-pdf-via-dvi.def +tex/generic/pgf/systemlayer/pgfsys-common-pdf.def +tex/generic/pgf/systemlayer/pgfsys-common-postscript.def +tex/generic/pgf/systemlayer/pgfsys-common-svg.def +tex/generic/pgf/systemlayer/pgfsys-dvi.def +tex/generic/pgf/systemlayer/pgfsys-dvipdfm.def +tex/generic/pgf/systemlayer/pgfsys-dvipdfmx.def +tex/generic/pgf/systemlayer/pgfsys-dvips.def +tex/generic/pgf/systemlayer/pgfsys-dvisvgm.def +tex/generic/pgf/systemlayer/pgfsys-luatex.def +tex/generic/pgf/systemlayer/pgfsys-pdftex.def +tex/generic/pgf/systemlayer/pgfsys-tex4ht.def +tex/generic/pgf/systemlayer/pgfsys-textures.def +tex/generic/pgf/systemlayer/pgfsys-vtex.def +tex/generic/pgf/systemlayer/pgfsys-xetex.def +tex/generic/pgf/systemlayer/pgfsys.code.tex +tex/generic/pgf/systemlayer/pgfsysanimations.code.tex +tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex +tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex +tex/generic/pgf/utilities/pgfcalendar.code.tex +tex/generic/pgf/utilities/pgfexternal.tex +tex/generic/pgf/utilities/pgfexternalwithdepth.tex +tex/generic/pgf/utilities/pgffor.code.tex +tex/generic/pgf/utilities/pgfkeys.code.tex +tex/generic/pgf/utilities/pgfkeysfiltered.code.tex +tex/generic/pgf/utilities/pgfrcs.code.tex +tex/generic/pgf/utilities/pgfutil-common-lists.tex +tex/generic/pgf/utilities/pgfutil-common.tex +tex/generic/pgf/utilities/pgfutil-context.def +tex/generic/pgf/utilities/pgfutil-latex.def +tex/generic/pgf/utilities/pgfutil-plain.def +tex/latex/pgf/basiclayer/pgf.sty +tex/latex/pgf/basiclayer/pgfbaseimage.sty +tex/latex/pgf/basiclayer/pgfbaselayers.sty +tex/latex/pgf/basiclayer/pgfbasematrix.sty +tex/latex/pgf/basiclayer/pgfbasepatterns.sty +tex/latex/pgf/basiclayer/pgfbaseplot.sty +tex/latex/pgf/basiclayer/pgfbaseshapes.sty +tex/latex/pgf/basiclayer/pgfbasesnakes.sty +tex/latex/pgf/basiclayer/pgfcore.sty +tex/latex/pgf/compatibility/pgfarrows.sty +tex/latex/pgf/compatibility/pgfautomata.sty +tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +tex/latex/pgf/compatibility/pgfheaps.sty +tex/latex/pgf/compatibility/pgflibraryarrows.sty +tex/latex/pgf/compatibility/pgflibraryautomata.sty +tex/latex/pgf/compatibility/pgflibraryplothandlers.sty +tex/latex/pgf/compatibility/pgflibraryplotmarks.sty +tex/latex/pgf/compatibility/pgflibraryshapes.sty +tex/latex/pgf/compatibility/pgflibrarysnakes.sty +tex/latex/pgf/compatibility/pgflibrarytikzbackgrounds.sty +tex/latex/pgf/compatibility/pgflibrarytikztrees.sty +tex/latex/pgf/compatibility/pgfnodes.sty +tex/latex/pgf/compatibility/pgfshade.sty +tex/latex/pgf/doc/pgfmanual.code.tex +tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex +tex/latex/pgf/doc/pgfmanual.prettyprinter.code.tex +tex/latex/pgf/doc/pgfmanual.sty +tex/latex/pgf/frontendlayer/libraries/tikzlibraryexternal.code.tex +tex/latex/pgf/frontendlayer/pgfpict2e.sty +tex/latex/pgf/frontendlayer/tikz.sty +tex/latex/pgf/math/pgfmath.sty +tex/latex/pgf/systemlayer/pgfsys.sty +tex/latex/pgf/utilities/pgfcalendar.sty +tex/latex/pgf/utilities/pgffor.sty +tex/latex/pgf/utilities/pgfkeys.sty +tex/latex/pgf/utilities/pgfpages.sty +tex/latex/pgf/utilities/pgfrcs.sty +tex/latex/pgf/utilities/tikzexternal.sty +tex/latex/pgf/utilities/xxcolor.sty +tex/plain/pgf/basiclayer/pgf.tex +tex/plain/pgf/basiclayer/pgfbaseimage.tex +tex/plain/pgf/basiclayer/pgfbaselayers.tex +tex/plain/pgf/basiclayer/pgfbasematrix.tex +tex/plain/pgf/basiclayer/pgfbasepatterns.tex +tex/plain/pgf/basiclayer/pgfbaseplot.tex +tex/plain/pgf/basiclayer/pgfbaseshapes.tex +tex/plain/pgf/basiclayer/pgfbasesnakes.tex +tex/plain/pgf/basiclayer/pgfcore.tex +tex/plain/pgf/frontendlayer/tikz.tex +tex/plain/pgf/math/pgfmath.tex +tex/plain/pgf/systemlayer/pgfsys.tex +tex/plain/pgf/utilities/pgfcalendar.tex +tex/plain/pgf/utilities/pgffor.tex +tex/plain/pgf/utilities/pgfkeys.tex +tex/plain/pgf/utilities/pgfrcs.tex diff --git a/Master/texmf-dist/doc/generic/pgf/README-3.0.0 b/Master/texmf-dist/doc/generic/pgf/README-3.0.0 deleted file mode 100644 index d39a261bc6d..00000000000 --- a/Master/texmf-dist/doc/generic/pgf/README-3.0.0 +++ /dev/null @@ -1,51 +0,0 @@ -I am happy to announce version 3.0.0 of TikZ/pgf. After several years -of development work in the background, a new version is finally ready. - -The big jump in the version number from 2.10 to 3.0.0 is due to the -fact that a lot of new stuff has been added to TikZ (since the last -version, over a thousand lines have been added to the change log...) -and over a hundred bugs have been eliminated. However, care was taken -to make sure that in normal circumstances all old code will still -produce the exact same results as it used to. - -Since it is impossible to list all the changes and improvements since -the last version in this announcement, let me just point out some -hilights: - -- Arrow Tips: The code for specifying and using arrow tips has been - completely rewritten. You can now configure the appearance of arrow - tip "to death" and do so on the fly. Arbitrary arrow tips will now - even bend along curves since TikZ can now do curvilinear - transformations on a very low level. - -- Syntax Improvements: A lot of small things have been added and - improved in the syntax. For instance, nodes can be in front of - paths, but now also behind them. There is the new notion of a "small - picture" called a "pic", which is something of a mixture of a node - and a picture, making it easy for normal users to create - configurable, reusable graphics. - -- A Syntax for Graphs: Creating a larger graph used to require a large - number of node and edge commands and, possibly, some foreach - loops. Now there is a new simple syntax for this, borrowed from the - GraphViz program, that makes it very easy to specify graphs and - especially trees in a convenient manner. - -- Graph Drawing Algorithms: TikZ now comes with a large and powerful - system for computing the positions of nodes of graphs automatically - (you need LuaTeX for this, though). A number of common algorithms - have already been implemented, making it very easy to draw graphs - now. Also, it is rather simple to implement new graph drawing - algorithms. - -- Data Visualization: There is now an alternative to pgfplots as part - of the standard TikZ installation for creating plots. While pgfplots - is still the more mature system, the new data visualization system - comes with some interesting new ideas. - -- Driver Support: Support for all mayor backend drivers has been - improved. A new, cool thing is the support for dvisvgm, which - allows you to create powerful SVG graphics directly from TeX, - including the text. This support also open the door to interactive - and animated graphics in future versions since SVG makes it very - easy to animate arbitrary parts of a graphic. diff --git a/Master/texmf-dist/doc/generic/pgf/extract.lua b/Master/texmf-dist/doc/generic/pgf/extract.lua index 89141b6da62..ee883f1ac82 100644 --- a/Master/texmf-dist/doc/generic/pgf/extract.lua +++ b/Master/texmf-dist/doc/generic/pgf/extract.lua @@ -1,22 +1,3 @@ --- TODO: this has to go -local preamble = [[ -\usetikzlibrary{3d,arrows,arrows.spaced,arrows.meta,bending,babel,calc, - fit,patterns,plotmarks,shapes.geometric,shapes.misc,shapes.symbols, - shapes.arrows,shapes.callouts,shapes.multipart,shapes.gates.logic.US, - shapes.gates.logic.IEC,circuits.logic.US,circuits.logic.IEC, - circuits.logic.CDH,circuits.ee.IEC,datavisualization, - datavisualization.polar,datavisualization.formats.functions,er,automata, - backgrounds,chains,topaths,trees,petri,mindmap,matrix,calendar,folding, - fadings,shadings,spy,through,turtle,positioning,scopes, - decorations.fractals,decorations.shapes,decorations.text, - decorations.pathmorphing,decorations.pathreplacing,decorations.footprints, - decorations.markings,shadows,lindenmayersystems,intersections, - fixedpointarithmetic,fpu,svg.path,external,graphs,graphs.standard,quotes, - math,angles,views,animations,rdf,perspective} -\usetikzlibrary{graphdrawing} -\usegdlibrary{trees,circular,layered,examples,force,phylogenetics,routing} -]] - local lfs = require("lfs") local lpeg = require("lpeg") local C, Cf, Cg, Ct, P, S, V = lpeg.C, lpeg.Cf, lpeg.Cg, lpeg.Ct, lpeg.P, lpeg.S, lpeg.V @@ -149,17 +130,16 @@ local function walk(sourcedir, targetdir) goto continue end - -- Skip those that say "code only" - if not options["code only"] then + -- Skip those that say "code only" or "setup code" + if not options["code only"] and not options["setup code"] then local newname = name .. "-" .. n .. ".tex" local examplefile = io.open(targetdir .. newname, "w") - examplefile:write"\\documentclass{article}\n" + examplefile:write"\\documentclass{standalone}\n" examplefile:write"\\usepackage{fp,pgf,tikz,xcolor}\n" - examplefile:write(preamble) -- TODO: this has to go examplefile:write(options["preamble"] and options["preamble"] .. "\n" or "") examplefile:write"\\begin{document}\n" - examplefile:write"\\makeatletter\n" -- TODO: this has to go + examplefile:write(setup_code) local pre = options["pre"] or "" pre = pre:gsub("##", "#") diff --git a/Master/texmf-dist/doc/generic/pgf/macros/pgfmanual-en-macros.tex b/Master/texmf-dist/doc/generic/pgf/macros/pgfmanual-en-macros.tex index a3226328ac6..c73768aa934 100644 --- a/Master/texmf-dist/doc/generic/pgf/macros/pgfmanual-en-macros.tex +++ b/Master/texmf-dist/doc/generic/pgf/macros/pgfmanual-en-macros.tex @@ -10,28 +10,8 @@ % $Header$ -\providecommand\href[2]{\texttt{#1}} -\providecommand\hypertarget[2]{\texttt{#1}} -\providecommand\hyperlink[2]{\texttt{#1}} - - \newcount\pgfmanualtargetcount -\def\cleanuplink#1{% - \expandafter\ifx\csname pgfmanual@hlink@#1\endcsname\relax% - \global\advance\pgfmanualtargetcount by1\relax% - \expandafter\xdef\csname pgfmanual@hlink@#1\endcsname{pgfmanual-pos-\the\pgfmanualtargetcount}% - \fi% -} -\def\cleanedhypertarget#1#2{% necessary for dvisvgm - \cleanuplink{#1}% - \hypertarget{\csname pgfmanual@hlink@#1\endcsname}{#2}% -} -\def\cleanedhyperlink#1#2{% - \cleanuplink{#1}% - \hyperlink{\csname pgfmanual@hlink@#1\endcsname}{#2}% -} - \colorlet{examplefill}{yellow!80!black} \definecolor{graphicbackground}{rgb}{0.96,0.96,0.8} \definecolor{codebackground}{rgb}{0.9,0.9,1} @@ -232,7 +212,7 @@ \newenvironment{luafiledescription}[1]{}{} \newenvironment{luacommand}[4]{ - \cleanedhypertarget{pgf/lua/#1}{\luageneric{#2}{#3}{\texttt{(#4)}}{\texttt{function}}} + \hypertarget{pgf/lua/#1}{\luageneric{#2}{#3}{\texttt{(#4)}}{\texttt{function}}} }{\endluageneric} \newenvironment{luaparameters}{\par\emph{Parameters:}% @@ -313,7 +293,7 @@ \newenvironment{math-function}[1]{ \def\mathdefaultname{#1} \extractmathfunctionname{#1} - \edef\mathurl{{math:\mathname}}\expandafter\cleanedhypertarget\expandafter{\mathurl}{}% + \edef\mathurl{{math:\mathname}}\expandafter\hypertarget\expandafter{\mathurl}{}% \begin{pgfmanualentry} \pgfmanualentryheadline{\texttt{#1}}% \index{\mathname @\protect\texttt{\mathname} math function}% @@ -1305,6 +1285,17 @@ \end{pgfmanualentry} } +\newenvironment{pattern}[1]{ + \begin{pgfmanualentry} + \pgfmanualentryheadline{\textbf{Pattern} {\ttfamily#1}} + \index{#1@\protect\texttt{#1} pattern}% + \index{Patterns!#1@\protect\texttt{#1}}% + \pgfmanualbody +} +{ + \end{pgfmanualentry} +} + \def\processaction#1=#2\relax{ \expandafter\let\expandafter\pgf@temp\csname manual@action@#1\endcsname \ifx\pgf@temp\relax\else @@ -1833,7 +1824,7 @@ \ifx\code@preamble\pgfutil@empty\else \pgfutil@tempdima=\hsize \vbox{\hsize=\pgfutil@tempdima - \scriptsize\detokenize\expandafter{\code@preamble}}% + \raggedright\scriptsize\detokenize\expandafter{\code@preamble}}% \fi \pgfkeysvalueof{/codeexample/typeset listing/.@cmd}{#1}\pgfeov }% diff --git a/Master/texmf-dist/doc/generic/pgf/pgfmanual.pdf b/Master/texmf-dist/doc/generic/pgf/pgfmanual.pdf Binary files differindex 5d149f21c76..16f321b3bbe 100644 --- a/Master/texmf-dist/doc/generic/pgf/pgfmanual.pdf +++ b/Master/texmf-dist/doc/generic/pgf/pgfmanual.pdf diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-actions.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-actions.tex index fa2f26158b2..c9ae72ba3b3 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-actions.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-actions.tex @@ -348,7 +348,7 @@ tips are added are explained in Section~\ref{section-arrow-tips-where}. To ``clear'' the start arrow, say |\pgfsetarrowsstart{}|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{arrows.meta}}] \begin{pgfpicture} \pgfsetarrowsstart{Latex[length=10pt]} \pgfpathmoveto{\pgfpointorigin} @@ -368,7 +368,7 @@ tips are added are explained in Section~\ref{section-arrow-tips-where}. \begin{command}{\pgfsetarrowsend\marg{end arrow tip specification}} Sets the arrow tip kind used at the end of a path. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{arrows.meta}}] \begin{pgfpicture} \pgfsetarrowsstart{Latex[length=10pt]} \pgfsetarrowsend{Computer Modern Rightarrow} @@ -385,7 +385,7 @@ tips are added are explained in Section~\ref{section-arrow-tips-where}. specification}|-|\meta{end arrow tip specification}. In this case, both the start and the end arrow specification are set: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{arrows.meta}}] \begin{pgfpicture} \pgfsetarrows{Latex[length=10pt]->>} \pgfpathmoveto{\pgfpointorigin} @@ -409,7 +409,7 @@ tips are added are explained in Section~\ref{section-arrow-tips-where}. This command is useful if you wish arrows or lines to ``stop shortly before'' a given point. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{arrows.meta}}] \begin{pgfpicture} \pgfpathcircle{\pgfpointorigin}{5mm} \pgfusepath{stroke} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-animations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-animations.tex index 32bfa24386d..29199296250 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-animations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-animations.tex @@ -32,7 +32,10 @@ a change of, say, the opacity of a path is also an animation. \pgfname\ allows you to specify such animations using a set of commands and keys that are documented in the following. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \pgfanimateattribute{opacity}{ whom = node, begin on = {click}, entry = {0s}{1}, entry = {2s}{0} } @@ -47,16 +50,16 @@ the output that a certain attribute of a certain object should change over time in some specific way when the object is displayed. It is the job of the document viewer application to actually compute and display the animation. Interestingly, this means that animations neither increase the size of the -ouput files noticably nor does it put a special burden on \TeX. The hard and +output files noticeably nor does it put a special burden on \TeX. The hard and complicated calculations are done by the viewer application, not by \TeX\ and \pgfname. Only few viewer applications and formats are currently ``up to the job'' of -displaying animations. In particular, the popular \textsc{pdf} format does +displaying animations. In particular, the popular \textsc{pdf} format does \emph{not} allow one to specify animations in this way (one can partly ``fake'' animations at the high price of including a great number of precomputed pictures and using JavaScript in special viewers, but this is really not the -same thing as what \pgfname\ does). Indeed, currently only the \textsc{svg} +same thing as what \pgfname\ does). Indeed, currently only the \textsc{svg} format allows one to specify animations in a sensible way. Thus, \pgfname's animations will only be displayed when \textsc{svg} is used as output format. @@ -65,7 +68,11 @@ printing and depicting animations in a sequential manner, \pgfname\ also allows you to create ``snapshots'' of animations. As an example, the following code shows how the same drawing is shown at different ``time snapshots'': % -\begin{codeexample}[width=3.9cm] +\begin{codeexample}[ + width=3.9cm, + preamble={\usetikzlibrary{animations} +\def\pgfname{\textsc{pgf}} +}] \tikz [make snapshot of=0.5s] \scoped :rotate = { 0s = "0", 2s = "90" } \node [draw=blue, very thick] {\pgfname}; \tikz [make snapshot of=1s] \scoped :rotate = { 0s = "0", 2s = "90" } @@ -95,7 +102,10 @@ takes a to-be-animated attribute and options specifying the timeline: keys are used, ``outside'' the specified timeline the animation has no effect: % -\begin{codeexample}[animation list={0.5,1,1.5,2,2.5}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2,2.5}, +] \tikz { \pgfanimateattribute{opacity}{ whom = node, begin on = {click}, entry = {0s}{1}, entry = {2s}{0} } @@ -226,7 +236,10 @@ takes a to-be-animated attribute and options specifying the timeline: Assigns a name to the animation by which it can be referenced using the |of| and |of next| keys in another animation. % -\begin{codeexample}[animation list={.5,1,1.5,2,2.5,3,3.5,4,4.5,5,5.5,6}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={.5,1,1.5,2,2.5,3,3.5,4,4.5,5,5.5,6}, +] \tikz [very thick] { \pgfanimateattribute{rotate}{ whom = node, begin on = {end, of next = my move animation, delay = 1s}, @@ -257,7 +270,10 @@ key: \meta{attribute} should have over time. At the \meta{time} specified, the \meta{attribute} will have the value specified as \meta{value}: % -\begin{codeexample}[animation list={.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={.5,1,1.5,2}, +] \tikz { \pgfanimateattribute{rotate}{ whom = node, begin on = {click}, @@ -318,7 +334,10 @@ key: \begin{key}{/pgf/animations/exit control=\marg{time fraction}\marg{value fraction}} Same as |/tikz/animate/options/exit control|. % -\begin{codeexample}[animation list={0.333/\frac{1}{3},0.666/\frac{2}{3},1,1.333/1\frac{1}{3},1.666/1\frac{2}{3}}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.333/\frac{1}{3},0.666/\frac{2}{3},1,1.333/1\frac{1}{3},1.666/1\frac{2}{3}}, +] \tikz { \foreach \i in {0,0.1,...,1} \draw (-0.9,.9-\i) -- ++(1.8,0); \pgfanimateattribute{translate}{ @@ -346,7 +365,10 @@ key: \begin{key}{/pgf/animations/stay} Same as |/tikz/animate/options/stay|. % -\begin{codeexample}[animation list={0.5,1,1.5,2,2.5}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2,2.5}, +] \tikz { \foreach \i in {0,0.1,...,1} \draw (-0.9,.9-\i) -- ++(1.8,0); \pgfanimateattribute{translate}{ @@ -365,7 +387,10 @@ key: \begin{key}{/pgf/animations/jump} Same as |/tikz/animate/options/jump|. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \foreach \i in {0,0.1,...,1} \draw (-0.9,.9-\i) -- ++(1.8,0); \pgfanimateattribute{translate}{ @@ -392,7 +417,10 @@ can set this value directly: the timeline is not active. This makes it easy to specify the value of an attribute when the animation is ``not running''. % -\begin{codeexample}[animation list={-1,0,1,2,3}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={-1,0,1,2,3}, +] \tikz { \pgfanimateattribute{rotate}{ whom = node, begin on = {click}, @@ -464,7 +492,7 @@ Let us start with creating a snapshot: is used in a \TeX\ scope, no animation is created and no support by the driver is needed (so, it works with \textsc{pdf}). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{animations}}] \tikz [make snapshot of=1s, animate = { myself: = { :rotate = { 0s = "0", 2s = "90" }, @@ -516,8 +544,8 @@ Let us start with creating a snapshot: snapshots: % \begin{itemize} - \item The |begin| and |begin on| keys have no effect (but |begin - snapshot| has one. + \item The |begin| and |begin on| keys have no effect (but + |begin snapshot| has one. \item The |end| and |end on| keys have no effect. \item The |current value| may not be used in a timeline (since \pgfname\ cannot really determine this value). @@ -539,14 +567,14 @@ Let us start with creating a snapshot: |\pgfsnapshot| will select the last value of the timeline while |\pgfsnapshotafter| will not apply the animation any more: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgfmodule{animations}}] \foreach \t in {0,1,2,3,4} { \pgfsnapshot{\t} \tikz :rotate = { 0s = "0", 2s = "90", 2s = "180", 4s = "270" } \node [draw=blue, very thick] {f}; } \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgfmodule{animations}}] \foreach \t in {0,1,2,3,4} { \pgfsnapshotafter{\t} \tikz :rotate = { 0s = "0", 2s = "90", 2s = "180", 4s = "270" } @@ -565,7 +593,10 @@ Let us start with creating a snapshot: (stroking) color, respectively. To animate both the fill and draw color, you need to create two animations, one for each. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \pgfanimateattribute{fill}{ whom = node.background, begin on = {click}, @@ -577,7 +608,10 @@ Let us start with creating a snapshot: \end{animateattribute} \begin{animateattribute}{draw} -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \pgfanimateattribute{draw}{ whom = node.background, begin on = {click}, @@ -592,7 +626,11 @@ in this scope'' for filling or stroking. However, when an object inside the scope has its color set explicitly, this color overrules the color of the scope: % -\begin{codeexample}[animation list={0.5,1,1.5,2},animation bb={(1.5,-0.75) rectangle (3,0.75)}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, + animation bb={(1.5,-0.75) rectangle (3,0.75)}, +] \tikz { \pgfanimateattribute{fill}{ whom = example, begin on = {click, of next=node}, @@ -622,7 +660,11 @@ of the node's scope's color has no effect on the text color. Instead, you must choose \meta{name}|.text| as the target (or, if the node has more parts, use the name of the part as the identifier type instead of |text|). % -\begin{codeexample}[animation list={0.5,1,1.5,2},animation bb={(1.1,-0.9) rectangle (2.9,0.9)}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, + animation bb={(1.1,-0.9) rectangle (2.9,0.9)}, +] \tikz { \pgfanimateattribute{fill}{ whom = example, begin on = {click, of next=node}, @@ -631,7 +673,11 @@ the name of the part as the identifier type instead of |text|). \node at (2,0) (example) [fill = blue!20, circle] {No effect}; } \end{codeexample} -\begin{codeexample}[animation list={0.5,1,1.5,2},animation bb={(1.1,-0.9) rectangle (2.9,0.9)}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, + animation bb={(1.1,-0.9) rectangle (2.9,0.9)}, +] \tikz { \pgfanimateattribute{fill}{ whom = example.background, begin on = {click, of next=node}, @@ -640,7 +686,11 @@ the name of the part as the identifier type instead of |text|). \node at (2,0) (example) [fill = blue!20, circle] {Effect}; } \end{codeexample} -\begin{codeexample}[animation list={0.5,1,1.5,2},animation bb={(1.1,-0.9) rectangle (2.9,0.9)}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, + animation bb={(1.1,-0.9) rectangle (2.9,0.9)}, +] \tikz { \pgfanimateattribute{fill}{ whom = example.text, begin on = {click, of next=node}, @@ -654,7 +704,10 @@ drawing. You specify the opacity using a number between 0 (transparent) and 1 (opaque). \begin{animateattribute}{fill opacity} -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \pgfanimateattribute{fill opacity}{ whom = node, begin on = {click}, entry = {0s}{1}, entry = {2s}{0} } @@ -664,7 +717,10 @@ drawing. You specify the opacity using a number between 0 (transparent) and 1 \end{animateattribute} \begin{animateattribute}{draw opacity} -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \pgfanimateattribute{draw opacity}{ whom = node, begin on = {click}, entry = {0s}{1}, entry = {2s}{0} } @@ -680,7 +736,10 @@ drawing. You specify the opacity using a number between 0 (transparent) and 1 which it is applied as a transparency group. In essence, ``this attribute does what you want'' at least in most situations. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \pgfanimateattribute{opacity}{ whom = node, begin on = {click}, entry = {0s}{1}, entry = {2s}{0} } @@ -696,7 +755,10 @@ drawing. You specify the opacity using a number between 0 (transparent) and 1 rendered. The (only) two possible values for this attribute are |false| and |true|. % -\begin{codeexample}[animation list={1,2,3,4}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={1,2,3,4}, +] \tikz { \pgfanimateattribute{visible}{ whom = node, begin on = {click}, entry = {0s}{false}, entry = {2s}{false} } @@ -714,7 +776,11 @@ drawing. You specify the opacity using a number between 0 (transparent) and 1 you explicitly set the ``stage attribute'' to |true| the object ``enters'' the stage and ``leaves'' once more when it is no longer ``on stage''. % -\begin{codeexample}[animation list={-1,0,1,2,3},animation bb={(1.3,-0.7) rectangle (2.7,0.7)}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={-1,0,1,2,3}, + animation bb={(1.3,-0.7) rectangle (2.7,0.7)}, +] \tikz { \pgfanimateattribute{stage}{ whom = example, begin on = {click, of next=node}, @@ -732,7 +798,10 @@ drawing. You specify the opacity using a number between 0 (transparent) and 1 You can animate the appearance of a path in the following ways: \begin{animateattribute}{line width} -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [very thick] { \pgfanimateattribute{line width}{ whom = node, begin on = {click}, entry = {0s}{1pt}, entry = {2s}{5mm} } @@ -744,7 +813,10 @@ You can animate the appearance of a path in the following ways: \end{animateattribute} \begin{animateattribute}{dash} -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \pgfanimateattribute{dash}{ whom = node, begin on = {click}, entry = {0s}{{{10pt}{1pt}}{0pt}}, @@ -753,7 +825,10 @@ You can animate the appearance of a path in the following ways: } \end{codeexample} % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \pgfanimateattribute{dash}{ whom = node, begin on = {click}, entry = {0s}{{{1cm}{1pt}}{0pt}}, @@ -778,7 +853,10 @@ You can animate the appearance of a path in the following ways: \begin{animateattribute}{path} You can animate the path itself: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \pgfanimateattribute{path}{ whom = node.background.path, begin on = {click, of next=node}, @@ -802,8 +880,8 @@ You can animate the appearance of a path in the following ways: path consists of appropriate Bézier curves. Unlike the dash pattern, the to-be-animated object is, indeed, the path - itself and not some special scope. This means that you can use the |current - value| for the start path. However, this also means that you really must + itself and not some special scope. This means that you can use the + |current value| for the start path. However, this also means that you really must pick \emph{the path object} as the target of the animation. In conjunction with \tikzname, this will be an object of type |path| as in the above example. @@ -838,7 +916,11 @@ You can animate the appearance of a path in the following ways: path values are specified (since the shortening is done immediately when a path value is parsed). % -\begin{codeexample}[animation list={0,1,2,3,4},animation bb={(0.9,-0.1)rectangle(2.1,1.1)}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0,1,2,3,4}, + animation bb={(0.9,-0.1)rectangle(2.1,1.1)}, +] \tikz { \pgfanimateattribute{path}{ whom = p.path, begin on = {click, of next=node}, arrows = ->, @@ -862,7 +944,11 @@ You can animate the appearance of a path in the following ways: there is no active animation, \emph{will} use the arrow tips. As a result, you can use this to animate a path with an arrow tip: % -\begin{codeexample}[animation list={0,1,2,3,4},animation bb={(0.9,-0.1)rectangle(2.1,1.1)}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0,1,2,3,4}, + animation bb={(0.9,-0.1)rectangle(2.1,1.1)}, +] \tikz { \pgfanimateattribute{path}{ whom = p.path, begin on = {click, of next=node}, arrows = ->, @@ -887,7 +973,11 @@ You can animate the appearance of a path in the following ways: tip). Just like the |arrows| key, this key must be given before the path entries are specified. % -\begin{codeexample}[animation list={0,1,2,3,4},animation bb={(0.9,-0.1)rectangle(2.1,1.1)}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0,1,2,3,4}, + animation bb={(0.9,-0.1)rectangle(2.1,1.1)}, +] \tikz { \pgfanimateattribute{path}{ whom = p.path, begin on = {click, of next=node}, arrows = ->, @@ -937,7 +1027,10 @@ transformation matrix directly: \begin{animateattribute}{scale} The |scale| attribute adds an animation of the scaling: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [very thick] { \pgfanimateattribute{scale}{ whom = node, begin on = {click}, @@ -954,7 +1047,10 @@ transformation matrix directly: \begin{animateattribute}{rotate} The |rotate| key adds an animation of the rotation: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [very thick] { \pgfanimateattribute{rotate}{ whom = node, begin on = {click}, @@ -970,7 +1066,10 @@ transformation matrix directly: The |xskew| and |yskew| keys (and also |skew x| and |skew y|, which are aliases) add an animation of the skew (given in degrees, not as a slant): % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [very thick] { \pgfanimateattribute{xskew}{ whom = node, begin on = {click}, entry = {0s}{0}, entry = {2s}{45} } @@ -996,7 +1095,10 @@ transformation matrix directly: \begin{animateattribute}{translate} The |translate| key adds an animation of the translation (shift): % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [very thick] { \pgfanimateattribute{translate}{ whom = node, begin on = {click}, @@ -1033,7 +1135,10 @@ For all of these attributes, the following key is of importance: origin of the transformation directly. Internally, however, all this key does is to create the above-mentioned scopes with the necessary shifts. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [very thick] { \pgfanimateattribute{rotate}{ whom = node, begin on = {click}, @@ -1048,7 +1153,10 @@ For all of these attributes, the following key is of importance: A second way of changing the canvas transformation matrix is to use the |motion| attribute: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [very thick] { \pgfanimateattribute{motion}{ whom = node, begin on = {click}, @@ -1070,7 +1178,10 @@ For all of these attributes, the following key is of importance: reference the start point of the path, a value of |1| references the end of the path and |0.5| referenced the point halfway along the path. % -\begin{codeexample}[animation list={0.25,0.5,0.75,1,1.25,1.5,1.75,2,2.25,2.5}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.25,0.5,0.75,1,1.25,1.5,1.75,2,2.25,2.5}, +] \tikz [very thick] { \pgfanimateattribute{motion}{ whom = node, begin on = {click}, @@ -1085,7 +1196,10 @@ For all of these attributes, the following key is of importance: When set to |true|, the |along| key additionally adds a rotation that varies in such a way that a tangent to the path always points right. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [very thick] { \pgfanimateattribute{motion}{ whom = node, begin on = {click}, @@ -1113,11 +1227,16 @@ The final method of changing the transformation matrix is to animate a In order to use a view, you first need to create a view, which is done using a |{pgfviewboxscope}|, see Section~\ref{section-base-view}, which is - used by the |view| library internally. You can then animate the view using + used by the |views| library internally. You can then animate the view using the |view| attribute. The values passed to the |entry| key must be two \pgfname-points, each surrounded by parentheses. % -\begin{codeexample}[animation list={0.5,1,1.5,2},animation bb={(1.1,-0.9) rectangle (2.9,0.9)}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations} +\usetikzlibrary{views}}, + animation list={0.5,1,1.5,2}, + animation bb={(1.1,-0.9) rectangle (2.9,0.9)}, +] \tikz [very thick] { \pgfanimateattribute{view}{ whom = me.view, begin on = {click, of next=node}, freeze at end, @@ -1133,7 +1252,11 @@ The final method of changing the transformation matrix is to animate a } \end{codeexample} -\begin{codeexample}[width=2cm] +\begin{codeexample}[ + width=2cm, + preamble={\usepgfmodule{animations} +\usetikzlibrary{views}}, +] \tikz [very thick] { \pgfanimateattribute{view}{ whom = me.view, begin on = {click, of next=n1}, freeze at end, @@ -1189,7 +1312,7 @@ also the key |end|, allow you to specify answers to these questions. will run, relative to the moment when the graphic is displayed from 3\,s to 4\,s. % -\begin{codeexample}[width=3cm] +\begin{codeexample}[preamble={\usepgfmodule{animations}},width=3cm] \tikz [very thick] { \pgfanimateattribute{rotate}{ whom = node, begin = 2s, end = 4s, @@ -1211,7 +1334,10 @@ following key governs what should happen: ``stays put''. When set to |false|, which is the initial value, once an animation ends, its effect will be removed ``as if it never happened''. % -\begin{codeexample}[animation list={0,1,2,3,4}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0,1,2,3,4}, +] \tikz [very thick] { \pgfanimateattribute{rotate}{ whom = node, begin on = {click}, freeze at end = false, @@ -1219,7 +1345,10 @@ following key governs what should happen: \node (node) [fill = blue!20, draw = blue, circle] {Here!}; } \end{codeexample} % -\begin{codeexample}[animation list={0,1,2,3,4}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={0,1,2,3,4}, +] \tikz [very thick] { \pgfanimateattribute{rotate}{ whom = node, begin on = {click}, freeze at end, @@ -1271,7 +1400,10 @@ that the timeline should be repeated a certain number of times or indefinitely. \begin{itemize} \item Empty, in which case the timeline repeats forever. % -\begin{codeexample}[animation list={1,2,3,4,5}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={1,2,3,4,5}, +] \tikz [very thick] { \pgfanimateattribute{rotate}{ whom = node, begin on = {click}, repeats, @@ -1282,7 +1414,10 @@ that the timeline should be repeated a certain number of times or indefinitely. \item A \meta{number} (like |2| or |3.25|), in which case the timeline repeats \meta{number} times. % -\begin{codeexample}[animation list={1,2,3,4,5}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={1,2,3,4,5}, +] \tikz [very thick] { \pgfanimateattribute{rotate}{ whom = node, begin on = {click}, repeats = 1.75, @@ -1294,7 +1429,10 @@ that the timeline should be repeated a certain number of times or indefinitely. which case the timeline repeats however often necessary so that it stops exactly after \meta{time}. % -\begin{codeexample}[animation list={1,2,3,4,5}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={1,2,3,4,5}, +] \tikz [very thick] { \pgfanimateattribute{rotate}{ whom = node, begin on = {click}, repeats = for 3.5s, @@ -1319,7 +1457,10 @@ that the timeline should be repeated a certain number of times or indefinitely. contrast, when the repeats are accumulating, the scope will move by 5\,cm over 5\,s in total. % -\begin{codeexample}[animation list={1,2,3,4,5}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={1,2,3,4,5}, +] \tikz [very thick] { \pgfanimateattribute{rotate}{ whom = node, begin on = {click}, repeats = accumulating, @@ -1327,7 +1468,10 @@ that the timeline should be repeated a certain number of times or indefinitely. \node (node) [fill = blue!20, draw = blue, circle] {Click me!}; } \end{codeexample} % -\begin{codeexample}[animation list={1,2,3,4,5}] +\begin{codeexample}[ + preamble={\usepgfmodule{animations}}, + animation list={1,2,3,4,5}, +] \tikz [very thick] { \pgfanimateattribute{rotate}{ whom = node, begin on = {click}, repeats = 2 accumulating, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex index b26efb1b87c..382db09e5b0 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-arrows.tex @@ -567,10 +567,66 @@ fast arrow tip management. }, defaults = { length = 4cm } } -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{arrows.meta}}, + pre={\pgfdeclarearrow{ + name = foo, + parameters = { \the\pgfarrowlength }, + setup code = { + % The different end values: + \pgfarrowssettipend{.25\pgfarrowlength} + \pgfarrowssetlineend{-.25\pgfarrowlength} + \pgfarrowssetvisualbackend{-.5\pgfarrowlength} + \pgfarrowssetbackend{-.75\pgfarrowlength} + % The hull + \pgfarrowshullpoint{.25\pgfarrowlength}{0pt} + \pgfarrowshullpoint{-.75\pgfarrowlength}{.5\pgfarrowlength} + \pgfarrowshullpoint{-.75\pgfarrowlength}{-.5\pgfarrowlength} + % Saves: Only the length: + \pgfarrowssavethe\pgfarrowlength + }, + drawing code = { + \pgfpathmoveto{\pgfqpoint{.25\pgfarrowlength}{0pt}} + \pgfpathlineto{\pgfqpoint{-.75\pgfarrowlength}{.5\pgfarrowlength}} + \pgfpathlineto{\pgfqpoint{-.5\pgfarrowlength}{0pt}} + \pgfpathlineto{\pgfqpoint{-.75\pgfarrowlength}{-.5\pgfarrowlength}} + \pgfpathclose + \pgfusepathqfill + }, + defaults = { length = 4cm } +}}, +] \tikz \draw [-foo] (0,0) -- (8,0); \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{arrows.meta,bending}}, + pre={\pgfdeclarearrow{ + name = foo, + parameters = { \the\pgfarrowlength }, + setup code = { + % The different end values: + \pgfarrowssettipend{.25\pgfarrowlength} + \pgfarrowssetlineend{-.25\pgfarrowlength} + \pgfarrowssetvisualbackend{-.5\pgfarrowlength} + \pgfarrowssetbackend{-.75\pgfarrowlength} + % The hull + \pgfarrowshullpoint{.25\pgfarrowlength}{0pt} + \pgfarrowshullpoint{-.75\pgfarrowlength}{.5\pgfarrowlength} + \pgfarrowshullpoint{-.75\pgfarrowlength}{-.5\pgfarrowlength} + % Saves: Only the length: + \pgfarrowssavethe\pgfarrowlength + }, + drawing code = { + \pgfpathmoveto{\pgfqpoint{.25\pgfarrowlength}{0pt}} + \pgfpathlineto{\pgfqpoint{-.75\pgfarrowlength}{.5\pgfarrowlength}} + \pgfpathlineto{\pgfqpoint{-.5\pgfarrowlength}{0pt}} + \pgfpathlineto{\pgfqpoint{-.75\pgfarrowlength}{-.5\pgfarrowlength}} + \pgfpathclose + \pgfusepathqfill + }, + defaults = { length = 4cm } +}}, +] \tikz \draw [-{foo[length=2cm,bend]}] (0,0) to [bend left] (3,0); \end{codeexample} @@ -846,10 +902,13 @@ you need to make \pgfname\ ``aware'' of this using the following key: |\pgfarrowstheparameters|. Here is an example, where |\showvalueofmacro| is used in this example to show the value stored in a macro: % +\begin{codeexample}[setup code,hidden] \makeatletter \def\showvalueofmacro#1{% \texttt{\expandafter\expandafter\expandafter\expandafter\expandafter\expandafter\expandafter\pgfutil@gobble\expandafter\expandafter\expandafter\string\expandafter\csname#1\endcsname} - } + }% +\end{codeexample} +% \begin{codeexample}[] \pgfarrowsthreeparameters{2pt 1} \showvalueofmacro\pgfarrowstheparameters diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-decorations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-decorations.tex index 81be7f5fc99..68a1e2097cc 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-decorations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-decorations.tex @@ -31,7 +31,7 @@ could be as simple as extending a path with a ``zigzagged'' line\ldots \ldots but could also be as complex as typesetting text along a path: % {\catcode`\|12 -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations,decorations.text}}] \tikz \path decorate [decoration={text along path, text={Some text along a path}}] { (0,2) .. controls (2,2) and (1,0) .. (3,0) }; @@ -255,7 +255,7 @@ command describes the decoration automaton. decoration will produce an output path, that is, it extends the preexisting path. Here is an example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations}}] \pgfdeclaredecoration{example}{initial} { \state{initial}[width=10pt] @@ -285,7 +285,7 @@ command describes the decoration automaton. parts of the rest of the output path for the following invocation. Here is an example: % -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}},preamble={\usetikzlibrary{decorations,shapes.geometric}}] \pgfdeclaredecoration{stars}{initial}{ \state{initial}[width=15pt] { @@ -306,7 +306,6 @@ command describes the decoration automaton. .. controls (0,-5) and (3,-5) .. (3,-3); \end{codeexample} % - \item After the \meta{code} has been executed (possibly more than once, if the |repeat state| option is used), the state switches to whatever state has been specified inside the \meta{options} @@ -334,8 +333,8 @@ command describes the decoration automaton. \begin{key}{/pgf/decoration automaton/width=\meta{dimension}} First, this option causes an immediate switch to the state |final| if the remaining distance on the input path is less than - \meta{dimension}. The effect is the same as if you had said |switch - if less than=|\meta{dimension}| to final| just before the |width| + \meta{dimension}. The effect is the same as if you had said + |switch if less than=|\meta{dimension}| to final| just before the |width| option. If no switch occurs, this option tells \pgfname\ the width of the @@ -474,7 +473,7 @@ command describes the decoration automaton. The following example shows how these options can be used: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations}}] \pgfdeclaredecoration{complicated example decoration}{initial} { \state{initial}[width=5pt,next state=up] @@ -604,7 +603,7 @@ Once a decoration has been declared, it can be used. \meta{before code} is executed. After the decoration automaton has finished, \meta{after code} is executed. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations,decorations.pathmorphing}}] \begin{tikzpicture}[decoration={segment length=5pt}] \draw [help lines] grid (3,2); \begin{pgfdecoration}{{curveto}{1cm},{zigzag}{2cm},{curveto}{1cm}} @@ -622,7 +621,7 @@ Once a decoration has been declared, it can be used. path. Thus, it is possible to specify lengths like |\pgfdecoratedpathlength/3|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations,decorations.pathmorphing}}] \begin{tikzpicture}[decoration={segment length=5pt}] \draw [help lines] grid (3,2); \begin{pgfdecoration}{ @@ -653,7 +652,7 @@ Once a decoration has been declared, it can be used. This means that if decorations do not use their own path, it is possible to do something with them and continue from the correct place. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations,decorations.pathmorphing}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \begin{pgfdecoration}{ @@ -764,7 +763,7 @@ minute transformation''. Note when applying multiple decorations, this will be reset between decorations, so it needs to be specified for each segment. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations,decorations.pathmorphing}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \begin{pgfdecoration}{ @@ -906,7 +905,7 @@ decorations, a meta-decoration must be declared before it can be used. Here is a complete example of a meta-decoration: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations,decorations.pathmorphing}}] \pgfdeclaremetadecoration{arrows}{initial}{ \state{initial}[width=0pt, next state=arrow] { diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-external.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-external.tex index 033049def23..da8c2e7a6d9 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-external.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-external.tex @@ -257,8 +257,8 @@ there is a better way: You input the file |pgfexternal.tex|. Since |\beginpgfgraphicnamed| does not do macro expansion as it searches for |\endpgfgraphicnamed|, it is not necessary to actually include the packages necessary for \emph{creating} the graphics. So the idea is that - you comment out things like |\usepackage{tikz}| and instead say |\input - pgfexternal.tex|. + you comment out things like |\usepackage{tikz}| and instead say + |\input pgfexternal.tex|. Indeed, the contents of this file is simply the following line: % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-images.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-images.tex index e8531820ca2..b7b536852fb 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-images.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-images.tex @@ -159,7 +159,7 @@ To speedup the compilation, you may wish to use the following class option: The following example demonstrates the effect of using |\pgfuseimage| inside a colormixin environment. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepackage{xxcolor}}] \pgfdeclareimage[interpolate=true,width=1cm,height=1cm] {image1.!25!white}{brave-gnu-world-logo.25} \pgfdeclareimage[interpolate=true,width=1cm] @@ -194,7 +194,7 @@ To speedup the compilation, you may wish to use the following class option: You can ``save'' the image for later usage by invoking |\pgfaliasimage| on |pgflastimage|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepackage{xxcolor}}] \begin{colormixin}{25!white} \begin{pgfpicture} \pgftext[at=\pgfpoint{1cm}{5cm},left,base] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-matrices.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-matrices.tex index edba1275d1e..2c807e9f6e7 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-matrices.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-matrices.tex @@ -235,8 +235,8 @@ spacing. processed, in this order. If the \meta{additional sep list} argument is missing, only the default separation list is processed. \item Both lists may contain dimensions, separated by commas, as well - as occurrences of the keywords |between origins| and |between - borders|. + as occurrences of the keywords |between origins| and + |between borders|. \item All dimensions occurring in either list are added together to arrive at a dimension $d$. \item The last occurrence of either of the keywords is located. If diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex index 4e0ba4f5361..b4dda6fa1c4 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-nodes.tex @@ -212,7 +212,7 @@ must set up the box |\pgfnodepartXYZbox|. The box will be placed at the anchor Finally, when the node is drawn, the boxes are placed at the anchor positions |text| and |lower|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes}}] \setbox\pgfnodeparttextbox=\hbox{$q_1$} \setbox\pgfnodepartlowerbox=\hbox{01} \begin{pgfpicture} @@ -552,7 +552,7 @@ commands: |\pgfpointanchor| without any transformations in force. Here is an example: % \makeatletter -\begin{codeexample}[] +\begin{codeexample}[pre={\makeatletter}] \begin{pgfpicture} \pgftransformrotate{30} \pgfnode{rectangle}{center}{Hello World!}{x}{\pgfusepath{stroke}} @@ -726,7 +726,7 @@ similar to the above: area. Note that excessive use of this option (keeping track of dozens of bounding boxes at the same time) will slow things down. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{scopes}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); { [local bounding box=outer box] @@ -1100,11 +1100,21 @@ The following command declares a new shape: |\pgfpointshapeborder| command, the \meta{code} will be executed to discern this point. When the execution of the \meta{code} starts, the dimensions |\pgf@x| and |\pgf@y| will have been set to a location $p$ - in the shape's coordinate system. It is now the job of the \meta{code} - to set up |\pgf@x| and |\pgf@y| such that they specify the point on the - shape's border that lies on a straight line from the shape's center to - the point $p$. Usually, this is a somewhat complicated computation, - involving many case distinctions and some basic math. + in the shape's coordinate system, and relative to the anchor |center|. + Note that |\pgfpointshapeborder| will produce an error if the shape does + not contain the |center| anchor. + + It is now the job of the \meta{code} to set up |\pgf@x| and |\pgf@y| + such that they specify the point on the shape's border that lies on a + straight line from the shape's center to the point $p$. Usually, this is + a somewhat complicated computation, involving many case distinctions and + some basic math. Note that the output coordinates must be returned in the + shape's coordinate system, \emph{no longer} relative to the |center| + anchor. While these different points of reference are only noticeable if + the |center| anchor is not at the origin of the shape's coordinate system, + it implies that ``doing nothing'' as a border anchor, i.e., returning the + point that was fed to |\pgfpointshapeborder| requires adding the |center| + anchor to the input coordinates. For our |simple rectangle| we must compute a point on the border of a rectangle whose one corner is the origin (ignoring the depth for @@ -1240,7 +1250,10 @@ The following command declares a new shape: on inheritance: % \makeatletter -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{shapes.geometric}}, + pre={\makeatletter}, +] \pgfdeclareshape{document}{ \inheritsavedanchors[from=rectangle] % this is nearly a rectangle \inheritanchorborder[from=rectangle] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-patterns.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-patterns.tex index a8f85fb4cf3..de7700e5487 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-patterns.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-patterns.tex @@ -93,7 +93,7 @@ used for this: The \meta{code} should be \pgfname\ code than can be protocolled. It should not contain any color code. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{patterns}}] \pgfdeclarepatternformonly{stars} {\pgfpointorigin}{\pgfpoint{1cm}{1cm}} {\pgfpoint{1cm}{1cm}} @@ -141,7 +141,7 @@ used for this: values of the macro |\size|, the key |/tikz/radius|, and the \TeX{} dimension |\thickness|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{patterns}}] \pgfdeclarepatternformonly[/tikz/radius,\thickness,\size]{rings} {\pgfpoint{-0.5*\size}{-0.5*\size}} {\pgfpoint{0.5*\size}{0.5*\size}} @@ -181,7 +181,7 @@ used for this: color commands, not the |\color| command, since this fill is not protocolled. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{patterns}}] \pgfdeclarepatterninherentlycolored{green stars} {\pgfpointorigin}{\pgfpoint{1cm}{1cm}} {\pgfpoint{1cm}{1cm}} @@ -214,7 +214,35 @@ Once a pattern has been declared, it can be used. the \meta{color} parameter is ignored. For form-only patterns, the \meta{color} parameter specifies the color to be used for the pattern. % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{patterns} +\pgfdeclarepatternformonly{stars} +{\pgfpointorigin}{\pgfpoint{1cm}{1cm}} +{\pgfpoint{1cm}{1cm}} +{ + \pgftransformshift{\pgfpoint{.5cm}{.5cm}} + \pgfpathmoveto{\pgfpointpolar{0}{4mm}} + \pgfpathlineto{\pgfpointpolar{144}{4mm}} + \pgfpathlineto{\pgfpointpolar{288}{4mm}} + \pgfpathlineto{\pgfpointpolar{72}{4mm}} + \pgfpathlineto{\pgfpointpolar{216}{4mm}} + \pgfpathclose% + \pgfusepath{fill} +} +\pgfdeclarepatterninherentlycolored{green stars} +{\pgfpointorigin}{\pgfpoint{1cm}{1cm}} +{\pgfpoint{1cm}{1cm}} +{ + \pgfsetfillcolor{green!50!black} + \pgftransformshift{\pgfpoint{.5cm}{.5cm}} + \pgfpathmoveto{\pgfpointpolar{0}{4mm}} + \pgfpathlineto{\pgfpointpolar{144}{4mm}} + \pgfpathlineto{\pgfpointpolar{288}{4mm}} + \pgfpathlineto{\pgfpointpolar{72}{4mm}} + \pgfpathlineto{\pgfpointpolar{216}{4mm}} + \pgfpathclose% + \pgfusepath{stroke,fill} +}}] \begin{tikzpicture} \pgfsetfillpattern{stars}{red} \filldraw (0,0) rectangle (1.5,2); diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-points.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-points.tex index 56f49d7e5dc..d743c57b017 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-points.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-points.tex @@ -534,7 +534,7 @@ determine border points of shapes. solutions as ``a bit special'', in that the points returned will be ``absolute'' and unaffected by any further transformations. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{intersections}}] \begin{pgfpicture} \pgfintersectionofpaths { diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-quick.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-quick.tex index b07c3a51c4e..87694af64df 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-quick.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-quick.tex @@ -103,6 +103,7 @@ All quick path construction commands start with |\pgfpathq|. orders of magnitude faster than |\pgfcircle{\pgfpointorigin}{|\meta{radius}|}|. % \begin{codeexample}[] +\colorlet{examplefill}{yellow!80!black} \begin{tikzpicture} \draw[help lines] (0,0) grid (1,1); \pgfpathqcircle{10pt} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-scopes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-scopes.tex index 618ff86c66a..d0efb084ab2 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-scopes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-scopes.tex @@ -216,7 +216,7 @@ meantime there are some more modules. Also mention them here?} There is a special command for loading library packages. The difference between a library and module is the following: A library just defines additional objects using the basic layer, whereas a module adds completely new -functionality. For instance, a decoration library defines additional +functionality. For instance, a |decorations| library defines additional decorations, while a decoration module defines the whole code for handling decorations. @@ -333,7 +333,7 @@ Rectangles \begin{pgfpicture} impossible to draw lines between nodes in different pictures automatically. In order to make \pgfname\ ``remember'' a picture, the \TeX-if - |\||ifpgfrememberpicturepositiononpage| should be set to |true|. It is only + |\ifpgfrememberpicturepositiononpage| should be set to |true|. It is only important that this \TeX-if is |true| at the end of the |{pgfpicture}|-en\-vi\-ron\-ment, so you can switch it on inside the environment. However, you can also just switch it on globally, then the diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transformations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transformations.tex index 2cd4553dfef..67525cd3048 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transformations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transformations.tex @@ -806,6 +806,7 @@ can become curved since \emph{everything} gets transformed. \subsubsection{Installing Nonlinear Transformation} +\begin{codeexample}[setup code,hidden] \makeatletter \def\polartransformation{ % \pgf@x will contain the radius @@ -817,6 +818,7 @@ can become curved since \emph{everything} gets transformed. \pgf@y=\pgfmathresulty\pgf@y% } \makeatother +\end{codeexample} \begin{command}{\pgftransformnonlinear\marg{transformation code}} This command adds the \meta{transformation code} to the list of non-linear @@ -856,7 +858,7 @@ can become curved since \emph{everything} gets transformed. transformation. In particular, a normal grid now becomes the typical ``polar grid''. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgfmodule{nonlineartransformations}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); % Start nonlinear transformation @@ -908,7 +910,7 @@ while a nonlinear transformation is installed: Note that this mapping is actually not quite satisfactory for long lines that are strongly curved: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgfmodule{nonlineartransformations}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); { @@ -940,7 +942,7 @@ while a nonlinear transformation is installed: (for them, splitting may occur again, if the curve is still too long). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgfmodule{nonlineartransformations}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); \draw[red] (0:20mm) arc [start angle=0, end angle=90, radius=2cm]; @@ -968,7 +970,7 @@ is longer, it will not ``follow'' the nonlinear transformation, but near the origin of the text it will look ``correct''. As an example, let us add some text at the grid point of the above example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgfmodule{nonlineartransformations}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); \pgftransformnonlinear{\polartransformation}% see above @@ -1005,7 +1007,7 @@ such a local approximation: look almost the same as if you had not called it. \end{enumerate} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgfmodule{nonlineartransformations}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); \pgftransformnonlinear{\polartransformation}% see above @@ -1035,7 +1037,7 @@ such a local approximation: rotation, skewing, or scaling that is involved. This is useful for drawing text at the right position, but without ``mutilating'' the text. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgfmodule{nonlineartransformations}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); \pgftransformnonlinear{\polartransformation}% see above @@ -1117,7 +1119,10 @@ commands that offer the necessary computations for such transformations. |\pgftransformnonlinear| for details. % \makeatletter -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usepgfmodule{nonlineartransformations} +\usetikzlibrary{curvilinear}}, + pre=\makeatletter] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); { @@ -1134,7 +1139,10 @@ commands that offer the necessary computations for such transformations. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usepgfmodule{nonlineartransformations} +\usetikzlibrary{curvilinear}}, + pre=\makeatletter] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); { @@ -1171,7 +1179,10 @@ commands that offer the necessary computations for such transformations. lines. % \makeatletter -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usepgfmodule{nonlineartransformations} +\usetikzlibrary{curvilinear}}, + pre=\makeatletter] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); { @@ -1190,7 +1201,10 @@ commands that offer the necessary computations for such transformations. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usepgfmodule{nonlineartransformations} +\usetikzlibrary{curvilinear}}, + pre=\makeatletter] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); { diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transparency.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transparency.tex index 22156f98d3e..319ebbd9e65 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transparency.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-base-transparency.tex @@ -218,7 +218,9 @@ different commands for using fadings: \end{tikzpicture} \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\pgfdeclarefading{fading2} +{\tikz \shade[left color=pgftransparent!0, + right color=pgftransparent!100] (0,0) rectangle (2,2);}}] \begin{tikzpicture} \fill [black!20] (0,0) rectangle (2,2); \fill [black!30] (0,0) arc (180:0:1); @@ -284,7 +286,11 @@ different commands for using fadings: current path will be stroked, this much needs to be added around the path's bounding box to actually contain the path. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\pgfdeclarehorizontalshading{shading}{100bp} +{ color(0pt)=(transparent!0); color(25bp)=(transparent!0); + color(75bp)=(transparent!100); color(100bp)=(transparent!100)} +% +\pgfdeclarefading{fading}{\pgfuseshading{shading}}}] \begin{tikzpicture} \pgfsetlinewidth{2mm} \pgfpathmoveto{\pgfpointorigin} @@ -350,8 +356,8 @@ Transparency groups are declared using the following commands. while ignoring the size. The following example shows how this is done: % TODO: Nesting tikzpictures is NOT supported -{\tikzexternaldisable -\begin{codeexample}[] +{\ifpgfmanualexternalize\tikzexternaldisable\fi +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (2,2); diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-drivers.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-drivers.tex index e107e8f097a..31bfd9a30ae 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-drivers.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-drivers.tex @@ -98,9 +98,11 @@ inclusion may be a problem. In addition to |pgf| and |tikz| there also exist modules like |pgfcore| or |pgfmodulematrix|. To use them, you may need to include the module |pgfmod| first (the modules |pgf| and |tikz| both include |pgfmod| for you, so typically -you can skip this). This special module is necessary since Con\TeX t -satanically restricts the length of module names to 6 characters and \pgfname's -long names are mapped to cryptic 6-letter-names for you by the module |pgfmod|. +you can skip this). This special module is necessary since old versions of +Con\TeX t~MkII before 2005 satanically restricted the length of module names to +8 characters and \pgfname's long names are mapped to cryptic 6-letter-names for +you by the module |pgfmod|. This restriction was never in place in +Con\TeX t~MkIV and the |pgfmod| module can be safely ignored nowadays. \subsection{Supported Output Formats} @@ -399,8 +401,8 @@ dvisvgm example \begin{key}{/pgf/tex4ht node/css=\meta{filename} (default |\string\jobname|)} This option allows you to tell the browser what \textsc{css} file it - should use to style the display of the node (only with |tex4ht - node/escape=true|). + should use to style the display of the node (only with + |tex4ht node/escape=true|). \end{key} \begin{key}{/pgf/tex4ht node/class=\meta{class name} (default foreignobject)} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-axes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-axes.tex index a0e46cbaf9b..0d8314079a3 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-axes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-axes.tex @@ -179,7 +179,7 @@ axis): Here is a real-life example. The |scientific axes| create two axes, called |x axis| and |y axis|, respectively. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [scientific axes, x axis={attribute=people, length=2.5cm, ticks=few}, y axis={attribute=year}, @@ -228,7 +228,7 @@ interval: contain |0| -- even if the actual data points are all positive or all negative. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=3cm}, visualize as line] data [format=function] { @@ -237,7 +237,7 @@ interval: }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=3cm}, visualize as line, x axis={include value=20}, @@ -288,7 +288,7 @@ next key is used to specify what should happen with the observed values. in order to map dates between 1900 and 2000 to the dimension interval $[0\mathrm{cm},5\mathrm{cm}]$. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [scientific axes, x axis={attribute=people, length=2.5cm, ticks=few}, @@ -417,7 +417,7 @@ some axis={function=\pgfdvmathln{\pgfvalue}{\pgfvalue}} % This specifies that the function $f$ is the logarithm function. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [scientific axes, x axis={ticks={major={at={1,10,100,1000}}}, @@ -431,7 +431,7 @@ some axis={function=\pgfdvmathln{\pgfvalue}{\pgfvalue}} % Another possibility might be to use the square-root function, instead: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [scientific axes, x axis={ticks=few, @@ -486,7 +486,10 @@ documented in the following. All told, to turn an axis into a logarithmic axis, you just need to add this option to the axis. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [scientific axes, x axis={logarithmic}, y axis={logarithmic}, @@ -500,7 +503,7 @@ documented in the following. Note that this will work with any axis, including, say, the degrees on a polar axis: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.polar}}] \tikz \datavisualization [new polar axes, angle axis={logarithmic, scaling=1 at 0 and 90 at 90}, @@ -511,7 +514,7 @@ documented in the following. }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.polar}}] \tikz \datavisualization [new polar axes, angle axis={degrees}, @@ -532,7 +535,7 @@ documented in the following. that the range of all values of the axis's attribute will be mapped to an interval of exact length \meta{dimension}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [scientific axes, x axis={length=3cm}, y axis={length=2cm}, @@ -547,7 +550,7 @@ documented in the following. }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [scientific axes, x axis={length=3cm}, y axis={length=4cm}, @@ -570,7 +573,7 @@ documented in the following. is particularly useful when you wish to ensure that the same scaling is used across multiple axes or pictures. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [scientific axes, all axes={ticks=few, unit length=1mm}, visualize as line] @@ -582,6 +585,7 @@ documented in the following. 13, 20 }; \end{codeexample} + % The optional |per |\meta{number}| units| allows you to apply more drastic scaling. Suppose that you want to plot a graph where one billion corresponds to one centimeter. Then the unit length would be need to be set @@ -589,7 +593,7 @@ documented in the following. dimension. In this case, you can write |unit length=1cm per 1000000000 units|: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [scientific axes, x axis={unit length=1mm per 1000000000 units, ticks=few}, @@ -612,7 +616,7 @@ documented in the following. to get a length of \meta{dimension}. Again, this key is useful for ensuring that the same scaling is used across multiple axes or pictures. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[width=8cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [scientific axes, y axis={logarithmic, power unit length=1mm, grid}, @@ -648,7 +652,7 @@ set the attribute using the following key: say |node style| to configure the styling of a node, see Section~\ref{section-dv-style}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [ scientific axes, x axis = {label, length=2.5cm}, @@ -704,7 +708,7 @@ of an axis system, see Section~\ref{section-dv-axis-systems}. point that is at distance |1pt| from the origin and that points into the direction of the axis. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); @@ -792,7 +796,7 @@ x axes={time $t$ (ms)}, y axis={distance $d$ (mm)} Here is an example that employs most of the above features: % -\begin{codeexample}[width=8.5cm] +\begin{codeexample}[width=8.5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ scientific axes=clean, x axis={attribute=time, ticks={tick unit=ms}, @@ -820,7 +824,10 @@ data { This key installs a two-dimensional coordinate system based on the attributes |/data point/x| and |/data point/y|. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \begin{tikzpicture} \datavisualization [scientific axes, visualize as smooth line] @@ -850,7 +857,7 @@ data { on the two axis. If you wish the units on both axes to be equal, consider directly specifying the unit length ``by hand'': % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture} \datavisualization [visualize as smooth line, scientific axes, @@ -902,7 +909,10 @@ scientific axis system is rendered. This causes the ticks to be drawn `` on the outside'' of the frame so that they interfere as little as possible with the data. It is the default. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \begin{tikzpicture} \datavisualization [scientific axes=outer ticks, visualize as smooth line] @@ -919,7 +929,10 @@ scientific axis system is rendered. This axis system works like |scientific axes|, only the ticks are on the ``inside'' of the frame. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \begin{tikzpicture} \datavisualization [scientific axes=inner ticks, visualize as smooth line] @@ -934,7 +947,7 @@ scientific axis system is rendered. interfere with marks if they are near to the border as can be seen in the following example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \begin{tikzpicture} \datavisualization [scientific axes={inner ticks, width=3.2cm}, style sheet=cross marks, @@ -963,7 +976,10 @@ scientific axis system is rendered. this axis system especially useful for scatter plots, but also for most other scientific plots. % -\begin{codeexample}[width=7.5cm] +\begin{codeexample}[ + width=7.5cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [ scientific axes=clean, visualize as smooth line] @@ -986,7 +1002,10 @@ specified. They are discussed in the following. $y$-axis is rotated by $90^\circ$ and placed left of the center of the $y$-axis. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [scientific axes={clean, standard labels}, visualize as smooth line, @@ -1005,7 +1024,10 @@ data [format=function] { Works like |scientific axes standard labels|, only the label of the $y$-axis is not rotated. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [ scientific axes={clean, upright labels}, visualize as smooth line, @@ -1027,7 +1049,10 @@ data [format=function] { Places the labels at the end of the $x$- and the $y$-axis, similar to the axis labels of a school book axis system. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [ scientific axes={clean, end labels}, visualize as smooth line, @@ -1059,7 +1084,7 @@ data [format=function] { Finally, if the data is ``far removed'' from the origin, this axis system will also ``look bad''. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture} \datavisualization [school book axes, visualize as smooth line] data [format=function] { @@ -1080,7 +1105,7 @@ data [format=function] { the same time, the stepping of the ticks will also be set to \meta{value}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture} \datavisualization [school book axes={unit=10}, visualize as smooth line, @@ -1103,7 +1128,7 @@ data [format=function] { Currently, this is the only supported placement strategy for the school book axis system. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture} \datavisualization [school book axes={standard labels}, visualize as smooth line, @@ -1135,7 +1160,7 @@ grid lines are drawn, and labels are placed at the correct positions. This axis system creates two axes called |x axis| and |y axis| that point right and up, respectively. By default, one unit is mapped to one cm. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture} \datavisualization [xy Cartesian, visualize as smooth line] data [format=function] { @@ -1251,7 +1276,7 @@ shown are explained. |/tikz/data visualization/|. When the |ticks| key is used multiple times for an axis, the \meta{options} accumulate. % -\begin{codeexample}[width=6cm] +\begin{codeexample}[width=6cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ scientific axes, visualize as line, x axis={ticks={step=24, minor steps between steps=3}, @@ -1292,7 +1317,7 @@ shown are explained. |grid| key. This is useful when you want to specify some special points explicitly where you wish a tick to be shown and also a grid line. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, visualize as smooth line, @@ -1340,7 +1365,7 @@ like |step| or |about|. Here is an example of the different stepping chosen when one varies the tick placement strategy: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture} \datavisualization [scientific axes, visualize as smooth line] data [format=function] { @@ -1380,7 +1405,7 @@ only. So, you would write things like |x axis={ticks={step=2}}|, but Basically, all ticks are placed at all multiples of \meta{value} that lie in the attribute range interval. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [ school book axes, visualize as smooth line, y axis={ticks={step=1.25}}, @@ -1400,7 +1425,7 @@ only. So, you would write things like |x axis={ticks={step=2}}|, but between two minor steps is exactly a tenth of the size of a major step. See also Section~\ref{section-dv-strategies} for further details. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture} \datavisualization [school book axes, visualize as smooth line, x axis={ticks={minor steps between steps=3}}, @@ -1666,7 +1691,7 @@ Four keys are used to configure the different kinds: option) and also any special styling. The different possible options are described later in this section. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [ school book axes, visualize as smooth line, x axis={ticks={major={at={1, 1.5, 2}}}}] @@ -1681,7 +1706,7 @@ Four keys are used to configure the different kinds: \begin{key}{/tikz/data visualization/minor=\meta{options}} Like |major|, only for minor ticks/grid lines. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [ school book axes, visualize as smooth line, x axis={grid={minor={at={1, 1.5, 2}}}}] @@ -1704,7 +1729,7 @@ Four keys are used to configure the different kinds: tick at the same position), but it can be useful to configure, say, the size of all kinds of ticks: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [ school book axes, visualize as smooth line, x axis={ticks={minor steps between steps, common={low=0}}} ] @@ -1728,7 +1753,7 @@ keys to specify where ticks or grid lines should be shown: ticks or grid lines on the axis will be placed exactly at the values in \meta{list}. Here is an example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [ school book axes, visualize as smooth line, x axis={ticks={major={at={-1,0.5,(pi/2)}}}}] @@ -1778,7 +1803,7 @@ some axis = {ticks = {major = {at = {...}}}} accumulate. However, when |at| is used after an |also at| key, the |at| key completely resets the positions where ticks or grid lines are shown. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [ school book axes, visualize as smooth line, x axis={grid, ticks and grid={major={also at={0.5}}}}] @@ -1850,7 +1875,7 @@ Two keys are used to ``communicate'' with the \tikzname\ layer: executed whenever the data visualization engine calls the \tikzname\ layer to draw something (this placed will be indicated in the following). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={ticks={style=blue}, length=3cm}, @@ -1878,11 +1903,11 @@ Similar to |style| (and |styling|) there also exist the |node style| (and in addition to the usual |style|. \begin{key}{/tikz/data visualization/node style=\meta{\tikzname\ options}} - This key works like |style|, only it has an effect only on nodes that are + This key works like |style|, but it has an effect only on nodes that are created during a data visualization. This includes tick labels and axis labels: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={ticks={node style=red}, length=3cm}, @@ -1936,7 +1961,7 @@ Let us now have a look at these keys in detail: obscuring the more important data with the far less important grid lines. However, you can change this style to ``get the grid lines to the front'': % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={ @@ -1969,11 +1994,12 @@ low=min, high=max visualized, which is usually the desired behaviour (the |low| and |high| keys are explained in Section~\ref{section-dv-visualize-ticks}. You can append the |style| key to this style to configure the overall appearance of - grid lines. In the following example we cause all grid lines to be dashed - (which is not a good idea in general since it creates a distracting - background pattern). + grid lines. It should be noted that settings to |style| inside |every grid| + will take precedence over ones in |every major grid| and |every minor grid|. + In the following example we cause all grid lines to be dashed (which is not + a good idea in general since it creates a distracting background pattern). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=3cm, grid}, @@ -1998,7 +2024,7 @@ style = {help lines, thin, black!25} % In the following example, we use thin major blue grid lines: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={ @@ -2150,7 +2176,10 @@ may be helpful: This key causes the \meta{options} to be executed for any tick mark(s) at \meta{value} in addition to any options given already for this position: % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line, @@ -2202,7 +2231,7 @@ same happens as in the second case, but the text that is shown as tick label is \meta{text} rather than the automatically generated tick label. This automatic generation of tick labels is explained in the following. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes=clean, x axis={length=2.5cm, ticks={major at={ @@ -2246,7 +2275,7 @@ Let us have a look at these keys in detail: \begin{key}{/tikz/data visualization/tick prefix=\meta{text} (initially \normalfont empty)} The \meta{text} will be put in front of every typeset tick: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={ticks=few, length=2.5cm}, x axis={ticks={tick prefix=$\langle$, tick suffix=$]$}}, @@ -2267,7 +2296,7 @@ Let us have a look at these keys in detail: \begin{key}{/tikz/data visualization/tick unit=\meta{roman math text}} A shorthand for |tick suffix={$\,\rm|\meta{roman math text}|$}|: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=3cm}, x axis={ticks={tick unit=s}}, @@ -2292,7 +2321,7 @@ Let us have a look at these keys in detail: mechanism is used. Here is a (not quite finished) example that shows how, say, numbers could be printed in terms of multiples of $\pi$: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \def\mytypesetter#1{% \pgfmathparse{#1/pi}% \pgfmathprintnumber{\pgfmathresult}$\pi$% @@ -2317,7 +2346,7 @@ Let us have a look at these keys in detail: Sometimes, the text of tick labels are so long or so numerous that the text of adjacent tick labels overlap (or have too little padding): % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=2.5cm}, visualize as smooth line] @@ -2332,7 +2361,7 @@ There are two ways to address this problem: \begin{itemize} \item One can rotate the labels on horizontal axes: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=2.5cm}, x axis={ticks={node style={rotate=90, anchor=east}}}, @@ -2348,7 +2377,7 @@ There are two ways to address this problem: \item One can specify different shifts of the nodes for the different ticks, whereby the ticks text no longer overlap. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=2.5cm}, x axis={ticks={major at={0,4000,8000, @@ -2367,7 +2396,7 @@ There are two ways to address this problem: automatically. Instead, the |stack| option can be used, which is much easier to use and gives better results: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=2.5cm}, x axis={ticks=stack}, visualize as smooth line] @@ -2414,7 +2443,7 @@ ticks={major at={1,2,3,4}, major at={0,-1,-2}, minor at={9,8,7}} \meta{distance} is added to the |low| value, see also Section~\ref{section-dv-visualize-ticks}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=2.5cm}, x axis={ticks={tick text low even padding=-1em}}, @@ -2456,7 +2485,7 @@ The following keys work similarly: \begin{key}{/tikz/data visualization/stack=\meta{dimension} (default 1em)} Shorthand for |tick text even padding=|\meta{dimension}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=2.5cm}, x axis={ticks={stack=1.5em}}, @@ -2473,7 +2502,8 @@ The following keys work similarly: Shorthand for |tick text odd padding=|\meta{dimension}. The difference to |stack| is that the set of value that are ``lowered'' is exactly exchanged with the set of value ``lowered'' by |stack|. -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=2.5cm}, x axis={ticks=stack'}, @@ -2490,7 +2520,10 @@ Note that the above keys have an effect on all tick labels of an axis, also on special ticks that you may have added using the |also at| key. When using the |stack| key, you should specify a |tick text padding| explicitly for such keys: % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [scientific axes, x axis={ticks={stack, many, major also at= @@ -2527,7 +2560,7 @@ special ticks that you may have added using the |also at| key. When using the partition the interval between two mayor ticks into ten equally sized minor intervals. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \begin{tikzpicture} \datavisualization [scientific axes={inner ticks, width=3cm}, @@ -2558,7 +2591,7 @@ special ticks that you may have added using the |also at| key. When using the The minor steps are added in the same way as for |linear steps|. In particular, they interpolate \emph{linearly} between mayor steps. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \begin{tikzpicture} \datavisualization [scientific axes, @@ -2607,7 +2640,7 @@ special ticks that you may have added using the |also at| key. When using the allows you to access the minimum and the maximum value stored in the |scaling mapper| of that axis. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[width=7cm,preamble={\usetikzlibrary{datavisualization}}] \def\silly{ \tikzdatavisualizationset{major={at={ 2,3,5,7,11,13}}} @@ -2630,7 +2663,7 @@ special ticks that you may have added using the |also at| key. When using the \subsection{Advanced: Creating New Axis Systems} -The data visualization library comes with a number of predefined axis systems, +The |datavisualization| library comes with a number of predefined axis systems, like |scientific axes=clean|, but it is also possible and to define new axis systems. Doing so involves the following steps: % @@ -2709,7 +2742,7 @@ We now already have enough to try our system, although we will not yet see any axes or ticks, but we will see the correct scaling of the attributes. Let us first define a data group: % -\begin{codeexample}[] +\begin{codeexample}[setup code] \tikz \datavisualization data group {people and money} = { data [set=people 1] { time, people @@ -2742,6 +2775,7 @@ first define a data group: }; \end{codeexample} +\begin{codeexample}[setup code,hidden] \tikzdatavisualizationset{ our system/.style={ new Cartesian axis=x axis, @@ -2755,7 +2789,9 @@ first define a data group: right axis={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/height}} } } -\begin{codeexample}[] +\end{codeexample} +% +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ our system, x axis={attribute=time, length=4cm}, @@ -2809,7 +2845,7 @@ left axis={ visualize axis={ x axis={ goto=min } } attribute has attained along this axis. \item |max|: Like |min|. \item |padded min|: This will also set the \meta{attribute} - monitored by the axis to the same value as |min|. + monitored by the axis to the same value as |min|. Additionally, however, the subkey |/data point/|\meta{attribute}|/offset| is set to the current padding for the minimum, see the description of |padding min| @@ -2821,10 +2857,10 @@ left axis={ visualize axis={ x axis={ goto=min } } \end{key} The |right axis| would be visualized the same way, only at |goto=max|. The - $x$-axis actually need to be visualized \emph{twice}: Once at the bottom + $x$-axis actually needs to be visualized \emph{twice}: Once at the bottom and once at the top. Thus, we need to call |visualize axis| twice for this axis: -% + % \tikzdatavisualizationset{ our system/.style={ new Cartesian axis=x axis, @@ -2838,7 +2874,21 @@ left axis={ visualize axis={ x axis={ goto=min } } right axis={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/height}} } } -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{datavisualization}}, + pre={\tikzdatavisualizationset{ + our system/.style={ + new Cartesian axis=x axis, + new Cartesian axis=left axis, + new Cartesian axis=right axis, + x axis={attribute=x}, + left axis={unit vector={(0cm,1pt)}}, + right axis={unit vector={(0cm,1pt)}}, + x axis ={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/width}}, + left axis ={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/height}}, + right axis={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/height}} + } +}}] \tikzset{ data visualization/our system/.append style={ left axis= {visualize axis={x axis= {goto=min}}}, @@ -2878,7 +2928,21 @@ left axis={ visualize axis={ x axis={ goto=min } } corresponding to the fractional positions in the reasonable interval are not computed. % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{datavisualization}}, + pre={\tikzdatavisualizationset{ + our system/.style={ + new Cartesian axis=x axis, + new Cartesian axis=left axis, + new Cartesian axis=right axis, + x axis={attribute=x}, + left axis={unit vector={(0cm,1pt)}}, + right axis={unit vector={(0cm,1pt)}}, + x axis ={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/width}}, + left axis ={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/height}}, + right axis={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/height}} + } +}}] \tikzset{ data visualization/our system/.append style={ x axis= {visualize axis={left axis={goto pos=0.25}}, @@ -2963,9 +3027,24 @@ left axis={ visualize axis={ x axis={ goto=min } } Recall that the |styling| key is set using the |style| key, see Section~\ref{section-dv-style}. % +% TODOsp: codeexamples: What is this empty `\tikzset` good for? \tikzset{ } -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{datavisualization}}, + pre={\tikzdatavisualizationset{ + our system/.style={ + new Cartesian axis=x axis, + new Cartesian axis=left axis, + new Cartesian axis=right axis, + x axis={attribute=x}, + left axis={unit vector={(0cm,1pt)}}, + right axis={unit vector={(0cm,1pt)}}, + x axis ={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/width}}, + left axis ={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/height}}, + right axis={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/height}} + } +}}] \tikzset{ data visualization/our system/.append style={ every axis/.style={style=black!50}, % make this the default @@ -3013,7 +3092,10 @@ left axis={ visualize axis={ x axis={ goto=min } } (because it starts at a smaller value). The standard axis systems set the padding to some default and take its value into account: % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \begin{tikzpicture} \datavisualization [scientific axes=clean, x axis={padding min=-1cm}, @@ -3028,7 +3110,30 @@ left axis={ visualize axis={ x axis={ goto=min } } Using padded and using the |padded| key, we can visualize our axis ``a little removed from the actual data'': % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{datavisualization}}, + pre={\tikzdatavisualizationset{ + our system/.style={ + new Cartesian axis=x axis, + new Cartesian axis=left axis, + new Cartesian axis=right axis, + x axis={attribute=x}, + left axis={unit vector={(0cm,1pt)}}, + right axis={unit vector={(0cm,1pt)}}, + x axis ={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/width}}, + left axis ={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/height}}, + right axis={length=\pgfkeysvalueof{/tikz/data visualization/scientific axes/height}} + } +}% +\tikzset{ + data visualization/our system/.append style={ + every axis/.style={style=black!50}, % make this the default + left axis= {visualize axis={x axis= {goto=min}, style=red!75}}, + right axis={visualize axis={x axis= {goto=max}, style=blue!75}}, + x axis= {visualize axis={left axis={goto=min}}, + visualize axis={left axis={goto=max}}}, + } +}}] \tikzset{ data visualization/our system/.append style={ all axes= {padding=.5em}, @@ -3128,7 +3233,7 @@ axis system to specify how grid lines are drawn. The |low| and |high| keys are the same as the ones used in the |visualize axis| key. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ xyz Cartesian cabinet, all axes={visualize axis={low=0, style=->}}, @@ -3142,7 +3247,7 @@ axis system to specify how grid lines are drawn. }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ xyz Cartesian cabinet, all axes={visualize axis={low=0, style=->}, grid=many}, @@ -3183,7 +3288,7 @@ axis system to specify how grid lines are drawn. lines -- are rather unlikely setting -- or when the styling should deviate from the usual settings. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ xy Cartesian, all axes={visualize axis={low=0, style=->}, @@ -3207,7 +3312,7 @@ axis is either of the other two axis (they point in the same direction and they have the same range). For the other two axes, we visualize one grid independently of the other, using different colors. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikzset{ data visualization/our system/.append style={ x axis= {visualize grid={direction axis=left axis}}, @@ -3242,7 +3347,7 @@ independently of the other, using different colors. at different places for the same axis. Consider for instance the |scientific axes|: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=3cm}, x axis={ticks={stack}}, visualize as smooth line] @@ -3282,7 +3387,7 @@ independently of the other, using different colors. bottom and at the top. This corresponds to once setting the |left axis| to its minimal value and once to its maximal value: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikzset{ data visualization/our system/.append style={ x axis={visualize ticks={direction axis=left axis, left axis={goto=min}}, @@ -3335,7 +3440,7 @@ independently of the other, using different colors. ticks the |low| value is |0pt|, while in the lower one the |high| value is |0pt|: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikzset{ data visualization/our system/.append style={ x axis={ @@ -3375,7 +3480,7 @@ independently of the other, using different colors. Pass this option to |visualize ticks| when you want tick label nodes to be placed at the |low| position of each tick mark. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikzset{ data visualization/our system/.append style={ x axis={ @@ -3403,7 +3508,7 @@ independently of the other, using different colors. \begin{key}{/tikz/data visualization/no tick text} Shorthand for |tick text at low=false, tick text at high=false|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes, all axes={length=3cm}, x axis={ticks={ major also at={6.5 as [no tick text]}}}, @@ -3457,7 +3562,7 @@ of the |visualize label| key, which is configured by the axis system. determine this position. Concerning the other axes, we want it to be placed at the minimum position of the |left axis| with a lot of padding. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[width=7cm,preamble={\usetikzlibrary{datavisualization}}] \tikzdatavisualizationset{ our system/.append style={ x axis={visualize label={ @@ -3487,7 +3592,7 @@ of the |visualize label| key, which is configured by the axis system. be at the ``origin'', which is, however, the position computed by the |goto| keys for the axes: % -\begin{codeexample}[width=7cm] +\begin{codeexample}[width=7cm,preamble={\usetikzlibrary{datavisualization}}] \tikzdatavisualizationset{ our system/.append style={ x axis={visualize label={ @@ -3572,7 +3677,9 @@ how it is used: }} \end{codeexample} -\tikzdatavisualizationset{ +\begin{codeexample}[ + preamble={\usetikzlibrary{datavisualization}}, + pre={\tikzdatavisualizationset{ our system/.style={ % The axes new Cartesian axis=x axis, @@ -3620,9 +3727,7 @@ how it is used: right axis={goto pos=.5}, node style={ at={(0,0 -| data visualization bounding box.east)}, rotate=-90, anchor=south, blue!80!black}}}, } -} - -\begin{codeexample}[] +}}] \tikz \datavisualization [ our system, x axis={attribute=time, label=Year, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-examples.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-examples.tex index ce4c95a5e38..a08a999b58b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-examples.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-examples.tex @@ -10,7 +10,7 @@ A first example: -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture}[baseline] \datavisualization [ school book axes, @@ -37,7 +37,8 @@ A first example: }; \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +% +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture}[baseline] \datavisualization [ scientific axes=clean, @@ -58,9 +59,9 @@ A first example: 501, -2, 0 }; \end{tikzpicture} -\end{codeexample} +\end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \begin{tikzpicture}[baseline,mark=*] \datavisualization [ scientific axes=inner ticks, @@ -88,7 +89,7 @@ x y x1 y1 x2 y2 x3 y3 \end{codeexample} -%%% Local Variables: +%%% Local Variables: %%% mode: latex %%% TeX-master: "pgfmanual" -%%% End: +%%% End: diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex index 61504874373..00b3ee1e96d 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-formats.tex @@ -120,7 +120,7 @@ angle, radius that you must surround a comma by curly braces if you which to (re)set the separator character to a space. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \begin{tikzpicture} \datavisualization [school book axes, visualize as line] data [separator=\space] { @@ -144,7 +144,7 @@ angle, radius is used as the headline and the first line of the data is treated as a normal line rather than as a headline. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \begin{tikzpicture} \datavisualization [school book axes, visualize as line] data [headline={x, y}] { @@ -164,7 +164,7 @@ angle, radius attribute |/data point/x| to be set to |5| and |/data point/lo| to be set to |500|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \begin{tikzpicture} \datavisualization [school book axes, visualize as line] data [format=named] { @@ -186,7 +186,10 @@ angle, radius attribute. In this case, a data point is created for each possible combination of values in the different lists: % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization}}, +] \tikz \datavisualization [scientific axes=clean, visualize as scatter/.list={a,b,c}, @@ -207,7 +210,7 @@ data [format=named] { may not be spread over several lines. However, not each line needs to produce a data point. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \begin{tikzpicture} \datavisualization [school book axes, visualize as line] data [format=TeX code] { @@ -307,7 +310,7 @@ data [format=named] { specification. In this case, all of these functions will be evaluated for each setting of input variables. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [school book axes, visualize as smooth line] data [format=function] { @@ -317,7 +320,10 @@ data [format=named] { }; \end{codeexample} % -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [ school book axes, all axes={unit length=5mm, ticks={step=2}}, @@ -330,7 +336,10 @@ data [format=function] { }; \end{codeexample} % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [ scientific axes=clean, y axis={ticks={style={ diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-introduction.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-introduction.tex index cd48bd5d675..58e612170a0 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-introduction.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-introduction.tex @@ -117,7 +117,7 @@ visualization should look like a |line plot| with |school book axes| or with |scientific axes|, which selects a certain visualization pipeline that is appropriate for this kind of plot: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture}[scale=.7] \datavisualization [school book axes, visualize as smooth line] data [format=function] { @@ -127,7 +127,7 @@ appropriate for this kind of plot: \end{tikzpicture} \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture}[scale=.7] \datavisualization [scientific axes, visualize as smooth line] data [format=function] { diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-main.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-main.tex index 26a97fa4e7f..a0d57858f1c 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-main.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-main.tex @@ -75,7 +75,7 @@ using a comma-separated list of strings of the form |attribute=value|. Here are two examples, where similar data is given in different formats: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \begin{tikzpicture} \datavisualization [school book axes, visualize as smooth line] data { @@ -91,7 +91,7 @@ Here are two examples, where similar data is given in different formats: \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture} \datavisualization [school book axes, visualize as smooth line] data [format=function] { @@ -173,7 +173,7 @@ ticks and grid lines at well-chosen angles of a polar plot. Typically, you will not need to specify axes explicitly. Rather, predefined styles take care of this for you: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture} \datavisualization [ scientific axes, @@ -187,7 +187,7 @@ styles take care of this for you: \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture} \datavisualization [ scientific axes=clean, @@ -216,7 +216,7 @@ the data points in the plane using a line. Another common visualizer is the the data points. More advanced visualizers include, say, box plot visualizers or pie chart visualizers. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture} \datavisualization [ scientific axes=clean, @@ -230,7 +230,7 @@ or pie chart visualizers. \end{tikzpicture} \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture} \datavisualization [ scientific axes=clean, @@ -275,7 +275,7 @@ An example where three functions are plotted and a legend is added is shown below. Two style sheets are used so that \emph{both} the coloring and the dashing is varied. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture}[baseline] \datavisualization [ scientific axes=clean, y axis=grid, @@ -418,7 +418,7 @@ picture to create pictures containing multiple data visualizations. data [/data point/experiment=23, read from file=experiment023.csv]; \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [school book axes, visualize as line] data [/data point/x=1] { @@ -475,7 +475,7 @@ picture to create pictures containing multiple data visualizations. data point is created. This means that inside the \meta{options} you just specify the values of all attributes in key--value syntax. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [school book axes, visualize as line] data point [x=1, y=1] data point [x=1, y=2] data point [x=2, y=2] data point [x=2, y=0.5]; @@ -487,7 +487,7 @@ picture to create pictures containing multiple data visualizations. This key is the ``key version'' of the previous command. The difference is that this key can be used internally inside styles. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikzdatavisualizationset{ horizontal/.style={ data point={x=#1, y=1}, data point={x=#1, y=2}}, @@ -535,7 +535,7 @@ picture to create pictures containing multiple data visualizations. ``dummy'' data visualization is empty and used only for the definition of the data group. % -\begin{codeexample}[] +\begin{codeexample}[setup code] \tikz \datavisualization data group {points} = { data { x, y @@ -551,7 +551,7 @@ picture to create pictures containing multiple data visualizations. We can now use this data in different plots: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [school book axes, visualize as line] data group {points}; \qquad \tikz \datavisualization [scientific axes=clean, visualize as line] data group {points}; @@ -593,7 +593,7 @@ picture to create pictures containing multiple data visualizations. of the data visualization. In sharp contrast, \tikzname\ code given after a data visualization can no longer access this coordinate system. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture}[baseline] \datavisualization [ school book axes, visualize as line ] data [format=function] { @@ -626,7 +626,7 @@ picture to create pictures containing multiple data visualizations. before the visualization is done. This allows you to draw things \emph{behind} the visualization. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \begin{tikzpicture}[baseline] \datavisualization [ school book axes, visualize as line ] data [format=function] { diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-polar.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-polar.tex index 5d9f3518052..31167b720a1 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-polar.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-polar.tex @@ -23,7 +23,13 @@ data point as follows: One attribute is used to compute a an angle (a direction) while a second attribute is used as a radius (a distance). The angle can be measured in degrees, radians, or can be scaled arbitrarily. % -\begin{codeexample}[width=8.5cm] +\begin{codeexample}[ + width=8.5cm, + preamble={\usetikzlibrary{ + datavisualization.formats.functions, + datavisualization.polar, +}}, +] \tikz \datavisualization [ scientific polar axes={0 to pi, clean}, all axes=grid, @@ -56,7 +62,10 @@ configurations possible for, say, Cartesian axes also apply to the ``angle axis'' and the ``radius axis'' of a polar axis system. For instance, you can could make both axes logarithmic or style their ticks: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{ + datavisualization.formats.functions, + datavisualization.polar, +}}] \tikz[baseline] \datavisualization [ scientific axes={clean}, x axis={attribute=angle, ticks={minor steps between steps=4}}, @@ -117,7 +126,13 @@ could make both axes logarithmic or style their ticks: attribute value zero is always placed at the center -- and for a logarithmic plot the value |0| cannot be mapped. % -\begin{codeexample}[width=8.8cm] +\begin{codeexample}[ + width=8.8cm, + preamble={\usetikzlibrary{ + datavisualization.formats.functions, + datavisualization.polar, +}}, +] \tikz \datavisualization [ scientific polar axes, radius axis={ @@ -151,7 +166,13 @@ data [format=function] { This key, which is the default, causes ticks to be drawn ``outside'' the outer ``ring'' of the polar axes: % -\begin{codeexample}[width=8.8cm] +\begin{codeexample}[ + width=8.8cm, + preamble={\usetikzlibrary{ + datavisualization.formats.functions, + datavisualization.polar, +}}, +] \tikz \datavisualization [ scientific polar axes={outer ticks, 0 to 180}, visualize as smooth line] @@ -167,7 +188,13 @@ data [format=function] { This key causes the ticks to be ``turned to the inside''. I do not recommend using this key. % -\begin{codeexample}[width=8.8cm] +\begin{codeexample}[ + width=8.8cm, + preamble={\usetikzlibrary{ + datavisualization.formats.functions, + datavisualization.polar, +}}, +] \tikz \datavisualization [ scientific polar axes={inner ticks, 0 to 180}, visualize as smooth line] @@ -184,7 +211,13 @@ data [format=function] { ticks are shown. Usually, this is the best choice for the tick placement since it avoids a collision of data and explanations. % -\begin{codeexample}[width=8.8cm] +\begin{codeexample}[ + width=8.8cm, + preamble={\usetikzlibrary{ + datavisualization.formats.functions, + datavisualization.polar, +}}, +] \tikz \datavisualization [ scientific polar axes={clean, 0 to 180}, visualize as smooth line] @@ -241,7 +274,7 @@ In order to save some space in this manual, in the following the different possible keys are only given in a table together with a small example for each key. The examples were created using the following code: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.polar}}] \tikz \datavisualization [ scientific polar axes={ clean, @@ -343,7 +376,7 @@ automatically). a position on the page that is at a distance of $r$ from the origin and at an angle of~$a$. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.polar}}] \tikz \datavisualization [new polar axes={angle axis}{radius axis}, radius axis={length=2cm}, @@ -373,7 +406,7 @@ automatically). Both the \meta{unit vector 0 degrees} and the \meta{unit vector 90 degrees} are \tikzname\ coordinates: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.polar}}] \tikz \datavisualization [new polar axes={angle axis}{radius axis}, radius axis={unit length=1cm}, @@ -394,7 +427,7 @@ keys: up the scaling so that a value of |360| on this axis corresponds to a complete circle. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.polar}}] \tikz \datavisualization [new polar axes={angle axis}{radius axis}, radius axis={unit length=1cm}, @@ -411,7 +444,7 @@ keys: In contrast to |degrees|, this option sets up things so that a value of |2*pi| on this axis corresponds to a complete circle. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.polar}}] \tikz \datavisualization [new polar axes={angle axis}{radius axis}, radius axis={unit length=1cm}, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex index 0e162cc1c32..526992cf0fc 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-stylesheets.tex @@ -71,7 +71,7 @@ to this attribute is that each visualizer is styled differently. For the following examples, let us first define a simple data set: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization data group {function classes} = { data [set=log, format=function] { var x : interval [0.2:2.5]; @@ -92,7 +92,27 @@ For the following examples, let us first define a simple data set: }; \end{codeexample} -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}] \tikz \datavisualization [ school book axes, all axes={unit length=7.5mm}, visualize as smooth line/.list={log, lin, squared, exp}, @@ -100,7 +120,27 @@ For the following examples, let us first define a simple data set: data group {function classes}; \end{codeexample} -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}] \tikz \datavisualization [ school book axes, all axes={unit length=7.5mm}, visualize as smooth line/.list={log, lin, squared, exp}, @@ -129,7 +169,27 @@ high-quality legends. Additionally, it also offers ways of easily adding labels for visualizers directly inside the data visualization, which is even better than adding a legend, in general. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}] \tikz \datavisualization [ school book axes, all axes={unit length=7.5mm}, x axis={label=$x$}, @@ -142,7 +202,27 @@ than adding a legend, in general. data group {function classes}; \end{codeexample} -\begin{codeexample}[width=6.3cm] +\begin{codeexample}[ + width=6.3cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}] \tikz \datavisualization [ school book axes, x axis={label=$x$}, @@ -176,7 +256,28 @@ there is a special, easy-to-remember option for this: Adds the \meta{style sheet} to the list of style sheets attached to the |set| attribute. % -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ school book axes, all axes={unit length=7.5mm}, visualize as smooth line/.list={log, lin, squared, exp}, @@ -281,7 +382,7 @@ this restriction in a minute). We would now write: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] \pgfkeys{ /pgf/data visualization/style sheets/traffic light/.cd, % All these styles have the above prefix. @@ -321,7 +422,17 @@ look at an example: 3/.style={red!80!black}, default style/.style={black} } -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{datavisualization}}, + pre={\pgfkeys{ + /pgf/data visualization/style sheets/traffic light/.cd, + % All these styles have the above prefix. + 1/.style={green!50!black}, + 2/.style={yellow!90!black}, + 3/.style={red!80!black}, + default style/.style={black} +}}, +] % Definition of traffic light keys as above \begin{tikzpicture} \datavisualization data group {lines} = { @@ -354,7 +465,25 @@ with |/data point| are inserted automatically for you, so they can be left out. However, you would need them for instance when you would like several different data sets to use the same styling: % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{datavisualization}}, + pre={\pgfkeys{ + /pgf/data visualization/style sheets/traffic light/.cd, + % All these styles have the above prefix. + 1/.style={green!50!black}, + 2/.style={yellow!90!black}, + 3/.style={red!80!black}, + default style/.style={black} +}% +\tikz \datavisualization data group {lines} = { + data point [x=0, y=0, set=normal] + data point [x=2, y=2, set=normal] + data point [x=0, y=1, set=heated] + data point [x=2, y=1, set=heated] + data point [x=0.5, y=1.5, set=critical] + data point [x=2.25, y=1.75, set=critical] +};}, +] % Definition of traffic light keys as above \tikz \datavisualization [ school book axes, @@ -389,7 +518,17 @@ pattern according to the value of the attribute. We do not need to define an large number of styles in this case, but can use the |default style| key to ``calculate'' the correct dashing. -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{datavisualization}}, + pre={\tikz \datavisualization data group {lines} = { + data point [x=0, y=0, set=normal] + data point [x=2, y=2, set=normal] + data point [x=0, y=1, set=heated] + data point [x=2, y=1, set=heated] + data point [x=0.5, y=1.5, set=critical] + data point [x=2.25, y=1.75, set=critical] +};}, +] \pgfdvdeclarestylesheet{my dashings}{ default style/.style={dash pattern={on #1pt off 1pt}} } @@ -418,7 +557,17 @@ the color: color is simply that it makes many internals of the data visualization engine a bit simpler. % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{datavisualization}}, + pre={\tikz \datavisualization data group {lines} = { + data point [x=0, y=0, set=normal] + data point [x=2, y=2, set=normal] + data point [x=0, y=1, set=heated] + data point [x=2, y=1, set=heated] + data point [x=0.5, y=1.5, set=critical] + data point [x=2.25, y=1.75, set=critical] +};}, +] \pgfdvdeclarestylesheet{my colors} { default style/.style={visualizer color=black}, @@ -452,7 +601,17 @@ documentation of the |xcolor| package for details. series is used (since counting starts at |0| for color series). Thus, in general, you need to start the \meta{initial color} ``one early''. % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{datavisualization}}, + pre={\tikz \datavisualization data group {lines} = { + data point [x=0, y=0, set=normal] + data point [x=2, y=2, set=normal] + data point [x=0, y=1, set=heated] + data point [x=2, y=1, set=heated] + data point [x=0.5, y=1.5, set=critical] + data point [x=2.25, y=1.75, set=critical] +};}, +] \tikzdvdeclarestylesheetcolorseries{greens}{hsb}{0.3,1.3,0.8}{0,-.4,-.1} \tikz \datavisualization [ school book axes, @@ -533,7 +692,35 @@ data set are used: are only two or three lines, and even then it is not particularly pleasing visually. % -\begin{codeexample}[width=10cm] +\begin{codeexample}[ + width=10cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + example visualization/.style={ + scientific axes=clean, + y axis={ticks={style={ + /pgf/number format/fixed, + /pgf/number format/fixed zerofill, + /pgf/number format/precision=2}}}, + x axis={ticks={tick suffix=${}^\circ$}}, + 1={label in legend={text=$\frac{1}{6}\sin 11x$}}, + 2={label in legend={text=$\frac{1}{7}\sin 12x$}}, + 3={label in legend={text=$\frac{1}{8}\sin 13x$}}, + 4={label in legend={text=$\frac{1}{9}\sin 14x$}}, + 5={label in legend={text=$\frac{1}{10}\sin 15x$}}, + 6={label in legend={text=$\frac{1}{11}\sin 16x$}}, + 7={label in legend={text=$\frac{1}{12}\sin 17x$}}, + 8={label in legend={text=$\frac{1}{13}\sin 18x$}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list= {1,2,3,4,5,6,7,8}, @@ -551,7 +738,35 @@ data group {sin functions}; often the best choice when the visualization is to be printed in black and white. % -\begin{codeexample}[width=10cm] +\begin{codeexample}[ + width=10cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + example visualization/.style={ + scientific axes=clean, + y axis={ticks={style={ + /pgf/number format/fixed, + /pgf/number format/fixed zerofill, + /pgf/number format/precision=2}}}, + x axis={ticks={tick suffix=${}^\circ$}}, + 1={label in legend={text=$\frac{1}{6}\sin 11x$}}, + 2={label in legend={text=$\frac{1}{7}\sin 12x$}}, + 3={label in legend={text=$\frac{1}{8}\sin 13x$}}, + 4={label in legend={text=$\frac{1}{9}\sin 14x$}}, + 5={label in legend={text=$\frac{1}{10}\sin 15x$}}, + 6={label in legend={text=$\frac{1}{11}\sin 16x$}}, + 7={label in legend={text=$\frac{1}{12}\sin 17x$}}, + 8={label in legend={text=$\frac{1}{13}\sin 18x$}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list= {1,2,3,4,5,6,7,8}, @@ -575,7 +790,35 @@ data group {sin functions}; visualizations when many different lines (ten or more) should be printed in black and white. % -\begin{codeexample}[width=10cm] +\begin{codeexample}[ + width=10cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + example visualization/.style={ + scientific axes=clean, + y axis={ticks={style={ + /pgf/number format/fixed, + /pgf/number format/fixed zerofill, + /pgf/number format/precision=2}}}, + x axis={ticks={tick suffix=${}^\circ$}}, + 1={label in legend={text=$\frac{1}{6}\sin 11x$}}, + 2={label in legend={text=$\frac{1}{7}\sin 12x$}}, + 3={label in legend={text=$\frac{1}{8}\sin 13x$}}, + 4={label in legend={text=$\frac{1}{9}\sin 14x$}}, + 5={label in legend={text=$\frac{1}{10}\sin 15x$}}, + 6={label in legend={text=$\frac{1}{11}\sin 16x$}}, + 7={label in legend={text=$\frac{1}{12}\sin 17x$}}, + 8={label in legend={text=$\frac{1}{13}\sin 18x$}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list= {1,2,3,4,5,6,7,8}, @@ -588,7 +831,35 @@ data group {sin functions}; For comparison, here is the must-less-than-satisfactory result of combining the two independent style sheets: % -\begin{codeexample}[width=10cm] +\begin{codeexample}[ + width=10cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + example visualization/.style={ + scientific axes=clean, + y axis={ticks={style={ + /pgf/number format/fixed, + /pgf/number format/fixed zerofill, + /pgf/number format/precision=2}}}, + x axis={ticks={tick suffix=${}^\circ$}}, + 1={label in legend={text=$\frac{1}{6}\sin 11x$}}, + 2={label in legend={text=$\frac{1}{7}\sin 12x$}}, + 3={label in legend={text=$\frac{1}{8}\sin 13x$}}, + 4={label in legend={text=$\frac{1}{9}\sin 14x$}}, + 5={label in legend={text=$\frac{1}{10}\sin 15x$}}, + 6={label in legend={text=$\frac{1}{11}\sin 16x$}}, + 7={label in legend={text=$\frac{1}{12}\sin 17x$}}, + 8={label in legend={text=$\frac{1}{13}\sin 18x$}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list= {1,2,3,4,5,6,7,8}, @@ -616,7 +887,35 @@ lines. In the latter case, the marks are added to the lines. This style supports only up to six different data sets and requires the |plotmarks| library. % -\begin{codeexample}[width=10cm] +\begin{codeexample}[ + width=10cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + example visualization/.style={ + scientific axes=clean, + y axis={ticks={style={ + /pgf/number format/fixed, + /pgf/number format/fixed zerofill, + /pgf/number format/precision=2}}}, + x axis={ticks={tick suffix=${}^\circ$}}, + 1={label in legend={text=$\frac{1}{6}\sin 11x$}}, + 2={label in legend={text=$\frac{1}{7}\sin 12x$}}, + 3={label in legend={text=$\frac{1}{8}\sin 13x$}}, + 4={label in legend={text=$\frac{1}{9}\sin 14x$}}, + 5={label in legend={text=$\frac{1}{10}\sin 15x$}}, + 6={label in legend={text=$\frac{1}{11}\sin 16x$}}, + 7={label in legend={text=$\frac{1}{12}\sin 17x$}}, + 8={label in legend={text=$\frac{1}{13}\sin 18x$}} + } +}}, +] \tikz \datavisualization [ visualize as scatter/.list= {1,2,3,4,5,6,7,8}, @@ -625,7 +924,35 @@ lines. In the latter case, the marks are added to the lines. data group {sin functions}; \end{codeexample} % -\begin{codeexample}[width=10cm] +\begin{codeexample}[ + width=10cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + example visualization/.style={ + scientific axes=clean, + y axis={ticks={style={ + /pgf/number format/fixed, + /pgf/number format/fixed zerofill, + /pgf/number format/precision=2}}}, + x axis={ticks={tick suffix=${}^\circ$}}, + 1={label in legend={text=$\frac{1}{6}\sin 11x$}}, + 2={label in legend={text=$\frac{1}{7}\sin 12x$}}, + 3={label in legend={text=$\frac{1}{8}\sin 13x$}}, + 4={label in legend={text=$\frac{1}{9}\sin 14x$}}, + 5={label in legend={text=$\frac{1}{10}\sin 15x$}}, + 6={label in legend={text=$\frac{1}{11}\sin 16x$}}, + 7={label in legend={text=$\frac{1}{12}\sin 17x$}}, + 8={label in legend={text=$\frac{1}{13}\sin 18x$}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list= {1,2,3,4,5,6,7,8}, @@ -663,7 +990,35 @@ situations. sheet, the visualizations are easier to read when this style sheet is used. Up to six different data sets are supported. % -\begin{codeexample}[width=10cm] +\begin{codeexample}[ + width=10cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + example visualization/.style={ + scientific axes=clean, + y axis={ticks={style={ + /pgf/number format/fixed, + /pgf/number format/fixed zerofill, + /pgf/number format/precision=2}}}, + x axis={ticks={tick suffix=${}^\circ$}}, + 1={label in legend={text=$\frac{1}{6}\sin 11x$}}, + 2={label in legend={text=$\frac{1}{7}\sin 12x$}}, + 3={label in legend={text=$\frac{1}{8}\sin 13x$}}, + 4={label in legend={text=$\frac{1}{9}\sin 14x$}}, + 5={label in legend={text=$\frac{1}{10}\sin 15x$}}, + 6={label in legend={text=$\frac{1}{11}\sin 16x$}}, + 7={label in legend={text=$\frac{1}{12}\sin 17x$}}, + 8={label in legend={text=$\frac{1}{13}\sin 18x$}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list= {1,2,3,4,5,6,7,8}, @@ -672,7 +1027,35 @@ situations. data group {sin functions}; \end{codeexample} % -\begin{codeexample}[width=10cm] +\begin{codeexample}[ + width=10cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + example visualization/.style={ + scientific axes=clean, + y axis={ticks={style={ + /pgf/number format/fixed, + /pgf/number format/fixed zerofill, + /pgf/number format/precision=2}}}, + x axis={ticks={tick suffix=${}^\circ$}}, + 1={label in legend={text=$\frac{1}{6}\sin 11x$}}, + 2={label in legend={text=$\frac{1}{7}\sin 12x$}}, + 3={label in legend={text=$\frac{1}{8}\sin 13x$}}, + 4={label in legend={text=$\frac{1}{9}\sin 14x$}}, + 5={label in legend={text=$\frac{1}{10}\sin 15x$}}, + 6={label in legend={text=$\frac{1}{11}\sin 16x$}}, + 7={label in legend={text=$\frac{1}{12}\sin 17x$}}, + 8={label in legend={text=$\frac{1}{13}\sin 18x$}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list= {1,2,3,4,5,6,7,8}, @@ -692,7 +1075,35 @@ data sets lead to nearly indistinguishable data sets. \begin{stylesheet}{vary hue} This style uses a different hue for each data set. % -\begin{codeexample}[width=10cm] +\begin{codeexample}[ + width=10cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + example visualization/.style={ + scientific axes=clean, + y axis={ticks={style={ + /pgf/number format/fixed, + /pgf/number format/fixed zerofill, + /pgf/number format/precision=2}}}, + x axis={ticks={tick suffix=${}^\circ$}}, + 1={label in legend={text=$\frac{1}{6}\sin 11x$}}, + 2={label in legend={text=$\frac{1}{7}\sin 12x$}}, + 3={label in legend={text=$\frac{1}{8}\sin 13x$}}, + 4={label in legend={text=$\frac{1}{9}\sin 14x$}}, + 5={label in legend={text=$\frac{1}{10}\sin 15x$}}, + 6={label in legend={text=$\frac{1}{11}\sin 16x$}}, + 7={label in legend={text=$\frac{1}{12}\sin 17x$}}, + 8={label in legend={text=$\frac{1}{13}\sin 18x$}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list= {1,2,3,4,5,6,7,8}, @@ -706,7 +1117,35 @@ data group {sin functions}; \begin{stylesheet}{shades of blue} As the name suggests, different shades of blue are used for different data sets. -\begin{codeexample}[width=10cm] +\begin{codeexample}[ + width=10cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + example visualization/.style={ + scientific axes=clean, + y axis={ticks={style={ + /pgf/number format/fixed, + /pgf/number format/fixed zerofill, + /pgf/number format/precision=2}}}, + x axis={ticks={tick suffix=${}^\circ$}}, + 1={label in legend={text=$\frac{1}{6}\sin 11x$}}, + 2={label in legend={text=$\frac{1}{7}\sin 12x$}}, + 3={label in legend={text=$\frac{1}{8}\sin 13x$}}, + 4={label in legend={text=$\frac{1}{9}\sin 14x$}}, + 5={label in legend={text=$\frac{1}{10}\sin 15x$}}, + 6={label in legend={text=$\frac{1}{11}\sin 16x$}}, + 7={label in legend={text=$\frac{1}{12}\sin 17x$}}, + 8={label in legend={text=$\frac{1}{13}\sin 18x$}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list= {1,2,3,4,5,6,7,8}, @@ -718,7 +1157,35 @@ data group {sin functions}; \end{stylesheet} \begin{stylesheet}{shades of red} -\begin{codeexample}[width=10cm] +\begin{codeexample}[ + width=10cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + example visualization/.style={ + scientific axes=clean, + y axis={ticks={style={ + /pgf/number format/fixed, + /pgf/number format/fixed zerofill, + /pgf/number format/precision=2}}}, + x axis={ticks={tick suffix=${}^\circ$}}, + 1={label in legend={text=$\frac{1}{6}\sin 11x$}}, + 2={label in legend={text=$\frac{1}{7}\sin 12x$}}, + 3={label in legend={text=$\frac{1}{8}\sin 13x$}}, + 4={label in legend={text=$\frac{1}{9}\sin 14x$}}, + 5={label in legend={text=$\frac{1}{10}\sin 15x$}}, + 6={label in legend={text=$\frac{1}{11}\sin 16x$}}, + 7={label in legend={text=$\frac{1}{12}\sin 17x$}}, + 8={label in legend={text=$\frac{1}{13}\sin 18x$}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list= {1,2,3,4,5,6,7,8}, @@ -732,7 +1199,35 @@ data group {sin functions}; For once, this style sheet can also be used when the visualization is printed in black and white. % -\begin{codeexample}[width=10cm] +\begin{codeexample}[ + width=10cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + example visualization/.style={ + scientific axes=clean, + y axis={ticks={style={ + /pgf/number format/fixed, + /pgf/number format/fixed zerofill, + /pgf/number format/precision=2}}}, + x axis={ticks={tick suffix=${}^\circ$}}, + 1={label in legend={text=$\frac{1}{6}\sin 11x$}}, + 2={label in legend={text=$\frac{1}{7}\sin 12x$}}, + 3={label in legend={text=$\frac{1}{8}\sin 13x$}}, + 4={label in legend={text=$\frac{1}{9}\sin 14x$}}, + 5={label in legend={text=$\frac{1}{10}\sin 15x$}}, + 6={label in legend={text=$\frac{1}{11}\sin 16x$}}, + 7={label in legend={text=$\frac{1}{12}\sin 17x$}}, + 8={label in legend={text=$\frac{1}{13}\sin 18x$}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list= {1,2,3,4,5,6,7,8}, @@ -822,7 +1317,28 @@ data set: point where the \meta{attribute} is at least \meta{number} (if this never happens, the last data point is used). % -\begin{codeexample}[width=6.3cm] +\begin{codeexample}[ + width=6.3cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ school book axes, x axis={label=$x$}, @@ -842,7 +1358,28 @@ data group {function classes}; This key chooses the \meta{number}th data point belonging to the visualizer's data set. % -\begin{codeexample}[width=6.3cm] +\begin{codeexample}[ + width=6.3cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ school book axes, x axis={label=$x$}, @@ -861,7 +1398,28 @@ data group {function classes}; index is at least \meta{fraction} times the number of all data points in the data set. % -\begin{codeexample}[width=6.3cm] +\begin{codeexample}[ + width=6.3cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ school book axes, x axis={label=$x$}, @@ -887,7 +1445,10 @@ data group {function classes}; will be placed at different positions along the lines with hopefully only little overlap. % -\begin{codeexample}[width=6.3cm] +\begin{codeexample}[ + width=6.3cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [ scientific axes=clean, visualize as smooth line/.list={linear, squared, cubed}, @@ -930,7 +1491,28 @@ data [set=cubed, format=function] { This style has a default definition, usually you should just append things to this style. % -\begin{codeexample}[width=6.3cm] +\begin{codeexample}[ + width=6.3cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ school book axes, x axis={label=$x$}, @@ -964,7 +1546,10 @@ data group {function classes}; to it via a small line (this is like the difference between the |label| and |pin| options). % -\begin{codeexample}[width=6.3cm] +\begin{codeexample}[ + width=6.3cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [ scientific axes=clean, visualize as smooth line/.list={linear, squared, cubed}, @@ -1009,7 +1594,28 @@ data [set=cubed, format=function] { See the description of |pin angle|. \end{key} % -\begin{codeexample}[width=6.3cm] +\begin{codeexample}[ + width=6.3cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ school book axes, x axis={label=$x$}, @@ -1090,7 +1696,28 @@ usually use the |legend| key instead, see below): Adds the \meta{options} to the list of options that will be executed when the legend's node is created. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1115,7 +1742,28 @@ data group {function classes}; the right of the data set visualization. \end{stylekey} % -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, x axis={label=$x$}, visualize as smooth line/.list={log, lin, squared, exp}, @@ -1139,7 +1787,28 @@ data group {function classes}; key creates a new |main legend| and immediately passes the configuration \meta{options} to this legend. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, x axis={label=$x$}, visualize as smooth line/.list={log, lin, squared, exp}, @@ -1192,7 +1861,28 @@ the key |label in legend| must be used together with a data set: Use this key to setup the \meta{text} that is shown as the label of the data set. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, x axis={label=$x$}, visualize as smooth line/.list= @@ -1256,7 +1946,30 @@ configure which strategy is used using the following keys: once a column is full, the next column is begun to the right of the previous one. This is the default. % -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1285,7 +1998,30 @@ data group {sin functions}; \end{key} \begin{key}{/tikz/data visualization/legend options/down then left} -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1295,7 +2031,30 @@ data group {sin functions}; \end{key} \begin{key}{/tikz/data visualization/legend options/up then right} -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1305,7 +2064,30 @@ data group {sin functions}; \end{key} \begin{key}{/tikz/data visualization/legend options/up then left} -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1315,7 +2097,30 @@ data group {sin functions}; \end{key} \begin{key}{/tikz/data visualization/legend options/left then up} -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1325,7 +2130,30 @@ data group {sin functions}; \end{key} \begin{key}{/tikz/data visualization/legend options/left then down} -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1335,7 +2163,30 @@ data group {sin functions}; \end{key} \begin{key}{/tikz/data visualization/legend options/right then up} -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1345,7 +2196,30 @@ data group {sin functions}; \end{key} \begin{key}{/tikz/data visualization/legend options/right then down} -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1365,7 +2239,30 @@ begun. This is achieved using the following keys: As the legend matrix is being filled, whenever the number of rows in the current column would exceed \meta{number}, a new column is started. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1373,7 +2270,30 @@ begun. This is achieved using the following keys: data group {sin functions}; \end{codeexample} % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1381,7 +2301,30 @@ data group {sin functions}; data group {sin functions}; \end{codeexample} % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1397,7 +2340,30 @@ data group {sin functions}; you use this key with a strategy that first goes left or right and then up or down. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1405,7 +2371,30 @@ data group {sin functions}; data group {sin functions}; \end{codeexample} % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1413,7 +2402,30 @@ data group {sin functions}; data group {sin functions}; \end{codeexample} % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1441,7 +2453,30 @@ value. |max rows| value of rows per column, more columns than the ideal number are created. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1449,7 +2484,30 @@ value. data group {sin functions}; \end{codeexample} % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1457,7 +2515,30 @@ data group {sin functions}; data group {sin functions}; \end{codeexample} % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1474,7 +2555,30 @@ data group {sin functions}; \begin{key}{/tikz/data visualization/legend options/ideal number of rows=\meta{number}} Works like |ideal number of columns|. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1482,7 +2586,30 @@ data group {sin functions}; data group {sin functions}; \end{codeexample} % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1490,7 +2617,30 @@ data group {sin functions}; data group {sin functions}; \end{codeexample} % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {sin functions} = { + data [format=function] { + var set : {1,...,8}; + var x : interval [0:50]; + func y = sin(\value x * (\value{set}+10))/(\value{set}+5); + } +};% +\tikzdatavisualizationset { + legend example/.style={ + scientific axes, all axes={length=1cm, ticks=none}, + 1={label in legend={text=1}}, + 2={label in legend={text=2}}, + 3={label in legend={text=3}}, + 4={label in legend={text=4}}, + 5={label in legend={text=5}}, + 6={label in legend={text=6}}, + 7={label in legend={text=7}}, + 8={label in legend={text=8}} + } +}}, +] \tikz \datavisualization [ visualize as smooth line/.list={1,2,3,4,5,6,7,8}, legend example, style sheet=vary hue, @@ -1540,7 +2690,28 @@ but these options internally just map to the following two options: As an example, let us put a legend to the right of the visualization, but so that the first entry starts at the top of the visualization: % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, x axis={label=$x$}, visualize as smooth line/.list= @@ -1569,7 +2740,28 @@ visualization. \begin{key}{/tikz/data visualization/legend options/east outside} Placing the legend to the right of the data visualization is the default: % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1592,7 +2784,28 @@ data group {function classes}; A variant, where the legend is to the right, but aligned with the northern end of the data visualization: % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1609,7 +2822,28 @@ data group {function classes}; \end{key} \begin{key}{/tikz/data visualization/legend options/south east outside} -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1627,7 +2861,28 @@ data group {function classes}; \begin{key}{/tikz/data visualization/legend options/west outside} The legend is placed left. Note that the text also swaps its position. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1647,7 +2902,28 @@ data group {function classes}; \end{key} \begin{key}{/tikz/data visualization/legend options/north west outside} -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1663,7 +2939,28 @@ data group {function classes}; \end{key} \begin{key}{/tikz/data visualization/legend options/south west outside} -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1683,7 +2980,28 @@ data group {function classes}; The legend is placed above the data. Note that the legend entries now for a row rather than a column. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1703,7 +3021,28 @@ data group {function classes}; \end{key} \begin{key}{/tikz/data visualization/legend options/south outside} -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1734,7 +3073,28 @@ coordinate given by a certain data point. \begin{key}{/tikz/data visualization/legend options/south east inside} Puts the legend in the upper right corner of the data. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1796,7 +3156,28 @@ rather than a column for the legend entries: is now a little smaller since there tends to be much less space inside the data visualization than next to it. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list={log, lin}, @@ -1823,7 +3204,28 @@ can revert to directly setting the |at| and the |anchor| keys): key--value pairs that specify a data point. The legend will then be centered at this data point. % -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list={log, lin}, @@ -1839,7 +3241,28 @@ data group {function classes}; \begin{key}{/tikz/data visualization/legend options/right of=\meta{data point}} Works like |at values|, but the anchor is set to |west|: % -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list={log, lin}, @@ -1897,7 +3320,28 @@ first have a look at the keys that allow us to save a set of such styles: |/tikz/data visualization/legend entry options|. Thus, this key can use keys like |node style| to configure the styling of all text nodes: % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, every label in legend/.style={node style= @@ -1920,7 +3364,28 @@ data group {function classes}; This key can be used with a legend. It will simply add the \meta{options} to the |every label in legend| style for the given legend. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1945,7 +3410,28 @@ The appearance of the text nodes is easy to configure. \begin{key}{/tikz/data visualization/legend entry options/node style=\meta{options}} This key adds \meta{options} to the styling of the text nodes of the label. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1967,7 +3453,28 @@ data group {function classes}; effect of this is that the label's text will have the same color as the data set to which it is attached. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -1997,7 +3504,28 @@ visualization. \begin{key}{/tikz/data visualization/legend entry options/text left} Placed the text node to the left of the data set style visualization. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -2018,7 +3546,28 @@ data group {function classes}; options only makes sense in conjunction with the |text colored| options, which is why this options is also selected implicitly. % -\begin{codeexample}[width=8cm] +\begin{codeexample}[ + width=8cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, + pre={\tikz \datavisualization data group {function classes} = { + data [set=log, format=function] { + var x : interval [0.2:2.5]; + func y = ln(\value x); + } + data [set=lin, format=function] { + var x : interval [-2:2.5]; + func y = 0.5*\value x; + } + data [set=squared, format=function] { + var x : interval [-1.5:1.5]; + func y = \value x*\value x; + } + data [set=exp, format=function] { + var x : interval [-2.5:1]; + func y = exp(\value x); + } +};}, +] \tikz \datavisualization [ scientific axes, visualize as smooth line/.list= @@ -2096,7 +3645,7 @@ for instance by |label in legend|: picture. Typically, this will be a visual representation of the data set styling, but it could also be something different. % -\begin{codeexample}[width=6cm] +\begin{codeexample}[width=6cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ school book axes, visualize as line/.list={a,b}, style sheet=vary dashing, @@ -2180,7 +3729,7 @@ globally reconfiguring the default label in legend visualizers: changing this style will change the appearance of lines in legends. The main other sensible option for this key is |straight label in legend line|. % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ school book axes, visualize as line/.list={a,b}, style sheet=vary dashing, @@ -2189,7 +3738,7 @@ data point [x=-1, y=-1, set=a] data point [x=1, y=0, set=a] data point [x=-1, y=1, set=b] data point [x=1, y=0.5, set=b]; \end{codeexample} % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ school book axes, visualize as line/.list={a,b}, legend entry options/default label in legend path/.style= @@ -2213,7 +3762,7 @@ data point [x=-1, y=1, set=b] data point [x=1, y=0.5, set=b]; default is to use |label in legend line one mark|. Another possible value is |label in legend line three marks|. % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ visualize as scatter/.list={a,b,c}, style sheet=cross marks, @@ -2251,7 +3800,7 @@ data point [x=-1, y=1, set=b] data point [x=1, y=0.5, set=b]; that is just a straight line, so it should start somewhere to the left of the origin at height $0$ and go to the origin: % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ school book axes, visualize as line/.list={a,b}, style sheet=vary dashing, @@ -2265,7 +3814,7 @@ data point [x=-1, y=1, set=b] data point [x=1, y=0.5, set=b]; Now let us make this a bit more fancy and useful by using shifted lines: % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ school book axes, visualize as line/.list={a,b}, legend={up then right}, style sheet=vary dashing, @@ -2279,7 +3828,7 @@ data point [x=-1, y=1, set=b] data point [x=1, y=0.5, set=b]; In the final example, we use a little ``hat'' to represent lines: % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ school book axes, visualize as line/.list={a,b}, legend={up then right}, style sheet=vary dashing, @@ -2306,7 +3855,7 @@ data point [x=-1, y=1, set=b] data point [x=1, y=0.5, set=b]; but usually it is not. In general, it is better to have marks for instance not at the ends of the line. % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ school book axes, visualize as line/.list={a,b}, legend={up then right}, @@ -2335,7 +3884,7 @@ but use one of the following styles: \begin{key}{/tikz/data visualization/legend entry options/straight label in legend line} Just gives a straight line and two plot marks. % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [visualize as line, line={style={mark=x}, label in legend={text=example, straight label in legend line}}]; @@ -2346,7 +3895,7 @@ but use one of the following styles: distinguish -- even though there is no problem distinguishing them in a graph. % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [visualize as line/.list={a,b,c}, legend entry options/default label in legend path/.style= straight label in legend line, @@ -2363,7 +3912,7 @@ but use one of the following styles: plot marks are at the extremal points of the line. It works pretty well in almost all situations and is the default. % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ visualize as line=a, visualize as smooth line/.list={b,c}, @@ -2377,7 +3926,7 @@ but use one of the following styles: optimal. This is the reason that the |cross marks| style uses different crosses: % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ visualize as line/.list={a,b}, visualize as smooth line=c, @@ -2394,7 +3943,10 @@ but use one of the following styles: automatically selected for instance by the |polygon| or the |smooth cycle| styles. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [ scientific axes={clean}, all axes={length=3cm}, visualize as line/.list={a,b,c}, @@ -2423,7 +3975,10 @@ data point [x=1, y=0.25, set=c]; This style is especially tailored to for the |gap cycle| style and automatically selected by it: % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [ scientific axes={clean}, all axes={length=3cm}, visualize as line/.list={a,b,c}, @@ -2454,7 +4009,7 @@ data point [x=1, y=0.25, set=c]; single mark (this is the default with a scatter plot or when the |no line| is selected. % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [visualize as scatter/.list={a,b,c}, style sheet=cross marks, a={label in legend={text=example a}}, @@ -2467,7 +4022,7 @@ data point [x=1, y=0.25, set=c]; \begin{key}{/tikz/data visualization/legend entry options/label in legend three marks} An alternative to the previous style, where several marks are shown. % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [visualize as scatter/.list={a,b,c}, style sheet=cross marks, a={label in legend={text=example a, label in legend three marks}}, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-visualizers.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-visualizers.tex index 3923339a115..2c6fc8481ec 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-visualizers.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-dv-visualizers.tex @@ -70,7 +70,7 @@ all that needs to be done in order to choose a visualizer is use one of the options starting with |visualize as ...| together with the |\datavisualization| command: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization}}] % Define a data set: \tikz \datavisualization data group {example} = { data { @@ -129,7 +129,7 @@ visualizers, the following key is important: Since the |set| key has the path prefix |/data point|, it can be set like any other attribute of a data key: % -\begin{codeexample}[width=7cm] +\begin{codeexample}[width=7cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [scientific axes=clean, visualize as line=sin, @@ -164,7 +164,7 @@ easy to achieve by using multiple |data| and using the following key: \begin{key}{/pgf/data/set=\meta{name}} Shorthand for |/data point/set=|\meta{name}. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[width=7cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [scientific axes=clean, visualize as line=sin, @@ -196,7 +196,10 @@ code by making use of the |.list| key handler: When you add it to a key, the ``value'' passed to the key is parsed as a list of values. The key is then executed once for each of these values: % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [scientific axes=clean, visualize as line/.list={sin, cos, tan}] @@ -236,7 +239,10 @@ In order to style a visualizer that has been created using for instance |label in legend| and |label in data|. The latter two options are discussed in Section~\ref{section-dv-labels-in}, the first option below. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [scientific axes=clean, visualize as smooth line/.list={sin, cos}, @@ -258,7 +264,10 @@ data [set=cos, format=function] { The \meta{options} given to this key should be normal \tikzname\ options. They will be executed when the visualizer is used. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [scientific axes=clean, visualize as smooth line=sin, @@ -282,7 +291,10 @@ data [set=cos, format=function] { (and easier) to use a style sheet, see Section~\ref{section-dv-style-sheets}. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [scientific axes={clean, end labels}, x axis={label=$x$}, y axis={grid={major also at=0}}, @@ -331,7 +343,10 @@ also gets executed when a visualizer is used: This style is used with every visualizer. Note that it should contain normal \tikzname\ keys. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [scientific axes=clean, every visualizer/.style={dashed}, @@ -379,7 +394,10 @@ data [format=function] { offered by \tikzname\ for configuring marks are available such as |mark repeat|: % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [scientific axes=clean, visualize as line=my data, @@ -410,7 +428,10 @@ data [format=function] { at the previous data point and a new line starts at the next data point. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [scientific axes=clean, x axis={grid={major at=(pi/2)}}, visualize as smooth line] @@ -435,7 +456,7 @@ data [format=function] { \begin{key}{/tikz/data visualization/visualizer options/straight line} Causes the data points to be connected by straight lines. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz [scale=.55] \datavisualization [scientific axes=clean, all axes={ticks=few}, visualize as smooth line=my data, my data={straight line}] @@ -451,7 +472,7 @@ data [format=function] { \begin{key}{/tikz/data visualization/visualizer options/straight cycle} Causes the data points to be connected by a polygon. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz [scale=.55] \datavisualization [scientific axes=clean, all axes={ticks=few}, visualize as smooth line=my data, my data={straight cycle}] @@ -472,7 +493,7 @@ data [format=function] { Causes the data points to be connected by a line that is smoothed at the joins: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz [scale=.55] \datavisualization [scientific axes=clean, all axes={ticks=few}, visualize as smooth line=my data, my data={smooth line}] @@ -489,7 +510,7 @@ data [format=function] { Causes the data points to be connected by a circular line that is smoothed at the joins: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz [scale=.55] \datavisualization [scientific axes=clean, all axes={ticks=few}, visualize as smooth line=my data, my data={smooth cycle}] @@ -507,7 +528,7 @@ data [format=function] { quite touch'' the data points. This is implemented by using the |\pgfplothandlergaplineto|, see Section~\ref{section-plot-gapped}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz [scale=.55] \datavisualization [scientific axes=clean, all axes={ticks=few}, visualize as smooth line=my data, my data={gap line}] @@ -523,7 +544,7 @@ data [format=function] { \begin{key}{/tikz/data visualization/visualizer options/gap cycle} Like |gapped line|, only with a cycle: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz [scale=.55] \datavisualization [scientific axes=clean, all axes={ticks=few}, visualize as smooth line=my data, my data={gap cycle}] @@ -540,7 +561,7 @@ data [format=function] { Suppresses the line. This option only makes sense when the |mark| option is used. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz [scale=.55] \datavisualization [scientific axes=clean, all axes={ticks=few}, visualize as smooth line=my data, my data={no lines, style={mark=x}}] @@ -562,7 +583,10 @@ data [format=function] { so that is will use |mark=x| (plus some size adjustments) to draw marks at the data points. % -\begin{codeexample}[width=7cm] +\begin{codeexample}[ + width=7cm, + preamble={\usetikzlibrary{datavisualization.formats.functions}}, +] \tikz \datavisualization [scientific axes=clean, visualize as scatter] @@ -715,6 +739,8 @@ Finally, we create a |visualize as| key: Now, let's see how this works: +% TODOsp: codeexamples: This stuff is all needed for the next `codeexample` +% but cannot be stored (simply) in `setup code`, `preample` or `pre` \pgfooclass{circle visualizer} { % Stores the name of the visualizer. This is needed for filtering % and configuration @@ -765,7 +791,7 @@ Now, let's see how this works: visualize as circle/.default=circle } -\begin{codeexample}[width=7cm] +\begin{codeexample}[width=7cm,preamble={\usetikzlibrary{datavisualization}}] \tikz \datavisualization [ scientific axes=clean, visualize as circle/.list={a, b, c}, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithm-layer.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithm-layer.tex index aa9fa817a92..9704f9b3de1 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithm-layer.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-algorithm-layer.tex @@ -509,7 +509,7 @@ example \subsubsection{Namespaces} -All parts of the graph drawing library reside in the Lua ``namespace'' +All parts of the |graphdrawing| library reside in the Lua ``namespace'' |pgf.gd|, which is itself a ``sub-namespace'' of |pgf|. For your own algorithms, you are free to place them in whatever namespace you like; only for the official distribution of \pgfname\ everything has been put into the correct diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-binding-layer.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-binding-layer.tex index b677de2175a..d09a8aef428 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-binding-layer.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-binding-layer.tex @@ -106,7 +106,7 @@ results. For instance: \medskip \tikz [anchor=base]\graph [layered layout,level distance=2.35cm,sibling -distance=1.2cm,edges={rounded corners,>=spaced stealth'}] { +distance=1.2cm,edges={rounded corners,>={Stealth[round,sep]}}] { Alice; Bob; Charly; diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-overview.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-overview.tex index 39ecd659a87..8fc660a937f 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-overview.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-overview.tex @@ -36,7 +36,8 @@ should be. This is something you leave to a \emph{graph drawing algorithm}. The algorithm gets your description of the graph as an input and then decides where the nodes should go on the page. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{trees}}] \tikz \graph [binary tree layout, level distance=5mm] { 4 -- { 3 -- 0 -- 1[second], @@ -48,9 +49,8 @@ the nodes should go on the page. }; \end{codeexample} -\begin{codeexample}[] -% \usetikzlibrary{graphs,graphdrawing,quotes} -% \usegdlibrary{force} +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing,quotes} +\usegdlibrary{force}}] \tikz \graph [spring layout, edge quotes mid, edges={nodes={font=\scriptsize, fill=white, sloped, inner sep=1pt}}] @@ -71,13 +71,13 @@ dozens of new algorithms are proposed. Unlike the rest of \pgfname\ and \tikzname, which is implemented purely in \TeX, the graph drawing algorithms are simply too complex to be implemented -directly in \TeX. Instead, the programming language Lua is used by the graph -drawing library -- a programming language that has been integrated into recent -versions of \TeX. This means that (a) as a user of the graph drawing engine you -run \TeX\ on your documents in the usual way, no external programs are called -since Lua is already integrated into \TeX, and (b) it is pretty easy to -implement new graph drawing algorithms for \tikzname\ since Lua can be used and -no \TeX\ programming knowledge is needed. +directly in \TeX. Instead, the programming language Lua is used by the +|graphdrawing| library -- a programming language that has been integrated into +recent versions of \TeX. This means that (a) as a user of the graph drawing +engine you run \TeX\ on your documents in the usual way, no external programs +are called since Lua is already integrated into \TeX, and (b) it is pretty easy +to implement new graph drawing algorithms for \tikzname\ since Lua can be used +and no \TeX\ programming knowledge is needed. \subsection{Using the Graph Drawing System} @@ -88,8 +88,9 @@ example, where the |layered layout| option tells \tikzname\ that the graph should be drawn (``should be laid out'') using a so-called ``layered graph drawing algorithm'' (what these are will be explained later): % -\begin{codeexample}[] -\tikz [>=spaced stealth'] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,graphs,graphdrawing} +\usegdlibrary{layered}}] +\tikz [>={Stealth[round,sep]}] \graph [layered layout, components go right top aligned, nodes=draw, edges=rounded corners] { first root -> {1 -> {2, 3, 7} -> {4, 5}, 6 }, 4 -- 5; @@ -101,7 +102,8 @@ drawing algorithm'' (what these are will be explained later): Here is another example, where a different layout method is used that is more appropriate for trees: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphdrawing} +\usegdlibrary{trees}}] \tikz [grow'=up, binary tree layout, nodes={circle,draw}] \node {1} child { node {2} @@ -122,7 +124,9 @@ appropriate for trees: A final example, this time using a ``spring electrical layout'' (whatever that might be\dots): % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{decorations.pathmorphing,graphdrawing} +\usegdlibrary{force}}] \tikz [spring electrical layout, node distance=1.3cm, every edge/.style={ decoration={coil, aspect=-.5, post length=1mm, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-pgf.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-pgf.tex index 961f1e1076f..633df75b883 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-pgf.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-pgf.tex @@ -45,7 +45,7 @@ The documentation of the \pgfname\ part of the graph drawing system that is presented in the following includes only those macros that other \TeX\ packages could conceivably call in order to use the graph drawing system without using \tikzname; for instance, for efficiency reasons. (The internal callback -functions defined in the graph drawing library that are part of the binding +functions defined in the |graphdrawing| library that are part of the binding between \pgfname\ and the graph drawing system are not documented, should not be called, and may change in the future.) @@ -72,7 +72,8 @@ independently of \TeX. Let us have a look at a simple example to see what happens when a graph is specified: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{trees}}] \tikz[tree layout] \graph {root [as=Hello] -> World[fill=blue!20]}; \end{codeexample} @@ -84,8 +85,8 @@ the next call of |\pgfgdendscope|, all nodes that are created actually get passed down to the graph drawing engine. This is implemented on the lowest layer, namely by directly intercepting nodes freshly created using |\pgfnode|. In our example, this happens in two places: For the |root| node and for the -|World| node. The |graph| library and \tikzname\ internally call the |\pgfnode| -macro for these two nodes (after a large number of internal syntax +|World| node. The |graphs| library and \tikzname\ internally call the +|\pgfnode| macro for these two nodes (after a large number of internal syntax translations, but the graph drawing system does not care about them). Note that the node boxes will have been fully created before they are passed @@ -110,7 +111,7 @@ An overview of what happens is illustrated by the following call graph: \begin{tikzpicture}[ class name/.style={draw,minimum size=20pt, fill=blue!20}, object node/.style={draw,minimum size=15pt, fill=yellow!20}, - p/.style={->,>=spaced stealth'}, + p/.style={->,>={Stealth[round,sep]}}, livespan/.style={very thick}, xscale=0.8, ] @@ -259,10 +260,10 @@ Graph drawing scopes are created using the following commands: \item If the |graphs| library has been loaded, the default positioning mechanisms of this library are switched off, leaving the positioning to the graph drawing engine. Also, when an edge is - created by the |graphs| library, this is signalled to the graph - drawing library. (To be more precise: The keys |new ->| and so on - are redefined so that they call |\pgfgdedge| instead of creating an - edge. + created by the |graphs| library, this is signalled to the + |graphdrawing| library. (To be more precise: The keys |new ->| and + so on are redefined so that they call |\pgfgdedge| instead of + creating an edge. \item The |edge| path command is modified so that it also calls |\pgfgdedge| instead of immediately creating any edges. \item The |edge from parent| path command is modified so that is also @@ -533,7 +534,8 @@ of layout keys inside a picture will only open sublayouts. |{tikzpicture}|, to |\scoped|, to |{scope}|, to |graph|, and to |{graph}|. For instance, the |tree layout| option can be used in the following ways: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{trees}}] \tikz [tree layout] \graph {1 -> {b,c}}; \tikz \graph [tree layout] {2 -> {b,c}}; \tikz \path graph [tree layout] {3 -> {b,c}}; @@ -555,7 +557,8 @@ of layout keys inside a picture will only open sublayouts. particular, to typeset a tree given in the |child| syntax somewhere inside a |{tikzpicture}|, you must prefix it with the |\scoped| command: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphdrawing} +\usegdlibrary{trees}}] \begin{tikzpicture} \scoped [tree layout] \node {root} @@ -566,7 +569,8 @@ of layout keys inside a picture will only open sublayouts. % Naturally, the above could have been written more succinctly as % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphdrawing} +\usegdlibrary{trees}}] \tikz [tree layout] \node {root} child { node {left child} } @@ -575,7 +579,8 @@ of layout keys inside a picture will only open sublayouts. % Or even more succinctly: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{trees}}] \tikz \graph [tree layout] { root -- {left child, right child} }; \end{codeexample} % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-tikz.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-tikz.tex index bbedfc01db9..32cf24e59bb 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-tikz.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-gd-usage-tikz.tex @@ -89,7 +89,8 @@ engine should apply a layout algorithm to the nodes in the scope. Typically, you just add an option ending with |... layout| to the |graph| path operation and then let the graph drawing do its magic: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{layered}}] \tikz [rounded corners] \graph [layered layout, sibling distance=8mm, level distance=8mm] { @@ -170,7 +171,8 @@ very specific to a single algorithm, a number of graph parameters will be important for many algorithms and they are documented in the course of the present section. Here is an example of an option the ``always works'': % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{force}}] \tikz \graph [spring layout, vertical=1 to 2] { 1--2--3--1 }; \end{codeexample} @@ -219,7 +221,8 @@ for sublayouts. Let us start with the ``plain'' syntax for opening sublayouts: You pass a key for creating layouts to a |scope|: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphdrawing} +\usegdlibrary{force,trees}}] \tikz [spring layout] { \begin{scope}[tree layout] \node (a) {a}; @@ -258,7 +261,8 @@ brackets. However, you \emph{must} provide a sublayout in braces. The contents of \meta{sublayout} will be parsed using the usual |graph| syntax, but will form a sublayout. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{force,trees}}] \tikz \graph [spring layout] { // [tree layout] { a -- {b, c} }; // [tree layout] { 1 -- 2 }; @@ -270,7 +274,8 @@ In the above example, there is no node before the double slash, which means that the two sublayouts will be part of the main graph, but will not be indicated otherwise. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{circular,trees}}] \tikz \graph [simple necklace layout] { // [simple necklace layout] { a -> b -> c -> d -> e -> f -> a }; @@ -294,7 +299,8 @@ layout does nothing here. Compare the above to the following code: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{circular,trees}}] \tikz \graph [simple necklace layout] { // [tree layout] { % first ``giant node'' a -> {1, 2}; @@ -336,7 +342,11 @@ follows: The idea ist that a subgraph node is declared like a normal node specification, but is followed by a double slash and a subgraph: % -\begin{codeexample}[width=5cm] +\begin{codeexample}[ + width=5cm, + preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{circular,trees}}, +] \tikz \graph [simple necklace layout] { tree 1[draw, circle] // [tree layout] { a -> {1, 2}; } -> b @@ -355,7 +365,8 @@ layout: If you do \emph{not} provide a layout name after the double slash, the subgraph node will simply surround all nodes that were placed by the main layout wherever they were placed: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{trees}}] \tikz [subgraph text bottom=text centered, subgraph nodes={font=\itshape}] \graph [tree layout] { @@ -377,7 +388,8 @@ Every time a subgraph node is created, the following style is execute: \begin{key}{/tikz/subgraph nodes=\meta{style}} Sets the |every subgraph node| style to \meta{style}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{trees}}] \tikz [subgraph text bottom=text centered, subgraph nodes=red] \graph [tree layout] { @@ -398,7 +410,8 @@ Every time a subgraph node is created, the following style is execute: option is useful in situations when subgraph nodes generally should not have any text inside them. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{trees}}] \tikz [subgraph text none] \graph [tree layout] { a -> { b -> {c, d}, e -> {f, g -> h} }; @@ -417,7 +430,8 @@ Every time a subgraph node is created, the following style is execute: the subgraph node: Still inside the node, but above all nodes inside the subgraph node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{trees}}] \tikz [subgraph text top=text ragged left] \graph [tree layout] { a -> { b -> {c, d}, e -> {f, g -> h} }; @@ -432,7 +446,11 @@ Every time a subgraph node is created, the following style is execute: You can pass any of the \meta{text alignment options} understood by \tikzname, such as |text centered|: % -\begin{codeexample}[width=5cm] +\begin{codeexample}[ + width=5cm, + preamble={\usetikzlibrary{graphs,graphdrawing} +\usegdlibrary{trees}}, +] \tikz [subgraph text top=text centered] \graph [tree layout] { a -> { b -> {c, d}, e -> {f, g -> h} }; @@ -444,7 +462,8 @@ Every time a subgraph node is created, the following style is execute: To place a label \emph{outside} the subgraph node, use a label, typically defined using the |quotes| library: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing,quotes} +\usegdlibrary{trees}}] \tikz \graph [tree layout] { a -> { b -> {c, d}, e -> {f, g -> h} }; diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-introduction.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-introduction.tex index 7117552eff9..5059d7af867 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-introduction.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-introduction.tex @@ -13,7 +13,7 @@ Welcome to the documentation of \tikzname\ and the underlying \pgfname\ system. What began as a small \LaTeX\ style for creating the graphics in my (Till Tantau's) PhD thesis directly with pdf\LaTeX\ has now grown to become a -full-flung graphics language with a manual of over a thousand pages. The wealth +full-blown graphics language with a manual of over a thousand pages. The wealth of options offered by \tikzname\ is often daunting to beginners; but fortunately this documentation comes with a number slowly-paced tutorials that will teach you almost all you should know about \tikzname\ without your having @@ -26,7 +26,7 @@ defines a number of \TeX\ commands that draw graphics. For example, the code \tikz \fill[orange] (1ex,1ex) circle (1ex);. In a sense, when you use \tikzname\ you ``program'' your graphics, just as you ``program'' your document when you use \TeX. This also explains the name: \tikzname\ is a recursive -acronym in the tradition of ``\textsc{gnu} is not unix'' and means ``\tikzname\ +acronym in the tradition of ``\textsc{gnu}'s Not Unix'' and means ``\tikzname\ ist \emph{kein} Zeichenprogramm'', which translates to ``\tikzname\ is not a drawing program'', cautioning the reader as to what to expect. With \tikzname\ you get all the advantages of the ``\TeX-approach to typesetting'' for your @@ -104,8 +104,8 @@ With the \tikzname\ frontend all this boils down to a single simple In practice, \tikzname\ is the only ``serious'' frontend for \pgfname. It gives you access to all features of \pgfname, but it is intended to be easy to use. The syntax is a mixture of \textsc{metafont} and \textsc{pstricks} and some -ideas of myself. There are other frontends besides \tikzname, but they are more -intended as ``technology studies'' and less as serious alternatives to +ideas of myself. There are other frontends besides \tikzname, but they are intended +more as ``technology studies'' and less as serious alternatives to \tikzname. In particular, the |pgfpict2e| frontend reimplements the standard \LaTeX\ |{picture}| environment and commands like |\line| or |\vector| using the \pgfname\ basic layer. This layer is not really ``necessary'' since the @@ -148,7 +148,7 @@ to give a reasonably fair comparison of \tikzname\ and other packages. very small, which may or may not be an advantage. \item The |metapost| program is a powerful alternative to \tikzname. It used to be an external program, which entailed a bunch of problems, - but in Lua\TeX\ it is now build in. An obstacle with |metapost| is + but in Lua\TeX\ it is now built in. An obstacle with |metapost| is the inclusion of labels. This is \emph{much} easier to achieve using \pgfname. \item The |xfig| program is an important alternative to \tikzname\ for @@ -253,8 +253,9 @@ When you need help with \pgfname\ and \tikzname, please do the following: \item \emph{As a last resort} you can try to email me (Till Tantau) or, if the problem concerns the mathematical engine, Mark Wibrow. I do not mind getting emails, I simply get way too many of them. Because - of this, I cannot guarantee that your emails will be answered timely - or even at all. Your chances that your problem will be fixed are - somewhat higher if you mail to the \pgfname\ mailing list (naturally, - I read this list and answer questions when I have the time). + of this, I cannot guarantee that your emails will be answered in a + timely fashion or even at all. Your chances that your problem will + be fixed are somewhat higher if you mail to the \pgfname\ mailing + list (naturally, I read this list and answer questions when I have + the time). \end{enumerate} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-3d.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-3d.tex index 76014f5e821..a8f91c7309d 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-3d.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-3d.tex @@ -15,6 +15,7 @@ shapes. \end{tikzlibrary} + \subsection{Coordinate Systems} \begin{coordinatesystem}{xyz cylindrical} @@ -38,7 +39,7 @@ Factor by which the $z$-vector is multiplied. \end{key} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{3d}}] \begin{tikzpicture}[->] \draw (0,0,0) -- (xyz cylindrical cs:radius=1); \draw (0,0,0) -- (xyz cylindrical cs:radius=1,angle=90); @@ -70,7 +71,7 @@ Same as |longitude|. \end{key} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{3d}}] \begin{tikzpicture}[->] \draw (0,0,0) -- (xyz spherical cs:radius=1); \draw (0,0,0) -- (xyz spherical cs:radius=1,latitude=90); @@ -107,7 +108,7 @@ following options help you to switch to a different plane. Note that you have to set the units \emph{before} calling |canvas is plane|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{3d}}] \begin{tikzpicture}[ ->, plane x={(0.707,-0.707)}, @@ -187,7 +188,7 @@ following options help you to switch to a different plane. \subsection{Examples} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{3d}}] \begin{tikzpicture}[z={(10:10mm)},x={(-45:5mm)}] \def\wave{ \draw[fill,thick,fill opacity=.2] @@ -218,7 +219,7 @@ following options help you to switch to a different plane. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{3d}}] \begin{tikzpicture} \begin{scope}[canvas is zy plane at x=0] \draw (0,0) circle (1cm); diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-angles.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-angles.tex index 6f6c2e6ef01..a011ea8b58a 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-angles.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-angles.tex @@ -25,7 +25,7 @@ \begin{key}{/tikz/angle radius=\meta{dimension} (initially 5mm)} The length of the sides of the angle's wedge: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{angles}}] \tikz \draw (2,0) coordinate (A) -- (0,0) coordinate (B) -- (-1,-1) coordinate (C) pic [fill=black!50] {angle = A--B--C} @@ -47,7 +47,7 @@ an option like |fill| or |shade| is passed to the pic. The following example shows the difference: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{angles}}] \tikz \draw [line width=2mm] (2,0) coordinate (A) -- (0,0) coordinate (B) -- (1,1) coordinate (C) @@ -61,19 +61,19 @@ following factor: % \begin{key}{/tikz/angle eccentricity=\meta{factor} (initially 0.6)} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{angles,quotes}}] \tikz \draw (2,0) coordinate (A) -- (0,0) coordinate (B) -- (1,1) coordinate (C) pic ["$\alpha$", draw, ->] {angle}; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{angles,quotes}}] \tikz \draw (2,0) coordinate (A) -- (0,0) coordinate (B) -- (1,1) coordinate (C) pic ["$\alpha$", draw, angle eccentricity=1] {angle}; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{angles,quotes}}] \tikz { \draw (2,0) coordinate (A) -- (0,0) coordinate (B) -- (1,1) coordinate (C) @@ -89,7 +89,7 @@ This pic adds a drawing of a right angle to the current path. It works in the same way as |angle| pic. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{angles}}] \tikz \draw (0,0,0) coordinate (O) (1,0,0) coordinate (A) -- (O) diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-automata.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-automata.tex index a0e73700ff7..452ee9a6aa7 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-automata.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-automata.tex @@ -18,7 +18,7 @@ \subsection{Drawing Automata} -The automata drawing library is intended to make it easy to draw finite +The |automata| (drawing) library is intended to make it easy to draw finite automata and Turing machines. It does not cover every situation imaginable, but most finite automata and Turing machines found in text books can be drawn in a nice and convenient fashion using this library. @@ -43,7 +43,7 @@ Let us now see how this works for a real example. Let us consider a nondeterministic four state automaton that checks whether an input contains the sequence $0^*1$ or the sequence $1^*0$. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{automata,positioning}}] \begin{tikzpicture}[shorten >=1pt,node distance=2cm,on grid,auto] \draw[help lines] (0,0) grid (3,2); @@ -82,7 +82,7 @@ By default, the following state styles are defined: output, use the command |\nodepart{lower}| inside the node. This style also calls |every state|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{automata}}] \begin{tikzpicture} \draw[help lines] (0,0) grid (3,2); @@ -97,7 +97,8 @@ By default, the following state styles are defined: \begin{stylekey}{/tikz/state (initially state without output)} You should redefine it to something else, if you wish to use states of a different nature. -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{automata}}] \begin{tikzpicture}[state/.style=state with output] \node[state] {$q_0$ \nodepart{lower} $11$}; \node[state] at (2,0) {$q_1$ \nodepart{lower} $00$}; @@ -111,8 +112,8 @@ By default, the following state styles are defined: |state without output|. By default, it does nothing, but you can use it to make your state look more fancy: % -\begin{codeexample}[] -\begin{tikzpicture}[shorten >=1pt,node distance=2cm,on grid,>=stealth', +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,automata,positioning}}] +\begin{tikzpicture}[shorten >=1pt,node distance=2cm,on grid,>={Stealth[round]}, every state/.style={draw=blue!50,very thick,fill=blue!20}] \node[state,initial] (q_0) {$q_0$}; @@ -166,7 +167,7 @@ Let us start with the initial states. whatever. \end{stylekey} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{automata}}] \begin{tikzpicture}[every initial by arrow/.style={text=red,->>}] \node[state,initial,initial distance=2cm] {$q_0$}; \end{tikzpicture} @@ -236,9 +237,9 @@ now two options: First, |accepting by arrow|, which works the same way as text. \end{stylekey} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,automata,positioning}}] \begin{tikzpicture} - [shorten >=1pt,node distance=2cm,on grid,>=stealth',initial text=, + [shorten >=1pt,node distance=2cm,on grid,>={Stealth[round]},initial text=, every state/.style={draw=blue!50,very thick,fill=blue!20}, accepting/.style=accepting by arrow] @@ -282,8 +283,8 @@ previous sections. This time, we use the following rule for accepting/initial state: Initial states are red, accepting states are green, and normal states are orange. Then, we must find a path from a red state to a green state. % -\begin{codeexample}[] -\begin{tikzpicture}[shorten >=1pt,node distance=2cm,on grid,>=stealth',thick, +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,automata,positioning,shadows}}] +\begin{tikzpicture}[shorten >=1pt,node distance=2cm,on grid,>={Stealth[round]},thick, every state/.style={fill,draw=none,orange,text=white,circular drop shadow}, accepting/.style ={green!50!black,text=white}, initial/.style ={red,text=white}] @@ -304,8 +305,8 @@ are orange. Then, we must find a path from a red state to a green state. The next example is the current candidate for the five-state busiest beaver: % -\begin{codeexample}[] -\begin{tikzpicture}[->,>=stealth',shorten >=1pt,% +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,automata,positioning}}] +\begin{tikzpicture}[->,>={Stealth[round]},shorten >=1pt,% auto,node distance=2cm,on grid,semithick, inner sep=2pt,bend angle=45] \node[initial,state] (A) {$q_a$}; diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-babel.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-babel.tex index dd8bb7b43a1..35d99396dc4 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-babel.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-babel.tex @@ -11,13 +11,13 @@ \section{Babel Library} \label{section-library-babel} -\begin{pgflibrary}{babel} +\begin{tikzlibrary}{babel} A tiny library that make the interaction with the |babel| package easier. Despite the name, it may also be useful in other contexts, namely whenever the catcodes of important symbols are changed globally. Normally, using this library is always a good idea; it is not always loaded by default since in some rare cases it may break old code. -\end{pgflibrary} +\end{tikzlibrary} The problems this library tries to fix have to do with the so-called ``catcodes'' of symbols used inside \tikzname. In normal \TeX\ operation, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-backgrounds.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-backgrounds.tex index b24a38860a0..7755003fbe3 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-backgrounds.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-backgrounds.tex @@ -30,7 +30,7 @@ The first use of this library is to make the following key available: be executed \emph{before} the actual background material starts and, thus, will have no effect on it. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \begin{tikzpicture} % On main layer: \fill[blue] (0,0) circle (1cm); @@ -62,7 +62,7 @@ The first use of this library is to make the following key available: you have a global setup in |every picture|, you should consider putting that part of it that concerns the graphics state into this style. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \tikzset{ every picture/.style={line width=1ex}, every on background layer/.style={every picture} @@ -84,7 +84,7 @@ When this package is loaded, the following styles become available: option must be given to the |{tikzpicture}| environment or to the |\tikz| command. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \begin{tikzpicture}[show background rectangle] \draw (0,0) ellipse (10mm and 5mm); \end{tikzpicture} @@ -130,7 +130,7 @@ When this package is loaded, the following styles become available: causes a light blue background to be added to the picture. You can also use more fancy settings as shown in the following example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \begin{tikzpicture} [background rectangle/.style= {double,ultra thick,draw=red,top color=blue,rounded corners}, @@ -142,7 +142,7 @@ When this package is loaded, the following styles become available: Naturally, no one in their right mind would use the above, but here is a nice background: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \begin{tikzpicture} [background rectangle/.style= {draw=blue!50,fill=blue!20,rounded corners=1ex}, @@ -163,7 +163,7 @@ When this package is loaded, the following styles become available: right corner of the grid is computed in the same way as for the background rectangle: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \begin{tikzpicture}[show background grid] \draw (0,0) ellipse (10mm and 5mm); \end{tikzpicture} @@ -174,7 +174,7 @@ When this package is loaded, the following styles become available: \begin{stylekey}{/tikz/background grid (initially draw,help lines)} This style dictates how the background grid path is drawn. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \begin{tikzpicture} [background grid/.style={thick,draw=red,step=.5cm}, show background grid] @@ -186,7 +186,7 @@ When this package is loaded, the following styles become available: This option can be combined with the |framed| option (use the |framed| option first): % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \tikzset{background grid/.style={thick,draw=red,step=.5cm}, background rectangle/.style={rounded corners,fill=yellow}} \begin{tikzpicture}[framed,gridded] @@ -205,7 +205,7 @@ When this package is loaded, the following styles become available: rectangle. Normally, the line coincides exactly with the top line of the background rectangle: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \begin{tikzpicture}[ background rectangle/.style={fill=yellow}, framed,show background top] @@ -218,7 +218,7 @@ When this package is loaded, the following styles become available: \begin{key}{/tikz/outer frame xsep=\meta{dimension} (initially 0pt)} The \meta{dimension} is added at the left and right side of the line. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \begin{tikzpicture} [background rectangle/.style={fill=yellow}, framed, @@ -238,7 +238,7 @@ When this package is loaded, the following styles become available: Sets both the $x$- and $y$-separation. \end{key} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \begin{tikzpicture} [background rectangle={fill=blue!20}, outer frame sep=1ex,% @@ -254,7 +254,7 @@ When this package is loaded, the following styles become available: style: % \begin{stylekey}{/tikz/background top (initially draw)} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \tikzset{background rectangle/.style={fill=blue!20}, background top/.style={draw=blue!50,line width=1ex}} \begin{tikzpicture}[framed,show background top] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-bbox.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-bbox.tex new file mode 100644 index 00000000000..972b90714ea --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-bbox.tex @@ -0,0 +1,126 @@ +% Copyright 2019 by an anonymous contributor +% +% This file may be distributed and/or modified +% +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Free Documentation License. +% +% See the file doc/generic/pgf/licenses/LICENSE for more details. + + +\section{Bounding Boxes for B\'ezier Curves} + +\begin{pgflibrary}{bbox} + This library provides methods to determine tight bounding boxes for + B\'ezier curves. +\end{pgflibrary} + + +\subsection{Current Status} + +\tikzname\ determines the bounding box of (cubic) B\'ezier curves by +establishing the smallest rectangle that contains the end point and the two +control points of the curve. This may lead to drastic overestimates of the +bounding box. + +\begin{codeexample}[] +\begin{tikzpicture} + \draw (0,0) .. controls (-1,1) and (1,2) .. (2,0); + \draw (current bounding box.south west) rectangle + (current bounding box.north east); +\end{tikzpicture} +\end{codeexample} + +\subsection{Computing the Bounding Box} + +Establishing the precise bounding box has been discussed in various places, the +following discussion uses in part the results from +\url{https://pomax.github.io/bezierinfo/}. What is a cubic Bezier curve? A +cubic Bezier curve running from $(x_0,y_0)$ to $(x_1,y_1)$ with control points +$(x_a,y_a)$ and $(x_a,y_a)$ can be parametrized by +\begin{equation} + \gamma(t) = + \begin{pmatrix} x(t)\\ y(t) \end{pmatrix} = + \begin{pmatrix}t^3 x_{1}+3 t^2 (1-t) x_{b}+(1-t)^3 + x_{0}+3 t (1-t)^2 x_{a}\\ + t^3 y_{1}+3 + t^2 (1-t) y_{b}+(1-t)^3 y_{0}+3 t (1-t)^2 + y_{a}\end{pmatrix}\;,\label{eq:gammaBezier} +\end{equation} +where $t$ runs from 0 to 1 (and $\gamma(0)=(x_0,y_0)$ and +$\gamma(1)=(x_1,y_1)$). Surely, the bounding box has to contain +$(x_0,y_0)$ and $(x_1,y_1)$. If the functions $x(t)$ and $y(t)$ have extrema in +the interval $[0,1]$, then the bounding box will in general be larger than that. +In order to determine the extrema of the curve, all +we need to find the extrema of the functions $x(t)$ and $y(t)$ for $0\le t\le +1$. That is, we need to find the solutions of the quadratic equations +\begin{equation} + \frac{\mathrm{d}x}{\mathrm{d}t}(t) = 0\quad\text{and}\quad + \frac{\mathrm{d}y}{\mathrm{d}t}(t) = 0\;. +\end{equation} +Let's discuss $x$, $y$ is analogous. If the discriminant +\begin{equation} + d := (x_a-x_b)^2+(x_1-x_b)(x_0-x_a) +\end{equation} +is greater than 0, there are two solutions +\begin{equation} + t_\pm = \frac{x_{0}-2 + x_{a}+x_{b}\pm\sqrt{d}}{x_{0}-x_{1}-3(x_{a}- x_{b})} \;. +\end{equation} +In this case, we need to make sure that the bounding box contains, say +$(x(t_-),y_0)$ and $(x(t_+),y_0)$. If $d\le0$, the bounding box does not need to +be increased in the $x$ direction. One can plug $t_\pm$ back into +\eqref{eq:gammaBezier}, this yields +\begin{subequations} +\begin{align} + x_- &= + \!\begin{aligned}[t] + \frac{1}{(x_0 - x_1 - 3x_a + 3x_b)^2} + \Bigl[ + & x_0^2x_1 + x_0x_1^2 - 3x_0x_1x_a + 6x_1x_a^2 + + 2x_a^3 - 3(x_0 + x_a)(x_1 + x_a)x_b \\ + & + 3(2x_0 - x_a)x_b^2 + 2x_b^3 + - 2\sqrt{d}(x_0x_1 - x_1x_a + x_a^2 - (x_0 + x_a)x_b + x_b^2) + \Bigr], + \end{aligned} \\ + x_+ &= + \!\begin{aligned}[t] + \frac{1}{(x_0 - x_1 - 3x_a + 3x_b)^2} + \Bigl[ + & x_0^2x_1 + x_0x_1^2 - 3x_0x_1x_a + 6x_1x_a^2 + + 2x_a^3 - 3(x_0 + x_a)(x_1 + x_a)x_b \\ + & + 3(2x_0 - x_a)x_b^2 + 2x_b^3 + + 2\sqrt{d}(x_0x_1 - x_1x_a + x_a^2 - (x_0 + x_a)x_b + x_b^2) + \Bigr]. + \end{aligned} +\end{align} +\end{subequations} +As already mentioned, the analogous +statements apply to $y(t)$. + +This procedure is implemented in the |bbox| library. It installs a single key +by which the tight bounding box algorithm can be turned on and off. + +\begin{key}{/pgf/bezier bounding box=\meta{boolean} (default true)} + Turn the tight bounding box algorithm on and off. + + \emph{Caveat:} As can be seen from the derivations, the necessary + computations involve the squaring of lengths, which can easily lead to + |dimension too large| errors. The library tries to account for large + numbers by appropriate normalization, such that it works in most cases, but + errors may still occur. +\end{key} + +\begin{codeexample}[] +\begin{tikzpicture}[bezier bounding box=true] + \draw (0,0) .. controls (-1,1) and (1,2) .. (2,0); + \draw (current bounding box.south west) rectangle + (current bounding box.north east); +\end{tikzpicture} +\end{codeexample} + + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "pgfmanual-pdftex-version" +%%% End: diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-calendar.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-calendar.tex index 6d1f3a3f4f4..5037bef78b9 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-calendar.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-calendar.tex @@ -101,7 +101,7 @@ say, the |\draw| command). arrangement is a bit tricky, it is explained only later on. For the time being, let us use a predefined arrangement to produce our first calendar: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar[dates=2000-01-01 to 2000-01-31,week list]; \end{codeexample} @@ -116,7 +116,7 @@ say, the |\draw| command). Specifies the horizontal shift between days. This is not the gap between days, but the shift between the anchors of their nodes. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar[dates=2000-01-01 to 2000-01-31,week list,day xshift=3ex]; \end{codeexample} \end{key} @@ -125,7 +125,7 @@ say, the |\draw| command). Specifies the vertical shift between days. Again, this is the shift between the anchors of their nodes. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar[dates=2000-01-01 to 2000-01-31,week list,day yshift=2ex]; \end{codeexample} \end{key} @@ -137,12 +137,12 @@ say, the |\draw| command). \begin{key}{/tikz/month yshift=\meta{dimension}} Specifies an additional vertical shift between different months. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar[dates=2000-01-01 to 2000-02-last,week list, month yshift=0pt]; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar[dates=2000-01-01 to 2000-02-last,week list, month yshift=1cm]; \end{codeexample} @@ -169,7 +169,7 @@ say, the |\draw| command). the whole matrix. For example, the following calendar is placed in such a way the center of 2000-01-20 lies on the position $(2,2)$: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \begin{tikzpicture} \draw[help lines] (0,0) grid (3,2); \matrix [anchor=cal-2000-01-20.center] at (2,2) @@ -195,7 +195,7 @@ say, the |\draw| command). day. The default is to create a node with an appropriate name, but you can change this: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar[dates=2000-01-01 to 2000-01-31,week list, day code={\fill[blue] (0,0) circle (2pt);}]; \end{codeexample} @@ -217,7 +217,7 @@ say, the |\draw| command). been named |mycal|, then the node containing the |1| for this date will be names |mycal-2006-01-01|. You can later reference this node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \begin{tikzpicture} \calendar (mycal) [dates=2000-01-01 to 2000-01-31,week list]; @@ -231,7 +231,7 @@ say, the |\draw| command). macro simply yields the current day of month, but you can change it arbitrarily. Here is a silly example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar[dates=2000-01-01 to 2000-01-31,week list, day text=x]; \end{codeexample} @@ -255,7 +255,7 @@ say, the |\draw| command). Let us redefine the |day text| so that it yields the day with a leading zero: % -\begin{codeexample}[leave comments] +\begin{codeexample}[leave comments,preamble={\usetikzlibrary{calendar}}] \tikz \calendar[dates=2000-01-01 to 2000-01-31,week list, day text=\%d0]; \end{codeexample} @@ -266,7 +266,7 @@ say, the |\draw| command). |every day| style is useful for changing the way days look. For example, let us make all days red: % -\begin{codeexample}[leave comments] +\begin{codeexample}[leave comments,preamble={\usetikzlibrary{calendar}}] \tikz[every day/.style=red] \calendar[dates=2000-01-01 to 2000-01-31,week list]; \end{codeexample} @@ -280,7 +280,7 @@ say, the |\draw| command). per month or year and this is not done by default. Rather, special styles starting with |month label| place these labels and make them visible: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar[dates=2000-01-01 to 2000-02-last,week list, month label above centered]; \end{codeexample} @@ -305,7 +305,7 @@ say, the |\draw| command). default, the month text is a long textual presentation of the current month being typeset. % -\begin{codeexample}[leave comments] +\begin{codeexample}[leave comments,preamble={\usetikzlibrary{calendar}}] \tikz \calendar[dates=2000-01-01 to 2000-01-31,week list, month label above centered, month text=\textcolor{red}{\%mt} \%y-]; @@ -385,7 +385,7 @@ say, the |\draw| command). Let us now have a look at some examples. First, we use a conditional to make all Sundays red. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-01 to 2000-01-31,week list] @@ -394,7 +394,7 @@ say, the |\draw| command). % Next, let us do something on a specific date: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-01 to 2000-01-31,week list] @@ -407,7 +407,7 @@ say, the |\draw| command). |base east| anchor, which shifts the label up and right. To overcome this problem we can change the anchor: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz [every day/.style={anchor=mid}] \calendar [dates=2000-01-01 to 2000-01-31,week list] @@ -496,7 +496,7 @@ this, we simply shift the coordinate system downward at the end of the code for each day. This shift must be \emph{outside} the day scope as we want day shifts to accumulate. Thus, we use the following code: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-01 to 2000-01-08, execute after day scope= @@ -523,7 +523,7 @@ beginning of the day scope or before. Either will work fine, but it might be safer to put the code inside the scope to ensure that settings to not inadvertently ``leak outside''. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-01 to 2000-01-08, @@ -555,7 +555,7 @@ at the beginning. To position each day correctly, we use code inside and at the beginning of the day scope to horizontally shift the day according to its day of week. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-01 to 2000-01-20, @@ -583,7 +583,7 @@ by its day of month. Furthermore, we must additionally shift the day to ensure that the first day of the month lies on the correct day of week column. For this, we remember this day of week the first time we see it. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \newcount\mycount \tikz \calendar @@ -610,7 +610,7 @@ this, we remember this day of week the first time we see it. \subsection{Arrangements} An \emph{arrangement} specifies how the days of calendar are arranged on the -page. The calendar library defines a number of predefined arrangements. +page. The |calendar| library defines a number of predefined arrangements. We start with arrangements in which the days are listed in a long line. @@ -619,7 +619,7 @@ We start with arrangements in which the days are listed in a long line. The shift between days is given by |day yshift|. Between month an additional shift of |month yshift| is added. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-28 to 2000-02-03, day list downward,month yshift=1em]; @@ -630,7 +630,7 @@ We start with arrangements in which the days are listed in a long line. \begin{stylekey}{/tikz/day list upward} Works as above, only the list grows upward instead of downward. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-28 to 2000-02-03, day list upward,month yshift=1em]; @@ -643,7 +643,7 @@ We start with arrangements in which the days are listed in a long line. Instead of |day yshift| and |month yshift|, the values of |day xshift| and |month xshift| are used. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-28 to 2000-02-03, day list right,month xshift=1em]; @@ -675,12 +675,12 @@ The next arrangement lists days by the week. additional vertical space of |month yshift| is added. If this is set to |0pt| you get a continuous list of days. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-01 to 2000-02-last,week list]; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-01 to 2000-02-last,week list, month yshift=0pt]; @@ -701,7 +701,7 @@ The following arrangement gives a very compact view of a whole year. does not start with a Monday, its days are shifted to the right such that the days lie on the correct columns. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \sffamily\scriptsize \tikz \calendar [dates=2000-01-01 to 2000-12-31, @@ -730,7 +730,7 @@ labels: position is chosen ``as if'' the month had started on a Monday -- which is usually exactly what you want.) % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-28 to 2000-02-03, day list downward,month yshift=1em, @@ -743,7 +743,7 @@ labels: This style works like the above style, only the label is rotated counterclockwise by 90 degrees. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-28 to 2000-02-03, day list downward,month yshift=1em, @@ -758,7 +758,7 @@ labels: the right of the first day, for a week list it is to the right of the first week, and for a month list it is to the right of the whole month. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-28 to 2000-02-03, day list downward,month yshift=1em, @@ -770,7 +770,7 @@ labels: \begin{stylekey}{/tikz/month label right vertical} Works as above, only the label is rotated clockwise by 90 degrees. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-28 to 2000-02-03, day list downward,month yshift=1em, @@ -785,14 +785,14 @@ labels: raised is fixed to |1.25em|; use the |yshift| option with the month node to modify this. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-28 to 2000-02-03, day list right,month xshift=1em, month label above left]; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-20 to 2000-02-10, week list,month label above left]; @@ -804,13 +804,13 @@ labels: Works as above, only the label is centered above the row containing the first day. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-02-01 to 2000-02-last, day list right,month label above centered]; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-20 to 2000-02-10, week list,month label above centered]; @@ -821,7 +821,7 @@ labels: \begin{stylekey}{/tikz/month label above right} Works as above, but flushed right % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-01-20 to 2000-02-10, week list,month label above right]; @@ -834,7 +834,7 @@ labels: row. This placement is not really useful with the |week list| arrangement, but rather with the |day list right| or |month list| arrangement. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-02-01 to 2000-02-last, day list right,month label below left]; @@ -845,7 +845,7 @@ labels: \begin{stylekey}{/tikz/month label below centered} Works like |month label above centered|, only below. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \tikz \calendar [dates=2000-02-01 to 2000-02-last, day list right,month label below centered]; @@ -863,7 +863,10 @@ Let us start with a year-2100-countdown, in which we cross out dates as we approach the big celebration. For this, we set the shape to |strike out| for these dates. % -\begin{codeexample}[leave comments] +\begin{codeexample}[ + leave comments, + preamble={\usetikzlibrary{calendar,shapes.misc}}, +] \begin{tikzpicture} \calendar [ @@ -882,7 +885,10 @@ current date. The last three days before the deadline are in red, because we really should be done by then. All days on which we can no longer work on the project are crossed out. % -\begin{codeexample}[leave comments] +\begin{codeexample}[ + leave comments, + preamble={\usetikzlibrary{calendar,shapes.misc}}, +] \begin{tikzpicture} \calendar [ @@ -904,7 +910,7 @@ project are crossed out. The following example is a futuristic calendar that is all about circles: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calendar}}] \sffamily \colorlet{winter}{blue} @@ -952,7 +958,7 @@ The following example is a futuristic calendar that is all about circles: Next, let's us have a whole year in a tight column: % -\begin{codeexample}[leave comments] +\begin{codeexample}[leave comments,preamble={\usetikzlibrary{calendar}}] \begin{tikzpicture} \small\sffamily \colorlet{darkgreen}{green!50!black} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-chains.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-chains.tex index da838741519..1dc247866fb 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-chains.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-chains.tex @@ -74,7 +74,7 @@ The first step toward creating a chain is to use the |start chain| option. Other than this, this key has no further effect. In particular, to place nodes on the chain, you must use the |on chain| option, described next. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains}}] \begin{tikzpicture}[start chain] % The chain is called just "chain" \node [on chain] {A}; @@ -83,7 +83,7 @@ The first step toward creating a chain is to use the |start chain| option. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains,scopes}}] \begin{tikzpicture} % Same as above, using the scope shorthand { [start chain] @@ -94,7 +94,7 @@ The first step toward creating a chain is to use the |start chain| option. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains}}] \begin{tikzpicture}[start chain=1 going right, start chain=2 going below, node distance=5mm, @@ -123,7 +123,7 @@ The first step toward creating a chain is to use the |start chain| option. first is to change the direction of a chain as it is being constructed. For this, just give this option somewhere inside the scope of the chain. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains}}] \begin{tikzpicture}[start chain=going right,node distance=5mm] \node [draw,on chain] {Hello}; \node [draw,on chain] {World}; @@ -136,7 +136,7 @@ The first step toward creating a chain is to use the |start chain| option. The second application is to reactivate a chain after it ``has already been closed down''. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains,scopes}}] \begin{tikzpicture}[node distance=5mm, every node/.style=draw] { [start chain=1] @@ -231,7 +231,7 @@ The first step toward creating a chain is to use the |start chain| option. to |\tikzchainprevious| and |\tikzchaincount| for doing your positioning calculations. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains}}] \begin{tikzpicture}[start chain=circle placed {at=(\tikzchaincount*30:1.5)}] \foreach \i in {1,...,10} \node [on chain] {\i}; @@ -252,7 +252,7 @@ The first step toward creating a chain is to use the |start chain| option. the right of the previous one, spaced by the current value of |node distance|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains}}] \begin{tikzpicture}[start chain,node distance=5mm] \node [draw,on chain] {}; \node [draw,on chain] {Hallo}; @@ -263,7 +263,7 @@ The first step toward creating a chain is to use the |start chain| option. The optional \meta{direction} allows us to temporarily change the direction in the middle of a chain: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains}}] \begin{tikzpicture}[start chain,node distance=5mm] \node [draw,on chain] {Hello}; \node [draw,on chain] {World}; @@ -275,7 +275,7 @@ The first step toward creating a chain is to use the |start chain| option. You can also use more complicated computations in the \meta{direction}: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains}}] \begin{tikzpicture}[start chain=going {at=(\tikzchainprevious),shift=(30:1)}] \draw [help lines] (0,0) grid (3,2); \node [draw,on chain] {1}; @@ -326,7 +326,7 @@ process. In particular, it is possible to continue to path after a |\chainin| command, though that does not seem very useful. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains}}] \begin{tikzpicture}[node distance=5mm, every node/.style=draw,every join/.style=->] \draw [help lines] (0,0) grid (3,2); @@ -347,7 +347,7 @@ process. connected using a chain % {\catcode`\|=12 -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains,matrix,scopes,shapes.geometric}}] \begin{tikzpicture}[every node/.style=draw] \matrix [matrix of nodes,column sep=5mm,row sep=5mm] { @@ -391,7 +391,7 @@ process. order to connect it to several nodes. This is especially useful for joining in branches, see the next section. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains}}] \begin{tikzpicture}[start chain,node distance=5mm, every join/.style={->,red}] \node [draw,on chain,join] {}; @@ -438,7 +438,7 @@ described. to the fork node. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains,scopes}}] \begin{tikzpicture}[every on chain/.style=join,every join/.style=->, node distance=2mm and 1cm] { [start chain=trunk] @@ -473,7 +473,7 @@ described. chain}|/|\meta{branch name} is used as the chain name, rather than just \meta{branch name}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{chains,scopes}}] \begin{tikzpicture}[every on chain/.style=join,every join/.style=->, node distance=2mm and 1cm] { [start chain=trunk] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-circuits.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-circuits.tex index c211fa49ca4..f4fe43c28ed 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-circuits.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-circuits.tex @@ -22,11 +22,23 @@ logical circuits. There is not a single library for this, but a whole hierarchy of libraries that work in concert. The main design goal was to create a balance between ease-of-use and ease-of-extending, while creating high-quality graphical representations of circuits. +% +\begin{codeexample}[setup code,hidden] +\tikzset{ + % from `shape` library + shape example/.style= {color = black!30, + draw, + fill = yellow!30, + line width = .5cm, + inner xsep = 2.5cm, + inner ysep = 0.5cm} +} +\end{codeexample} \subsubsection{A First Example} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture}[circuit ee IEC,x=3cm,y=2cm,semithick, every info/.style={font=\footnotesize}, small circuit symbols, @@ -72,12 +84,13 @@ graphical representations of circuits. \end{tikzpicture} \end{codeexample} -An important feature of the circuit library is that the appearance of a circuit -can be configured in general ways and that the labels are placed automatically -by default. Here is the graphic once more, generated from \emph{exactly the -same source code}, with only the options of the |{tikzpicture}| environment -replaced by |[rotate=-90,circuit ee IEC,x=3.25cm,y=2.25cm]|: - +An important feature of the |circuits| library is that the appearance of a +circuit can be configured in general ways and that the labels are placed +automatically by default. Here is the graphic once more, generated from +\emph{exactly the same source code}, with only the options of the +|{tikzpicture}| environment replaced by +|[rotate=-90,circuit ee IEC,x=3.25cm,y=2.25cm]|: +% \begin{tikzpicture}[rotate=-90,circuit ee IEC,x=3cm,y=2.25cm] % Let us start with some contacts: \foreach \contact/\y in {1/1,2/2,3/3.5,4/4.5,5/5.5} @@ -173,7 +186,7 @@ Here is an overview of the different kinds of circuit libraries: the above library, you can change which symbol graphics are used ``on the fly''. \end{itemize} - \item The \tikzname-library |cirucits.ee| defines keys for symbols from + \item The \tikzname-library |circuits.ee| defines keys for symbols from electrical engineering like resistors or capacitors. Again, sublibraries define the actual symbol graphics. % @@ -203,7 +216,7 @@ appropriate symbol graphic for rendering an |and gate|. Using the |circuit logic IEC| instead will set up |and gate| to use another symbol graphic. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.US}}] \begin{tikzpicture}[circuit logic US] \matrix[column sep=7mm] { @@ -223,7 +236,7 @@ graphic. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.IEC}}] \begin{tikzpicture}[circuit logic IEC] \matrix[column sep=7mm] { @@ -255,7 +268,7 @@ diode'', there is just one |diode| symbol, but you can add the |light emitting| annotation to it. This is done by passing the annotation as a parameter to the symbol as in the following example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \draw (0,0) to [diode={light emitting}] (3,0) to [resistor={adjustable}] (3,2); @@ -290,7 +303,7 @@ symbol as in the following example: Note, that it is still possible to overwrite the size of any particular symbol. These settings apply only to the default sizes. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture}[circuit ee IEC] \draw (0,1) to [resistor] (3.5,1); \draw[circuit symbol unit=14pt] @@ -326,7 +339,7 @@ symbol as in the following example: value. Thus, this option can be used with a node command to set the size of the node as a multiple of the circuit symbol unit. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture}[circuit ee IEC] \draw (0,1) to [resistor] (2,1) to[inductor] (4,1); @@ -373,7 +386,7 @@ symbol as in the following example: This key gets graphic options as parameter that will be set when a symbol |foo| should be shown: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits}}] \begin{tikzpicture} [circuit declare symbol=foo, set foo graphic={draw,shape=rectangle,minimum size=5mm}] @@ -458,14 +471,14 @@ symbol as in the following example: node. Another effect is that you can use this key multiple times on a path to add several node to a path, provided they do not overlap. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits}}] \begin{tikzpicture}[circuit] \draw (0,0) to [circuit handle symbol={draw,shape=rectangle,near start}, circuit handle symbol={draw,shape=circle,near end}] (3,2); \end{tikzpicture} \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits}}] \begin{tikzpicture}[transform shape,circuit] \draw (0,0) to [circuit handle symbol={draw,shape=rectangle,at start}, circuit handle symbol={draw,shape=circle,near end}] (3,2); @@ -488,7 +501,7 @@ of achieving such rotations: like this: \tikz[circuit ee IEC]\node[inductor]{};) is automatically rotated around: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \draw (3,0) to[inductor] (1,0) to[inductor] (0,2); \end{codeexample} @@ -503,7 +516,7 @@ of achieving such rotations: \begin{key}{/tikz/point up} This is the same as |rotate=90|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \node [diode,point up] {}; \end{codeexample} \end{key} @@ -511,7 +524,7 @@ of achieving such rotations: \begin{key}{/tikz/point down} This is the same as |rotate=-90|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \node [diode,point down] {}; \end{codeexample} \end{key} @@ -519,7 +532,7 @@ of achieving such rotations: \begin{key}{/tikz/point left} This is the same as |rotate=-180|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \node [diode,point left] {}; \end{codeexample} \end{key} @@ -527,7 +540,7 @@ of achieving such rotations: \begin{key}{/tikz/point right} This key has no effect. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \node [diode,point right] {}; \end{codeexample} \end{key} @@ -558,7 +571,7 @@ that are especially useful in conjunction with circuits. The \meta{options} and \meta{angle} are passed directly to the |label| command. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture}[circuit ee IEC,every info/.style=red] \node [resistor,info=$3\Omega$] {}; \end{tikzpicture} @@ -570,7 +583,7 @@ that are especially useful in conjunction with circuits. Hint: To place some text \emph{on} the main node, use |center| as the \meta{angle}: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture}[circuit ee IEC,every info/.style=red] \node [resistor,info=center:$3\Omega$] {}; \node [resistor,point up,info=center:$R_1$] at (2,0) {}; @@ -587,7 +600,7 @@ that are especially useful in conjunction with circuits. you get a label below the node. In case the node has been rotated, the positions of the info nodes are rotated accordingly. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture}[circuit ee IEC,every info/.style=red] \draw (0,0) to[resistor={info={$3\Omega$},info'={$R_1$}}] (3,0) to[resistor={info={$4\Omega$},info'={$R_2$}}] (3,2); @@ -600,7 +613,7 @@ that are especially useful in conjunction with circuits. This key works like |info|, only the |transform shape| option is set when the label is drawn, causing it to follow the sloping of the main node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture}[circuit ee IEC,every info/.style=red] \draw (0,0) to[resistor={info sloped={$3\Omega$}}] (3,0) to[resistor={info sloped={$4\Omega$}}] (3,2); @@ -612,7 +625,7 @@ that are especially useful in conjunction with circuits. \begin{key}{/tikz/info' sloped=} This is a combination of |info'| and |info sloped|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture}[circuit ee IEC,every info/.style=red] \draw (0,0) to[resistor={info' sloped={$3\Omega$}}] (3,0) to[resistor={info' sloped={$4\Omega$}}] (3,2); @@ -642,7 +655,7 @@ that are especially useful in conjunction with circuits. is used internally, by changing the |every info| style, you can change the appearance of all units infos. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture}[circuit ee IEC,circuit declare unit={my ohm}{O}] \draw (0,0) to[resistor={my ohm' sloped=3}] (3,2); \end{tikzpicture} @@ -709,7 +722,13 @@ Annotations can be declared using the following key: {8pt} {(0pt,8pt) arc (-270:80:3.5pt)} } -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{circuits.ee.IEC}} + pre={\tikzset{circuit declare annotation= + {circular annotation} + {8pt} + {(0pt,8pt) arc (-270:80:3.5pt)} +}}] \tikz[circuit ee IEC] \draw (0,0) to [resistor={circular annotation}] (3,0); \end{codeexample} @@ -719,7 +738,7 @@ Annotations can be declared using the following key: node an nothing else. This path is not drawn or filled, so we do not see anything. What we must do is to use an |edge| path operation: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikzset{circuit declare annotation={circular annotation}{9pt} {(0pt,8pt) edge[to path={arc(-270:80:3.5pt)}] ()} } @@ -738,7 +757,12 @@ Annotations can be declared using the following key: \tikzset{circuit declare annotation={circular annotation}{9pt} {(0pt,8pt) edge[to path={arc (-270:80:3.5pt)}] ()} } -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}} + pre={\tikzset{circuit declare annotation= + {circular annotation} + {8pt} + {(0pt,8pt) arc (-270:80:3.5pt)} +}}] \tikz[circuit ee IEC] \draw (0,0) to [resistor={circular annotation,ohm=5}] (2,0) to [resistor={circular annotation={ohm=5}}] (4,0); @@ -765,7 +789,7 @@ the symbol. You can modify this graphical representation in several ways: For instance, in the following picture the symbols are ridiculously thick and resistors are red. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture} [circuit ee IEC, every circuit symbol/.style={ultra thick}, @@ -784,7 +808,7 @@ the symbol. You can modify this graphical representation in several ways: some area. For instance, the IEC version of a resistor is an open symbol. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC, circuit symbol open/.style={thick,draw,fill=yellow}] \draw (0,0) to [inductor] ++(right:3) to [resistor] ++(up:2); @@ -801,7 +825,7 @@ the symbol. You can modify this graphical representation in several ways: This style is used with symbols that consist only of lines that do not surround anything. Examples are a capacitor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC, circuit symbol lines/.style={thick,draw=red}] \draw (0,0) to [capacitor] ++(right:3) to [resistor] ++(up:2); @@ -818,7 +842,7 @@ the symbol. You can modify this graphical representation in several ways: Compare % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC,circuit symbol lines/.style={draw,very thick}] \draw (0,0) to [capacitor={near start}, make contact={near end}] (3,0); @@ -826,7 +850,7 @@ the symbol. You can modify this graphical representation in several ways: % to % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC,circuit symbol wires/.style={draw,very thick}] \draw (0,0) to [capacitor={near start}, make contact={near end}] (3,0); @@ -864,7 +888,7 @@ graphic; for instance, there are two variants for the resistor graphic in the IEC library. In this case you can set the graphic for the resistor to this variant (or back to the original) by saying |set resistor graphic| yourself: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture}[circuit ee IEC] % Standard resistor \draw (0,2) to [resistor] (3,2); @@ -923,7 +947,7 @@ graphical representations of the symbols declared in the following library: Since the |circuits.logic| library does not define any actual graphics, you need to use one of the following libraries, instead: -\begin{pgflibrary}{circuits.logic.IEC} +\begin{tikzlibrary}{circuits.logic.IEC} This library provides graphics based on gates recommended by the International Electrotechnical Commission. When you include this library, you can use the following key to set up a scope that contains a logical @@ -938,7 +962,7 @@ to use one of the following libraries, instead: appearance. These keys are called |and gate IEC graphic|, |or gate IEC graphic|, and so on. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.IEC}}] \begin{tikzpicture}[circuit logic IEC, every circuit symbol/.style={ logic gate IEC symbol color=black, @@ -961,9 +985,9 @@ to use one of the following libraries, instead: \end{tikzpicture} \end{codeexample} \end{key} -\end{pgflibrary} +\end{tikzlibrary} -\begin{pgflibrary}{circuits.logic.US} +\begin{tikzlibrary}{circuits.logic.US} This library provides graphics showing ``American'' logic gates. It defines the following key: @@ -977,7 +1001,7 @@ set and gate graphic = and gate US graphic Here is an example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.CDH}}] \begin{tikzpicture}[circuit logic CDH, tiny circuit symbols, every circuit symbol/.style={ @@ -1000,9 +1024,9 @@ set and gate graphic = and gate US graphic \end{tikzpicture} \end{codeexample} \end{key} -\end{pgflibrary} +\end{tikzlibrary} -\begin{pgflibrary}{circuits.logic.CDH} +\begin{tikzlibrary}{circuits.logic.CDH} This library provides graphics based on the logic symbols used in A. Croft, R. Davidson, and M. Hargreaves (1992), \emph{Engineering Mathematics}, Addison-Wesley, 82--95. They are identical to the US-style symbols, except @@ -1013,7 +1037,7 @@ set and gate graphic = and gate US graphic nand-gates, that is, it uses |set and gate graphic| with |and gate CDH graphic| and likewise for nand-gates. \end{key} -\end{pgflibrary} +\end{tikzlibrary} Inside |circuit logic XYZ| scopes, you can now use the keys shown in Section~\ref{section-logic-symbols}. We have a more detailed look at one of @@ -1025,11 +1049,11 @@ them, all the other work the same way: dictated by the which circuit environment is used. To further configure the appearance of the |and gate|, see Section~\ref{section-theming-symbols}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.IEC}}] \tikz [circuit logic IEC] \node [and gate] {$A$}; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.US}}] \tikz [circuit logic US] { \node [and gate,point down] {$A$}; @@ -1055,7 +1079,7 @@ them, all the other work the same way: supports one input the anchor is simply called |input| with no numerical index. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.IEC}}] \begin{tikzpicture}[circuit logic IEC] \node[and gate,inputs={inini}] (A) {}; \foreach \a in {1,...,5} @@ -1133,7 +1157,7 @@ Let us begin with the base library that defines the handling of inputs. supports one input the anchor is simply called |input| with no numerical index. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.IEC}}] \begin{tikzpicture}[minimum height=0.75cm] \node[and gate IEC, draw, logic gate inputs={inverted, normal, inverted}] (A) {}; @@ -1150,7 +1174,7 @@ Let us begin with the base library that defines the handling of inputs. \emph{without the commas}. So, for example, |ini| is equivalent to |inverted, normal, inverted|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.US}}] \begin{tikzpicture}[minimum height=0.75cm] \node[or gate US, draw,logic gate inputs=inini] (A) {}; \foreach \a in {1,...,5} @@ -1176,7 +1200,7 @@ Let us begin with the base library that defines the handling of inputs. This is also the radius of the circle used for the inverted output of the |nand|, |nor|, |xnor| and |not| gates. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.CDH}}] \begin{tikzpicture}[minimum height=0.75cm] \tikzset{every node/.style={shape=nand gate CDH, draw, logic gate inputs=ii}} \node[logic gate inverted radius=2pt] {A}; @@ -1190,7 +1214,7 @@ Let us begin with the base library that defines the handling of inputs. Set the distance between the \emph{centers} of the inputs to the logic gate. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.IEC}}] \begin{tikzpicture}[minimum size=0.75cm] \draw [help lines] grid (3,2); \tikzset{every node/.style={shape=and gate IEC, draw, logic gate inputs=ini}} @@ -1235,7 +1259,7 @@ Let us begin with the base library that defines the handling of inputs. by shape basis: whether the bounding box is used is determined by value of this key when the anchor is accessed. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.US}}] \begin{tikzpicture}[minimum height=1.5cm] \node[xnor gate US, draw, gray!50,line width=2pt] (A) {}; \foreach \x/\y/\z in {false/blue/1pt, true/red/2pt} @@ -1274,7 +1298,7 @@ Let us begin with the base library that defines the handling of inputs. this gate with two non-inverted inputs (using the normal compass point anchors) are shown below. Anchor |30| is an example of a border anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.US}}] \Huge \begin{tikzpicture} \node[name=s,shape=nand gate US,shape example, inner sep=0cm, @@ -1376,7 +1400,7 @@ Let us begin with the base library that defines the handling of inputs. node and the outer edge of the symbol is determined by the values of the |inner xsep| and |inner ysep|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.gates.logic.IEC}}] \begin{tikzpicture}[minimum size=1cm, use IEC style logic gates] \tikzset{every node/.style={nor gate, draw}} \node (A) at (0,1.5) {}; @@ -1418,7 +1442,7 @@ Let us begin with the base library that defines the handling of inputs. gate with two inverted inputs are shown below. Anchor |30| is an example of a border anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.logic.IEC}}] \Huge \begin{tikzpicture} \node[name=s,shape=nand gate IEC ,shape example, inner xsep=1cm, inner ysep=1cm, @@ -1503,7 +1527,7 @@ later sections. When used with a node, it will cause this node to ``look like'' a resistor (by default, in the IEC library, this is just a simple rectangle). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \node [resistor] {}; \end{codeexample} @@ -1512,7 +1536,7 @@ later sections. in |node [resistor] {foo}|). Instead, the labeling of resistors should be done using the |label|, |info| and |ohm| options. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \node [resistor,ohm=5] {}; \end{codeexample} @@ -1521,7 +1545,7 @@ later sections. with a normal node, you can just as well given them to the |node| itself. Thus, the following has the same effect as the above example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \node [resistor={ohm=5}] {}; \end{codeexample} @@ -1531,7 +1555,7 @@ later sections. useful. They are just shorthands for appropriate rotations like |rotate=90|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] { \node (R1) [resistor,point up,ohm=5] at (3,1) {}; \node (R2) [resistor,ohm=10k] at (0,0) {}; @@ -1561,7 +1585,7 @@ later sections. resistor node on the path, you can use it to add labels to the node. Here is a simple example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \draw (0,0) to [resistor=red] (3,0) to [resistor={ohm=2\mu}] (3,2); @@ -1594,21 +1618,21 @@ predefined units are listed in Section~\ref{section-circuits-units}. you get $\mathrm{5k\Omega}$, |ohm=5p| yields $\mathrm{5p\Omega}$, and |ohm=5.6\cdot 10^{2}\mu| yields $\mathrm{5.6\cdot 10^{2}\mu\Omega}$. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \draw (0,0) to [resistor={ohm=5M}] (0,2); \end{codeexample} Instead of |ohm| you can also use |ohm'|, which places the label on the other side. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \draw (0,0) to [resistor={ohm'=5M}] (0,2); \end{codeexample} Finally, there are also keys |ohm sloped| and |ohm' sloped| for having the info label rotate together with the main node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \draw (0,0) to [resistor={ohm sloped=5M}] (0,2) (2,0) to [resistor={ohm' sloped=6f}] (2,2); @@ -1627,7 +1651,7 @@ Section~\ref{section-circuits-annotations}. node. It causes some drawings (in this case, two parallel lines) to be placed next to the node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] \draw (0,0) to [diode=light emitting] (2,0); \end{codeexample} @@ -1644,7 +1668,7 @@ Section~\ref{section-circuits-annotations}. been changed to accommodate for the space taken up by the annotation. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz [circuit ee IEC] { \draw (0,2) to [diode={light emitting,info=not good}] (2,2); @@ -1925,7 +1949,7 @@ automatically. Usually, you will not need to use these shapes directly. The anchors of this shape are just the compass anchors, which lie on a rectangle whose width and height are the above-computed height and width. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture} \pgfsetarrowoptions{direction ee}{6cm} \node[name=s,shape=direction ee,shape example,minimum height=0.7654*6cm] {}; @@ -1939,7 +1963,7 @@ automatically. Usually, you will not need to use these shapes directly. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture}[direction ee arrow=angle 45] \node[name=s,shape=direction ee,shape example,minimum height=1.75cm] {}; \foreach \anchor/\placement in {north/above, south/below, @@ -1982,7 +2006,7 @@ automatically. Usually, you will not need to use these shapes directly. % Here is an examples of how to use this shape: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz \node [generic circle IEC, /pgf/generic circle IEC/before background={ \pgfpathmoveto{\pgfpointorigin} @@ -2002,7 +2026,7 @@ automatically. Usually, you will not need to use these shapes directly. rectangle around the diode, see the below example. The diode's size is based on the current settings of |minimum width| and |minimum height|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture} \node[name=s,shape=generic diode IEC,shape example,minimum size=6cm] {}; \foreach \anchor/\placement in @@ -2032,7 +2056,7 @@ automatically. Usually, you will not need to use these shapes directly. The idea is that you use this key to draw different kinds of diode endings. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz \node [minimum size=1cm,generic diode IEC, /pgf/generic diode IEC/before background={ \pgfpathmoveto{\pgfqpoint{-.5pt}{-1pt}} @@ -2053,7 +2077,7 @@ automatically. Usually, you will not need to use these shapes directly. size is based on the current settings of |minimum width| and |minimum height|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture} \node[name=s,shape=breakdown diode IEC,shape example,minimum width=6cm,minimum height=4cm] {}; \foreach \anchor/\placement in @@ -2082,7 +2106,7 @@ automatically. Usually, you will not need to use these shapes directly. All of this means that, in general, the shape should be much wider than high. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture} \node[name=s,shape=var resistor IEC,shape example,minimum width=7cm,minimum height=1cm] {}; \foreach \anchor/\placement in @@ -2108,7 +2132,7 @@ automatically. Usually, you will not need to use these shapes directly. |minimum height|. The |center| of the shape is just above the |south| anchor, at a distance of the |outer ysep|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture} \node[name=s,shape=inductor IEC,shape example,minimum width=7cm,minimum height=1cm] {}; \foreach \anchor/\placement in @@ -2130,7 +2154,7 @@ automatically. Usually, you will not need to use these shapes directly. the background path, only the ``left and right lines'' that make up the rectangle are drawn. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture} \node[name=s,shape=capacitor IEC,shape example, minimum width=2cm,minimum height=3cm,inner sep=0pt] {}; @@ -2150,7 +2174,7 @@ automatically. Usually, you will not need to use these shapes directly. This shape is similar to a |capacitor IEC|, however, the right line is only half the height of the left line. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz \node[shape=battery IEC,shape example,minimum size=2cm, inner sep=0pt] {}; \end{codeexample} @@ -2161,7 +2185,7 @@ automatically. Usually, you will not need to use these shapes directly. This shape is similar to a |batter IEC|, only three lines of different heights are drawn. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz \node[shape=ground IEC,shape example,minimum size=2cm, inner sep=0pt] {}; \end{codeexample} @@ -2173,7 +2197,7 @@ automatically. Usually, you will not need to use these shapes directly. right corner. The size and anchors of this shape are computed in the same way as for an |inductor IEC|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \begin{tikzpicture} \node[name=s,shape=make contact IEC,shape example,minimum width=3cm,minimum height=1cm] {}; \foreach \anchor/\placement in @@ -2193,7 +2217,7 @@ automatically. Usually, you will not need to use these shapes directly. the path at the lower left corner. The radius of this circle is one twelfth of the width of the node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz \node[shape=var make contact IEC,shape example, minimum height=1cm,minimum width=3cm,inner sep=0pt] {}; \end{codeexample} @@ -2204,7 +2228,7 @@ automatically. Usually, you will not need to use these shapes directly. This shape depicts a contact that can be broken. It works like |make contact IEC|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{circuits.ee.IEC}}] \tikz \node[shape=break contact IEC,shape example, minimum height=1cm,minimum width=3cm,inner sep=0pt] {}; \end{codeexample} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-decorations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-decorations.tex index 60a4801c7da..9c971d5c91e 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-decorations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-decorations.tex @@ -131,7 +131,7 @@ The following deformations use only straight lines in order to morph the paths. This decoration is actually always defined when the decoration module is loaded, but it is documented here for consistency. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations}}] \begin{tikzpicture}[decoration=lineto] \draw [help lines] grid (3,2); \draw [decorate,fill=yellow!80!black] @@ -155,7 +155,7 @@ The following deformations use only straight lines in order to morph the paths. |zigzag| decorations. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture}[decoration={straight zigzag,meta-segment length=1.1cm}] \draw [help lines] grid (3,2); \draw [decorate,fill=yellow!80!black] @@ -177,7 +177,7 @@ The following deformations use only straight lines in order to morph the paths. $[-d,d]$, where $d$ is the value of |amplitude|. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}},preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} [decoration={random steps,segment length=2mm}] \draw [help lines] grid (3,2); @@ -198,7 +198,7 @@ The following deformations use only straight lines in order to morph the paths. \item |segment length| determines the length each spike. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture}[decoration=saw] \draw [help lines] grid (3,2); \draw [decorate,fill=yellow!80!black] @@ -219,7 +219,7 @@ The following deformations use only straight lines in order to morph the paths. cycle. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture}[decoration=zigzag] \draw [help lines] grid (3,2); \draw [decorate,fill=yellow!80!black] @@ -246,14 +246,14 @@ The following deformations use only straight lines in order to morph the paths. Note that this decoration makes only little sense for curves. You should apply it only to straight lines. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture}[decoration=bent] \draw [help lines] grid (3,2); \draw [decorate] (0,0) -- (3,1) -- (1.5,2) -- (0,1); \end{tikzpicture} \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture}[decoration={bent,aspect=.3}] \draw [decorate,fill=yellow!80!black] (0,0) rectangle (3.5,2); \node[circle,draw] (A) at (.5,.5) {A}; @@ -274,7 +274,7 @@ The following deformations use only straight lines in order to morph the paths. \item |segment length| determines the width of the half ellipse. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture}[decoration=bumps] \draw [help lines] grid (3,2); \draw [decorate,fill=yellow!80!black] @@ -303,7 +303,7 @@ The following deformations use only straight lines in order to morph the paths. default, means ``look more from the front''. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture}[decoration=coil] \draw [help lines] grid (3,2); \draw [decorate,fill=yellow!80!black] @@ -311,7 +311,7 @@ The following deformations use only straight lines in order to morph the paths. \end{tikzpicture} \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} [decoration={coil,aspect=0.3,segment length=3mm,amplitude=3mm}] \draw [help lines] grid (3,2); @@ -332,7 +332,7 @@ The following deformations use only straight lines in order to morph the paths. This decoration is mostly useful in conjunction with meta-decorations. It is also actually defined in the decoration module and is always available. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture}[decoration=curveto] \draw [help lines] grid (3,2); \draw [decorate,fill=yellow!80!black] @@ -352,7 +352,7 @@ The following deformations use only straight lines in order to morph the paths. \item |segment length| determines the sine wave's wavelength. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture}[decoration=snake] \draw [help lines] grid (3,2); \draw [decorate,fill=yellow!80!black] @@ -388,7 +388,7 @@ The following deformations use only straight lines in order to morph the paths. the path. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathreplacing}}] \begin{tikzpicture}[decoration=border] \draw [help lines] grid (3,2); \draw [postaction={decorate,draw,red}] @@ -410,7 +410,7 @@ The following deformations use only straight lines in order to morph the paths. ``middle part'' of the brace will be. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathreplacing}}] \begin{tikzpicture}[decoration=brace] \draw [help lines] grid (3,2); \draw [decorate] (0,0) -- (3,1); @@ -430,7 +430,7 @@ The following deformations use only straight lines in order to morph the paths. Thus, the total opening angle is twice this angle. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathreplacing}}] \begin{tikzpicture}[decoration={expanding waves,angle=5}] \draw [help lines] grid (3,2); \draw [decorate] (0,0) -- (3,1) arc (0:180:1.5 and 1); @@ -458,7 +458,7 @@ The following deformations use only straight lines in order to morph the paths. \item |amplitude| determines half the length of the ticks. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathreplacing}}] \begin{tikzpicture}[decoration=ticks] \draw [help lines] grid (3,2); \draw [decorate] (0,0) -- (3,1) arc (0:180:1.5 and 1); @@ -479,7 +479,7 @@ The following deformations use only straight lines in order to morph the paths. \item |radius| determines the radius of each arc. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathreplacing}}] \begin{tikzpicture}[decoration={waves,radius=4mm}] \draw [help lines] grid (3,2); \draw [decorate] (0,0) -- (3,1) arc (0:180:1.5 and 1); @@ -494,7 +494,7 @@ The following deformations use only straight lines in order to morph the paths. Typically, each segment will be replaced with another path, but this need not necessarily be the case. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathreplacing}}] \begin{tikzpicture}[>=stealth, every node/.style={midway, sloped, font=\tiny}, decoration={show path construction, moveto code={ @@ -565,8 +565,8 @@ The following deformations use only straight lines in order to morph the paths. The second support on the curveto input segment path. \end{command} % -{\tikzexternaldisable -\begin{codeexample}[] +{\ifpgfmanualexternalize\tikzexternaldisable\fi +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathreplacing,shapes.misc}}] \tikzset{ show curve controls/.style={ decoration={ @@ -642,7 +642,7 @@ with the most general and most useful of these libraries. Let us start with the above example in real code: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings}}] \begin{tikzpicture}[decoration={ markings,% switch on markings mark=% actually add a mark @@ -661,7 +661,7 @@ with the most general and most useful of these libraries. We can also add the cross repeatedly: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings}}] \begin{tikzpicture}[decoration={ markings,% switch on markings mark=% actually add a mark @@ -681,7 +681,7 @@ with the most general and most useful of these libraries. The |mark| decoration option is used to specify a marking. It comes in two versions: % - \begin{key}{/pgf/decoration/mark=\texttt{at position} \meta{pos}| with |\meta{code}} + \begin{key}{/pgf/decoration/mark=\texttt{at position }\meta{pos}\texttt{ with }\meta{code}} The options specifies that when a |marking| decoration is applied, there should be a marking at position \meta{pos} on the path whose code is given by \meta{code}. @@ -721,7 +721,7 @@ with the most general and most useful of these libraries. not allowed (and will result in chaos) to have a marking that lies earlier on the path to follow a marking that is later on the path. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings}}] \begin{tikzpicture}[decoration={ markings,% switch on markings mark=at position 1cm with \node[red]{1cm};, @@ -736,7 +736,7 @@ with the most general and most useful of these libraries. Here is an example that shows how markings can be used to place text on plots: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings}}] \begin{tikzpicture}[domain=0:4,label/.style={postaction={ decorate, decoration={ @@ -774,10 +774,7 @@ with the most general and most useful of these libraries. A second way to use the |mark| key is the following: % - \begin{key}{/pgf/decoration/mark=|between positions| - \meta{start pos} |and| \meta{end pos} |step| - \meta{stepping} |with| \meta{code}% - } + \begin{key}{/pgf/decoration/mark=\texttt{between positions }\meta{start pos}\texttt{ and }\meta{end pos}\texttt{ step }\meta{stepping}\texttt{ with }\meta{code}} This works similarly to the |at position| version of this option, only multiple marks are placed, starting at \meta{start pos} and then spaced apart by \meta{stepping}. The \meta{start pos}, the \meta{end pos}, and @@ -789,7 +786,7 @@ with the most general and most useful of these libraries. a path starting with the beginning of the path ($\meta{start pos} = 0$) and ending at the end ($\meta{end pos} = 1$). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings}}] \begin{tikzpicture}[decoration={markings, mark=between positions 0 and 1 step 0.1 with { \draw (-2pt,-2pt) -- (2pt,2pt); @@ -803,7 +800,7 @@ with the most general and most useful of these libraries. crosses. Note the use of the |transform shape| option to ensure that the nodes are actually rotated. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings,shapes.arrows}}] \begin{tikzpicture}[decoration={markings, mark=between positions 0 and 1 step 1cm with { \node [single arrow,fill=red, @@ -817,7 +814,7 @@ with the most general and most useful of these libraries. even refer to them later on. % % FIXME: the automatic key highlighting fails here! -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings}}] \begin{tikzpicture}[decoration={markings, mark=between positions 0 and 1 step 1cm with { \node [draw, @@ -833,7 +830,7 @@ with the most general and most useful of these libraries. In the following example we use the distance info to place ``length information'' on a path: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings}}] \begin{tikzpicture}[decoration={markings, % Main marks mark=between positions 0 and 1 step 40pt with @@ -880,7 +877,7 @@ with the most general and most useful of these libraries. Here are two examples that show how this works: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings}}] \begin{tikzpicture}[decoration={markings, mark connection node=my node, mark=at position .5 with @@ -890,7 +887,7 @@ with the most general and most useful of these libraries. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings}}] \begin{tikzpicture}[decoration={markings, mark connection node=my node, mark=at position .25 with @@ -917,7 +914,7 @@ executed. (They are only defined in this code): The \meta{options} can only be given when \tikzname\ is used. In this case, they are executed in a scope that contains the arrow tip. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings}}] \begin{tikzpicture}[decoration={ markings,% switch on markings mark=at position 1cm with {\node[red]{1cm};}, @@ -930,7 +927,8 @@ executed. (They are only defined in this code): \end{codeexample} Here is a more useful example: -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{decorations.markings}}] \begin{tikzpicture}[decoration={ markings,% switch on markings mark=between positions 0 and .75 step 4mm with {\arrow{stealth}}, @@ -960,7 +958,7 @@ executed. (They are only defined in this code): The footprint decoration adds little footprints around the path. They start with the left foot. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.footprints}}] \begin{tikzpicture}[decoration={footprints,foot length=5pt,stride length=10pt}] \draw [help lines] grid (3,3); \fill [decorate] (0,0) -- (3,2) arc (0:180:1.5 and 1); @@ -974,7 +972,7 @@ executed. (They are only defined in this code): The length or size of the footprint itself. A larger value makes the footprint larger, but does not change the stride length. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.footprints}}] \begin{tikzpicture}[decoration={footprints,foot length=20pt}] \fill [decorate] (0,0) -- (3,0); \end{tikzpicture} @@ -985,7 +983,7 @@ executed. (They are only defined in this code): The length of strides. This is the distance between the beginnings of left footprints along the path. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.footprints}}] \begin{tikzpicture}[decoration={footprints,stride length=50pt}] \fill [decorate] (0,0) -- (3,0); \end{tikzpicture} @@ -996,7 +994,7 @@ executed. (They are only defined in this code): The separation in the middle between the footprints. The footprints are moved away from the path by half this amount. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.footprints}}] \begin{tikzpicture}[decoration={footprints,foot sep=10pt}] \fill [decorate] (0,0) -- (3,0); \end{tikzpicture} @@ -1006,7 +1004,7 @@ executed. (They are only defined in this code): \begin{key}{/pgf/decoration/foot angle (initially 10)} Footprints are rotated by this much. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.footprints}}] \begin{tikzpicture}[decoration={footprints,foot angle=60}] \fill [decorate] (0,0) -- (3,0); \end{tikzpicture} @@ -1072,7 +1070,7 @@ shapes. This library is included mostly for historical reasons, using the \item |shape width| determines the width of each cross. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes}}] \begin{tikzpicture}[decoration=crosses] \draw [help lines] grid (3,2); \draw [decorate] (0,0) -- (3,1) arc (0:180:1.5 and 1); @@ -1093,7 +1091,7 @@ shapes. This library is included mostly for historical reasons, using the \item |shape width| determines the width of the triangle. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes}}] \begin{tikzpicture}[decoration=triangles] \draw [help lines] grid (3,2); \draw [decorate,fill=yellow!80!black] (0,0) -- (3,1) arc (0:180:1.5 and 1); @@ -1115,14 +1113,14 @@ shapes. This library is included mostly for historical reasons, using the size of the text box (like the arrow shapes).} If any of these restrictions pose a problem, use the |markings| library instead. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes,shapes.geometric}}] \begin{tikzpicture}[decoration={shape backgrounds,shape=star,shape size=5pt}] \draw [help lines] grid (3,2); \draw [decorate] (0,0) -- (3,1) arc (0:180:1.5 and 1); \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes,shapes.geometric}}] \tikzset{paint/.style={ draw=#1!50!black, fill=#1!50 }, decorate with/.style= {decorate,decoration={shape backgrounds,shape=#1,shape size=2mm}}} @@ -1144,7 +1142,7 @@ shapes. This library is included mostly for historical reasons, using the A shape background path is added at the start point of the path and, if the distance between the shapes is appropriate, at the end point of the path. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes,shapes.geometric}}] \begin{tikzpicture}[decoration={ shape backgrounds,shape=regular polygon,shape size=4mm}] \draw [help lines] grid (3,2); @@ -1165,7 +1163,7 @@ shapes. This library is included mostly for historical reasons, using the |inner sep| and |minimum size| will be ignored, but transformations can be applied to each segment as described below. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes,shapes.geometric}}] \tikzset{ paint/.style={draw=#1!50!black, fill=#1!50}, my star/.style={decorate,decoration={shape backgrounds,shape=star}, @@ -1192,7 +1190,7 @@ shapes. This library is included mostly for historical reasons, using the shapes or between the edges of the \emph{boundaries} of the shape borders. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes,shapes.symbols}}] \begin{tikzpicture}[ decoration={shape backgrounds,shape size=.5cm,shape=signal}, signal from=west, signal to=east, @@ -1218,7 +1216,7 @@ shapes. This library is included mostly for historical reasons, using the distance between shapes is determined. These keywords will only have a noticeable effect if the shapes sizes differ over time. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes}}] \tikzset{ paint/.style={draw=#1!50!black, fill=#1!50}, spreading/.style={ @@ -1243,7 +1241,7 @@ shapes. This library is included mostly for historical reasons, using the Internally this sets the \TeX-if |\ifpgfshapedecorationsloped| accordingly. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes,shapes.geometric}}] \tikzset{ paint/.style={draw=#1!50!black, fill=#1!50} } @@ -1265,7 +1263,7 @@ shapes. This library is included mostly for historical reasons, using the shapes are scaled: \begin{key}{/pgf/decoration/shape scaled=\meta{boolean} (initially false)} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes}}] \tikzset{ bigger/.style={decoration={shape start size=.125cm, shape end size=.5cm}}, smaller/.style={decoration={shape start size=.5cm, shape end size=.125cm}}, @@ -1301,7 +1299,7 @@ shapes. This library is included mostly for historical reasons, using the that a shape will take only if it is drawn exactly at the end of the path. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes}}] \tikzset{ bigger/.style={decoration={shape start size=.25cm, shape end size=1cm}}, smaller/.style={decoration={shape start size=1cm, shape end size=.25cm}}, @@ -1346,7 +1344,7 @@ shapes. This library is included mostly for historical reasons, using the the decoration is done. This is why no line is shown in the following example. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \catcode`\|12 \begin{tikzpicture}[decoration={text along path, text={Some long text along a ridiculously long curve that}}] @@ -1397,7 +1395,7 @@ shapes. This library is included mostly for historical reasons, using the codes of delimiters -- see below). % {\catcode`\|12 -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \catcode`\|12 \begin{tikzpicture} \draw [help lines] grid (3,2); @@ -1412,7 +1410,7 @@ shapes. This library is included mostly for historical reasons, using the added to any existing formatting. % {\catcode`\|12 -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \path [decorate,decoration={text along path, @@ -1438,7 +1436,7 @@ shapes. This library is included mostly for historical reasons, using the the specified format commands are added to any existing ones, you should avoid using |+| as a delimiter. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \path [decorate, decoration={text along path,text format delimiters={[}{]}, @@ -1457,7 +1455,7 @@ shapes. This library is included mostly for historical reasons, using the This key reverses the path. This is especially useful for typesetting text along different sides of curves. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \draw [gray, ->] @@ -1480,7 +1478,7 @@ shapes. This library is included mostly for historical reasons, using the Aligns the text according to \meta{alignment}, which should be one of |left|, |right|, or |center|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \draw [red, dashed] @@ -1521,7 +1519,7 @@ shapes. This library is included mostly for historical reasons, using the (i.e., the automaton would have to shift \emph{backwards} between characters) this key will have no effect. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \draw [red, dashed] @@ -1538,7 +1536,7 @@ shapes. This library is included mostly for historical reasons, using the forward only for space characters (including |\space|, but \emph{excluding} |\ |). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \draw [red, dashed] @@ -1556,7 +1554,7 @@ shapes. This library is included mostly for historical reasons, using the options (such as |text|, |scale| and |opacity|) can be used to create `text effects'. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text,math}}] \bfseries\large \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text align=center, @@ -1572,8 +1570,8 @@ shapes. This library is included mostly for historical reasons, using the \end{tikzpicture} \end{codeexample} - There are some important differences between this decoration and the |text - along path| decoration: + There are some important differences between this decoration and the + |text along path| decoration: % \begin{itemize} \item formatting (e.g., font and color) cannot be specified in the @@ -1606,7 +1604,7 @@ shapes. This library is included mostly for historical reasons, using the separated by a \emph{word separator}. This, however, does not mean that you are limited to using only natural language as the decoration text. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={000-001-010-011-100-101-110-111}, text effects/.cd, @@ -1620,7 +1618,7 @@ shapes. This library is included mostly for historical reasons, using the In addition, it is possible to replace characters with \tikzname\ code: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={000-001-010-011-100-101-110-111}, text align=center, text effects/.cd, @@ -1664,7 +1662,7 @@ shapes. This library is included mostly for historical reasons, using the horizontally fit each node to the character it contains, reducing the spacing between characters). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}}] @@ -1741,7 +1739,7 @@ shapes. This library is included mostly for historical reasons, using the \begin{key}{/pgf/decoration/text effects/character widths=\marg{effects}} Shorthand for the |every character width| style. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text align=center, text effects/.cd, @@ -1765,7 +1763,7 @@ shapes. This library is included mostly for historical reasons, using the \begin{key}{/pgf/decoration/text effects/character count=\meta{macro}} Store the number of the character being typeset in \meta{macro}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/.cd, @@ -1783,7 +1781,7 @@ shapes. This library is included mostly for historical reasons, using the \meta{macro}. This key can be used with the |character count| key to produce some quite pleasing effects: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text,math}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/.cd, @@ -1802,7 +1800,7 @@ shapes. This library is included mostly for historical reasons, using the character in the word) in \meta{macro}. Numbering starts at |1| and the character acting as a word separator is numbered |0|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/.cd, @@ -1825,7 +1823,7 @@ shapes. This library is included mostly for historical reasons, using the \meta{macro} takes the number of the previous word. If the decoration text starts with a word separator \meta{macro} will be |0|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/.cd, @@ -1850,7 +1848,7 @@ shapes. This library is included mostly for historical reasons, using the This key enables \meta{effects} to be applied to every character in the decoration text that is specified in \meta{characters}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={Falsches {\"U}ben von Xylophonmusik qu{\"a}lt jeden gr{\"o}{\ss}eren Zwerg}, text effects/.cd, @@ -1870,7 +1868,7 @@ shapes. This library is included mostly for historical reasons, using the path was actually a straight line starting from the given point. This `virtual' straight line is then decorated with the text. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/.cd, @@ -1888,7 +1886,7 @@ shapes. This library is included mostly for historical reasons, using the line that is used as the decorated path is rotated by \meta{angle} around the starting point. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/.cd, @@ -1905,7 +1903,7 @@ shapes. This library is included mostly for historical reasons, using the This key will make the decoration increase the space between characters so that the entire path is used by the decoration. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/every character/.style={text along path}}] @@ -1924,7 +1922,7 @@ shapes. This library is included mostly for historical reasons, using the This key will make the decoration scale the text so that the entire path is used by the decoration. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/every character/.style={text along path}}] @@ -1944,7 +1942,7 @@ shapes. This library is included mostly for historical reasons, using the useful if using `right-to-left` languages. Unfortunately, any leading `soft' spaces in the original text will be lost. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/.cd, @@ -1964,7 +1962,7 @@ shapes. This library is included mostly for historical reasons, using the Alternatively, to get the numbering to follow the reversed text, it is possible to reverse the path and then invert the scale: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/.cd, @@ -1984,7 +1982,7 @@ shapes. This library is included mostly for historical reasons, using the Group sequences of letters together so they are treated as a single `character'. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/.cd, @@ -2004,7 +2002,7 @@ shapes. This library is included mostly for historical reasons, using the The order in which the |reverse text| and |group letters| keys are applied is important: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/.cd, @@ -2031,7 +2029,7 @@ shapes. This library is included mostly for historical reasons, using the decoration starts. If any of these options are given the behaviour of the |repeat text| key is undefined, but typically it will be ignored. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!\ }, text effects/.cd, @@ -2051,7 +2049,7 @@ shapes. This library is included mostly for historical reasons, using the which takes one argument. The argument will be a macro which when expanded will contain the current character. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \def\mycommand#1{#1$_\n$} \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, @@ -2075,7 +2073,7 @@ shapes. This library is included mostly for historical reasons, using the with the |every character| or |every letter| styles) will also be applied to \meta{code}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text effects along path, text={text effects along path!}, text effects/.cd, @@ -2105,7 +2103,7 @@ shapes. This library is included mostly for historical reasons, using the repeatedly applying this replacement, different levels of the Koch curve fractal can be created. Its Hausdorff dimension is $\log 5/\log 3$. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals}}] \begin{tikzpicture}[decoration=Koch curve type 1] \draw decorate{ (0,0) -- (3,0) }; \draw decorate{ decorate{ (0,-1.5) -- (3,-1.5) }}; @@ -2119,7 +2117,7 @@ shapes. This library is included mostly for historical reasons, using the This decoration replaces a straight line by a ``rectangular sine''. Its Hausdorff dimension is $3/2$. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals}}] \begin{tikzpicture}[decoration=Koch curve type 2] \draw decorate{ (0,0) -- (3,0) }; \draw decorate{ decorate{ (0,-2) -- (3,-2) }}; @@ -2133,7 +2131,7 @@ shapes. This library is included mostly for historical reasons, using the This decoration replaces a straight line by a ``line with a spike''. The Hausdorff dimension of Koch's snowflake's is $\log 4/\log 3$. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals}}] \begin{tikzpicture}[decoration=Koch snowflake] \draw decorate{ (0,0) -- (3,0) }; \draw decorate{ decorate{ (0,-1) -- (3,-1) }}; @@ -2148,7 +2146,7 @@ shapes. This library is included mostly for historical reasons, using the This decoration replaces a straight line by a ``line with a gap in the middle''. The Hausdorff dimension of the Cantor set is $\log 2/\log 3$. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals}}] \begin{tikzpicture}[decoration=Cantor set,very thick] \draw decorate{ (0,0) -- (3,0) }; \draw decorate{ decorate{ (0,-.5) -- (3,-.5) }}; diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-edges.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-edges.tex index 09666becea4..08cb5934af9 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-edges.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-edges.tex @@ -129,7 +129,7 @@ this curve looks can be influenced via a number of options. If no \meta{angle} is given, the last given |bend left| or |bend right| angle is used. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{automata,positioning}}] \begin{tikzpicture}[shorten >=1pt,node distance=2cm,on grid] \node[state,initial] (q_0) {$q_0$}; \node[state] (q_1) [right=of q_0] {$q_1$}; diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-er.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-er.tex index 691d4e1d790..28939c1a5c3 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-er.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-er.tex @@ -34,7 +34,7 @@ The package defines a simple style for drawing entities: and a class in object-oriented programming). If this bothers you, feel free to define a style |entity type| instead. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{er,positioning}}] \begin{tikzpicture} \node[entity] (sheep) {Sheep}; \node[entity] (genome) [right=of sheep] {Genome}; @@ -47,7 +47,7 @@ The package defines a simple style for drawing entities: This style is evoked by the style |entity|. To change the appearance of entities, you can change this style. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{er,positioning}}] \begin{tikzpicture} [every entity/.style={draw=blue!50,fill=blue!20,thick}] \node[entity] (sheep) {Sheep}; @@ -67,7 +67,7 @@ entities. This style works like |entity|, only it is to be used for relationships. Again, |relationship|s are actually relationship types. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{er}}] \begin{tikzpicture} \node[entity] (sheep) at (0,0) {Sheep}; \node[entity] (genome) at (2,0) {Genome}; @@ -82,7 +82,7 @@ entities. \begin{stylekey}{/tikz/every relationship} Works like |every entity|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{er}}] \begin{tikzpicture} [every entity/.style={fill=blue!20,draw=blue,thick}, every relationship/.style={fill=orange!20,draw=orange,thick,aspect=1.5}] @@ -104,7 +104,7 @@ entities. attribute to its entity, you can use, for example, the |child| command or the |pin| option. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{er}}] \begin{tikzpicture} \node[entity] (sheep) {Sheep} child {node[attribute] {name}} @@ -112,7 +112,7 @@ entities. \end{tikzpicture} \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{er}}] \begin{tikzpicture}[every pin edge/.style=draw] \node[entity,pin={[attribute]60:name},pin={[attribute]120:color}] {Sheep}; \end{tikzpicture} @@ -130,7 +130,7 @@ entities. This style is used with every attribute, and therefore also for every key attribute. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{er}}] \begin{tikzpicture} [text depth=1pt, every attribute/.style={fill=black!20,draw=black}, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-external.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-external.tex index db97f4400e1..e96a27c470d 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-external.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-external.tex @@ -18,7 +18,7 @@ {\noindent {\emph{by Christian Feuersänger}}} \begin{tikzlibrary}{external} - This library provides a high-level automatic or semi--automatic export + This library provides a high-level automatic or semi-automatic export feature for \tikzname\ pictures. Its purpose is to convert each picture to a separate \pdf\ without changing the document as such. @@ -268,7 +268,7 @@ support for a) is unavailable for versions up to and including \pgfname\ 3.0.1. Note that |\pageref| is not supported (sorry). Point b) works as follows: a |\label| inside of an externalized graphics - causes the external library to generate separate auxiliary files for every + causes the |external| library to generate separate auxiliary files for every external image. These files are called \meta{imagename}|.dpth|. The extension |.dpth| indicates that the file also contains the image's depth (the |baseline| key of \tikzname). Furthermore, anything which would have @@ -461,7 +461,7 @@ pdflatex -shell-escape main \begin{command}{\tikzexternalfiledependsonfile\marg{external graphics}\marg{file name}} A variant of |\tikzpicturedependsonfile| which adds a dependency for an \meta{external graphics}. The argument \meta{external graphics} must be the - path as it would have been generated by the external library, i.e.\ without + path as it would have been generated by the |external| library, i.e.\ without file extension but including any prefixes. \end{command} @@ -596,7 +596,7 @@ pdflatex -shell-escape main What happens if you change ``My comment'' to ``My super comment''? Well, |external| will \emph{not} pick it up; you will need to handle this manually. However, if you modify anything between |\begin{tikzpicture}| and - |\end{tikzpicture}|, the external library \emph{will} pick it up and + |\end{tikzpicture}|, the |external| library \emph{will} pick it up and regenerate the picture. The |up to date check| is applied for |mode=convert with system call| and @@ -606,7 +606,7 @@ pdflatex -shell-escape main \begin{command}{\tikzexternaldisable} Allows to disable the complete externalization. While |export next| will still collect the contents of picture environments, this command uninstalls - the hooks for the external library completely. Thus, nested picture + the hooks for the |external| library completely. Thus, nested picture environments or environments where |\end{tikzpicture}| is not directly reachable won't produce compilation failures -- although it is not possible to externalize them automatically. diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fit.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fit.tex index 1e0fbbd8f25..d528a2a4e8b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fit.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fit.tex @@ -38,7 +38,7 @@ When you load this library, the following options become available: fit these points again in a circular node. Note how the circle encompasses exactly the same bounding box. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fit}}] \begin{tikzpicture}[inner sep=0pt,thick, dot/.style={fill=blue,circle,minimum size=3pt}] \draw[help lines] (0,0) grid (3,2); @@ -92,7 +92,7 @@ When you load this library, the following options become available: Suppose, for instance, that in the above example we want the word ``box'' to appear inside the box, but at its top. This can be achieved as follows: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fit}}] \begin{tikzpicture}[inner sep=0pt,thick, dot/.style={fill=blue,circle,minimum size=3pt}] \draw[help lines] (0,0) grid (3,2); @@ -109,7 +109,7 @@ When you load this library, the following options become available: Here is a real-life example that uses fitting: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fit,shapes.geometric}}] \begin{tikzpicture} [vertex/.style={minimum size=2pt,fill,draw,circle}, open/.style={fill=none}, @@ -144,7 +144,7 @@ When you load this library, the following options become available: This key fits \meta{coordinates or nodes} inside a node that is rotated by \meta{angle}. As a side effect, it also sets the |/tikz/rotate| key. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fit}}] \begin{tikzpicture}[inner sep=0pt,thick, dot/.style={fill=blue,circle,minimum size=3pt}] \draw[help lines] (0,0) grid (3,2); diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fixedpoint.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fixedpoint.tex index 238d0c16ad2..968db32b754 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fixedpoint.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fixedpoint.tex @@ -86,7 +86,7 @@ Currently there are only a few keys key supported for \meta{options}: |*| is used at the beginning of an expression the evaluation of the expression will evaluated and then multiplied by \meta{factor}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{fixedpointarithmetic}}] \begin{tikzpicture}[fixed point arithmetic={scale results=10^-6}] \draw [help lines] grid (3,2); \draw (0,0) -- (2,2); diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-folding.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-folding.tex index cd9092874c5..7deff0a554d 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-folding.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-folding.tex @@ -18,7 +18,10 @@ Here is a big example that produces a diagram for a calendar: % -\begin{codeexample}[leave comments] +\begin{codeexample}[ + leave comments, + preamble={\usetikzlibrary{calendar,folding}}, +] \sffamily\scriptsize \tikz \pic [ transform shape, @@ -78,7 +81,7 @@ The foldings are sorted by number of faces. Here is a simple example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{folding}}] \tikz \pic [ transform shape, folding line length=6mm, @@ -99,7 +102,7 @@ The foldings are sorted by number of faces. \begin{stylekey}{/tikz/every fold (initially help lines)} Executed for every line that should be folded. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{folding}}] \tikz \pic[ every cut/.style=red, every fold/.style=dotted, @@ -118,7 +121,7 @@ The foldings are sorted by number of faces. \begin{pictype}{tetrahedron truncated folding}{} A folding of a truncated tetrahedron. % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { tetrahedron truncated folding }; \end{codeexample} @@ -128,7 +131,7 @@ The foldings are sorted by number of faces. \begin{pictype}{cube folding}{} A folding of a cube. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { cube folding }; \end{codeexample} @@ -138,7 +141,7 @@ The foldings are sorted by number of faces. \begin{pictype}{cube truncated folding}{} A folding of a truncated cube. % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { cube truncated folding }; \end{codeexample} @@ -148,7 +151,7 @@ The foldings are sorted by number of faces. \begin{pictype}{octahedron folding}{} A folding of an octahedron. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { octahedron folding }; \end{codeexample} @@ -158,7 +161,7 @@ The foldings are sorted by number of faces. \begin{pictype}{octahedron folding}{} A folding of a truncated octahedron. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { octahedron truncated folding }; \end{codeexample} @@ -168,7 +171,7 @@ The foldings are sorted by number of faces. \begin{pictype}{dodecahedron folding}{} A folding of a dodecahedron. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { dodecahedron folding }; \end{codeexample} @@ -178,7 +181,7 @@ The foldings are sorted by number of faces. \begin{pictype}{dodecahedron' folding}{} This is an alternative folding of a dodecahedron. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { dodecahedron' folding }; \end{codeexample} @@ -188,7 +191,7 @@ The foldings are sorted by number of faces. \begin{pictype}{cuboctahedron folding}{} A folding of a cuboctahedron. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { cuboctahedron folding }; \end{codeexample} @@ -198,7 +201,7 @@ The foldings are sorted by number of faces. \begin{pictype}{cuboctahedron truncated folding}{} A folding of a truncated cuboctahedron. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { cuboctahedron truncated folding }; \end{codeexample} @@ -208,7 +211,7 @@ The foldings are sorted by number of faces. \begin{pictype}{icosahedron folding}{} A folding of an icosahedron. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { icosahedron folding }; \end{codeexample} @@ -218,7 +221,7 @@ The foldings are sorted by number of faces. \begin{pictype}{rhombicuboctahedron folding}{} A folding of an rhombicuboctahedron. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { rhombicuboctahedron folding }; \end{codeexample} @@ -228,7 +231,7 @@ The foldings are sorted by number of faces. \begin{pictype}{snub cube folding}{} A folding of a snub cube. % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { snub cube folding }; \end{codeexample} @@ -238,7 +241,7 @@ The foldings are sorted by number of faces. \begin{pictype}{icosidodecahedron folding}{} A folding of an icosidodecahedron. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{folding}}] \tikz \pic [folding line length=6mm, numbered faces, transform shape] { icosidodecahedron folding }; \end{codeexample} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fpu.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fpu.tex index bdc58135ef0..2a46a0a2e5f 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fpu.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-fpu.tex @@ -21,8 +21,8 @@ \begin{pgflibrary}{fpu} The floating point unit (fpu) allows the full data range of scientific computing for use in \pgfname. Its core is the \pgfname\ math routines for - mantissa operations, leading to a reasonable trade--of between speed and - accuracy. It does not require any third--party packages or external + mantissa operations, leading to a reasonable trade-of between speed and + accuracy. It does not require any third-party packages or external programs. \end{pgflibrary} @@ -32,7 +32,7 @@ The fpu provides a replacement set of math commands which can be installed in isolated placed to achieve large data ranges at reasonable accuracy. It provides at least% - \footnote{To be more precise, the FPU's exponent is currently a 32 bit + \footnote{To be more precise, the FPU's exponent is currently a 32-bit integer. That means it supports a significantly larger data range than an IEEE double precision number -- but if a future \TeX\ version may provide low-level access to doubles, this may change.}% @@ -56,7 +56,7 @@ by \pgfname. will be replaced with |\pgfmathfloatadd| and so on. Furthermore, any number will be parsed with |\pgfmathfloatparsenumber|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{fpu}}] \pgfkeys{/pgf/fpu} \pgfmathparse{1+1}\pgfmathresult \end{codeexample} @@ -73,7 +73,8 @@ by \pgfname. such methods as well. %-------------------------------------------------- -% \begin{codeexample}[] +% TODOsp: codeexamples: Why is this example commented? +% \begin{codeexample}[preamble={\usepgflibrary{fpu}}] % \begin{tikzpicture} % \fill[red,fpu,/pgf/fpu/scale results=1e-10] (*1.234e10,*1e10) -- (*2e10,*2e10); % \end{tikzpicture} @@ -86,7 +87,7 @@ by \pgfname. It does not hurt to call |fpu=true| or |fpu=false| multiple times. - Please note that if the |fixed point arithmetics| library of \pgfname\ will + Please note that if the |fixedpointarithmetic| library of \pgfname\ will be activated after the FPU, the FPU will be deactivated automatically. \end{key} @@ -97,7 +98,7 @@ by \pgfname. The predefined choice |float| uses the low-level format used by the FPU. This is useful for further processing inside of any library. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{fpu}}] \pgfkeys{/pgf/fpu,/pgf/fpu/output format=float} \pgfmathparse{exp(50)*42}\pgfmathresult \end{codeexample} @@ -106,7 +107,7 @@ by \pgfname. \meta{mantissa}|e|\meta{exponent}. It provides almost no computational overhead. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{fpu}}] \pgfkeys{/pgf/fpu,/pgf/fpu/output format=sci} \pgfmathparse{4.22e-8^-2}\pgfmathresult \end{codeexample} @@ -115,7 +116,7 @@ by \pgfname. highest compatibility with the \pgfname\ engine. It is activated automatically in case the FPU scales results. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{fpu}}] \pgfkeys{/pgf/fpu,/pgf/fpu/output format=fixed} \pgfmathparse{sqrt(1e-12)}\pgfmathresult \end{codeexample} @@ -151,8 +152,8 @@ by \pgfname. There are other ways to increase the data range and/or the precision of \pgfname's math parser. One of them is the |fp| package, preferable combined -with \pgfname's |fixed point arithmetic| library. The differences between the -FPU and |fp| are: +with \pgfname's |fixedpointarithmetic| library. The differences between the FPU +and |fp| are: % \begin{itemize} \item The FPU supports at least the complete IEEE double precision number @@ -357,7 +358,7 @@ Flags: \F; Mantissa \M; Exponent \E \item[5] for $-\infty$. \end{description} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fpu}}] \pgfmathfloatparsenumber{42} \pgfmathfloatifflags{\pgfmathresult}{0}{It's zero!}{It's not zero!} \pgfmathfloatifflags{\pgfmathresult}{1}{It's positive!}{It's not positive!} @@ -650,12 +651,12 @@ been activated -- it is sufficient to load the library. $\meta{x} \le 0$), |\pgfmathresult| will be \emph{empty}, no error message will be generated. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fpu}}] \pgfmathlog{1.452e-7} \pgfmathresult \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fpu}}] \pgfmathlog{6.426e+8} \pgfmathresult \end{codeexample} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-lsystems.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-lsystems.tex index c46b8ed5f53..7d83ccb75fd 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-lsystems.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-lsystems.tex @@ -25,7 +25,10 @@ executed. In \pgfname, L-systems can be used to create simple 2-dimensional fractal patterns\ldots % -\begin{codeexample}[pre={\expandafter\let\csname pgf@lsystem@Koch curve\endcsname=\relax}] +\begin{codeexample}[ + preamble={\usetikzlibrary{lindenmayersystems}}, + pre={\expandafter\let\csname pgf@lsystem@Koch curve\endcsname=\relax}, +] \begin{tikzpicture} \pgfdeclarelindenmayersystem{Koch curve}{ \rule{F -> F-F++F-F} @@ -39,7 +42,7 @@ patterns\ldots % \noindent\ldots and ``plant like'' patterns\ldots % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{lindenmayersystems}}] \begin{tikzpicture} \draw [green!50!black, rotate=90] [l-system={rule set={F -> FF-[-F+F]+[+F-F]}, axiom=F, order=4, step=2pt, @@ -239,7 +242,10 @@ command: case |A| and |B|, do not have to have code associated with them. They simply control the growth of the system. % -\begin{codeexample}[pre={\nullfont\expandafter\let\csname pgf@lsystem@Hilbert curve\endcsname=\relax}] +\begin{codeexample}[ + preamble={\usetikzlibrary{lindenmayersystems}}, + pre={\nullfont\expandafter\let\csname pgf@lsystem@Hilbert curve\endcsname=\relax}, +] \pgfdeclarelindenmayersystem{Hilbert curve}{ \symbol{X}{\pgflsystemdrawforward} \symbol{+}{\pgflsystemturnright} % Explicitly define + and - symbols. @@ -268,7 +274,7 @@ The following command is used to run an L-system in \pgfname: This origin will be where the L-system starts. In addition, the relevant keys should be set appropriately. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{lindenmayersystems}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \pgfset{lindenmayer system/.cd, angle=60, step=2pt} @@ -352,7 +358,7 @@ not have to keep repeating this path: drawing (empty symbols can still be used to control the growth of the system). The rules in \meta{list} should be separated by commas. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{lindenmayersystems}}] \tikz[rotate=65]\draw [green!60!black] l-system [l-system={rule set={F -> F[+F]F[-F]}, axiom=F, order=4, angle=25,step=3pt}]; \end{codeexample} @@ -365,7 +371,7 @@ not have to keep repeating this path: inside a special (rectangle) node which can be positioned using \meta{anchor}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{lindenmayersystems}}] \begin{tikzpicture}[l-system={step=1.75pt, order=5, angle=60}] \pgfdeclarelindenmayersystem{Sierpinski triangle}{ \symbol{X}{\pgflsystemdrawforward} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-math.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-math.tex index d090ccae996..4e112adb9d7 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-math.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-math.tex @@ -50,7 +50,7 @@ following command: that \emph{every statement should end with a semi-colon}. This is likely to be the most common reason why the |\tikzmath| command fails. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \tikzmath{ % Adapted from http://www.cs.northwestern.edu/academics/courses/110/html/fib_rec.html function fibonacci(\n) { @@ -82,7 +82,7 @@ In addition to this command the following key is provided: \begin{key}{/tikz/evaluate={\meta{statements}}} This key simply executes |\tikzmath{|\meta{statements}|}|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \tikz[x=0.25cm,y=0.25cm, evaluate={ int \i, \j; @@ -96,13 +96,12 @@ In addition to this command the following key is provided: \foreach \i in {0,...,10} \foreach \j in {0,...,10} \fill [red!\a{\i,\j}!yellow] (\i,\j) rectangle ++(1, 1); - \end{codeexample} % \end{key} The following sections describe the miniature language that this library -provides and can be used in the |\tikzmath| command and the |evaluate| key. +provides and can be used in the |\tikzmath| command and the |evaluate| key. The language consists only of simple keywords and expressions but the mini-parser allows you to format code in a reasonably versatile way (much like the |tikz| parser) except that \emph{all the keywords must be followed by at @@ -116,7 +115,7 @@ In the simplest case, you will want to evaluate an expression and assign it to a macro, or a \TeX\ count or dimension register. In this case, use of the |math| library is straightforward: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \newcount\mycount \newdimen\mydimen \tikzmath{ @@ -132,7 +131,7 @@ In addition, \TeX-macros (\emph{not} \TeX\ registers) can be suffixed with an index, similar to indices in mathematical notation, for example, $x_1$, $x_2$, $x_3$: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \tikzmath{ \x1 = 3+4; \x2 = 30+40; \x3 = 300+400; } @@ -142,7 +141,7 @@ $x_3$: The index does not have to be a number. By using braces |{}|, more sophisticated indices can be created: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \tikzmath{ \c{air} = 340; \c{water} = 1435; \c{steel} = 6100; } @@ -167,7 +166,7 @@ the following keyword: Any spaces preceding \meta{expression} are removed, but any trailing spaces (before the semi-colon) are included. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \tikzmath{ let \x = (5*4)+1; let \c1 = blue; @@ -196,7 +195,7 @@ keywords shown below. It is important to remember that by telling the |math| library you want it to do a particular assignment for a variable, it will also do the same assignment when the variable is indexed. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \tikzmath{ integer \x; \x1 = 3+4; \x2 = 30+40; \x3 = 300+400; @@ -214,7 +213,7 @@ do the same assignment when the variable is indexed. \emph{not} \TeX\ registers. In addition the variables should \emph{not} be indexed. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \tikzmath{ integer \x, \y, \z; \x = 4*5+6; @@ -249,7 +248,7 @@ following keyword. |(my node.east)| to be parsed and assigned to \meta{variable} in the form $x,y$, which can then be used in a |tikzpicture|: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \tikzmath{ coordinate \c; \c = (45:10pt); @@ -261,7 +260,7 @@ following keyword. performed; the coordinate expression does not have to be surrounded by |($|\ldots|$)|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \tikzmath{ coordinate \c, \d; \c = (-1,2)+(1,-1); @@ -277,7 +276,7 @@ following keyword. the name of \meta{variable} suffixed with |y| (i.e., |\cy|) and is assigned the $y$ coordinate of |\c|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \tikzmath{ coordinate \c; \c1 = (30:20pt); @@ -307,7 +306,7 @@ following keyword. comma, it \emph{must} be surrounded by braces, for example, |{mod(5, 2)}|. % -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}},preamble={\usetikzlibrary{math}}] \tikzmath{ int \x, \v; \v=1; @@ -321,7 +320,7 @@ following keyword. \item Because each item is evaluated, you cannot use \tikzname\ coordinates in \meta{list}. \item Only single variable assignment is supported. - \item The ``dots notation'' (e.\,g., |1,2,...,9|) can be used in + \item The ``dots notation'' (e.g., |1,2,...,9|) can be used in \meta{list}, but is not as sophisticated as the \pgfname\ |\foreach| command. In particular, contextual replacement is not possible. @@ -330,7 +329,7 @@ following keyword. |for| statement. This includes the values assigned to the \meta{variable}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \tikzmath{ int \x, \y; \y = 0; @@ -362,7 +361,7 @@ of an expression. In this case the following keyword can be used: \meta{if-zero-statements} are executed if the expression in \meta{condition} evaluates to zero. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \begin{tikzpicture} \tikzmath{ int \x; @@ -405,7 +404,7 @@ You can add functions by using the following keywords: Although \meta{definition} can take any statements accepted by |\tikzmath|, it is not advisable try to define functions inside other functions. % -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}},preamble={\usetikzlibrary{math}}] \tikzmath{ function product(\x,\y) { return \x*\y; @@ -438,7 +437,7 @@ options. Firstly, the following keyword can be used: in real programming languages). The \meta{code} is executed inside a \TeX\ group. % -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}},preamble={\usetikzlibrary{math}}] \tikzmath{ int \x, \y, \z; \x = random(2, 5); @@ -458,7 +457,7 @@ is executed inside a \TeX\ group. Unlike the |print| keyword, the brace notation can be used in functions so that |tikz| path commands can be safely executed inside a |tikzpicture|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{math}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \tikzmath{ diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-matrices.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-matrices.tex index 5eaed540fa0..1e0e15e49cb 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-matrices.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-matrices.tex @@ -31,7 +31,7 @@ typesetting such matrices. example, if the matrix has the name |my matrix|, then the node in the upper left cell will get the name |my matrix-1-1|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix (magic) [matrix of nodes] { @@ -51,7 +51,7 @@ typesetting such matrices. \item You can modify, say, the |row 2 column 3| style to pass special options to this particular cell. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture}[row 2 column 3/.style=red] \matrix [matrix of nodes] { @@ -67,7 +67,7 @@ typesetting such matrices. and the next bar is passed on to the |node| command. % {\catcode`\|=12 -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix [matrix of nodes] { @@ -86,7 +86,7 @@ typesetting such matrices. is an extra column skip. % {\catcode`\|=12 -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix [matrix of nodes] { @@ -103,7 +103,7 @@ typesetting such matrices. This means that for this particular cell you can provide totally different contents. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix [matrix of nodes] { @@ -122,7 +122,7 @@ typesetting such matrices. on in all nodes. % {\catcode`\|=12 -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix [matrix of math nodes] { @@ -140,7 +140,7 @@ typesetting such matrices. Normally, empty cells are just, well, empty. The style can be used together with both a |matrix of nodes| and a |matrix of math nodes|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix [matrix of math nodes,nodes={circle,draw}] { @@ -151,7 +151,7 @@ typesetting such matrices. \end{tikzpicture} \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix [matrix of math nodes,nodes={circle,draw},nodes in empty cells] { @@ -206,7 +206,7 @@ indicator; if you want to use it as an end-of-line indicator in a cell, just put the whole cell in curly braces. The following example illustrates the difference: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix [matrix of nodes,nodes={text width=16mm,draw}] { @@ -215,7 +215,8 @@ difference: }; \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +% +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix [matrix of nodes,nodes={text width=16mm,draw}] { @@ -235,7 +236,7 @@ of braces). \subsection{Delimiters} Delimiters are parentheses or braces to the left and right of a formula or a -matrix. The matrix library offers options for adding such delimiters to a +matrix. The |matrix| library offers options for adding such delimiters to a matrix. However, delimiters can actually be added to any node that has the standard anchors |north|, |south|, |north west| and so on. In particular, you can add delimiters to any |rectangle| box. They are implemented by ``measuring @@ -247,7 +248,7 @@ left or right using some after node magic. |north|, |south| and so on. The \meta{delimiter} can be any delimiter that is acceptable to \TeX's |\left| command. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix [matrix of math nodes,left delimiter=(,right delimiter=\}] { @@ -258,7 +259,7 @@ left or right using some after node magic. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \node [fill=red!20,left delimiter=(,right delimiter=\}] {$\displaystyle\int_0^1 x\,dx$}; @@ -273,7 +274,7 @@ left or right using some after node magic. \begin{stylekey}{/tikz/every left delimiter (initially \normalfont empty)} This style is additionally executed for every left delimiter. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} [every left delimiter/.style={red,xshift=1ex}, every right delimiter/.style={xshift=-1ex}] @@ -300,7 +301,7 @@ left or right using some after node magic. This option allows you to add a delimiter above the node. It is implemented by rotating a left delimiter. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix [matrix of math nodes,% left delimiter=\|,right delimiter=\rmoustache,% diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-mindmaps.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-mindmaps.tex index 47bc68db890..ea840cb6b3b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-mindmaps.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-mindmaps.tex @@ -25,7 +25,7 @@ way: The root concept is placed in the middle of the page and is drawn as a huge circle, ellipse, or cloud. The related concepts then ``leave'' this root concept via branch-like tendrils. -The mindmap library of \tikzname\ produces mindmaps that look a bit different +The |mindmap| library of \tikzname\ produces mindmaps that look a bit different from the standard mindmaps: While the big root concept is still a circle, related concepts are also depicted as (smaller) circles. The related concepts are linked to the root concept via organic-looking connections. The overall @@ -48,7 +48,7 @@ is used. This style installs some internal settings. Use this style with all pictures or at least scopes that contain a mindmap. It installs a whole bunch of settings that are useful for drawing mindmaps. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \tikz[mindmap,concept color=red!50] \node [concept] {Root concept} child[grow=right] {node[concept] {Child concept}}; @@ -61,7 +61,7 @@ is used. This style installs some internal settings. This style is included by the |mindmap| style. Change this style to add special settings to your mindmaps. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \tikz[large mindmap,concept color=red!50] \node [concept] {Root concept} child[grow=right] {node[concept] {Child concept}}; @@ -121,7 +121,7 @@ The following styles influence how isolated concepts are rendered: uniform color called |concept color|, see below. Additionally, the style |every concept| is called. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \tikz[mindmap,concept color=red!50] \node [concept] {Some concept}; \end{codeexample} @@ -152,7 +152,7 @@ The following styles influence how isolated concepts are rendered: order to indicate in the code that these concepts are additional, you can use this style. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \begin{tikzpicture}[mindmap,concept color=blue!80] \node [concept] {Root concept}; \node [extra concept] at (10,0) {extra concept}; @@ -175,7 +175,7 @@ concepts are rendered at the different levels of a tree. This style is used for the roots of mindmap trees. By adding something to this, you can change how the root of a mindmap will be rendered. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \tikz [root concept/.append style={concept color=blue!80,minimum size=3.5cm}, mindmap] @@ -190,7 +190,7 @@ concepts are rendered at the different levels of a tree. The |mindmap| style adds this style to the |level 1| style. This means that the first level children of a mindmap tree will use this style. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \tikz [root concept/.append style={concept color=blue!80}, level 1 concept/.append style={concept color=red!50}, @@ -225,7 +225,7 @@ concepts are rendered at the different levels of a tree. Here is an example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \tikz[mindmap,concept color=blue!80] \node [concept] {Root concept} child[concept color=red,grow=30] {node[concept] {Child concept}} @@ -235,7 +235,7 @@ concepts are rendered at the different levels of a tree. In order to have a concept color which changes with the hierarchy level, a tiny bit of magic is needed: % FIXME: is this a bug in the software!? The root concept is black!? -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \tikz[mindmap,text=white, root concept/.style={concept color=blue}, level 1 concept/.append style= @@ -267,7 +267,7 @@ been drawn. In this case you will want the connection lines to lie coordinates of the concepts have been determined. In this case you should place the connecting lines on a background layer as in the following example: -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds,mindmap}}] \begin{tikzpicture} [root concept/.append style={concept color=blue!20,minimum size=2cm}, level 1 concept/.append style={sibling angle=45}, @@ -293,7 +293,7 @@ the two nodes that has slightly organic ends. These bars are also used by default as the edges from parents in the mindmap tree. For the drawing of the bars a special decoration is used, which is defined in -the mindmap library: +the |mindmap| library: \begin{decoration}{circle connection bar} This decoration can be used to connect two circles. The start of the @@ -321,7 +321,7 @@ the mindmap library: Here is an example that should make this clearer: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \begin{tikzpicture} [decoration={start radius=1cm,end radius=.5cm,amplitude=2mm,angle=30}] \fill[blue!20] (0,0) circle (1cm); @@ -336,7 +336,7 @@ the mindmap library: really useful for drawing. However, if you fill the decorated path only, and if you use the same color as for the circles, the result is better. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \begin{tikzpicture} [blue!50,decoration={start radius=1cm, end radius=.5cm,amplitude=2mm,angle=30}] @@ -357,7 +357,7 @@ the mindmap library: one or two points (for very large distances you may need line width up to 4pt). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \begin{tikzpicture} [blue!50,decoration={start radius=1cm, end radius=.5cm,amplitude=2mm,angle=30}] @@ -381,7 +381,7 @@ the mindmap library: The |circle connection bar| decoration is a bit complicated to use. Especially specifying the radii is quite bothersome (the amplitude and the angle can be -set once and for all). For this reason, the mindmap library defines a special +set once and for all). For this reason, the |mindmap| library defines a special to-path that performs the necessary computations for you. \begin{stylekey}{/tikz/circle connection bar} @@ -402,7 +402,7 @@ to-path that performs the necessary computations for you. to-paths. \end{stylekey} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \begin{tikzpicture}[concept color=blue!50,blue!50,outer sep=0pt] \node (n1) at (0,0) [circle,minimum size=2cm,fill,draw,thick] {}; \node (n2) at (2.5,0) [circle,minimum size=1cm,fill,draw,thick] {}; @@ -420,15 +420,15 @@ to-path that performs the necessary computations for you. In a mindmap we sometimes want colors to change from one concept color to another. Then, the connection bar should, ideally, consist of a smooth transition between these two colors. Getting this right using shadings is a bit -tricky if you try this ``by hand'', so the mindmap library provides a special -option for facilitating this procedure. +tricky if you try this ``by hand'', so the |mindmap| library provides a +special option for facilitating this procedure. \begin{key}{/tikz/circle connection bar switch color=|from (|\meta{first color}|) to (|\meta{second color}|)|} This style works similarly to the |circle connection bar|. The only difference is that instead of filling the path with a single color a shading is used. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \begin{tikzpicture}[outer sep=0pt] \node (n1) at (0,0) [circle,minimum size=2cm,fill,draw,thick,red] {}; \node (n2) at (30:2.5) [circle,minimum size=1cm,fill,draw,thick,blue] {}; @@ -459,7 +459,7 @@ color. Here is an example of a tree built in this way: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \begin{tikzpicture} \path[mindmap,concept color=black,text=white] node[concept] {Computer Science} @@ -498,7 +498,7 @@ node. style |every annotation|, which allows you to change this style in a convenient fashion. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{mindmap}}] \begin{tikzpicture} [mindmap,concept color=blue!80, every annotation/.style={fill=red!20}] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-patterns.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-patterns.tex index d714b8fa86e..9c569fba34f 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-patterns.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-patterns.tex @@ -26,9 +26,9 @@ \pattern [path fading=west,pattern=checkerboard light gray] (0,0) rectangle (5cm,2em); - \pattern [pattern=#1,pattern color=black] (0,0) rectangle +(1.5cm,2em); - \pattern [pattern=#1,pattern color=blue] (1.75,0) rectangle +(1.5cm,2em); - \pattern [pattern=#1,pattern color=red] (3.5,0) rectangle +(1.5cm,2em); + \pattern [pattern=#1,pattern color=black] (0,0) rectangle +(1.5cm,2em); + \pattern [pattern=#1,pattern color=blue] (1.75,0) rectangle +(1.5cm,2em); + \pattern [pattern=#1,pattern color=red] (3.5,0) rectangle +(1.5cm,2em); \end{tikzpicture} \\[1ex] } @@ -81,6 +81,7 @@ \patternindexinherentlycolored{crosshatch dots light steel blue} \end{tabular} + \subsection{User-Defined Patterns} \label{section-library-patterns-meta} @@ -91,80 +92,81 @@ \end{pgflibrary} \emph{Caveat:} This library is currently experimental and might change without -notice. There are some known shortcomings that will hopefully be fixed in the +notice. There are some known shortcomings that will hopefully be fixed in the future. \begin{command}{\pgfdeclarepattern\marg{config}} - This command is used to declare a new pattern. In contrast to the normal + This command is used to declare a new pattern. In contrast to the normal patterns and in the spirit of |arrows.meta| this command takes a list of - keys and values to define the pattern. The following keys are available: - % -\begin{key}{/pgf/patterns/name=\meta{name}} - The name of the pattern by which it can be used later on. -\end{key} - % -\begin{key}{/pgf/patterns/type=\meta{type} (default uncolored)} - The type of the pattern maps to what was called ``form only'' and ``inherently colored'' in the language of the normal patterns. - The available choices are: - \begin{itemize} - \item |uncolored| the pattern will obey the surrounding color. - \item |colored| the pattern will have an intrinsic color. - \item |form only| synonym for |uncolored| - \item |inherently colored| synonym for |colored| - \end{itemize} -\end{key} - % -\begin{key}{/pgf/patterns/x=\meta{dimension} (default 1cm)} - Unit vector of the coordinate system in the $x$-direction. -\end{key} - % -\begin{key}{/pgf/patterns/y=\meta{dimension} (default 1cm)} - Unit vector of the coordinate system in the $y$-direction. -\end{key} - % -\begin{key}{/pgf/patterns/parameters=\meta{comma separated list} (default empty)} - A list of parameters that are passed to the pattern. This is usually a - list of TeX macros. It is very important that these macros are fully - expandable because the values they hold are being used for deduplication in - the PDF file. -\end{key} - % -\begin{key}{/pgf/patterns/defaults=\meta{comma separated list} (default empty)} - This list holds default assignments to the parameters passed to the - pattern. The default keys can then be found under the |/pgf/pattern keys/| - prefix. -\end{key} - % -\begin{key}{/pgf/patterns/bottom left=\meta{pgfpoint}} - Bottom left corner of the pattern's bounding box, e.g.\ - |\pgfqpoint{-.1pt}{-.1pt}|. -\end{key} - % -\begin{key}{/pgf/patterns/top right=\meta{pgfpoint}} - Top right corner of the pattern's bounding box, e.g.\ - |\pgfqpoint{3.1pt}{3.1pt}|. -\end{key} - % -\begin{key}{/pgf/patterns/tile size=\meta{pgfpoint}} - Width and height of a single of the pattern as a \pgfname\ point - specification, i.e. the $x$ coordinate is the width and the $y$ coordinate - is the height, e.g.\ |\pgfqpoint{3pt}{3pt}|. -\end{key} - % -\begin{key}{/pgf/patterns/tile transformation=\meta{pgftransformation} (default empty)} - A \pgfname\ transformation, e.g.\ |\pgftransformrotate{30}|. -\end{key} - % -\begin{key}{/pgf/patterns/code=\meta{code}} - The code should be \pgfname\ code than can be protocolled. It should not - contain any color code or nodes. -\end{key} - % -\begin{key}{/pgf/patterns/set up code=\meta{code} (default empty)} - This code can be set if parameters have to be preprocessed before the - actual pattern code can be run. -\end{key} + keys and values to define the pattern. The following keys are available: + % + \begin{key}{/pgf/patterns/name=\meta{name}} + The name of the pattern by which it can be used later on. + \end{key} + % + \begin{key}{/pgf/patterns/type=\meta{type} (default uncolored)} + The type of the pattern maps to what was called ``form only'' and + ``inherently colored'' in the language of the normal patterns. The + available choices are: + % + \begin{itemize} + \item |uncolored| the pattern will obey the surrounding color. + \item |colored| the pattern will have an intrinsic color. + \item |form only| synonym for |uncolored| + \item |inherently colored| synonym for |colored| + \end{itemize} + \end{key} + % + \begin{key}{/pgf/patterns/x=\meta{dimension} (default 1cm)} + Unit vector of the coordinate system in the $x$-direction. + \end{key} + % + \begin{key}{/pgf/patterns/y=\meta{dimension} (default 1cm)} + Unit vector of the coordinate system in the $y$-direction. + \end{key} + % + \begin{key}{/pgf/patterns/parameters=\meta{comma separated list} (default empty)} + A list of parameters that are passed to the pattern. This is usually a + list of \TeX\ macros. It is very important that these macros are fully + expandable because the values they hold are being used for + deduplication in the PDF file. + \end{key} + % + \begin{key}{/pgf/patterns/defaults=\meta{comma separated list} (default empty)} + This list holds default assignments to the parameters passed to the + pattern. The default keys can then be found under the + |/pgf/pattern keys/| prefix. + \end{key} + % + \begin{key}{/pgf/patterns/bottom left=\meta{pgfpoint}} + Bottom left corner of the pattern's bounding box, e.g.\ + |\pgfqpoint{-.1pt}{-.1pt}|. + \end{key} + % + \begin{key}{/pgf/patterns/top right=\meta{pgfpoint}} + Top right corner of the pattern's bounding box, e.g.\ + |\pgfqpoint{3.1pt}{3.1pt}|. + \end{key} % + \begin{key}{/pgf/patterns/tile size=\meta{pgfpoint}} + Width and height of a single of the pattern as a \pgfname\ point + specification, i.e. the $x$ coordinate is the width and the $y$ + coordinate is the height, e.g.\ |\pgfqpoint{3pt}{3pt}|. + \end{key} + % + \begin{key}{/pgf/patterns/tile transformation=\meta{pgftransformation} (default empty)} + A \pgfname\ transformation, e.g.\ |\pgftransformrotate{30}|. + \end{key} + % + \begin{key}{/pgf/patterns/code=\meta{code}} + The code should be \pgfname\ code that can be protocolled. It should not + contain any color code or nodes. + \end{key} + % + \begin{key}{/pgf/patterns/set up code=\meta{code} (default empty)} + This code can be set if parameters have to be preprocessed before the + actual pattern code can be run. + \end{key} \end{command} \begin{codeexample}[preamble={\usetikzlibrary{patterns.meta}}] @@ -213,46 +215,258 @@ future. \end{tikzpicture} \end{codeexample} +There are a couple of predefined \pgfname\ patterns which are similar +to their normal counterparts. + +\begin{pattern}{Lines} + The |Lines| pattern replaces the |horizontal lines|, |vertical lines|, + |north east lines|, and |north west lines| patterns. Unfortunately, due to + the way the old patterns are constructed, namely that they are not simply + related to each other by rotation, the |Lines| pattern cannot be used as a + drop-in replacement. + + However, the pattern options can be tuned to resemble the other versions + closely. The available parameters are: + % + \begin{key}{/pgf/pattern keys/distance (initially 3pt)} + Distance between lines. + \end{key} + % + \begin{key}{/pgf/pattern keys/angle (initially 0)} + By default the lines are horizontal. The whole pattern is rotated by + this angle. The rotation angle is measured in the mathematically + positive sense. + \end{key} + % + \begin{key}{/pgf/pattern keys/xshift (initially 0pt)} + Shifts the whole pattern in $x$-direction (before applying the + rotation). + \end{key} + % + \begin{key}{/pgf/pattern keys/yshift (initially 0pt)} + Shifts the whole pattern in $y$-direction (before applying the + rotation). + \end{key} + % + \begin{key}{/pgf/pattern keys/line width (initially \string\the\string\pgflinewidth)} + Thickness of the lines. + \end{key} + % + The following settings can be used to reproduce the other |... lines| + patterns. + % +\begin{codeexample}[preamble={\usetikzlibrary{patterns.meta}}] +\begin{tikzpicture} + \draw[pattern={horizontal lines},pattern color=orange] + (0,0) rectangle +(1,1); + \draw[pattern={Lines[yshift=.5pt]},pattern color=blue] + (0,0) rectangle +(1,1); + + \draw[pattern={vertical lines},pattern color=orange] + (1,0) rectangle +(1,1); + \draw[pattern={Lines[angle=90,yshift=-.5pt]},pattern color=blue] + (1,0) rectangle +(1,1); + + \draw[pattern={north east lines},pattern color=orange] + (0,1) rectangle +(1,1); + \draw[pattern={Lines[angle=45,distance={3pt/sqrt(2)}]},pattern color=blue] + (0,1) rectangle +(1,1); + + \draw[pattern={north west lines},pattern color=orange] + (1,1) rectangle +(1,1); + \draw[pattern={Lines[angle=-45,distance={3pt/sqrt(2)}]},pattern color=blue] + (1,1) rectangle +(1,1); +\end{tikzpicture} +\end{codeexample} + % +\end{pattern} + +\begin{pattern}{Hatch} + The |Hatch| pattern replaces the |grid| and |crosshatch| patterns. + The |Hatch| pattern without options is a drop-in replacement for the + |grid| pattern. + % + \begin{key}{/pgf/pattern keys/distance (initially 3pt)} + Distance between crosses. + \end{key} + % + \begin{key}{/pgf/pattern keys/angle (initially 0)} + By default the lines are horizontal and vertical. The whole pattern is + rotated by this angle. The rotation angle is measured in the + mathematically positive sense. + \end{key} + % + \begin{key}{/pgf/pattern keys/xshift (initially 0pt)} + Shifts the whole pattern in $x$-direction (before applying the + rotation). + \end{key} + % + \begin{key}{/pgf/pattern keys/yshift (initially 0pt)} + Shifts the whole pattern in $y$-direction (before applying the + rotation). + \end{key} + % + \begin{key}{/pgf/pattern keys/line width (initially \string\the\string\pgflinewidth)} + Thickness of the lines. + \end{key} + % + The following settings can be used to reproduce the |grid| and + |crosshatch| patterns. + % +\begin{codeexample}[preamble={\usetikzlibrary{patterns.meta}}] +\begin{tikzpicture} + \draw[pattern={grid},pattern color=orange] + (0,0) rectangle +(1,1); + \draw[pattern={Hatch},pattern color=blue] + (0,0) rectangle +(1,1); + + \draw[pattern={crosshatch},pattern color=orange] + (1,0) rectangle +(1,1); + \draw[pattern={Hatch[angle=45,distance={3pt/sqrt(2)},xshift=.1pt]}, + pattern color=blue] (1,0) rectangle +(1,1); +\end{tikzpicture} +\end{codeexample} + % +\end{pattern} + +\begin{pattern}{Dots} + The |Dots| pattern replaces the |dots| and |crosshatch dots| patterns. The + |Dots| pattern without options is a drop-in replacement for the |dots| + pattern. + % + \begin{key}{/pgf/pattern keys/distance (initially 3pt)} + Distance between dots. + \end{key} + % + \begin{key}{/pgf/pattern keys/angle (initially 0)} + By default the lines are arranged on a regular grid. The whole pattern + is rotated by this angle. The rotation angle is measured in the + mathematically positive sense. + \end{key} + % + \begin{key}{/pgf/pattern keys/xshift (initially 0pt)} + Shifts the whole pattern in $x$-direction (before applying the + rotation). + \end{key} + % + \begin{key}{/pgf/pattern keys/yshift (initially 0pt)} + Shifts the whole pattern in $y$-direction (before applying the + rotation). + \end{key} + % + \begin{key}{/pgf/pattern keys/radius (initially 0.5pt)} + Radius of the dots. + \end{key} + % + The following settings can be used to reproduce the |dots| and + |crosshatch dots| patterns. + % +\begin{codeexample}[preamble={\usetikzlibrary{patterns.meta}}] +\begin{tikzpicture} + \draw[pattern={dots},pattern color=orange] + (0,0) rectangle +(1,1); + \draw[pattern={Dots},pattern color=blue] + (0,0) rectangle +(1,1); + + \draw[pattern={crosshatch dots},pattern color=orange] + (1,0) rectangle +(1,1); + \draw[pattern={Dots[angle=45,distance={3pt/sqrt(2)}]}, + pattern color=blue] (1,0) rectangle +(1,1); +\end{tikzpicture} +\end{codeexample} + % +\end{pattern} + +\begin{pattern}{Stars} + The |Stars| pattern replaces the |fivepointed stars| and |sixpointed stars| + patterns. However, the stars of the |Stars| pattern are constructed in a + fundamentally different fashion, so it can't be used as a drop-in + replacement. + % + \begin{key}{/pgf/pattern keys/distance (initially 3mm)} + Distance between stars. + \end{key} + % + \begin{key}{/pgf/pattern keys/angle (initially 0)} + By default the stars are arranged on a regular grid. The whole pattern + is rotated by this angle. The rotation angle is measured in the + mathematically positive sense. + \end{key} + % + \begin{key}{/pgf/pattern keys/xshift (initially 0pt)} + Shifts the whole pattern in $x$-direction (before applying the + rotation). + \end{key} + % + \begin{key}{/pgf/pattern keys/yshift (initially 0pt)} + Shifts the whole pattern in $y$-direction (before applying the + rotation). + \end{key} + % + \begin{key}{/pgf/pattern keys/radius (initially 1mm)} + Outer radius of the enclosing circle of the stars. + \end{key} + % + \begin{key}{/pgf/pattern keys/points (initially 5)} + Number of pointy ends of the stars. + \end{key} + % +\begin{codeexample}[preamble={\usetikzlibrary{patterns.meta}}] +\begin{tikzpicture} + \draw[pattern={fivepointed stars},pattern color=orange] + (0,0) rectangle +(1,1); + \draw[pattern={Stars},pattern color=blue] + (0,0) rectangle +(1,1); + + \draw[pattern={sixpointed stars},pattern color=orange] + (1,0) rectangle +(1,1); + \draw[pattern={Stars[points=6]},pattern color=blue] + (1,0) rectangle +(1,1); +\end{tikzpicture} +\end{codeexample} + % +\end{pattern} + + \begin{command}{\tikzdeclarepattern\marg{config}} A pattern declared with |\pgfdeclarepattern| can only execute \pgfname\ - code. This command extends the functionality to also allow \tikzname\ - code. All the same keys of |\pgfdeclarepattern| are valid, but some of + code. This command extends the functionality to also allow \tikzname\ + code. All the same keys of |\pgfdeclarepattern| are valid, but some of them have been overloaded to give a more natural \tikzname\ syntax. % -\begin{key}{/tikz/patterns/bottom left=\meta{point}} - Instead of a \pgfname\ name point, this key takes a \tikzname\ point, e.g.\ - |(-.1,-.1)|. -\end{key} + \begin{key}{/tikz/patterns/bottom left=\meta{point}} + Instead of a \pgfname\ name point, this key takes a \tikzname\ point, + e.g.\ |(-.1,-.1)|. + \end{key} % -\begin{key}{/tikz/patterns/top right=\meta{point}} - Instead of a \pgfname\ name point, this key takes a \tikzname\ point, e.g.\ - |(3.1,3.1)|. -\end{key} + \begin{key}{/tikz/patterns/top right=\meta{point}} + Instead of a \pgfname\ name point, this key takes a \tikzname\ point, + e.g.\ |(3.1,3.1)|. + \end{key} % -\begin{key}{/tikz/patterns/tile size=\meta{point}} - Instead of a \pgfname\ name point, this key takes a \tikzname\ point, e.g.\ - |(3,3)|. -\end{key} + \begin{key}{/tikz/patterns/tile size=\meta{point}} + Instead of a \pgfname\ name point, this key takes a \tikzname\ point, + e.g.\ |(3,3)|. + \end{key} % -\begin{key}{/tikz/patterns/tile transformation=\meta{transformation}} - Instead of a \pgfname\ transformation, this key takes a list of keys and - value and extracts the resulting transformation from them, e.g.\ - |rotate=30|. -\end{key} + \begin{key}{/tikz/patterns/tile transformation=\meta{transformation}} + Instead of a \pgfname\ transformation, this key takes a list of keys + and value and extracts the resulting transformation from them, e.g.\ + |rotate=30|. + \end{key} In addition to the overloaded keys, some new keys have been added. % -\begin{key}{/tikz/patterns/bounding box=\meta{point} and \meta{point}} - This is a shorthand to set the bounding box. It will assign the first - point to |bottom left| and the second point to |top right|. -\end{key} - % -\begin{key}{/tikz/patterns/infer tile bounding box=\meta{dimension} (default 0pt)} - Instead of specifying the bounding box by hand, you can ask \tikzname\ to - infer the size of the bounding box for you. The \meta{dimension} parameter - is padding that is added around the bounding box. -\end{key} + \begin{key}{/tikz/patterns/bounding box=\meta{point} and \meta{point}} + This is a shorthand to set the bounding box. It will assign the first + point to |bottom left| and the second point to |top right|. + \end{key} % + \begin{key}{/tikz/patterns/infer tile bounding box=\meta{dimension} (default 0pt)} + Instead of specifying the bounding box by hand, you can ask \tikzname\ + to infer the size of the bounding box for you. The \meta{dimension} + parameter is padding that is added around the bounding box. + \end{key} \end{command} \begin{codeexample}[preamble={\usetikzlibrary{patterns.meta}}] @@ -280,7 +494,7 @@ future. \begin{codeexample}[preamble={\usetikzlibrary{patterns.meta}}] \tikzdeclarepattern{ - name=Stars, + name=mystars, type=uncolored, bounding box={(-5pt,-5pt) and (5pt,5pt)}, tile size={(\tikztilesize,\tikztilesize)}, @@ -301,49 +515,50 @@ future. } \begin{tikzpicture} - \draw[pattern=Stars,pattern color=blue] (0,0) rectangle ++(2,2); - \draw[pattern={Stars[points=7,tile size=15pt]}] (2,0) rectangle ++(2,2); - \draw[pattern={Stars[rotate=45]},pattern color=red] (0,2) rectangle ++(2,2); - \draw[pattern={Stars[rotate=30,points=4,radius=5pt]}] (2,2) rectangle ++(2,2); + \draw[pattern=mystars,pattern color=blue] (0,0) rectangle +(2,2); + \draw[pattern={mystars[points=7,tile size=15pt]}] (2,0) rectangle +(2,2); + \draw[pattern={mystars[rotate=45]},pattern color=red] (0,2) rectangle +(2,2); + \draw[pattern={mystars[rotate=30,points=4,radius=5pt]}] (2,2) rectangle +(2,2); \end{tikzpicture} \end{codeexample} Instead of macros you can also use \pgfname\ keys as parameters, if that is what you prefer. +% \begin{codeexample}[preamble={\usetikzlibrary{patterns.meta}}] \tikzdeclarepattern{ - name=lines, + name=mylines, parameters={ \pgfkeysvalueof{/pgf/pattern keys/size}, \pgfkeysvalueof{/pgf/pattern keys/angle}, \pgfkeysvalueof{/pgf/pattern keys/line width}, }, - bounding box={(-.1pt,-.1pt) and - (\pgfkeysvalueof{/pgf/pattern keys/size}+.1pt, - \pgfkeysvalueof{/pgf/pattern keys/size}+.1pt)}, + bounding box={ + (0,-0.5*\pgfkeysvalueof{/pgf/pattern keys/line width}) and + (\pgfkeysvalueof{/pgf/pattern keys/size}, + 0.5*\pgfkeysvalueof{/pgf/pattern keys/line width})}, tile size={(\pgfkeysvalueof{/pgf/pattern keys/size}, \pgfkeysvalueof{/pgf/pattern keys/size})}, tile transformation={rotate=\pgfkeysvalueof{/pgf/pattern keys/angle}}, defaults={ size/.initial=5pt, - angle/.initial=0, + angle/.initial=45, line width/.initial=.4pt, }, code={ - \draw[line width=\pgfkeysvalueof{/pgf/pattern keys/line width}] - (0,0) -- (\pgfkeysvalueof{/pgf/pattern keys/size}, - \pgfkeysvalueof{/pgf/pattern keys/size}); - } + \draw [line width=\pgfkeysvalueof{/pgf/pattern keys/line width}] + (0,0) -- (\pgfkeysvalueof{/pgf/pattern keys/size},0); + }, } \begin{tikzpicture} - \draw[pattern={lines[size=10pt,line width=.8pt,angle=10]}, + \draw[pattern={mylines[size=10pt,line width=.8pt,angle=10]}, pattern color=red] (0,0) rectangle ++(2,2); - \draw[pattern={lines[size= 5pt,line width=.8pt,angle=40]}, + \draw[pattern={mylines[size= 5pt,line width=.8pt,angle=40]}, pattern color=blue] (2,0) rectangle ++(2,2); - \draw[pattern={lines[size=10pt,line width=.4pt,angle=90]}, + \draw[pattern={mylines[size=10pt,line width=.4pt,angle=90]}, pattern color=green] (0,2) rectangle ++(2,2); - \draw[pattern={lines[size= 2pt,line width= 1pt,angle=70]}, + \draw[pattern={mylines[size= 2pt,line width= 1pt,angle=70]}, pattern color=orange] (2,2) rectangle ++(2,2); \end{tikzpicture} \end{codeexample} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-perspective.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-perspective.tex index 61ed10179ec..3d5c9b127f4 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-perspective.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-perspective.tex @@ -1,3 +1,4 @@ + \section{Three Point Perspective Drawing Library} \noindent\emph{by Max Snippe} @@ -7,6 +8,7 @@ vanishing points. \end{tikzlibrary} + \subsection{Coordinate Systems} \begin{coordinatesystem}{three point perspective} @@ -32,6 +34,7 @@ coordinate system. \end{coordinatesystem} + \subsection{Setting the view} \begin{key}{/tikz/3d view=\marg{azimuth}\marg{elevation} @@ -74,7 +77,8 @@ For example, when both \meta{azimuth} and \meta{elevation} are 0$^\circ$, $+z$ will be pointing upward, and $+x$ will be pointing right. The default is as shown below. -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[3d view] \draw[->] (-1,0,0) -- (1,0,0) node[pos=1.1]{x}; \draw[->] (0,-1,0) -- (0,1,0) node[pos=1.1]{y}; @@ -88,7 +92,8 @@ |isometric view| style. It simply sets |3d view={-45}{35.26}|. The value for \meta{elevation} is determined with $\arctan(1/\sqrt{2})$. In isometric projection the angle between any pair of axes is 120$^\circ$, as shown below. -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[isometric view] \draw[->] (-1,0,0) -- (1,0,0) node[pos=1.1]{x}; \draw[->] (0,-1,0) -- (0,1,0) node[pos=1.1]{y}; @@ -97,8 +102,14 @@ \end{codeexample} \end{stylekey} + \subsection{Defining the perspective} +In this section, the following example cuboid will be used with various +scaling. As a reference, the axes will be shown too, without perspective +projection. +% +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \newcommand\simplecuboid[3]{% \fill[gray!80!white] (tpp cs:x=0,y=0,z=#3) -- (tpp cs:x=0,y=#2,z=#3) @@ -112,18 +123,18 @@ -- (tpp cs:x=0,y=0,z=#3) -- (tpp cs:x=#1,y=0,z=#3) -- (tpp cs:x=#1,y=0,z=0) -- cycle;} - \newcommand{\simpleaxes}[3]{% \draw[->] (-0.5,0,0) -- (#1,0,0) node[pos=1.1]{x}; \draw[->] (0,-0.5,0) -- (0,#2,0) node[pos=1.1]{y}; \draw[->] (0,0,-0.5) -- (0,0,#3) node[pos=1.1]{z};} -In this section, the following example cuboid will be used with various scaling. -As a reference, the axes will be shown too, without perspective projection. -\begingroup -\let\simplecuboid\relax -\let\simpleaxes\relax -\begin{codeexample}[] +\begin{tikzpicture}[3d view] + \simplecuboid{2}{2}{2} + \simpleaxes{2}{2}{2} +\end{tikzpicture} +\end{codeexample} + +\begin{codeexample}[setup code,hidden] \newcommand\simplecuboid[3]{% \fill[gray!80!white] (tpp cs:x=0,y=0,z=#3) -- (tpp cs:x=0,y=#2,z=#3) @@ -137,36 +148,34 @@ As a reference, the axes will be shown too, without perspective projection. -- (tpp cs:x=0,y=0,z=#3) -- (tpp cs:x=#1,y=0,z=#3) -- (tpp cs:x=#1,y=0,z=0) -- cycle;} + \newcommand{\simpleaxes}[3]{% \draw[->] (-0.5,0,0) -- (#1,0,0) node[pos=1.1]{x}; \draw[->] (0,-0.5,0) -- (0,#2,0) node[pos=1.1]{y}; \draw[->] (0,0,-0.5) -- (0,0,#3) node[pos=1.1]{z};} - -\begin{tikzpicture}[3d view] - \simplecuboid{2}{2}{2} - \simpleaxes{2}{2}{2} -\end{tikzpicture} \end{codeexample} -\endgroup \begin{key}{/tikz/perspective=\meta{vanishing points} (default p=\{(10,0,0)\},q=\{(0,10,0)\},r=\{(0,0,20)\})} The `strength' of the perspective can be determined by setting the location of the vanishing points. The default values have a stronger perspective towards $x$ and $y$ than towards $z$, as shown below. -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[3d view,perspective] \simplecuboid{2}{2}{2} \simpleaxes{2}{2}{2} \end{tikzpicture} \end{codeexample} +% From this example it also shows that the maximum dimensions of the cuboid are no longer 2 by 2 by 2. This is inherent to the perspective projection. % \begin{key}{/tikz/perspective/p=\marg{x,y,z} (initially (0,0,0))} The location of the vanishing point that determines the `strength' of the perspective in $x$-direction can be set with the |p| key. -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[ 3d view, perspective={ @@ -175,6 +184,7 @@ As a reference, the axes will be shown too, without perspective projection. \simpleaxes{2}{2}{2} \end{tikzpicture} \end{codeexample} + % Note also that when only |p| is provided, the perspective in $y$ and $z$ direction is turned off. @@ -185,7 +195,8 @@ As a reference, the axes will be shown too, without perspective projection. By changing the $y$ and $z$ components of |p|, one can achieve various effects. -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[ 3d view, perspective={ @@ -194,7 +205,8 @@ As a reference, the axes will be shown too, without perspective projection. \simpleaxes{2}{2}{2} \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[ 3d view, perspective={ @@ -203,7 +215,8 @@ As a reference, the axes will be shown too, without perspective projection. \simpleaxes{2}{2}{2} \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[ 3d view, perspective={ @@ -212,12 +225,14 @@ As a reference, the axes will be shown too, without perspective projection. \simpleaxes{2}{2}{2} \end{tikzpicture} \end{codeexample} + % \end{key} % \begin{key}{/tikz/perspective/q=\marg{x,y,z} (initially (0,0,0))} Similar to |p|, but can be turned off by setting its $y$ component to \texttt{0}. -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[ 3d view, perspective={ @@ -226,12 +241,14 @@ As a reference, the axes will be shown too, without perspective projection. \simpleaxes{2}{2}{2} \end{tikzpicture} \end{codeexample} + % \end{key} % \begin{key}{/tikz/perspective/r=\marg{x,y,z} (initially (0,0,0))} Similar to |p|, but can be turned off by setting its $z$ component to \texttt{0}. -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[ 3d view, perspective={ @@ -240,29 +257,36 @@ As a reference, the axes will be shown too, without perspective projection. \simpleaxes{2}{2}{2} \end{tikzpicture} \end{codeexample} + % \end{key} \end{key} + \subsection{Shortcomings} - Currently a number of things are not working, mostly due to the fact that PGF - uses a 2D coordinate system underwater, and perspective projection is a - non-linear affine transformation which needs to be aware of all three - coordinates. These three coordinates are currently lost when processing a 3D - coordinate. - The issues include, but possibly are not limited to: - \begin{itemize} + +Currently a number of things are not working, mostly due to the fact that PGF +uses a 2D coordinate system underwater, and perspective projection is a +non-linear affine transformation which needs to be aware of all three +coordinates. These three coordinates are currently lost when processing a 3D +coordinate. +The issues include, but possibly are not limited to: +% +\begin{itemize} \item Keys like |shift|, |xshift|, |yshift| are not working \item Keys like |rotate around x|, |rotate around y|, and |rotate around z| are not working \item Units are not working \item Most keys from the |3d| library are unsupported, e.g. all the |canvas is .. plane| keys. - \end{itemize} +\end{itemize} + \subsection{Examples} + An |r| that lies `below' your drawing can mimic a macro effect. +% \nopagebreak -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[ isometric view, perspective={ @@ -278,8 +302,9 @@ An |r| that lies `below' your drawing can mimic a macro effect. A peculiar phenomenon inherent to perspective drawing, is that however great your coordinate will become in the direction of the vanishing point, it will never reach it. +% \nopagebreak -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[ isometric view, perspective={ @@ -300,8 +325,9 @@ never reach it. Even for simple examples, the added perspective might add another `dimension' to your drawing. In this case, two vanishing points give a more intuitive result then three would. +% \nopagebreak -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[ scale=0.7, 3d view, @@ -327,8 +353,9 @@ then three would. With the vanishing points nearby, the distortion of parallel lines becomes very strong. This might lead to \texttt{Dimension too large} errors. +% \nopagebreak -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[ 3d view, perspective={ @@ -363,8 +390,9 @@ strong. This might lead to \texttt{Dimension too large} errors. Of course these examples can become as complex as desired, but as with any 3D drawing using \tikzname, the order of drawing commands is important and can become increasingly more complex. +% \nopagebreak -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{perspective}}] \begin{tikzpicture}[ cycle of vertices/.style 2 args={ insert path={ @@ -415,4 +443,4 @@ become increasingly more complex. \end{scope} \end{tikzpicture} \end{codeexample} -\fi
\ No newline at end of file +\fi diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-petri.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-petri.tex index ccf03560917..1146624d652 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-petri.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-petri.tex @@ -26,7 +26,7 @@ The package defines a style for drawing places of Petri nets. its capacity. You should use the |tokens| options, explained in Section~\ref{section-tokens}, to add tokens inside the place. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri,positioning}}] \begin{tikzpicture} \node[place,label=above:$p_1$,tokens=2] (p1) {}; \node[place,label=below:$p_2\ge1$,right=of p1] (p2) {}; @@ -37,7 +37,7 @@ The package defines a style for drawing places of Petri nets. This style is evoked by the style |place|. To change the appearance of places, you can change this style. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri,positioning}}] \begin{tikzpicture} [every place/.style={draw=blue,fill=blue!20,thick,minimum size=9mm}] \node[place,tokens=7,label=above:$p_1$] (p1) {}; @@ -61,7 +61,7 @@ Transitions are also nodes. They should be drawn using the following style: To connect a transition to places, you can use the |edge| command as in the following example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri,positioning}}] \begin{tikzpicture} \node[place,tokens=2,label=above:$p_1$] (p1) {}; \node[place,label=above:$p_2\ge1$,right=of p1] (p2) {}; @@ -112,7 +112,7 @@ style for typesetting them. be typeset in a tiny font and in white on black (naturally, you can easily change this by setting the style |every token|). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri,positioning}}] \begin{tikzpicture} \node[place,label=above:$p_1$] (p1) {}; \node[token] at (p1) {}; @@ -131,8 +131,8 @@ In the above example, it is bothersome that we need an extra command for the token node. Worse, when we have \emph{two} tokens on a node, it is difficult to place both nodes inside the node without overlap. -The Petri net library offers a solution to this problem: The -|children are tokens| style. +The Petri library offers a solution to this problem: The |children are tokens| +style. \begin{stylekey}{/tikz/children are tokens} The idea behind this style is to use trees mechanism for placing tokens. @@ -143,7 +143,7 @@ The Petri net library offers a solution to this problem: The the children next to each other inside (or, rather, on top) of the place node. Additionally, the edge from the parent node is not drawn. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri}}] \begin{tikzpicture} \node[place,label=above:$p_1$] {} [children are tokens] @@ -166,7 +166,7 @@ The Petri net library offers a solution to this problem: The place more than nice tokens on a place, you will have to write your own placement code. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri}}] \begin{tikzpicture} \node[place,label=above:$p_2$] {} [children are tokens] @@ -181,7 +181,7 @@ The Petri net library offers a solution to this problem: The This specifies the distance between the centers of the tokens in the arrangements of the option |children are tokens|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri}}] \begin{tikzpicture} \node[place,label=above:$p_3$] {} [children are tokens,token distance=1.1ex] @@ -206,7 +206,7 @@ tokens. having the style |token|. Thus, the following two pieces of codes have the same effect: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri}}] \tikz \node[place] {} [children are tokens] @@ -221,7 +221,7 @@ tokens. option does not handle ten or more tokens correctly. If you need this many tokens, you will have to program your own code. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri}}] \begin{tikzpicture}[every place/.style={minimum size=9mm}] \foreach \x/\y/\tokennumber in {0/2/1,1/2/2,2/2/3, @@ -238,7 +238,7 @@ tokens. gets a list of colors as parameter. It will then add as many tokens to the place as there are colors in this list, each filled correspondingly. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri}}] \tikz \node[place,colored tokens={black,black,red,blue}] {}; \end{codeexample} % @@ -248,11 +248,11 @@ tokens. This option, which must again be passed to a place, gets a list of texts for tokens. For each text, a new token will be added to the place. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri}}] \tikz \node[place,structured tokens={$x$,$y$,$z$}] {}; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri}}] \begin{tikzpicture}[every place/.style={minimum size=9mm}] \foreach \x/\y/\tokennumber in {0/2/1,1/2/2,2/2/3, @@ -269,7 +269,7 @@ tokens. \subsection{Examples} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{petri}}] \begin{tikzpicture}[yscale=-1.6,xscale=1.5,thick, every transition/.style={draw=red,fill=red!20,minimum size=3mm}, every place/.style={draw=blue,fill=blue!20,minimum size=6mm}] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-profiler.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-profiler.tex index 2e5d0b0186c..ca24ecacb01 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-profiler.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-profiler.tex @@ -151,7 +151,7 @@ defined profiler entries will be processed. \end{codeexample} % Thus, \meta{argument pattern} is a copy-paste from the definition of your - command. The \meta{invocation pattern} is used by the profiler library to + command. The \meta{invocation pattern} is used by the |profiler| library to invoke the \emph{original} command, so it is closely related to \meta{argument pattern}, but it needs extra curly braces around each argument. @@ -223,7 +223,7 @@ defined profiler entries will be processed. |\jobname.profiler.|\meta{YYYY}|-|\meta{MM}|-|\meta{DD}|_|\meta{HH}|h_|\meta{MM}|m.dat| with the same information. - Note that the profiler library predefines two profiler entries, namely + Note that the |profiler| library predefines two profiler entries, namely |main job| which counts time from the beginning of the document until |\pgfprofilepostprocess| and |preamble| which counts time from the beginning of the document until |\begin{document}|. diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-rdf.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-rdf.tex index d972c80c5ae..c5d276aa027 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-rdf.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-rdf.tex @@ -566,7 +566,7 @@ Here are some possible definitions of these keys that do not (yet) generate The library could be used as follows: % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{graphs,rdf}}] \tikz [dfa] \graph [math nodes, grow right = 1.5cm] { q_0 [state, initial] -> [transition = a] @@ -895,7 +895,7 @@ Putting it all together, we now get the following library code: \emph{Using} this code is still ``as easy as before'', indeed, the code for creating the automaton is perfectly unchanged: % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{graphs,rdf}}] \tikzset { rdf engine on } \tikz [dfa] \graph [math nodes, grow right = 1.5cm] { diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadings.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadings.tex index 5666c1a07d4..3f73bd926a2 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadings.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadings.tex @@ -42,7 +42,7 @@ this library is not used. \item The rotation angle of the shading is set to 0. \end{enumerate} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{shadings}}] \tikz \draw[top color=red] (0,0) rectangle (2,1); \end{codeexample} \end{key} @@ -60,7 +60,7 @@ this library is not used. middle color, this option should be given \emph{last} if all of these options need to be given: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{shadings}}] \tikz \draw[top color=white,bottom color=black,middle color=red] (0,0) rectangle (2,1); \end{codeexample} @@ -89,7 +89,7 @@ this library is not used. black. Because of this, it also makes sense to say |ball color=white| or |ball color=black| % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{shadings}}] \begin{tikzpicture} \shade[ball color=white] (0,0) circle (2ex); \shade[ball color=red] (1,0) circle (2ex); @@ -107,7 +107,7 @@ this library is not used. also defines four options, called the same way, that can be used to set these colors and select the shading implicitly. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{shadings}}] \tikz \shade[upper left=red,upper right=green, lower left=blue,lower right=yellow] @@ -137,13 +137,13 @@ this library is not used. \label{shading-color-wheel}% This shading fills the path with a color wheel. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{shadings}}] \tikz \shade[shading=color wheel] (0,0) circle (1.5); \end{codeexample} % To produce a color ring, cut out a circle from the color wheel: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{shadings}}] \tikz \shade[shading=color wheel] [even odd rule] (0,0) circle (1.5) (0,0) circle (1); @@ -155,7 +155,7 @@ this library is not used. This shading looks like a color wheel, but the brightness drops to zero in the center. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{shadings}}] \tikz \shade[shading=color wheel black center] (0,0) circle (1.5); \end{codeexample} % @@ -165,7 +165,7 @@ this library is not used. This shading looks like a color wheel, but the saturation drops to zero in the center. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{shadings}}] \tikz \shade[shading=color wheel white center] (0,0) circle (1.5); \end{codeexample} % @@ -179,7 +179,7 @@ this library is not used. arbitrarily (give it a try, if you have a fast computer). % \pgfutil@ifluatex -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{shadings}}] \tikz \shade[shading=Mandelbrot set] (0,0) rectangle (2,2); \end{codeexample} \else @@ -205,7 +205,7 @@ this library is not used. When this option is used, the |shade| and |shading=radial| options are set. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{shadings}}] \tikz \draw[inner color=red] (0,0) rectangle (2,1); \end{codeexample} \end{key} @@ -214,7 +214,7 @@ this library is not used. This option sets the color used at the border and outside of a |radial| shading. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{shadings}}] \tikz \draw[outer color=red,inner color=white] (0,0) rectangle (2,1); \end{codeexample} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadows.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadows.tex index 93b6feaced7..9892064652e 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadows.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shadows.tex @@ -11,10 +11,10 @@ \section{Shadows Library} \label{section-libs-shadows} -\begin{pgflibrary}{shadows} +\begin{tikzlibrary}{shadows} This library defines styles that help adding a (partly) transparent shadow to a path or node. -\end{pgflibrary} +\end{tikzlibrary} \subsection{Overview} @@ -63,7 +63,7 @@ You will not need to use this option directly under normal circumstances. shadows are not taken into account when the picture's bounding box is computed. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows}}] \tikz [even odd rule] \draw [general shadow={fill=red}] (0,0) circle (.5) (0.5,0) circle (.5); \end{codeexample} @@ -71,7 +71,7 @@ You will not need to use this option directly under normal circumstances. \begin{key}{/tikz/shadow scale=\meta{factor} (initially 1)} Shadows are scaled by \meta{factor}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows}}] \tikz [even odd rule] \draw [general shadow={fill=red,shadow scale=1.25}] (0,0) circle (.5) (0.5,0) circle (.5); @@ -81,7 +81,7 @@ You will not need to use this option directly under normal circumstances. \begin{key}{/tikz/shadow xshift=\meta{dimension} (initially 0pt)} Shadows are shifted horizontally by \meta{dimension}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows}}] \tikz [even odd rule] \draw [general shadow={fill=red,shadow xshift=-5pt}] (0,0) circle (.5) (0.5,0) circle (.5); @@ -108,19 +108,19 @@ You will not need to use this option directly under normal circumstances. opacity=.5, fill=black!50, every shadow \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows}}] \tikz [even odd rule] \filldraw [drop shadow,fill=white] (0,0) circle (.5) (0.5,0) circle (.5); \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows,shapes.symbols}}] \begin{tikzpicture} \foreach \i in {1,...,4} \node[starburst,drop shadow,fill=white,draw] at (0,\i) {Burst \i}; \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); \filldraw [drop shadow={opacity=1},fill=white] @@ -137,7 +137,7 @@ You will not need to use this option directly under normal circumstances. This style is executed in addition to any \meta{shadow options} for each shadow. Use this style to reconfigure the way shadows are drawn. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows}}] \begin{tikzpicture}[every shadow/.style={opacity=.8,fill=blue!50!black}] \filldraw [drop shadow,fill=white] (0,0) circle (.5) (0.5,0) circle (.5); \end{tikzpicture} @@ -163,7 +163,7 @@ visual impression of having multiple copies of the path/object present. color} are also set, where the \meta{fill color} and \meta{draw color} are the fill and draw colors used for the main path. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows,shapes.symbols}}] \begin{tikzpicture} \node [copy shadow,fill=blue!20,draw=blue,thick] {Hello World!}; @@ -189,7 +189,7 @@ visual impression of having multiple copies of the path/object present. This shadow works like a |copy shadow|, only the shadow is added twice, the second time with the double |xshift| and |yshift|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows,shapes.symbols}}] \begin{tikzpicture} \node [double copy shadow,fill=blue!20,draw=blue,thick] {Hello World!}; @@ -226,7 +226,7 @@ special shape. They will look strange with other shapes. every shadow, \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows}}] \begin{tikzpicture} \foreach \i in {1,...,8} \node[circle,circular drop shadow,draw=blue,fill=blue!20,thick] @@ -247,7 +247,7 @@ special shape. They will look strange with other shapes. every shadow, \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows}}] \begin{tikzpicture} \foreach \i in {1,...,8} \node[circle,circular glow,fill=red!20,draw=red,thick] @@ -255,7 +255,7 @@ special shape. They will look strange with other shapes. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows}}] \begin{tikzpicture} \foreach \i in {1,...,8} \node[circle,circular glow={fill=white},fill=red!20,draw=red,thick] @@ -263,7 +263,7 @@ special shape. They will look strange with other shapes. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows}}] \begin{tikzpicture} \foreach \i in {1,...,8} \node[circle,circular glow={fill=green},fill=black,text=green!50!black] @@ -274,7 +274,7 @@ special shape. They will look strange with other shapes. An especially interesting effect can be achieved by only using the glow and not filling the path: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shadows}}] \begin{tikzpicture} \foreach \i in {1,...,8} \node[circle,circular glow={fill=red!\i0}] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shapes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shapes.tex index be536402d33..22e02202c4a 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shapes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-shapes.tex @@ -27,7 +27,7 @@ Section~\ref{section-shape-common-options} In all of the examples presented in this section, the following |shape example| style is used: % -\begin{codeexample}[code only] +\begin{codeexample}[code only,setup code] \tikzset{ shape example/.style= {color = black!30, draw, @@ -52,7 +52,7 @@ anchors. figure shows the anchors this shape defines; the anchors |10| and |130| are example of border anchors. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s,shape=circle,shape example] {Circle\vrule width 1pt height 2cm}; @@ -77,7 +77,7 @@ anchors. anchors this shape defines; the anchors |10| and |130| are example of border anchors. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s,shape=rectangle,shape example] {Rectangle\vrule width 1pt height 2cm}; @@ -117,7 +117,7 @@ anchors. The following figure shows the anchors this shape defines; the anchors |10| and |130| are example of border anchors. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s,shape=diamond,shape example] {Diamond\vrule width 1pt height 2cm}; @@ -140,7 +140,7 @@ anchors. separation is given. The following figure shows the anchors this shape defines; the anchors |10| and |130| are example of border anchors. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s,shape=ellipse,shape example] {Ellipse\vrule width 1pt height 2cm}; @@ -169,7 +169,7 @@ anchors. the natural dimensions of the node contents (which includes any |inner sep|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[every node/.style={trapezium, draw}] \node at (0,2) {A}; \node[trapezium left angle=75, trapezium right angle=45] @@ -199,7 +199,7 @@ anchors. Regardless of the rotation of the shape border, the width and height of the trapezium are as follows: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[>=stealth, every node/.style={text=black}, shape border uses incircle, shape border rotate=60] \node [trapezium, fill=gray!25, minimum width=2cm] (t) {}; @@ -216,7 +216,7 @@ anchors. minimum size specification. This is initially |false|, ensuring that the shape ``looks the same but bigger'' when enlarged. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \tikzset{my node/.style={trapezium, fill=#1!20, draw=#1!75, text=black}} \begin{tikzpicture} \draw [help lines] grid (3,2); @@ -229,7 +229,7 @@ anchors. By setting \meta{boolean} to |true|, the trapezium can be stretched horizontally or vertically. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \tikzset{my node/.style={trapezium, fill=#1!20, draw=#1!75, text=black}} \begin{tikzpicture} \tikzset{trapezium stretches=true} @@ -246,7 +246,7 @@ anchors. \meta{boolean} is |true|, \pgfname{} enlarges only the body of the trapezium when applying minimum width. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \tikzset{my node/.style={trapezium, fill=#1!20, draw=#1!75, text=black}} \begin{tikzpicture} \draw [help lines] grid (3,2); @@ -262,7 +262,7 @@ anchors. The anchors for the trapezium are shown below. The anchor |160| is an example of a border anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s, shape=trapezium, shape example, inner sep=1cm] @@ -291,7 +291,7 @@ anchors. |semicircle| shape are shown below. Anchor |30| is an example of a border anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s,shape=semicircle,shape border rotate=0,shape example, inner sep=1cm] @@ -318,7 +318,7 @@ anchors. whose radius is calculated to tightly fit the node contents (including any |inner sep|). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture} \foreach \a in {3,...,7}{ \draw[red, dashed] (\a*2,0) circle(0.5cm); @@ -332,7 +332,7 @@ anchors. as the diameter of the circumcircle, that is, the circle that passes through all the corners of the polygon border. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture} \foreach \a in {3,...,7}{ \draw[blue, dashed] (\a*2,0) circle(0.5cm); @@ -351,7 +351,7 @@ anchors. The anchors for a regular polygon shape are shown below. The anchor |75| is an example of a border anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s, shape=regular polygon, shape example, inner sep=.5cm] @@ -382,7 +382,7 @@ anchors. specified minimum size, width or height, is interpreted as the diameter of the circumcircle. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (2,2); \draw [blue, dashed] (1,1) circle(1cm); @@ -413,10 +413,10 @@ anchors. increased to maintain the ratio. \end{key} - The inner and outer points form the principle anchors for the star, as + The inner and outer points form the principal anchors for the star, as shown below (anchor |75| is an example of a border anchor). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s, shape=star, star points=5, star point ratio=1.65, shape example, inner sep=1.5cm] @@ -443,7 +443,7 @@ anchors. regardless of the rotation of the shape border, the width and height are always considered as follows: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[>=stealth, every node/.style={text=black}, shape border uses incircle, shape border rotate=-30] \node [isosceles triangle, fill=gray!25, minimum width=1.5cm] (t) {}; @@ -467,7 +467,7 @@ anchors. will increase the width (and vice versa), in order to keep the apex angle the same. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[paint/.style={draw=#1!75, fill=#1!20}] \tikzset{every node/.style={isosceles triangle, draw, inner sep=0pt, anchor=left corner, shape border rotate=90}} @@ -482,7 +482,7 @@ anchors. However, by setting \meta{boolean} to |true|, minimum width and height can be applied independently. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[paint/.style={draw=#1!75, fill=#1!20}] \tikzset{every node/.style={isosceles triangle, draw, inner sep=0pt, anchor=south, shape border rotate=90, isosceles triangle stretches}} @@ -501,7 +501,7 @@ anchors. is rotated to 90 degrees. Note also that the |center| anchor does not necessarily correspond to any kind of geometric center. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s, shape=isosceles triangle, shape example, inner xsep=1cm] @@ -545,7 +545,7 @@ anchors. angles will be the same. \end{key} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[every node/.style={kite, draw}] \node[kite upper vertex angle=135, kite lower vertex angle=70] at (0,0) {A}; \node[kite vertex angles=90 and 45] at (1,0) {B}; @@ -556,7 +556,7 @@ anchors. The anchors for the |kite| are shown below. Anchor |110| is an example of a border anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s, shape=kite, shape example, inner sep=1.5cm] @@ -588,7 +588,7 @@ anchors. the angle between the `tails' of the dart. To use these keys in \tikzname, simply remove the \declare{|/pgf/|} path. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture} \node[dart, draw, gray, shape border uses incircle, shape border rotate=45] (d) {dart}; @@ -611,7 +611,7 @@ anchors. rotated 90 degrees anti-clockwise). Anchor |110| is an example of a border anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s, shape=dart, shape border rotate=90, shape example, inner sep=1.25cm] @@ -638,7 +638,7 @@ anchors. rotation determines the direction in which the `apex' of the sector points (unless other transformations have been applied). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[ every node/.style={circular sector, shape border uses incircle, draw}, ] @@ -658,7 +658,7 @@ anchors. The anchors for the circular sector shape are shown below. Anchor |30| is an example of a border anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s,shape=circular sector, style=shape example, inner sep=1cm] @@ -681,7 +681,7 @@ anchors. the rotation of the shape border as described in Section~\ref{section-rotating-shape-borders}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture} \node[cylinder, draw, shape aspect=.5] {ABC}; \end{tikzpicture} @@ -691,7 +691,7 @@ anchors. distance between the curved ends, and the width is always the distance between the straight sides. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[>=stealth] \node [cylinder, gray!50, rotate=30, draw, minimum height=2cm, minimum width=1cm] (c) {Cylinder}; @@ -706,7 +706,7 @@ anchors. the cylinder. By contrast, enlarging the shape to some minimum width will stretch the curved ends. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[shape aspect=.5] \tikzset{every node/.style={cylinder, shape border rotate=90, draw}} \node [minimum height=1.5cm] {A}; @@ -722,7 +722,7 @@ anchors. cylinder end. This may be ignored if the shape is enlarged to some minimum width. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[] \tikzset{every node/.style={cylinder, shape border rotate=90, draw}} \node [aspect=1.0] {A}; @@ -740,7 +740,7 @@ anchors. |\ifpgfcylinderusescustomfill| appropriately. \end{key} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[aspect=0.5] \node [cylinder, cylinder uses custom fill, cylinder end fill=red!50, cylinder body fill=red!25] {Cylinder}; @@ -763,7 +763,7 @@ anchors. also the center of rotation. The |shape center| is the center of the shape which includes the 2-dimensional representation of the cylinder top. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \Huge \begin{tikzpicture} \node[name=s, shape=cylinder, shape example, aspect=.5, inner xsep=3cm, @@ -798,7 +798,7 @@ anchors. diagonal line part of the foreground path; thus, the diagonal line is on top of the text. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture} \node [correct forbidden sign,line width=1ex,draw=red,fill=white] {Smoking}; \end{tikzpicture} @@ -812,7 +812,7 @@ anchors. lower left to the upper right. The strange naming of these shapes is for historical reasons. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture} \node [forbidden sign,line width=1ex,draw=red,fill=white] {Smoking}; \end{tikzpicture} @@ -834,7 +834,7 @@ anchors. The length of the handle as a multiple of the circle radius. \end{key} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture} \node [magnifying glass,line width=1ex,draw] {huge}; \end{tikzpicture} @@ -848,7 +848,7 @@ anchors. speaking, using an ellipse which tightly fits the node contents -- including any |inner sep|). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture} \node[cloud, draw, fill=gray!20, aspect=2] {ABC}; \node[cloud, draw, fill=gray!20] at (1.5,0) {D}; @@ -880,7 +880,7 @@ anchors. |\ifpgfcloudignoresaspect| is set appropriately. The initial value is |false|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture}[aspect=1, every node/.style={cloud, cloud puffs=11, draw}] \node [fill=gray!20] {rain}; \node [cloud ignores aspect, fill=white] at (1.5,0) {snow}; @@ -893,7 +893,7 @@ anchors. These requirements are considered \emph{after} any aspect specification is applied. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \draw [blue, dashed] (1.5, 1) ellipse (1.5cm and 1cm); @@ -905,7 +905,7 @@ anchors. The anchors for the cloud shape are shown below for a cloud with eleven puffs. Anchor 70 is an example of a border anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \Huge \begin{tikzpicture} \node[name=s, shape=cloud, style=shape example, cloud puffs=11, aspect=1.5, @@ -930,7 +930,7 @@ anchors. rotation of the shape border as described in Section~\ref{section-rotating-shape-borders}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture} \node[starburst, fill=yellow, draw=red, line width=2pt] {\bf BANG!}; \end{tikzpicture} @@ -950,7 +950,7 @@ anchors. are randomly generated, so there is (unfortunately) no guarantee that any such requirements will be fully met. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture} \draw[help lines] grid(3,2); \node[starburst, draw, minimum width=3cm, minimum height=2cm] @@ -981,7 +981,7 @@ anchors. The basic anchors for a nine point |starburst| shape are shown below. Anchor |80| is an example of a border anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \Huge \begin{tikzpicture} \node[name=s, shape=starburst, starburst points=9, starburst point height=3.5cm, @@ -1011,7 +1011,7 @@ anchors. points from that direction. The resulting points extend the node contents (which include the |inner sep|). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture} [every node/.style={signal, draw, text=white, signal to=nowhere}] \node[fill=green!65!black, signal to=east] at (0,1) {To East}; @@ -1054,7 +1054,7 @@ anchors. The anchors for the signal shape are shown below. Anchor |70| is an example of a border anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \Huge \begin{tikzpicture} \node[name=s, shape=signal, signal from=west, shape example, inner sep=2cm] @@ -1078,7 +1078,7 @@ anchors. This shape is a rectangle with optional, ``bendy'' top and bottom sides, which tightly fits the node contents (including the |inner sep|). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture} \node[tape, draw]{ABCD}; \node[tape, draw, tape bend top=none] at (1.5, 0) {EFGH}; @@ -1096,7 +1096,7 @@ anchors. style |in and out| will mean the side will first bend inwards and then bend outwards. The opposite holds true for |out and in|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture}[-stealth] \node[tape, draw, gray, minimum width=2cm](t){Tape}; \draw [blue]([yshift=5pt] t.north west) -- ([yshift=5pt]t.north east) @@ -1112,7 +1112,7 @@ anchors. bend styles, but the author of this shape cannot think of a single use for such a combination. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture}[every node/.style={tape, draw}] \node [tape bend top=out and in, tape bend bottom=out and in] {Parallel}; \node at (2,0) [tape bend bottom=out and in] {Why?}; @@ -1127,7 +1127,7 @@ anchors. \begin{key}{/pgf/tape bend height=\meta{length} (initially 5pt)} Sets the total height for a side with a bend. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture}[>=stealth] \draw [help lines] grid(3,2); \node [tape, fill, minimum size=2cm, red!50, tape bend top=none, @@ -1142,7 +1142,7 @@ anchors. of a border anchor. Note that border anchors will snap to the center of convex curves (i.e.\ when bending in). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \Huge \begin{tikzpicture} \node[name=s, shape=tape, tape bend height=1cm, shape example, inner xsep=3cm] @@ -1166,7 +1166,7 @@ anchors. is sometimes used in flowcharts. It is essentially a circle with a little tail: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \tikz\node [magnetic tape, draw] (A) {A}; \end{codeexample} @@ -1176,7 +1176,7 @@ anchors. This key sets how far the tail extends beyond the radius of the tape. Negative values will be ignored. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture}[every node/.style={magnetic tape, draw}] \node [magnetic tape tail extend=0cm] at (0,0) {A}; \node [magnetic tape tail extend=0.25cm] at (0,1) {B}; @@ -1189,7 +1189,7 @@ anchors. the radius of the shape. The \meta{proportion} should be between |0.0| and |1.0|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture}[every node/.style={magnetic tape, draw}] \node [magnetic tape tail=0.5, magnetic tape tail extend=0.5cm] {A}; \node [magnetic tape tail=0.25] at (0,1) {B}; @@ -1200,7 +1200,7 @@ anchors. The following figure shows the anchors this shape defines; the anchors 10 and 130 are example of border anchors. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \Huge \begin{tikzpicture} \node[name=s,shape=magnetic tape,shape example,inner sep=0.75cm, @@ -1238,7 +1238,7 @@ magnetic tape tail extend=0.5cm] rotation determines in which direction the arrow points (provided no other rotational transformations are applied). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.arrows}}] \begin{tikzpicture}[every node/.style={single arrow, draw}, rotate border/.style={shape border uses incircle, shape border rotate=#1}] \node {right}; @@ -1251,7 +1251,7 @@ magnetic tape tail extend=0.5cm] between the back ends of the arrow head, and the height is measured from the arrow tip to the end of the arrow tail. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.arrows}}] \begin{tikzpicture}[>=stealth, rotate border/.style={shape border uses incircle, shape border rotate=#1}] \node[rotate border=-30, fill=gray!25, minimum height=3cm, single arrow, @@ -1276,7 +1276,7 @@ magnetic tape tail extend=0.5cm] of the arrow head. This may change if the shape is enlarged to some minimum width. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.arrows}}] \begin{tikzpicture} \node[single arrow, draw, single arrow head extend=.5cm, gray!50, rotate=60] (a) {Arrow}; @@ -1290,7 +1290,7 @@ magnetic tape tail extend=0.5cm] This moves the point where the arrow head joins the shaft of the arrow \emph{towards} the arrow tip, by \meta{length}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.arrows}}] \begin{tikzpicture}[every node/.style={single arrow, draw=none, rotate=60}] \node [fill=red!50] {arrow 1}; \node [fill=blue!50, single arrow head indent=1ex] at (1.5,0) {arrow 2}; @@ -1301,7 +1301,7 @@ magnetic tape tail extend=0.5cm] The anchors for this shape are shown below (anchor |20| is an example of a border anchor). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.arrows}}] \Huge \begin{tikzpicture} \node[name=s,shape=single arrow, shape example, single arrow head extend=1.5cm] @@ -1326,7 +1326,7 @@ magnetic tape tail extend=0.5cm] (including any |inner sep|), and supports the rotation of the shape border, as described in Section~\ref{section-rotating-shape-borders}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.arrows}}] \begin{tikzpicture}[every node/.style={double arrow, draw}] \node [double arrow, draw] {Left or Right}; \end{tikzpicture} @@ -1337,7 +1337,7 @@ magnetic tape tail extend=0.5cm] of the arrow heads, and the height is \emph{always} the tip-to-tip distance. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.arrows}}] \begin{tikzpicture}[>=stealth, rotate border/.style={shape border uses incircle, shape border rotate=#1}] \node[rotate border=210, fill=gray!25, minimum height=3cm, double arrow, @@ -1368,7 +1368,7 @@ magnetic tape tail extend=0.5cm] This moves the point where the arrow heads join the shaft of the arrow \emph{towards} the arrow tips, by \meta{length}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.arrows}}] \begin{tikzpicture}[every node/.style={double arrow, draw=none, rotate=-60}] \node [fill=red!50] {arrow 1}; \node [fill=blue!50, double arrow head indent=1ex] at (1.5,0) {arrow 2}; @@ -1379,7 +1379,7 @@ magnetic tape tail extend=0.5cm] The anchors for this shape are shown below (anchor |20| is an example of a border anchor). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.arrows}}] \Huge \begin{tikzpicture} \node[name=s,shape=double arrow, double arrow head extend=1.5cm, shape example, inner xsep=2cm] @@ -1403,7 +1403,7 @@ magnetic tape tail extend=0.5cm] This shape is a rectangle with optional arrows which extend from the four sides. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.arrows}}] \begin{tikzpicture} \node[arrow box, draw] {A}; \node[arrow box, draw, arrow box arrows={north:.5cm, west:0.75cm}] @@ -1417,7 +1417,7 @@ magnetic tape tail extend=0.5cm] length of each arrow independently, from either the border of the rectangle (the default) or the center of the rectangle. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.arrows}}] \begin{tikzpicture} \tikzset{box/.style={arrow box, fill=#1}} \draw [help lines] grid(3,2); @@ -1485,7 +1485,7 @@ a side is drawn without an arrow, the anchors for that arrow should be considered unavailable. They are (unavoidably) defined, but default to the center of the appropriate side. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.arrows}}] \Huge \begin{tikzpicture} \node[shape=arrow box, shape example, inner xsep=1cm, inner ysep=1.5cm, arrow box shaft width=2cm, @@ -1526,7 +1526,7 @@ center of the appropriate side. middle. The upper part is the main part (the |text| part), the lower part is the |lower| part. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \begin{tikzpicture} \node [circle split,draw,double,fill=red!20] { @@ -1540,7 +1540,7 @@ center of the appropriate side. The shape inherits all anchors from the |circle| shape and defines the |lower| anchor in addition. See also the following figure: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \Huge \begin{tikzpicture} \node[name=s,shape=circle split,shape example] {text\nodepart{lower}lower}; @@ -1562,7 +1562,7 @@ center of the appropriate side. This shape (due to Manuel Lacruz) is similar to the split circle, but the two text parts are arranged diagonally. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \begin{tikzpicture} \node [circle solidus,draw,double,fill=red!20] { @@ -1573,7 +1573,7 @@ center of the appropriate side. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \Huge \begin{tikzpicture} \node[name=s,shape=circle solidus,shape example,inner xsep=1cm] {text\nodepart{lower}lower}; @@ -1597,7 +1597,7 @@ center of the appropriate side. part is the |lower| part. The anchors for this shape are shown below. Anchor |60| is a border anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \Huge \begin{tikzpicture} \node[name=s,shape=ellipse split,shape example] {text\nodepart{lower}lower}; @@ -1618,7 +1618,7 @@ center of the appropriate side. This shape is a rectangle which can be split either horizontally or vertically into several parts. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \begin{tikzpicture}[my shape/.style={ rectangle split, rectangle split parts=#1, draw, anchor=center}] \node [my shape=5] at (0,1) @@ -1668,7 +1668,7 @@ center of the appropriate side. range |1| to |20|. If more than four parts are needed, the boxes should be allocated in advance as described above. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \begin{tikzpicture}[every text node part/.style={align=center}] \node[rectangle split, rectangle split parts=3, draw, text width=2.75cm] {Student @@ -1693,7 +1693,7 @@ center of the appropriate side. |rectangle split parts| key in that, if 3 parts (for example) are specified, but one is empty, only two will be shown. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \begin{tikzpicture}[every node/.style={draw, anchor=text, rectangle split, rectangle split parts=3}] \node {text \nodepart{second} \nodepart{third}third}; @@ -1730,7 +1730,7 @@ center of the appropriate side. part and \emph{does not} affect the alignment of the contents of the boxes. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \def\x{one \nodepart{two} 2 \nodepart{three} three \nodepart{four} 4} \begin{tikzpicture}[ every node/.style={rectangle split, rectangle split parts=4, @@ -1749,7 +1749,7 @@ center of the appropriate side. in relation to each other, whereas the other values align the boxes in relation to the part of the shape they occupy. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \def\x{\Large w\nodepart{two}x\nodepart{three}\Huge y\nodepart{four}\tiny z} \begin{tikzpicture}[ every node/.style={rectangle split, rectangle split parts=4, @@ -1786,7 +1786,7 @@ center of the appropriate side. color from the last entry in the list. This key will automatically set |/pgf/rectangle split use custom fill|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \begin{tikzpicture} \tikzset{every node/.style={rectangle split, draw, minimum width=.5cm}} \node[rectangle split part fill={red!50, green!50, blue!50, yellow!50}] {}; @@ -1803,7 +1803,7 @@ center of the appropriate side. considered unavailable. They are (unavoidably) defined, but default to other anchor positions. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \Huge \begin{tikzpicture} \node[name=s,shape=rectangle split, rectangle split parts=4, shape example, @@ -1844,7 +1844,7 @@ border of the main shape to which the pointer is connected is determined automatically. However, the pointer is ignored when calculating the minimum size of the shape, and also when positioning anchors. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.callouts}}] \begin{tikzpicture}[remember picture] \node[ellipse callout, draw] (hallo) {Hallo!}; \end{tikzpicture} @@ -1860,7 +1860,7 @@ pointer, on the other hand, is much simpler: it points to the specified coordinate absolutely (and can even point to named coordinates in different pictures). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.callouts}}] \begin{tikzpicture}[remember picture, note/.style={rectangle callout, fill=#1}] \draw [help lines] grid(3,2); \node [note=red!50, callout relative pointer={(0,1)}] at (3,1) {Relative}; @@ -1902,7 +1902,7 @@ following key: Moves the callout pointer towards the center of the callout's main shape by \meta{distance}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.callouts}}] \begin{tikzpicture} \tikzset{callout/.style={ellipse callout, callout pointer arc=30, callout absolute pointer={#1}}} @@ -1930,7 +1930,7 @@ following key: not to be used to used to position the shape as it is calculated whilst the shape is being drawn. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.callouts}}] \Huge \begin{tikzpicture} \node[name=s,shape=rectangle callout, callout relative pointer={(1.25cm,-1cm)}, @@ -1967,7 +1967,7 @@ following key: the |pointer| anchor can only be used to position the shape when the relative anchor is specified. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.callouts}}] \Huge \begin{tikzpicture} \node[name=s,shape=ellipse callout, callout relative pointer={(1.25cm,-1cm)}, @@ -1991,10 +1991,10 @@ following key: \begin{shape}{cloud callout} This shape is a callout whose main shape is a cloud which fits the node contents. The pointer is segmented, consisting of a series of shrinking - ellipses. This callout requires the symbol shape library (for the cloud + ellipses. This callout requires the |shapes.callouts| library (for the cloud shape). If this library is not loaded an error will result. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.callouts}}] \begin{tikzpicture} \node[cloud callout, cloud puffs=15, aspect=2.5, cloud puff arc=120, shading=ball,text=white] {\bf Imagine...}; @@ -2038,7 +2038,7 @@ following key: anchor is specified. Note that the center of the last segment is drawn at the |pointer| anchor. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.callouts}}] \Huge \begin{tikzpicture} \node[name=s, shape=cloud callout, style=shape example, cloud puffs=11, aspect=1.5, @@ -2073,7 +2073,7 @@ following key: diagonal lines between the corners of the node's bounding box. Here is an example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); \node [cross out,draw=red] at (1.5,1) {cross out}; @@ -2082,14 +2082,14 @@ following key: A useful application is inside text as in the following example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] Cross \tikz[baseline] \node [cross out,draw,anchor=text] {me}; out! \end{codeexample} This shape inherits all anchors from the |rectangle| shape, see also the following figure: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \Huge \begin{tikzpicture} \node[name=s,shape=cross out,shape example] {cross out\vrule width 1pt height 2cm}; @@ -2111,7 +2111,7 @@ Cross \tikz[baseline] \node [cross out,draw,anchor=text] {me}; out! This shape is identical to the |cross out| shape, only its foreground path consists of a single line from the lower left to the upper right. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] Strike \tikz[baseline] \node [strike out,draw,anchor=text] {me}; out! \end{codeexample} @@ -2121,7 +2121,7 @@ Strike \tikz[baseline] \node [strike out,draw,anchor=text] {me}; out! \begin{shape}{rounded rectangle} This shape is a rectangle which can have optionally rounded sides. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \begin{tikzpicture} \node[rounded rectangle, draw, fill=red!20]{Hallo}; \end{tikzpicture} @@ -2134,7 +2134,7 @@ Strike \tikz[baseline] \node [strike out,draw,anchor=text] {me}; out! Sets the length of the arcs for the rounded ends. Recommended values for \meta{angle} are between |90| and |180|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \begin{tikzpicture} \matrix[row sep=5pt, every node/.style={draw, rounded rectangle}]{ \node[rounded rectangle arc length=180] {180}; \\ @@ -2148,7 +2148,7 @@ Strike \tikz[baseline] \node [strike out,draw,anchor=text] {me}; out! Sets the style of the rounding for the left side. The permitted values for \meta{arc type} are |concave|, |convex|, or |none|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \begin{tikzpicture} \matrix[row sep=5pt, every node/.style={draw, rounded rectangle}]{ \node[rounded rectangle west arc=concave] {Concave}; \\ @@ -2174,7 +2174,7 @@ Strike \tikz[baseline] \node [strike out,draw,anchor=text] {me}; out! border angle). Note that if only one side is rounded, the |center| anchor will not be the precise center of the shape. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \Huge \begin{tikzpicture} \node[name=s,shape=rounded rectangle, shape example, inner xsep=1.5cm, inner ysep=1cm] @@ -2196,7 +2196,7 @@ Strike \tikz[baseline] \node [strike out,draw,anchor=text] {me}; out! \begin{shape}{chamfered rectangle} This shape is a rectangle with optionally chamfered corners. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \begin{tikzpicture} \node[chamfered rectangle, white, fill=red, double=red, draw, very thick] {\bf STOP!}; @@ -2209,7 +2209,7 @@ Strike \tikz[baseline] \node [strike out,draw,anchor=text] {me}; out! \begin{key}{/pgf/chamfered rectangle angle=\meta{angle} (initially 45)} Sets the angle \emph{from the vertical} for the chamfer. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \begin{tikzpicture} \tikzset{every node/.style={chamfered rectangle, draw}} \node[chamfered rectangle angle=30] {abc}; @@ -2225,7 +2225,7 @@ Strike \tikz[baseline] \node [strike out,draw,anchor=text] {me}; out! \meta{length} is ignored and the chamfered edges are drawn so that they meet in the middle. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \begin{tikzpicture} \tikzset{every node/.style={chamfered rectangle, draw}} \node[chamfered rectangle xsep=2pt] {def}; @@ -2254,7 +2254,7 @@ Strike \tikz[baseline] \node [strike out,draw,anchor=text] {me}; out! chamfered. Two additional values |chamfer all| and |chamfer none|, are also permitted. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \begin{tikzpicture} \tikzset{every node/.style={chamfered rectangle, draw}} \node[chamfered rectangle corners=north west] {ghi}; @@ -2266,7 +2266,7 @@ Strike \tikz[baseline] \node [strike out,draw,anchor=text] {me}; out! The anchors for this shape are shown below (anchor |60| is an example of a border angle. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \Huge \begin{tikzpicture} \node[name=s,shape=chamfered rectangle, chamfered rectangle sep=1cm, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-spy.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-spy.tex index b20b312e0e8..9bc7a69a992 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-spy.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-spy.tex @@ -24,7 +24,7 @@ The idea behind the |spy| library is to make is easy to create high-density pictures in which some important parts are repeated somewhere, but magnified as if you were looking through a spyglass: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals,spy}}] \begin{tikzpicture} [spy using outlines={circle, magnification=4, size=2cm, connect spies}] @@ -41,7 +41,7 @@ if you were looking through a spyglass: \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals,spy}}] \begin{tikzpicture}[spy using overlays={size=12mm}] \draw [decoration=Koch snowflake] decorate { decorate{ decorate{ decorate{ (0,0) -- (2,0) }}}}; @@ -146,7 +146,7 @@ automatically. scope, whereas |\spy| commands outside the inner |spy scope| but inside the outer |spy scope| allow you to ``spy on the spy''. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals,spy}}] \begin{tikzpicture} [spy using outlines={rectangle, red, magnification=5, size=1.5cm, connect spies}] @@ -240,7 +240,7 @@ automatically. to-be-magnified area. You can change this by providing the |at| option yourself: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals,spy}}] \begin{tikzpicture} [spy using outlines={circle, magnification=3, size=1cm}] @@ -283,7 +283,7 @@ automatically. node is (also) always named |tikzspyinnode|. Following the spy scope, you can use this node like any other node: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals,spy}}] \begin{tikzpicture} \begin{scope} [spy using outlines={circle, magnification=3, size=2cm, connect spies}] @@ -324,7 +324,7 @@ automatically. resulting in a node whose size and shape exactly corresponds to the area in the picture that is shown in the spy-on node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals,spy}}] \begin{tikzpicture} [spy using outlines={lens={scale=3,rotate=20}, size=2cm, connect spies}] @@ -364,7 +364,7 @@ way. filled, using a thick line; and the spy-on node is drawn, but not filled, using a very thin line. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals,spy}}] \begin{tikzpicture} [spy using outlines={circle, magnification=3, size=1cm, connect spies}] @@ -381,7 +381,7 @@ way. This key creates a |spy scope| in which both the spy-in and spy-on nodes are filled, but with the fill opacity set to 20\%. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals,spy}}] \begin{tikzpicture} [spy using overlays={circle, magnification=3, size=1cm, connect spies}] @@ -399,7 +399,7 @@ The following style is useful for connecting the spy-in and the spy-on nodes: \begin{key}{/tikz/connect spies} Causes the spy-in and the spy-on nodes to be connected by a thin line. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals,spy}}] \begin{tikzpicture} [spy using overlays={circle, magnification=3, size=1cm}] @@ -420,7 +420,7 @@ Usually, the spy-in node and the spy-on node should have the same shape. However, you might also wish to use the |circle| shape for the spy-on node and the |magnifying glass| shape for the spy-in node: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals,shadows,shapes.symbols,spy}}] \tikzset{spy using mag glass/.style={ spy scope={ every spy on node/.style={ @@ -442,7 +442,7 @@ the |magnifying glass| shape for the spy-in node: With the magnifying glass, you can also put it ``on top'' of the picture itself: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals,shadows,shapes.symbols,spy}}] \begin{tikzpicture} [spy scope={magnification=4, size=1cm}, every spy in node/.style={ diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-svg-path.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-svg-path.tex index 120eb1d9a7a..8625256173c 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-svg-path.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-svg-path.tex @@ -41,7 +41,7 @@ path commands. \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgflibrary{svg.path}}] \begin{pgfpicture} \pgfpathsvg{M 0 0 l 20 0 0 20 -20 0 q 10 0 10 10 t 10 10 10 10 h -50 z} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-through.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-through.tex index 1222d1ec036..1d9e278f46f 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-through.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-through.tex @@ -26,7 +26,7 @@ \meta{coordinate}. \end{enumerate} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{through}}] \begin{tikzpicture} \draw[help lines] (0,0) grid (3,2); \node (a) at (2,1.5) {$a$}; diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-trees.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-trees.tex index 92f20809216..c29dc7c5560 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-trees.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-trees.tex @@ -41,7 +41,7 @@ the following options: Here are some arrangements based on this growth function. We start with a simple ``above'' arrangement: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{trees}}] \begin{tikzpicture}[grow via three points={% one child at (0,1) and two children at (-.5,1) and (.5,1)}] \node at (0,0) {one} child; @@ -54,7 +54,7 @@ the following options: The next arrangement places children above, but ``grows only to the right''. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{trees}}] \begin{tikzpicture}[grow via three points={% one child at (0,1) and two children at (0,1) and (1,1)}] \node at (0,0) {one} child; @@ -66,7 +66,7 @@ the following options: In the final arrangement, the children are placed along a line going down and right. -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{trees}}] \begin{tikzpicture}[grow via three points={% one child at (-1,-.5) and two children at (-1,-.5) and (0,-.75)}] \node at (0,0) {one} child; @@ -94,7 +94,7 @@ the following options: Note that this function will rotate the coordinate system of the children to ensure that the grandchildren will grow in the right direction. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{trees}}] \begin{tikzpicture} [grow cyclic, level 1/.style={level distance=8mm,sibling angle=60}, @@ -120,7 +120,7 @@ the following options: Note that this function will not rotate the coordinate system. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{trees}}] \begin{tikzpicture} \node {root} [clockwise from=30,sibling angle=30] @@ -149,7 +149,7 @@ drawn: distance) and then on to the child using only horizontal and vertical lines. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{trees}}] \begin{tikzpicture} \node {root} [edge from parent fork down] @@ -167,7 +167,7 @@ drawn: This style behaves similarly, only it will first draw its edge to the right. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{trees}}] \begin{tikzpicture} \node {root} [edge from parent fork right,grow=right] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-turtle.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-turtle.tex index 6c1187e0c33..5a002fb3b0a 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-turtle.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-turtle.tex @@ -11,17 +11,17 @@ \section{Turtle Graphics Library} \label{section-library-tutrle} -\begin{pgflibrary}{turtle} +\begin{tikzlibrary}{turtle} This little library defines some keys to create simple turtle graphics in the tradition of the Logo programming language. These commands are mostly for fun, but they can also be used for more ``serious'' business. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{turtle}}] \tikz[turtle/distance=2mm] \draw [turtle={home,forward,right,forward,left,forward,left,forward}]; \end{codeexample} % -\end{pgflibrary} +\end{tikzlibrary} Even though the |turtle| keys looks like an option, it uses the |insert path| option internally to produce a path. @@ -40,7 +40,7 @@ the turtle is managed independently of other path commands. This key executes the \meta{keys} with the current key path set to |/tikz/turtle|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{turtle}}] \tikz[turtle/distance=2mm] \draw [turtle={home,fd,rt,fd,lt,fd,lt,fd}]; \end{codeexample} @@ -69,7 +69,7 @@ the turtle is managed independently of other path commands. This style can set up the |to path| used by turtles. By setting this style you can change the to-path: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{turtle}}] \tikz \draw [turtle={how/.style={bend left},home,forward,right,forward}]; \end{codeexample} \end{stylekey} @@ -107,7 +107,7 @@ the turtle is managed independently of other path commands. Turtle graphics are especially nice in conjunction with the |\foreach| statement: -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{turtle}}] \tikz \filldraw [thick,blue,fill=blue!20] [turtle=home] \foreach \i in {1,...,5} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-views.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-views.tex index c7724e72c47..0a14a10163e 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-views.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-library-views.tex @@ -50,7 +50,7 @@ it easy to create animations in which you zoom in, zoom out, and pan a graphic. inside the window rectangle. \end{enumerate} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{views}}] \tikz { \draw [red, very thick] (0,0) rectangle (20mm,20mm); \begin{scope}[meet = {(0.5,0.5) (2.5,1.5) at (0,0) (2,2)}] @@ -59,7 +59,7 @@ it easy to create animations in which you zoom in, zoom out, and pan a graphic. \end{scope} } \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{views}}] \tikz { \draw [red, very thick] (0,0) rectangle (20mm,20mm); \begin{scope}[slice = {(0.5,0.5) (2.5,1.5) at (0,0) (2,2)}] @@ -73,7 +73,7 @@ it easy to create animations in which you zoom in, zoom out, and pan a graphic. the |meet| command as the target object and then animate its |:view| attribute: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{animations,views}}] \tikz [animate = { my scope:view = { begin on = { click, of next = here }, @@ -92,7 +92,7 @@ it easy to create animations in which you zoom in, zoom out, and pan a graphic. You can, of course, also specify the animation using the |animate myself:| key when you specify the animation inside the scope: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{animations,views}}] \tikz [animate = { my scope:view = { }}] { diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-body.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-body.tex index 9abbb6f3d57..de2ef33a06e 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-body.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-body.tex @@ -12,6 +12,7 @@ % The titlepage +\pgfmathsetseed{1} \newbox\mybox { \parindent0pt @@ -284,8 +285,8 @@ read the present part. \vskip1cm -\begin{codeexample}[graphic=white] -\begin{tikzpicture}[->,>=stealth',shorten >=1pt,auto,node distance=2.8cm,on grid,semithick, +\begin{codeexample}[graphic=white,preamble={\usetikzlibrary{arrows.meta,automata,positioning,shadows}}] +\begin{tikzpicture}[->,>={Stealth[round]},shorten >=1pt,auto,node distance=2.8cm,on grid,semithick, every state/.style={fill=red,draw=none,circular drop shadow,text=white}] \node[initial,state] (A) {$q_a$}; @@ -331,8 +332,7 @@ read the present part. \bigskip \noindent \vskip3cm -\begin{codeexample}[graphic=white] - +\begin{codeexample}[graphic=white,preamble={\usetikzlibrary{angles,calc,quotes}}] \begin{tikzpicture}[angle radius=.75cm] \node (A) at (-2,0) [red,left] {$A$}; @@ -395,10 +395,13 @@ graph for you. \tikzname\ comes with powerful such algorithms, but you can also implement new algorithms in the Lua programming language. \vskip1cm \ifluatex -\begin{codeexample}[graphic=white] +\begin{codeexample}[ + graphic=white, + preamble={\usetikzlibrary{arrows.meta,graphs,graphdrawing} +\usegdlibrary{layered}}] \tikz [nodes={text height=.7em, text depth=.2em, draw=black!20, thick, fill=white, font=\footnotesize}, - >=spaced stealth', rounded corners, semithick] + >={Stealth[round,sep]}, rounded corners, semithick] \graph [layered layout, level distance=1cm, sibling sep=.5em, sibling distance=1cm] { "5th Edition" -> { "6th Edition", "PWB 1.0" }; "6th Edition" -> { "LSX" [>child anchor=45], "1 BSD", "Mini Unix", "Wollongong", "Interdata" }; @@ -458,7 +461,7 @@ libraries are not loaded by default since many users will not need them. \medskip \noindent -\begin{codeexample}[graphic=white] +\begin{codeexample}[graphic=white,preamble={\usetikzlibrary{arrows,trees}}] \tikzset{ ld/.style={level distance=#1},lw/.style={line width=#1}, level 1/.style={ld=4.5mm, trunk, lw=1ex ,sibling angle=60}, @@ -522,6 +525,7 @@ libraries are not loaded by default since many users will not need them. \include{pgfmanual-en-library-automata} \include{pgfmanual-en-library-babel} \include{pgfmanual-en-library-backgrounds} +\include{pgfmanual-en-library-bbox} \include{pgfmanual-en-library-calc} \include{pgfmanual-en-library-calendar} \include{pgfmanual-en-library-chains} @@ -566,7 +570,7 @@ libraries are not loaded by default since many users will not need them. \bigskip \noindent -\begin{codeexample}[graphic=white] +\begin{codeexample}[graphic=white,preamble={\usetikzlibrary{datavisualization.formats.functions}}] \tikz \datavisualization [scientific axes=clean] [ visualize as smooth line=Gaussian, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-preamble.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-preamble.tex index 0909945567b..57f51bda219 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-preamble.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-main-preamble.tex @@ -35,6 +35,7 @@ arrows, arrows.spaced, arrows.meta, + bbox, bending, babel, calc, @@ -137,9 +138,9 @@ \def\LuaTeX{Lua\TeX}% - -\iffalse -%\iftrue +\newif\ifpgfmanualexternalize +\pgfmanualexternalizefalse +\ifpgfmanualexternalize \tikzexternalize[ mode=list only,export=true,% simply skips EVERY picture -> good for debugging the text. ]{pgfmanual} @@ -238,6 +239,16 @@ \tikzset{make snapshot if necessary} +% Detect changed labels +% by David Carlisle https://tex.stackexchange.com/a/169245 +\makeatletter +\def\@testdef#1#2#3{% + \def\reserved@a{#3}% + \expandafter\ifx\csname #1@#2\endcsname\reserved@a\else + \typeout{^^JLabel `#2' changed:^^J\meaning\reserved@a^^J\expandafter\meaning\csname #1@#2\endcsname^^J}% + \@tempswatrue + \fi} +\makeatother %% ----------------------------------------------------------------------------- %\includeonly{ diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-algorithms.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-algorithms.tex index 1acec247f8f..93c0aed44b7 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-algorithms.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-algorithms.tex @@ -188,7 +188,7 @@ To redefine a function use the following command: When specifying multiple functions, functions that appear later on in \meta{function definitions} can refer to earlier functions: % -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}}] \begin{tikzpicture}[ declare function={ excitation(\t,\w) = sin(\t*\w); diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-numberprinting.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-numberprinting.tex index 9cd4a9a6dd6..72b60ef6d99 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-numberprinting.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-numberprinting.tex @@ -290,8 +290,8 @@ precision. |fixed relative| ``rounds from the left'': it takes the \emph{first} non-zero digit, temporarily places the period after this digit, and rounds that number. The rounding style |fixed| leaves the period where it is, and - rounds everything behind that digit. The |sci| style is similar to |fixed - relative|. + rounds everything behind that digit. The |sci| style is similar to + |fixed relative|. \end{keylist} \begin{key}{/pgf/number format/int detect} @@ -344,7 +344,7 @@ precision. \begin{key}{/pgf/number format/frac} Displays numbers as fractionals. % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{fpu}}] \pgfkeys{/pgf/number format/frac} \pgfmathprintnumber{0.333333333333333}\hspace{1em} \pgfmathprintnumber{0.5}\hspace{1em} @@ -370,7 +370,7 @@ precision. \begin{key}{/pgf/number format/frac denom=\meta{int} (initially empty)} Allows to provide a custom denominator for |frac|. % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{fpu}}] \pgfkeys{/pgf/number format/.cd,frac, frac denom=10} \pgfmathprintnumber{0.1}\hspace{1em} \pgfmathprintnumber{0.5}\hspace{1em} @@ -385,7 +385,7 @@ precision. the fractional part. In this case, the fractional part will be less then $1$. Use |frac whole=false| to avoid whole number parts. % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{fpu}}] \pgfkeys{/pgf/number format/.cd,frac, frac whole=false} \pgfmathprintnumber{20.1}\hspace{1em} \pgfmathprintnumber{5.5}\hspace{1em} @@ -805,9 +805,9 @@ the correct digits, afterwards a display style generates proper \TeX-code. \begin{stylekey}{/pgf/number format/verbatim} A style which configures the number printer to produce verbatim text - output, i.\,e., it doesn't contain \TeX\ macros. + output, i.e., it doesn't contain \TeX\ macros. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fpu}}] \pgfkeys{ /pgf/fpu, /pgf/number format/.cd, @@ -823,9 +823,9 @@ the correct digits, afterwards a display style generates proper \TeX-code. |assume math mode|. Furthermore, it installs a |sci generic| format for verbatim output of scientific numbers. - However, it will still respect |precision|, |fixed zerofill|, |sci - zerofill| and the overall styles |fixed|, |sci|, |int detect| (and their - variants). It might be useful if you intend to write output files. + However, it will still respect |precision|, |fixed zerofill|, + |sci zerofill| and the overall styles |fixed|, |sci|, |int detect| (and + their variants). It might be useful if you intend to write output files. \end{stylekey} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-parsing.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-parsing.tex index 4b3f793dadf..9eaed9c975d 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-parsing.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-math-parsing.tex @@ -274,7 +274,7 @@ For this, you can use the following commands: A typical use of this function is the following: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc,quotes}}] \tikz{ \coordinate["$A$"] (A) at (2,2); \coordinate["$B$" below] (B) at (0,0); @@ -1189,7 +1189,7 @@ some notable exceptions. Generates a pseudo-random number between $0$ and $1$ with a uniform distribution. % -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}}] \foreach \x in {1,...,10}{\pgfmathparse{rnd}\pgfmathresult, } \end{codeexample} % @@ -1200,7 +1200,7 @@ some notable exceptions. Generates a pseudo-random number between $-1$ and $1$ with a uniform distribution. % -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}}] \foreach \x in {1,...,10}{\pgfmathparse{rand}\pgfmathresult, } \end{codeexample} % @@ -1215,15 +1215,15 @@ some notable exceptions. \mvar{x} and \mvar{y} is generated. If there are no arguments, the \pgfname{} command should be called as follows: |\pgfmathrandom{}|. % -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}}] \foreach \x in {1,...,10}{\pgfmathparse{random()}\pgfmathresult, } \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}}] \foreach \x in {1,...,10}{\pgfmathparse{random(100)}\pgfmathresult, } \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}}] \foreach \x in {1,...,10}{\pgfmathparse{random(232,762)}\pgfmathresult, } \end{codeexample} % diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex index 1dfec36c239..8a85b57c78e 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-module-parser.tex @@ -15,7 +15,7 @@ \begin{pgfmodule}{parser}% This module defines some commands for creating a simple letter-by-letter parser. -\end{pgfmodule}% +\end{pgfmodule} This module provides commands for defining a parser that scans some given text letter-by-letter. For each letter, some code is executed and, possibly a @@ -45,7 +45,7 @@ optionally some code is executed afterwards. In the following example, the parser counts the number of |a|'s in the \text{text}, ignoring any |b|'s. The \meta{text} ends with the first~|c|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepgfmodule{parser}}] \newcount\mycount \pgfparserdef{myparser}{initial}{the letter a}% {\advance\mycount by 1\relax}% @@ -213,8 +213,11 @@ There are \the\mycount\ a's. This macro stores the letter to which |\pgfparsertoken| was let. So if you'd use |\pgfparserparse{foo}a| this macro would be defined with |\def\pgfparserletter{a}|. This definition is done before any action code is - executed. There are two special cases: If |{| or |}| would be the next letter - for the parser, this macro is defined to expand to |\bgroup| or |\egroup|. + executed. There are four special cases: If the next token is of category code + 1, 2, 6, or 10, so with standard category codes the tokens |{|, |}|, |#|, and + \textvisiblespace\ (a space) would be treated differently. In those cases this + macro expands to |\bgroup|, |\egroup|, |##|, and \textvisiblespace\ for the + categories 1, 2, 6, and 10, respectively. \end{command}% \begin{command}{\pgfparserset\marg{key list}}% @@ -223,7 +226,10 @@ There are \the\mycount\ a's. listed in subsection~\ref{sec:parser:keys}. \end{command}% -\subsection{Keys of the Parser Module}\label{sec:parser:keys}% + +\subsection{Keys of the Parser Module} +\label{sec:parser:keys} + \begin{key}{/pgfparser/silent=\meta{boolean} (initially false)}% If |true| then no error will be thrown when a letter is parsed for which no action is specified, silently ignoring it. This holds true for every parser. @@ -244,13 +250,19 @@ the following will be defined: defined parser. \end{key}% -\subsection{Examples}% + +\subsection{Examples} + The following example counts the different letters appearing in a more or less -random string of letters. Every letter is counted only once, this is achieved by -defining a new action for every encountered unknown letter that does nothing. We -can define such rule without knowing which letter is used, because +random string of letters. Every letter is counted only once, this is achieved +by defining a new action for every encountered unknown letter that does +nothing. We can define such rule without knowing which letter is used, because |\pgfparsertoken| has the same meaning as that letter. -\begin{codeexample}[] +% +\begin{codeexample}[ + preamble={\usepgfmodule{parser}}, + pre={\newcount\mycount}, +] \mycount=0 % using the shortcut syntax of just placing ; after the state \pgfparserdef{different letters}{all};{\pgfparserswitch{final}}% @@ -266,7 +278,8 @@ can define such rule without knowing which letter is used, because Next we want to try something that uses some of the different argument types available. -\begin{codeexample}[] +% +\begin{codeexample}[preamble={\usepgfmodule{parser}}] % using the same syntax as \pgfparserdef \pgfparserdef{arguments}{initial}{the letter a}[d()] {\pgfparserifmark{#1}{\textcolor{red}{\textit{use}}}{\textbf{#1}} }% diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfcalendar.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfcalendar.tex index c35a3b9a5ec..2791a6936f1 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfcalendar.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfcalendar.tex @@ -306,6 +306,10 @@ package (it this package is not loaded, no translation takes place). Furthermore, the |pgfcalendar| package will try to load the |translator-months-dictionary|, if the |translator| package is loaded. +If you want to use the |translator| package, it has to be loaded before the +|pgfcalendar| package or, when you are using the |calendar| \tikzname\ library, +before |tikz|. Otherwise it will not be properly detected. + The net effect of all this is that all dates will be translated to the current language setup in the |translator| package. See the documentation of this package for more details. @@ -380,14 +384,14 @@ package for more details. In a first example, let us create a very simple calendar: It just lists the dates in a certain range. % -\begin{codeexample}[vbox,ignorespaces] +\begin{codeexample}[vbox,ignorespaces,preamble={\usepackage{pgfcalendar}}] \pgfcalendar{cal}{2007-01-20}{2007-02-10}{\pgfcalendarcurrentday\ } \end{codeexample} % Let us now make this a little more interesting: Let us add a line break after each Sunday. % -\begin{codeexample}[vbox,ignorespaces] +\begin{codeexample}[vbox,ignorespaces,preamble={\usepackage{pgfcalendar}}] \pgfcalendar{cal}{2007-01-20}{2007-02-10} { \pgfcalendarcurrentday\ @@ -399,7 +403,7 @@ package for more details. different approaches work. Here is one based positioning each day horizontally using a skip. % -\begin{codeexample}[vbox,ignorespaces] +\begin{codeexample}[vbox,ignorespaces,preamble={\usepackage{pgfcalendar}}] \pgfcalendar{cal}{2007-01-20}{2007-02-10} {% \leavevmode% @@ -410,7 +414,7 @@ package for more details. % Let us now typeset two complete months. % -\begin{codeexample}[vbox,ignorespaces] +\begin{codeexample}[vbox,ignorespaces,preamble={\usepackage{pgfcalendar}}] \pgfcalendar{cal}{2007-01-01}{2007-02-28}{% \ifdate{day of month=1}{ \par\bigskip\hbox to7.5cm{\itshape\hss\pgfcalendarshorthand mt\hss}\par @@ -429,7 +433,7 @@ package for more details. % For our final example, we use a |{tikzpicture}|. % -\begin{codeexample}[vbox,ignorespaces] +\begin{codeexample}[vbox,ignorespaces,preamble={\usepackage{pgfcalendar}}] \begin{tikzpicture} \pgfcalendar{cal}{2007-01-20}{2007-02-10}{% \ifdate{workday} @@ -470,7 +474,7 @@ package for more details. you can write |\%wt| instead of the much more cumbersome |\pgfcalendarshorthand{w}{t}|. % -\begin{codeexample}[leave comments] +\begin{codeexample}[leave comments,preamble={\usepackage{pgfcalendar}}] \let\%=\pgfcalendarshorthand \pgfcalendar{cal}{2007-01-20}{2007-01-20} { ISO form: \%y0-\%m0-\%d0, long form: \%wt, \%mt \%d-, \%y0} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex index 392e2298142..fdac5a31c42 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeys.tex @@ -277,7 +277,7 @@ continue with the next subsection. Settings keys is done using a powerful command called |\pgfkeys|. This command takes a list of so-called \emph{key--value pairs}. These are pairs of the form -\meta{key}|=|\meta{value}. The principle idea is the following: For each pair +\meta{key}|=|\meta{value}. The principal idea is the following: For each pair in the list, some \emph{action} is taken. This action can be one of the following: % @@ -376,13 +376,13 @@ instead of the more cumbersome An example where such a syntax reinterpretation is done is the |quotes| library, which allows you to write things like % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph { a ->["1" red] b ->["0"] c }; \end{codeexample} % \noindent instead of the somewhat longer % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a ->[edge node={node[red,auto]{1}}] b ->[edge label=0] c }; \end{codeexample} @@ -1416,6 +1416,19 @@ Key 4:& \pgfkeys{/key4} processing \meta{key}|=|\meta{result}. \end{handler} +\begin{handler}{{.evaluated}|=|\meta{value}} + This handler will evaluate \meta{value} as a mathematical + expression with |\pgfmathparse| and assign \meta{key}|=\pgfmathresult|. + % +\begin{codeexample}[] +\pgfkeys{ + /golden ratio/.initial/.evaluated={(1 + sqrt(5))/2}, +} +\pgfkeys{/golden ratio} +\end{codeexample} + % +\end{handler} + \begin{handler}{{.list}|=|\meta{comma-separated list of values}} This handler causes the key to be used repeatedly, namely once for every element of the list of values. Note that the list of values should @@ -1592,7 +1605,7 @@ Key 4:& \pgfkeys{/key4} will ``try'' to use the key, but no further action is taken when the key is not defined. - The \TeX-if |\||ifpgfkeyssuccess| will be set according to whether the + The \TeX-if |\ifpgfkeyssuccess| will be set according to whether the \meta{key} was successfully executed or not. % \begin{codeexample}[] @@ -1605,7 +1618,7 @@ Key 4:& \pgfkeys{/key4} \begin{handler}{{.retry}|=|\meta{value}} This handler works just like |/.try|, only it will not do anything if - |\||ifpgfkeyssuccess| is false. Thus, this handler will only retry to set a + |\ifpgfkeyssuccess| is false. Thus, this handler will only retry to set a key if ``the last attempt failed''. % \begin{codeexample}[] @@ -1618,7 +1631,7 @@ Key 4:& \pgfkeys{/key4} \begin{handler}{{.lastretry}|=|\meta{value}} This handler works like |/.retry|, only it will invoke the usual handlers - for unknowns keys if |\||ifpgfkeyssuccess| is false. Thus, this handler + for unknowns keys if |\ifpgfkeyssuccess| is false. Thus, this handler will only try to set a key if ``the last attempt failed''. Furthermore, this here is the last such attempt. \end{handler} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeysfiltered.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeysfiltered.tex index d93c8b8c0e2..2c08141ea2e 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeysfiltered.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfkeysfiltered.tex @@ -25,6 +25,7 @@ supports family groupings and more abstract key selection mechanism with |\pgfkeysfiltered|, a variant of |\pgfkeys|. Suppose we have the example key grouping +\begin{codeexample}[setup code,hidden] \pgfkeys{ /my group/A1/.code=(A1:#1), /my group/A2/.code=(A2:#1), @@ -37,7 +38,9 @@ grouping /my group/A3/.belongs to family=/my group/A, /pgf/key filters/active families/.install key filter, /my group/A/.activate family, -}% +} +\end{codeexample} +% \begin{codeexample}[code only] \pgfkeys{ /my group/A1/.code=(A1:#1), diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-animations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-animations.tex index 7ac5b4f795e..85adcf9024b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-animations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-animations.tex @@ -11,6 +11,7 @@ \section{Animation System Layer} \label{section-pgfsys-anim} +\begin{codeexample}[setup code,hidden] \makeatletter \def\animationexample#1#2#3{% @@ -24,6 +25,7 @@ (node) {Click \\ here}; }% } +\end{codeexample} In conjunction with the right output format (namely \textsc{svg}), you can specify that certain parts of you graphics can be animated. For this, there are @@ -159,7 +161,9 @@ driver implements): % Now the example, where the circle will disappear, when clicked: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvalscalar{1} @@ -213,7 +217,7 @@ The ``opposite'' of |\pgfsysanimate| is the following command: numerically stable. \end{enumerate} % -\begin{codeexample}[width=5cm] +\begin{codeexample}[width=5cm,preamble={\usetikzlibrary{animations}}] \foreach \t in {0.5,1,1.5,2} { \pgfsysanimsnapshot{\t} \tikz { @@ -257,7 +261,10 @@ visibility, and opacity. Specify values with |\pgfsysanimvalscalar|. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvalscalar{1} @@ -274,7 +281,10 @@ visibility, and opacity. Specify values with |\pgfsysanimvalscalar|. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvalscalar{1} @@ -291,7 +301,10 @@ visibility, and opacity. Specify values with |\pgfsysanimvalscalar|. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvalscalar{1} @@ -309,7 +322,10 @@ visibility, and opacity. Specify values with |\pgfsysanimvaltext|. However, only two values are allowed: |visible| and |hidden|. % -\begin{codeexample}[animation list={-1,0,1,2,3}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={-1,0,1,2,3}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltext{hidden} @@ -326,7 +342,10 @@ visibility, and opacity. Specify values with |\pgfsysanimvalcolorrgb| and friends. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvalcolorrgb{0}{0}{0} @@ -343,7 +362,10 @@ visibility, and opacity. Specify values with |\pgfsysanimvalcolorrgb| and friends. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvalcolorrgb{0}{0}{0} @@ -369,7 +391,11 @@ The following attributes influence paths and how they are rendered. Specify values with |\pgfsysanimvalpath|. % -\begin{codeexample}[animation list={0.5,1,1.5,2},animation bb={(0.9,-0.1)rectangle(2.1,1.1)}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, + animation bb={(0.9,-0.1)rectangle(2.1,1.1)}, +] \animationexample{my path}{path}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvalpath{\pgfsys@moveto{1cm}{0cm}% @@ -396,7 +422,7 @@ The following attributes influence paths and how they are rendered. |\pgfsetarrows| and then animate the path, you will get an error message. \item Internally, the arrow tips that ``rotate and move along'' are - drawn using so-called \emph{markers.} These are little graphic + drawn using so-called \emph{markers}. These are little graphic objects that can be added to the start and end of paths and that are automatically rotated and move along with the path. @@ -464,7 +490,11 @@ The following attributes influence paths and how they are rendered. animations may use different arrow tips / markers. This allows you to animate (change) which arrow tip is used on a path over time. % -\begin{codeexample}[animation list={0.5,1,1.5,2},animation bb={(0.7,-0.3)rectangle(2.3,1.3)}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, + animation bb={(0.7,-0.3)rectangle(2.3,1.3)}, +] % Declare a marker: \pgfsys@marker@declare\mymarker{% \pgfscope% @@ -503,7 +533,10 @@ The following attributes influence paths and how they are rendered. Specify values with |\pgfsysanimvaldimension|. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaldimension{1pt} @@ -520,7 +553,10 @@ The following attributes influence paths and how they are rendered. Specify values with |\pgfsysanimvaldash|. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaldash{1pt,10pt}{0pt} @@ -530,7 +566,10 @@ The following attributes influence paths and how they are rendered. } \end{codeexample} % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaldash{1cm,1pt}{0pt} @@ -540,7 +579,10 @@ The following attributes influence paths and how they are rendered. } \end{codeexample} % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaldash{3pt,1pt}{0pt} @@ -612,7 +654,7 @@ first. in two seconds and rotates the blue ball over 90$^\circ$ around the origin. The ball is placed at $(1,0)$. % -\begin{codeexample}[code only] +\begin{codeexample}[code only,setup code] \def\animationcanvasexample#1#2{% \animationexample{ball}{}{% \pgfsysanimkeycanvastransform{#1}{#2}% @@ -632,6 +674,8 @@ first. \fill [ball color=blue,name=ball] (1,0) circle [radius=3mm]; } } \end{codeexample} % +% TODOsp: codeexamples: this definition is needed for the next 4 `codeexample`s +% but because of the hash sign it can't simply be added `pre` \def\animationcanvasexample#1#2{% \animationexample{ball}{}{% \pgfsysanimkeycanvastransform{#1}{#2}% @@ -650,26 +694,42 @@ first. \pgfsysanimate{rotate} \fill [ball color=blue,name=ball] (1,0) circle [radius=3mm]; } } -\begin{codeexample}[width=9.9cm,animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + width=9.9cm, + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationcanvasexample {} {} \end{codeexample} % -\begin{codeexample}[width=9.9cm,animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + width=9.9cm, + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationcanvasexample {\pgfsys@transformshift{10mm}{0mm}} {\pgfsys@transformshift{-10mm}{0mm}} \end{codeexample} % -\begin{codeexample}[width=9.9cm,animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + width=9.9cm, + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationcanvasexample {\pgfsys@transformcm{0.5}{0.5}{-0.5}{0.5} {0pt}{0pt}} {} \end{codeexample} % -\begin{codeexample}[width=9.9cm,animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + width=9.9cm, + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationcanvasexample {\pgfsys@transformcm{0.5}{0.5}{-0.5}{0.5} {0pt}{0pt}} @@ -685,7 +745,10 @@ first. Specify values with |\pgfsysanimvaltranslate|. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm}% @@ -703,7 +766,10 @@ first. Specify values with |\pgfsysanimvalscale|. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvalscale{1}{1}% @@ -720,7 +786,10 @@ first. Specify values with |\pgfsysanimvalscalar|. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, + ] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvalscalar{0}% @@ -738,7 +807,10 @@ first. Specify values with |\pgfsysanimvalscalar|. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvalscalar{0}% @@ -782,7 +854,10 @@ first. simply be executed and must call |\pgfsys@lineto| and similar path-construction commands, but should not call other commands. % -\begin{codeexample}[animation list={0.5,1,1.5,2},render instead={ +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, + render instead={ \animationexample{node}{}{ \pgfsysanimkeymovealong{ \pgfsyssoftpath@movetotoken{0pt}{0pt} @@ -829,7 +904,10 @@ first. so that it points along the path as time progresses. This option is only applicable to motion animations. % -\begin{codeexample}[animation list={0.5,1,1.5,2},render instead={ +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, + render instead={ \animationexample{node}{}{ \pgfsysanimkeyrotatealong \pgfsysanimkeymovealong{ @@ -871,8 +949,12 @@ first. Specify values with |\pgfsysanimvalviewbox|. % -\begin{codeexample}[animation list={0.5,1,1.5,2},width=5cm,animation - bb={(0.9,-2.1) rectangle (3.1,2.1)}] +\begin{codeexample}[ + width=5cm, + preamble={\usetikzlibrary{animations,views}}, + animation list={0.5,1,1.5,2}, + animation bb={(0.9,-2.1) rectangle (3.1,2.1)}, +] \animationexample{my view}{view}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvalviewbox{-10mm}{-20mm}{10mm}{20mm}% @@ -1122,7 +1204,11 @@ that must be used). Specifies that the animation should repeat the specified \meta{number of times}, which may be a fractional number. % -\begin{codeexample}[animation list={1,2,3,4,5,6,7,8},width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5,6,7,8}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1139,7 +1225,11 @@ that must be used). \begin{command}{\pgfsys@animation@repeat@indefinite} Specifies that the animation should repeat indefinitely. % -\begin{codeexample}[animation list={1,2,3,4,5,6,7,8},width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5,6,7,8}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1157,7 +1247,11 @@ that must be used). Specifies that the animation should repeat until \meta{seconds} have elapsed. % -\begin{codeexample}[animation list={1,2,3,4,5,6,7,8},width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5,6,7,8}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1199,8 +1293,11 @@ possible beginnings (or endings). after the graphic is shown. For instance, in the next example the animation will start automatically after 5\,s \emph{or} when then button is pressed. % -\begin{codeexample}[animation list={1,2,3,4,5,6,7,8},width=6cm,render - instead={ +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5,6,7,8}, +render instead={ \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1259,7 +1356,10 @@ possible beginnings (or endings). onto the object, moved over the object, or moved off the object. \end{itemize} % -\begin{codeexample}[width=2cm] +\begin{codeexample}[ + width=2cm, + preamble={\usetikzlibrary{animations}}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1269,7 +1369,10 @@ possible beginnings (or endings). \pgfsysanimate{translate} } \end{codeexample} % -\begin{codeexample}[width=2cm] +\begin{codeexample}[ + width=2cm, + preamble={\usetikzlibrary{animations}}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1279,7 +1382,10 @@ possible beginnings (or endings). \pgfsysanimate{translate} } \end{codeexample} % -\begin{codeexample}[width=2cm] +\begin{codeexample}[ + width=2cm, + preamble={\usetikzlibrary{animations}}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1289,7 +1395,10 @@ possible beginnings (or endings). \pgfsysanimate{translate} } \end{codeexample} % -\begin{codeexample}[width=2cm] +\begin{codeexample}[ + width=2cm, + preamble={\usetikzlibrary{animations}}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1299,7 +1408,10 @@ possible beginnings (or endings). \pgfsysanimate{translate} } \end{codeexample} % -\begin{codeexample}[width=2cm] +\begin{codeexample}[ + width=2cm, + preamble={\usetikzlibrary{animations}}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1317,7 +1429,11 @@ possible beginnings (or endings). The animation begins (or end) with a certain offset when another animation has reached a certain repeat count. % -\begin{codeexample}[animation list={1,2,3,4,5,6,7,8},width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5,6,7,8}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1350,7 +1466,10 @@ possible beginnings (or endings). event may not be supported by some browsers for security reasons (prevent key loggers). % -\begin{codeexample}[width=2cm] +\begin{codeexample}[ + width=2cm, + preamble={\usetikzlibrary{animations}}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1372,7 +1491,10 @@ possible beginnings (or endings). Defines that the animation can be restarted at any time. This is the default. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[ + width=2cm, + preamble={\usetikzlibrary{animations}}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1389,7 +1511,10 @@ possible beginnings (or endings). \begin{command}{\pgfsys@animation@restart@never} Defines that the animation cannot be restarted once it has run. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[ + width=2cm, + preamble={\usetikzlibrary{animations}}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1406,7 +1531,10 @@ possible beginnings (or endings). \begin{command}{\pgfsys@animation@restart@whennotactive} Defines that the animation cannot be restarted while it is running. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[ + width=2cm, + preamble={\usetikzlibrary{animations}}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1427,7 +1555,11 @@ possible beginnings (or endings). at the end of the animation the last value of the attributes stays in effect. % -\begin{codeexample}[animation list={1,2,3,4,5,6,7,8},width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5,6,7,8}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1444,7 +1576,11 @@ possible beginnings (or endings). \begin{command}{\pgfsys@animation@removeatend{}} The opposite of |\pgfsysanimkeyfreezeatend|. This is the default. % -\begin{codeexample}[animation list={1,2,3,4,5,6,7,8},width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5,6,7,8}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1471,7 +1607,11 @@ during each repeat the values can add up: Specifies that each repeat of an animation works as if the last values attained during previous repeats are added to the current value. % -\begin{codeexample}[animation list={1,2,3,4,5,6,7,8},width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5,6,7,8}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} @@ -1490,7 +1630,11 @@ during each repeat the values can add up: Specifies that each repeat resets the to-be-animated value. This is the default. % -\begin{codeexample}[animation list={1,2,3,4,5,6,7,8},width=6cm] +\begin{codeexample}[ + width=6cm, + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5,6,7,8}, +] \animationexample{node}{}{ \pgfsysanimkeytime{0}{1}{1}{0}{0} \pgfsysanimvaltranslate{0cm}{0cm} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex index 03c619eb97f..a889467fb56 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-actions.tex @@ -126,8 +126,8 @@ The most unspecific option for setting colors is the following: hours or so). The emulation allows you to do the following: % \begin{itemize} - \item Specify a new color using |\definecolor|. Only the two color - models |gray| and |rgb| are supported\footnote{Con\TeX t users + \item Specify a new color using |\definecolor|. Only the color models + |gray|, |rgb|, and |RGB| are supported\footnote{Con\TeX t users should be aware that \texttt{\textbackslash definecolor} has a different meaning in Con\TeX t. There is a low-level equivalent named \texttt{\textbackslash pgfutil@definecolor} which can be @@ -364,12 +364,12 @@ setting the line width. You can also redefine these styles. \begin{key}{/tikz/dash expand off} Makes the |off| part of a dash pattern expandable such that it can stretch. This only works when there is a single |on| and a single |off| field and - requires the |decorations| library. Right now this option has to be - specified on the path where it is supposed to take effect after the |dash - pattern| option because the dash pattern has to be known at the point where - it is applied. + requires the |decorations| library. Right now this option has to be + specified on the path where it is supposed to take effect after the + |dash pattern| option because the dash pattern has to be known at the point + where it is applied. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations}}] \begin{tikzpicture}[|-|, dash pattern=on 4pt off 2pt] \draw [dash expand off] (0pt,30pt) -- (26pt,30pt); \draw [dash expand off] (0pt,20pt) -- (24pt,20pt); @@ -582,19 +582,28 @@ transparency in more detail. This style selects a double line distance such that it corresponds to the distance of the two lines in an equal sign. % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usepackage{amsmath} +\usetikzlibrary{arrows.meta}} +] \Huge $=\implies$\tikz[baseline,double equal sign distance] - \draw[double,thick,-implies](0,0.55ex) --++(3ex,0); + \draw[double,thick,-{Implies[]}](0,0.55ex) --++(3ex,0); \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usepackage{amsmath} +\usetikzlibrary{arrows.meta}} +] \normalsize $=\implies$\tikz[baseline,double equal sign distance] - \draw[double,-implies](0,0.6ex) --++(3ex,0); + \draw[double,-{Implies[]}](0,0.6ex) --++(3ex,0); \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usepackage{amsmath} +\usetikzlibrary{arrows.meta}} +] \tiny $=\implies$\tikz[baseline,double equal sign distance] - \draw[double,very thin,-implies](0,0.5ex) -- ++(3ex,0); + \draw[double,very thin,-{Implies[]}](0,0.5ex) -- ++(3ex,0); \end{codeexample} % \end{stylekey} @@ -623,11 +632,11 @@ the beginning and at the end of the current path. This is true even when ``only'' arrow tips get drawn for a path without drawing the path itself. Here is an example: % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{arrows.meta,bending}}] \tikz \path[tips, -{Latex[open,length=10pt,bend]}] (0,0) to[bend left] (1,0); \end{codeexample} % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{arrows.meta,bending}}] \tikz \draw[tips, -{Latex[open,length=10pt,bend]}] (0,0) to[bend left] (1,0); \end{codeexample} @@ -714,7 +723,7 @@ simulated ones. instance the |patterns| library, see Section~\ref{section-library-patterns}, to install predefined patterns. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{patterns}}] \begin{tikzpicture} \draw[pattern=dots] (0,0) circle (1cm); \draw[pattern=fivepointed stars] (0,0) rectangle (3,1); @@ -727,14 +736,14 @@ simulated ones. This option is used to set the color to be used for form-only patterns. This option has no effect on inherently colored patterns. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{patterns}}] \begin{tikzpicture} \draw[pattern color=red,pattern=fivepointed stars] (0,0) circle (1cm); \draw[pattern color=blue,pattern=fivepointed stars] (0,0) rectangle (3,1); \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{patterns}}] \begin{tikzpicture} \def\mypath{(0,0) -- +(0,1) arc (180:0:1.5cm) -- +(0,-1)} \fill [red] \mypath; @@ -1306,7 +1315,7 @@ the following two options: \end{codeexample} Naturally, you would normally create a style |shadow| that contains the - above code. The shadow library, see Section~\ref{section-libs-shadows}, + above code. The |shadows| library, see Section~\ref{section-libs-shadows}, contains predefined shadows of this kind. It is possible to use the |preaction| option multiple times. In this case, @@ -1317,7 +1326,7 @@ the following two options: In the following example, we use one |preaction| to add a shadow and another to provide a shading, while the main action is to use a pattern. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{patterns}}] \begin{tikzpicture} \draw[help lines] (0,0) grid (3,2); \draw [pattern=fivepointed stars] @@ -1333,7 +1342,7 @@ the following two options: is used several times with different fadings and shadings to create a special visual effect: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns}}] \begin{tikzpicture} [ % Define an interesting style @@ -1396,7 +1405,7 @@ the following two options: In another example, we use a postaction to ``colorize'' a path: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fadings}}] \begin{tikzpicture} \draw[help lines] (0,0) grid (3,2); \draw @@ -1420,7 +1429,7 @@ described in detail in Section~\ref{section-tikz-decorations}. For instance, in the following example the path is drawn twice: Once normally and then in a morphed (=decorated) manner. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} \draw (0,0) rectangle (3,2); \draw [red, decorate, decoration=zigzag] @@ -1431,7 +1440,7 @@ morphed (=decorated) manner. Naturally, we could have combined this into a single command using pre- or postaction. It is also possible to deform shapes: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing,shadows}}] \begin{tikzpicture} \node [circular drop shadow={shadow scale=1.05},minimum size=3.13cm, decorate, decoration=zigzag, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-animations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-animations.tex index 6a7f606f43d..a692412fb35 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-animations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-animations.tex @@ -24,7 +24,12 @@ picture, but a change of, say, the opacity of a path is also an animation. \tikzname\ allows you to specify such animations using special keys and notations. % -\begin{codeexample}[width=8cm,animation list={0.7,1.4,2.1,2.8},animation scale=.25] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + width=8cm, + animation list={0.7,1.4,2.1,2.8}, + animation scale=.25, +] \begin{tikzpicture}[ animate/orbit/.style 2 args = { myself:shift = { @@ -66,7 +71,7 @@ Adding an animation to a \tikzname\ picture is done as follows: As a simple example, let us move a circle within thirty seconds by three centimeters to the left: % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{animations}}] \tikz \draw :xshift = {0s = "0cm", 30s = "-3cm", repeats} (0,0) circle (5mm); \end{codeexample} @@ -150,7 +155,7 @@ attributes that can be animated: \item Graphic scopes, which are created by numerous command, including the |{scope}| environment, the |\scopes| command, but also |\tikz| itself creates a graphic scope and so does each node and even each path. - \item View boxes, which can only be created using the |view| library. + \item View boxes, which can only be created using the |views| library. \item Paths, which you create using the |\path| command or commands like |\draw| that call |\path| internally. However, the (usually background) path of a node can also be animated. Note that ``animating the path'' @@ -258,12 +263,18 @@ creating these timelines. you will use it with a |{scope}| environment, inside the options of a node, or directly with the |\tikz| command: % -\begin{codeexample}[animation list = {0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list = {0.5,1,1.5,2}, +] \tikz \node [fill, text = white, animate = { myself:fill = {0s = "red", 2s = "blue", begin on = click }}] {Click me}; \end{codeexample} % -\begin{codeexample}[animation list = {0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list = {0.5,1,1.5,2}, +] \tikz [animate = {a node:fill = {0s = "red", 2s = "blue", begin on = click}}] \node (a node) [fill, text = white] {Click me}; @@ -277,7 +288,7 @@ creating these timelines. styles for this key path and use them. For instance, we can define a |shake| animation like this: % -\begin{codeexample}[width=4cm] +\begin{codeexample}[width=4cm,preamble={\usetikzlibrary{animations}}] \tikzset{ animate/shake/.style = {myself:xshift = { begin on=click, 0s = "0mm", 50ms = "#1", 150ms = "-#1", 250ms = "#1", 300ms = "0mm" }}} @@ -333,7 +344,10 @@ an entry: like |begin on|, are also added to the timeline of the object--attribute pair. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [animate = { object = node, attribute = fill, time = 0s, value = red, entry, object = node, attribute = fill, time = 2s, value = blue, entry, @@ -345,7 +359,10 @@ an entry: object and the attribute in each line, they retain their values unless they are overwritten. Thus, we could also have written: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [animate = { object = node, attribute = fill, time = 0s, value = red, entry, time = 2s, value = blue, entry, @@ -364,7 +381,10 @@ an entry: attributes (that is, between timelines), but the times for any given timeline must be given in non-decreasing order: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [animate = { object = node, attribute = fill, time = 0s, value = red, entry, object = node2, attribute = draw, entry, @@ -404,7 +424,10 @@ Section~\ref{section-anim-syntax-obj}. |name path| key is not the same as |name|; it is an older key from the intersections package and not related.) % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [animate = { object = b, :fill = {0s = "red", 2s = "blue", begin on = click }}] { \node (a) [fill, text = white, minimum width=1.5cm] at (0,1cm) {a}; @@ -412,7 +435,10 @@ Section~\ref{section-anim-syntax-obj}. \node (c) [fill, text = white, minimum width=1.5cm] at (0,0mm) {c}; } \end{codeexample} % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [animate = { object = b, :fill = {0s = "red", 2s = "blue", begin on = click }, object = c, :fill = {0s = "green", 2s = "blue", @@ -452,7 +478,10 @@ Section~\ref{section-anim-syntax-obj}. exact list of possible attributes is documented in Section~\ref{section-anim-attrs}. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [animate = {attribute = fill, n: = { 0s = "red", 2s = "blue", begin on = click } }] \node (n) [fill, text = white] {The node}; @@ -479,7 +508,10 @@ Section~\ref{section-anim-syntax-obj}. object, the attribute, and the value of this key. We can now specify two separate timelines: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [animate = { id = 1, n:shift = { 0s = "{(0,0)}", 2s = "{(0,5mm)}", begin on = click }, id = 2, n:shift = { 0s = "{(0,0)}", 2s = "{(5mm,0)}", begin on = click } @@ -557,7 +589,10 @@ the effects accumulate). is interpreted as an offset to the time in the previous use of the time key: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :fill = { begin on = click, 0s = "white", 500ms later = "red", @@ -598,9 +633,12 @@ time = 2s later % same as time = 7s One application of forks is in the definition of keys that add a certain part to a longer animation. Consider for instance the - definition of a |hilight| key: + definition of a |highlight| key: % -\begin{codeexample}[animation list={1.05,1.1,1.15,1.2,2.05,2.1,2.15,2.2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={1.05,1.1,1.15,1.2,2.05,2.1,2.15,2.2}, +] \tikz [animate/highlight/.style = { scope = { fork = #1, :fill = { 0s = "black", 0.1s = "white", 0.2s = "black"} } @@ -746,7 +784,10 @@ makes this easy: Executed the \meta{options} inside a \TeX\ scope. In particular, all settings made inside the scope have no effect after the end of the |scope|. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node [animate = { myself: = { begin on = click, scope = { attribute = fill, repeats = 3, 0s = "red", 2s = "red!50" }, scope = { attribute = draw, 0s = "red", 2s = "red!50" } @@ -839,7 +880,7 @@ animate = { \end{codeexample} Next, we do the same, but ``in two steps'': First, we set the object to -|my node|, but leave the attribute open and, then, set the attribute, but leave +|mynode|, but leave the attribute open and, then, set the attribute, but leave the object: % \begin{codeexample}[code only] @@ -952,7 +993,10 @@ allows you to use a special syntax with nodes and scopes: Let us have a look at some examples. First, we use the syntax to set the fill opacity of a node: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :fill opacity = { 0s="1", 2s="0", begin on=click } [fill = blue!20, draw = blue, ultra thick, circle] {Here!}; @@ -960,7 +1004,10 @@ opacity of a node: % Next, we additionally rotate the node: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :fill opacity = { 0s="1", 2s="0", begin on=click } :rotate = { 0s="0", 2s="90", begin on=click } @@ -971,7 +1018,10 @@ Note that there is no comma between consecutive uses of the colon syntax in this case. We could have exchanged the order of the options and the uses of the colon syntax: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :fill opacity = { 0s="1", 2s="0", begin on=click } [fill = blue!20, draw = blue, ultra thick, circle] @@ -980,7 +1030,10 @@ colon syntax: We can also use the special syntax with the |\tikz| command itself: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz :fill opacity = { 0s="1", 2s="0", begin on=click } :rotate = { 0s="0", 2s="90", begin on=click } [ultra thick] @@ -1254,7 +1307,10 @@ However, when an object inside the scope has its color set explicitly, this color overrules the color of the scope. \begin{tikzanimateattribute}{fill, draw} -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz :fill = {0s = "red", 2s = "blue", begin on = click} [text = white, fill = orange ] { \node [fill] at (0mm,0) {A}; @@ -1268,7 +1324,10 @@ color overrules the color of the scope. The |text| attribute only applies to nodes and you need to directly animate the |text| attribute of each node individually. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [my anim/.style={ animate = { myself:text = {0s = "red", 2s = "blue", begin on = click}}}, text = white, fill = orange ] { @@ -1280,7 +1339,10 @@ color overrules the color of the scope. Unlike the |fill| and |draw| colors, you cannot animate the |text| color for scopes: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz [animate = {myself:text = {0s = "red", 2s = "blue", begin on = click}}, text = white, fill = orange ] { @@ -1303,7 +1365,10 @@ color overrules the color of the scope. for drawing using the attributes |fill opacity| and |draw opacity|, which are exactly the same as the usual \tikzname\ keys of the same names. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :fill opacity = { 0s="1", 2s="0", begin on=click } [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; \end{codeexample} @@ -1314,7 +1379,10 @@ color overrules the color of the scope. which it is applied as a transparency group. In essence, ``this attribute does what you want'' at least in most situations. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :opacity = { 0s="1", 2s="0", begin on=click } [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; \end{codeexample} @@ -1327,7 +1395,10 @@ color overrules the color of the scope. rendered. The (only) two possible values for this attribute are |false| and |true|. % -\begin{codeexample}[animation list={1,2,3,4}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4}, +] \tikz :visible = {begin on=click, 0s="false", 2s="false"} \node (node) [fill = blue!20, draw = blue, very thick, circle] {Click me!}; \end{codeexample} @@ -1340,7 +1411,11 @@ color overrules the color of the scope. object ``enters'' the stage and ``leaves'' once more when it is no longer ``on stage''. % -\begin{codeexample}[animation list={-1,0,1,2,3},animation bb={(1.3,-0.7) rectangle (2.7,0.7)}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={-1,0,1,2,3}, + animation bb={(1.3,-0.7) rectangle (2.7,0.7)}, +] \tikz [animate = {example:stage = { begin on = {click, of next=node}, 0s="true", 2s="true" }}] { @@ -1361,7 +1436,10 @@ since the animation attributes simply have that same names as the properties that they animate and the syntax for setting is also the same: \begin{tikzanimateattribute}{line width} -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :line width = { 0s="1pt", 2s="5mm", begin on=click} [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; \end{codeexample} @@ -1378,13 +1456,19 @@ that they animate and the syntax for setting is also the same: identical. The interpolation of the values is done for each position of the sequences individually, and also on the phase. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :dash = { 0s="on 10pt off 1pt phase 0pt", 2s="on 1pt off 10pt phase 0pt", begin on=click} [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; \end{codeexample} % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :dash = { 0s="on 1cm off 1pt phase 0pt", 2s="on 1cm off 1pt phase 1cm", begin on=click} [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; @@ -1395,7 +1479,10 @@ that they animate and the syntax for setting is also the same: also set, namely to the current dash pattern that is in force when the animation is created. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :dash phase = { 0s="0pt", 2s="1cm", begin on=click} [fill = blue!20, draw = blue, ultra thick, circle, dashed] {Click me!}; \end{codeexample} @@ -1408,7 +1495,10 @@ however, also animate the path itself: \begin{tikzanimateattribute}{path} When you animate a path, the values are, of course, paths themselves: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :path = { 0s = "{(0,-1) .. controls (0,0) and (0,0) .. (0,1) -- (1,1)}", 2s = "{(0,-1) .. controls (-1,0) and (-1,0) .. (-1,1) -- (.5,-1)}", @@ -1432,7 +1522,10 @@ however, also animate the path itself: example shows, where we used the fact that a circle consists of four Bézier curves): % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :path = { 0s = "{(0,0) circle [radius=1cm]}", 2s = "{(0,0) @@ -1505,7 +1598,11 @@ however, also animate the path itself: Here is an example: % -\begin{codeexample}[animation list={0.5,1,1.5,2},animation bb={(-0.1,-0.1) rectangle (1.1,1.1)}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, + animation bb={(-0.1,-0.1) rectangle (1.1,1.1)}, +] \tikz [very thick] { \node (node) at (-2,0) [fill = blue!20, draw = blue, very thick, circle] {Click me!}; @@ -1540,7 +1637,10 @@ Let us start with the ``standard'' attributes that are also available as keys in \tikzname: \begin{tikzanimateattribute}{scale, xscale, yscale} -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :scale = { 0s="1", 2s="0.2", begin on=click} [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; \end{codeexample} @@ -1549,7 +1649,10 @@ in \tikzname: \begin{tikzanimateattribute}{rotate} The |rotate| key adds an animation of the rotation: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :rotate = { 0s="45", 2s="90", begin on=click} [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; \end{codeexample} @@ -1562,12 +1665,18 @@ in \tikzname: The keys add an animation of the skew (given in degrees) or slant (given as in the |xslant| and |yslant| key): % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :xskew = { 0s="0", 2s="45", begin on=click} [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; \end{codeexample} % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :xslant = { 0s="-1", 2s="1", begin on=click} [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; \end{codeexample} @@ -1575,13 +1684,19 @@ in \tikzname: \end{tikzanimateattribute} \begin{tikzanimateattribute}{xshift, yshift} -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :shift = { 0s="{(0,0)}", 2s="{(5mm,-5mm)}", begin on=click} [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; \end{codeexample} -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :xshift = { 0s="0pt", 2s="5mm", begin on=click} [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; \end{codeexample} @@ -1593,7 +1708,10 @@ in \tikzname: specify a sequence of coordinates in the same way as you would use the |shift| key in \tikzname: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz \node :shift = { 0s = "{(0,0)}", 2s = "{(5mm,-5mm)}", begin on = click } [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; @@ -1613,7 +1731,10 @@ in \tikzname: fractions of the distance along the path. A value of |"0"| refers to the beginning of the path and |"1"| refers to the end: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \draw [help lines] (-0.2,-0.2) grid (2.2,1.2); \draw (1,.5) circle [radius=1mm]; @@ -1631,7 +1752,10 @@ in \tikzname: use |sloped|, the object will be continuously rotated so that it always points along the path. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \draw [help lines] (-0.2,-0.2) grid (2.2,1.2); \draw (1,.5) circle [radius=1mm]; @@ -1655,7 +1779,10 @@ right'', where is ``the right''? By default, movements and transformations like which defaults to the local coordinate system of the to-be-animated object. Consider the following example: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \draw [help lines] (-0.2,-0.2) grid (2.2,2.2); \node :rotate = { 0s="0", 2s="45", begin on=click} @@ -1674,7 +1801,10 @@ system, which is at |(1,1)| in the picture's coordinate system. Let us, by comparison, do a rotation of a scope surrounding the node where the origin is not (yet) shifted: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \draw [help lines] (-0.2,-0.2) grid (2.2,2.2); \scoped :rotate = { 0s="0", 2s="45", begin on={click, of next=n} } @@ -1695,7 +1825,10 @@ expect'', but you can modify it using the following keys: |(1,1)| relative to the picture's origin and the |origin| key shifts it one centimeter to the right. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \draw [help lines] (-0.2,-0.2) grid (2.2,2.2); \node :rotate = { 0s="0", 2s="45", begin on=click, @@ -1724,7 +1857,10 @@ expect'', but you can modify it using the following keys: transformation matrix), which can by numerically instable when you use ill-conditioned transformations. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \draw [help lines] (-0.2,-0.2) grid (2.2,2.2); \node :xshift = { 0s="0cm", 2s="5mm", begin on=click, @@ -1733,7 +1869,10 @@ expect'', but you can modify it using the following keys: } \end{codeexample} % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \draw [help lines] (-0.2,-0.2) grid (2.2,2.2); \node :xshift = { 0s="0cm", 2s="5mm", begin on=click, @@ -1782,7 +1921,10 @@ coordinate system. \begin{tikzanimateattribute}{position} Compare the two animations, one with |:position|, one with |:shift|. % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \draw [help lines] (-0.2,-0.2) grid (2.2,1.2); \draw (1,.5) circle [radius=1mm] (1.5,0) circle [radius=1mm]; @@ -1793,7 +1935,10 @@ coordinate system. % Compare this to a shift: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \draw [help lines] (-0.2,-0.2) grid (2.2,1.2); \draw (1,.5) circle [radius=1mm] (1.5,0) circle [radius=1mm]; @@ -1806,7 +1951,10 @@ coordinate system. |:shift|, which is especially useful for specifying that a node ``travels'' between positions of the canvas: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, +] \tikz { \draw [help lines] (-0.2,-0.2) grid (2.2,1.2); \draw (1,1) circle [radius=1mm] (1.5,0) circle [radius=1mm]; @@ -1839,10 +1987,14 @@ The final method of changing the transformation matrix is to animate a using the |meet| or |slice| keys from the |views| library, see Section~\ref{section-library-views}. You can then animate the view using the |view| attribute. The values passed to the |entry| key follow the same - syntax as the views in the view library (though you only animate the + syntax as the views in the |views| library (though you only animate the to-be-viewed rectangle). % -\begin{codeexample}[animation list={0.5,1,1.5,2},animation bb={(1.1,-0.9) rectangle (2.9,0.9)}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations,views}}, + animation list={0.5,1,1.5,2}, + animation bb={(1.1,-0.9) rectangle (2.9,0.9)}, +] \tikz [very thick] { \node (node) [fill = blue!20, draw = blue, very thick, circle] {Click me!}; @@ -1879,7 +2031,10 @@ the to-be-animated attribute. The following keys allows you to change this: A ``base'' value is a value that is used for the attribute whenever the timeline is \emph{not} active: % -\begin{codeexample}[animation list = {0.5,1,1.5,2,2.5}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list = {0.5,1,1.5,2,2.5}, +] \tikz \node [fill = green, text = white] :fill = { 1s = "red", 2s = "blue", base = "orange", begin on = click } {Click me}; @@ -1895,7 +2050,10 @@ the to-be-animated attribute. The following keys allows you to change this: set the base. However, you can also use the |base| key in other ways; most noticeably, you can use it \emph{after} some value: % -\begin{codeexample}[animation list = {0.5,1,1.5,2,2.5}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list = {0.5,1,1.5,2,2.5}, +] \tikz \node [fill = green, text = white] :fill = { 1s = {"red" = base}, 2s = "blue", begin on = click } {Click me}; @@ -1905,7 +2063,10 @@ the to-be-animated attribute. The following keys allows you to change this: the quotes of a value. This is particularly useful for setting up a base value that is also used in a timeline: % -\begin{codeexample}[animation list = {0.5,1,1.5,2,2.5}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list = {0.5,1,1.5,2,2.5}, +] \tikz \node [fill = green, text = white] :fill = { 1s = "red" base, 2s = "blue", begin on = click } {Click me}; @@ -1918,12 +2079,18 @@ the to-be-animated attribute. The following keys allows you to change this: with the last value. You can also think of this as having the animation ``freeze'' at the end. % -\begin{codeexample}[animation list = {0.5,1,1.5,2,2.5}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list = {0.5,1,1.5,2,2.5}, +] \tikz \node :fill = { 1s="red", 2s="blue", forever, begin on=click} [fill = green!50!black, text = white] {Click me}; \end{codeexample} % -\begin{codeexample}[animation list = {0.5,1,1.5,2,2.5}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list = {0.5,1,1.5,2,2.5}, +] \tikz \node [fill = green!50!black, text = white] :fill = { 1s = "red", 2s = "blue", begin on = click } {Click me}; @@ -1968,7 +2135,7 @@ to these questions. will run, relative to the moment when the graphic is displayed from 3\,s to 4\,s. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{animations}}] \tikz \node [fill = green!50!black, text = white] :rotate = { 1s = "0", 5s = "90", begin = 2s, end = 4s } {Click me}; @@ -2005,7 +2172,7 @@ the moment a specific \emph{event} happens using the following key: referenced object is the node with the label |2| since it is the most recently referenced node with \meta{id} |X|. % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{animations}}] \tikz [very thick] { \node (X) at (1,1.2) [fill = blue!20, draw = blue, circle] {1}; \node (X) at (1,0.4) [fill = orange!20, draw = orange, circle] {2}; @@ -2021,7 +2188,7 @@ the moment a specific \emph{event} happens using the following key: the next) object with the given \meta{id}, not to a previous one. This, in the next example, the referenced node is the one with label |3|. % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{animations}}] \tikz [very thick] { \node (X) at (1,1.2) [fill = blue!20, draw = blue, circle] {1}; \node (X) at (1,0.4) [fill = blue!20, draw = blue, circle] {2}; @@ -2050,7 +2217,7 @@ the moment a specific \emph{event} happens using the following key: when the user clicks on the triggering object with a mouse (or something equivalent). % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{animations}}] \tikz \node :rotate = { 0s="0", 2s="90", begin on = {click}} [fill = blue!20, draw = blue, circle, ultra thick] {Here!}; \end{codeexample} @@ -2060,7 +2227,7 @@ the moment a specific \emph{event} happens using the following key: Shorthand for |event=mousedown|. The event gets triggered when the user presses a mouse button down on the object. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{animations}}] \tikz \node :rotate = { 0s="0", 2s="90", begin on = {mouse down}} [fill = blue!20, draw = blue, circle, ultra thick] {Here!}; \end{codeexample} @@ -2070,7 +2237,7 @@ the moment a specific \emph{event} happens using the following key: Shorthand for |event=mouseup| and gets triggered, of course, when a pressed button is released on the object. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{animations}}] \tikz \node :rotate = { 0s="0", 2s="90", begin on = {mouse up} } [fill = blue!20, draw = blue, circle, ultra thick] {Here!}; \end{codeexample} @@ -2080,7 +2247,7 @@ the moment a specific \emph{event} happens using the following key: Shorthand for |event=mouseover|. The event gets triggered the moment the mouse cursor moves over the object. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{animations}}] \tikz \node :rotate = { 0s="0", 2s="90", begin on = {mouse over} } [fill = blue!20, draw = blue, circle, ultra thick] {Here!}; \end{codeexample} @@ -2091,7 +2258,7 @@ the moment a specific \emph{event} happens using the following key: times, namely each time the mouse moves while being ``over'' the object. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{animations}}] \tikz \node :rotate = { 0s="0", 2s="90", begin on = {mouse move} } [fill = blue!20, draw = blue, circle, ultra thick] {Here!}; \end{codeexample} @@ -2101,7 +2268,7 @@ the moment a specific \emph{event} happens using the following key: Shorthand for |event=mouseout|. The opposite of |mouse over|: triggered when the mouse leaves the object. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{animations}}] \tikz \node :rotate = { 0s="0", 2s="90", begin on = {mouse out} } [fill = blue!20, draw = blue, circle, ultra thick] {Here!}; \end{codeexample} @@ -2113,7 +2280,7 @@ the moment a specific \emph{event} happens using the following key: |of whom|. This means that the current animation will begin when some other animation begins. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{animations}}] \tikz \node [animate = { myself:rotate = { 0s="0", 2s="90", begin on = {begin, of next=anim}}, myself:xshift = { 0s="0mm", 2s="5mm", begin on = {click}, name=anim} @@ -2128,7 +2295,7 @@ the moment a specific \emph{event} happens using the following key: This means that the current animation will \emph{begin} when some other animation \emph{ends}. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{animations}}] \tikz \node [animate = { myself:rotate = { 0s="0", 2s="90", begin on = {end, of next=anim}}, myself:xshift = { 0s="0mm", 2s="5mm", begin on = {click}, name=anim } @@ -2156,11 +2323,14 @@ the moment a specific \emph{event} happens using the following key: \meta{number} times. % \begin{codeexample}[ - animation list={ - 0.333/\frac{1}{3},0.666/\frac{2}{3},1, - 1.333/1\frac{1}{3},1.666/1\frac{2}{3},2, - 2.333/2\frac{1}{3},2.666/2\frac{2}{3},3, - 3.333/2\frac{1}{3},3.666/2\frac{2}{3},4}] + preamble={\usetikzlibrary{animations}}, + animation list={ + 0.333/\frac{1}{3},0.666/\frac{2}{3},1, + 1.333/1\frac{1}{3},1.666/1\frac{2}{3},2, + 2.333/2\frac{1}{3},2.666/2\frac{2}{3},3, + 3.333/2\frac{1}{3},3.666/2\frac{2}{3},4% + }, +] \tikz \node [animate = { myself: = { :rotate = { 0s="0", 2s="90", begin on = {repeat = 2, of next = anim }, @@ -2200,7 +2370,7 @@ should happen: \item |false| means that once the animation has started once, it will never be restarted. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{animations}}] \tikz \node :rotate = { 0s="0", 2s="90", restart = false, begin on = {click}} [fill = blue!20, draw = blue, circle, ultra thick] {Here!}; @@ -2210,7 +2380,7 @@ should happen: \item |when not active| means that the animation will restart when the event is triggered, but \emph{not} while the animation is running. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{animations}}] \tikz \node :rotate = { 0s="0", 2s="90", restart = when not active, begin on = {click}} [fill = blue!20, draw = blue, circle, ultra thick] {Here!}; @@ -2237,7 +2407,10 @@ the |end on| allows you to stop is early when some event happens: \begin{itemize} \item Empty, in which case the timeline repeats forever. % -\begin{codeexample}[animation list={1,2,3,4,5}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5}, +] \tikz \node :rotate = { 0s = "0", 2s = "90", repeats, begin on = click } [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; @@ -2246,7 +2419,10 @@ the |end on| allows you to stop is early when some event happens: \item A \meta{number} (like |2| or |3.25|), in which case the timeline repeats \meta{number} times. % -\begin{codeexample}[animation list={1,2,3,4,5}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5}, +] \tikz \node :rotate = { 0s = "0", 2s = "90", repeats = 1.75, begin on = click } [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; @@ -2256,7 +2432,10 @@ the |end on| allows you to stop is early when some event happens: which case the timeline repeats however often necessary so that it stops exactly after \meta{time}. % -\begin{codeexample}[animation list={1,2,3,4,5}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5}, +] \tikz \node :rotate = { 0s = "0", 2s = "90", repeats = for 3.5s, begin on = click } [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; @@ -2278,13 +2457,19 @@ the |end on| allows you to stop is early when some event happens: jump back, and so on for five times. In contrast, when the repeats are accumulating, the scope will move by 5\,cm over 5\,s in total. % -\begin{codeexample}[animation list={1,2,3,4,5}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5}, +] \tikz \node :rotate = { 0s = "0", 2s = "90", begin on = click, repeats = accumulating } [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; \end{codeexample} % -\begin{codeexample}[animation list={1,2,3,4,5}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={1,2,3,4,5}, +] \tikz \node :rotate = { 0s = "0", 2s = "90", begin on = click, repeats = for 4s accumulating } [fill = blue!20, draw = blue, ultra thick, circle] {Click me!}; @@ -2354,7 +2539,10 @@ entry control={0.9}{1}, start position, then a smooth arrival at the end position, and, finally both. % -\begin{codeexample}[animation list={0.333/\frac{1}{3},0.666/\frac{2}{3},1,1.333/1\frac{1}{3},1.666/1\frac{2}{3}}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.333/\frac{1}{3},0.666/\frac{2}{3},1,1.333/1\frac{1}{3},1.666/1\frac{2}{3}}, +] \tikz { \foreach \i in {0,0.1,...,1} \draw (-0.9,.9-\i) -- ++(1.8,0); \node :yshift = { begin on = click, @@ -2365,7 +2553,10 @@ entry control={0.9}{1}, } \end{codeexample} -\begin{codeexample}[animation list={0.333/\frac{1}{3},0.666/\frac{2}{3},1,1.333/1\frac{1}{3},1.666/1\frac{2}{3}}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.333/\frac{1}{3},0.666/\frac{2}{3},1,1.333/1\frac{1}{3},1.666/1\frac{2}{3}}, +] \tikz { \foreach \i in {0,0.1,...,1} \draw (-0.9,.9-\i) -- ++(1.8,0); \node :yshift = { begin on = click, @@ -2376,7 +2567,10 @@ entry control={0.9}{1}, } \end{codeexample} -\begin{codeexample}[animation list={0.333/\frac{1}{3},0.666/\frac{2}{3},1,1.333/1\frac{1}{3},1.666/1\frac{2}{3}}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.333/\frac{1}{3},0.666/\frac{2}{3},1,1.333/1\frac{1}{3},1.666/1\frac{2}{3}}, +] \tikz { \foreach \i in {0,0.1,...,1} \draw (-0.9,.9-\i) -- ++(1.8,0); \node :yshift = { begin on = click, @@ -2409,7 +2603,10 @@ entry control={0.9}{1}, key with an animation having only two times is particularly easy, since we only need to set |ease| once: % -\begin{codeexample}[animation list={0.333/\frac{1}{3},0.666/\frac{2}{3},1,1.333/1\frac{1}{3},1.666/1\frac{2}{3}}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.333/\frac{1}{3},0.666/\frac{2}{3},1,1.333/1\frac{1}{3},1.666/1\frac{2}{3}}, +] \tikz { \foreach \i in {0,0.1,...,1} \draw (-0.9,.9-\i) -- ++(1.8,0); \node :yshift = { begin on = click, ease, 0s = "0cm", 2s = "-10mm" } @@ -2428,7 +2625,10 @@ from one value to the next. There are two keys for this: value. This is similar to an exit control where the curve is ``infinitely flat''. % -\begin{codeexample}[animation list={0.5,1,1.5,2,2.5}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2,2.5}, +] \tikz { \foreach \i in {0,0.1,...,1} \draw (-0.9,.9-\i) -- ++(1.8,0); \node :yshift = { begin on = click, @@ -2446,7 +2646,10 @@ from one value to the next. There are two keys for this: value right at the beginning of the time interval. It is similar to an entry control specifying a ``flat'' curve. % -\begin{codeexample}[animation list={0.5,1,1.5,2,2.5}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2,2.5}, +] \tikz { \foreach \i in {0,0.1,...,1} \draw (-0.9,.9-\i) -- ++(1.8,0); \node :yshift = { begin on = click, @@ -2481,7 +2684,7 @@ animation at different points in time and which can then be inserted alongside each other into the printed document. This approach has been used with the examples of animations in this manual. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{animations}}] \foreach \t in {0.5, 1, 1.5, 2} \tikz [make snapshot of = \t] \fill :fill = {0s="black", 2s="red"} (0,0) circle [radius = 5mm]; @@ -2498,7 +2701,7 @@ Creating snapshots is done using the following key: computation match the computations done by viewer applications as best as possible). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{animations}}] \tikz [make snapshot of = 1s] { \fill :fill = { 0s = "black", 2s = "white" } (0,0) rectangle ++(1,1); \fill :fill = { 1s = "black", 3s = "white" } (2,0) rectangle ++(1,1); @@ -2522,7 +2725,7 @@ Creating snapshots is done using the following key: Computationally, for the timeline the \meta{start time} is subtracted from the snapshot's \meta{time} when the value needs to be determined: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{animations}}] \tikz [make snapshot of = 1s] { \fill :fill = { 0s = "black", 2s = "white", begin snapshot = 1s } (0,0) rectangle ++(1,1); @@ -2565,7 +2768,7 @@ Creating snapshots is done using the following key: the timeline, while this key would not apply the animation at all (it has already ended at time $t + \epsilon$). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{animations}}] \tikz [make snapshot of = 2s] \fill :fill = { 0s = "green", 2s = "red" } (0,0) rectangle ++(1,1); \tikz [make snapshot after = 2s] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex index 70aaf271cab..e3e500ae9a2 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-arrows.tex @@ -20,7 +20,7 @@ and you can change the appearance of each of them individually using a special syntax. The following example is a perhaps slightly ``excessive'' demonstration of what you can do (you need to load the |arrows.meta| library for it to work): % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,bending,positioning}}] \tikz { \node [circle,draw] (A) {A}; \node [circle,draw] (B) [right=of A] {B}; @@ -93,7 +93,7 @@ Let us start with an introduction to the basics of the |arrows| key: text |arrows=|.} What happens is that every (otherwise unknown) option that contains a |-| is interpreted as an arrow specification. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \begin{tikzpicture} \draw[->] (0,0) -- (1,0); \draw[>-Stealth] (0,0.3) -- (1,0.3); @@ -115,7 +115,7 @@ Let us start with an introduction to the basics of the |arrows| key: Section~\ref{section-arrow-config} below by adding options in square brackets following the arrow tip kind: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \begin{tikzpicture} \draw[-{Stealth[red]}] (0,0) -- (1,0); \end{tikzpicture} @@ -224,6 +224,7 @@ the setting of the key |tips|: % Two subpaths, but one is closed: No tips, even though last subpath is open \tikz [<->] \draw (0,0) circle[radius=2pt] (2,0) -- (3,0); \end{codeexample} + % \end{key} One common pitfall when arrow tips are added to a path should be addressed @@ -283,9 +284,9 @@ loaded. \subsubsection{Size} -The most important configuration parameter of an arrow tip is -undoubtedly its size. The following two keys are the main keys that -are important in this context: +The most important configuration parameter of an arrow tip is undoubtedly its +size. The following two keys are the main keys that are important in this +context: \begin{key}{/pgf/arrow keys/length=\meta{dimension}| |\opt{\meta{line width factor}}% | |\opt{\meta{outer factor}}} @@ -295,19 +296,19 @@ are important in this context: distance from the ``very tip'' of the arrow to its ``back end'' along the line: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz{ \draw [-{Stealth[length=5mm]}] (0,0) -- (2,0); \draw [|<->|] (1.5,.4) -- node[above=1mm] {5mm} (2,.4); } \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz{ \draw [-{Latex[length=5mm]}] (0,0) -- (2,0); \draw [|<->|] (1.5,.4) -- node[above=1mm] {5mm} (2,.4); } \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz{ \draw [-{Classical TikZ Rightarrow[length=5mm]}] (0,0) -- (2,0); \draw [|<->|] (1.5,.6) -- node[above=1mm] {5mm} (2,.6); @@ -354,15 +355,15 @@ are important in this context: resulting length is 3pt. Finally, for the middle case, the ``middle'' between 5pt and 1pt is 3pt, so the length is 9pt. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [line width=1pt, double distance=3pt, arrows = {-Latex[length=0pt 3 0]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [line width=1pt, double distance=3pt, arrows = {-Latex[length=0pt 3 .5]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [line width=1pt, double distance=3pt, arrows = {-Latex[length=0pt 3 1]} ] (0,0) -- (1,0); \end{codeexample} @@ -384,7 +385,7 @@ are important in this context: ``pixel''. Thus, the thickness of the stroked line and also the miter ends should be taken into account: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz{ \draw [line width=1mm, -{Stealth[length=10mm, open]}] (0,0) -- (2,0); @@ -399,7 +400,7 @@ are important in this context: This creates some ``visual consistency'' if the two modes are mixed or if you later one change the mode. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz{ \draw [line width=1mm, -{Stealth[length=10mm, open, round]}] (0,0) -- (2,0); @@ -423,10 +424,10 @@ are important in this context: the two optional factor numbers following the \meta{dimension} is the same as for the |length| key. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [arrows = {-Latex[width=10pt, length=10pt]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [arrows = {-Latex[width=0pt 10, length=10pt]}] (0,0) -- (1,0); \end{codeexample} \end{key} @@ -456,10 +457,10 @@ length = 10pt, width'=5pt 2, length=7pt the resulting width will be $19\mathrm{pt} = 5\mathrm{pt} + 2\cdot 7\mathrm{pt}$. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [arrows = {-Latex[width'=0pt .5, length=10pt]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [arrows = {-Latex[width'=0pt .5, length=15pt]}] (0,0) -- (1,0); \end{codeexample} % @@ -480,10 +481,10 @@ length = 10pt, width'=5pt 2, length=7pt line width, where the line width is computed based on the \meta{outer factor} as described for the |length| key. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [arrows = {-Stealth[length=10pt, inset=5pt]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [arrows = {-Stealth[length=10pt, inset=2pt]}] (0,0) -- (1,0); \end{codeexample} @@ -509,10 +510,10 @@ length = 10pt, width'=5pt 2, length=7pt optional factors are given, they add a certain multiple of the line width to the \meta{dimension} before the sine and cosines are computed. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [arrows = {-Stealth[inset=0pt, angle=90:10pt]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [arrows = {-Stealth[inset=0pt, angle=30:10pt]}] (0,0) -- (1,0); \end{codeexample} % @@ -523,11 +524,11 @@ length = 10pt, width'=5pt 2, length=7pt the arrow length. This results in an arrow tip with an opening angle of \meta{angle} at its tip and with the specified |length| unchanged. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [arrows = {-Stealth[inset=0pt, length=10pt, angle'=90]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [arrows = {-Stealth[inset=0pt, length=10pt, angle'=30]}] (0,0) -- (1,0); \end{codeexample} @@ -550,7 +551,7 @@ keys are useful: size parameters defined by special-purpose arrow tip kinds). Everything is simply scaled by the given \meta{factor}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz { \draw [arrows = {-Stealth[]}] (0,1) -- (1,1); \draw [arrows = {-Stealth[scale=1.5]}] (0,0.5) -- (1,0.5); @@ -571,7 +572,7 @@ keys simultaneously): ``along the axis of the arrow'', that is, to the length and to the inset, but not to the width. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz { \draw [arrows = {-Stealth[]}] (0,1) -- (1,1); \draw [arrows = {-Stealth[scale length=1.5]}] (0,0.5) -- (1,0.5); @@ -584,7 +585,7 @@ keys simultaneously): \begin{key}{/pgf/arrows keys/scale width=\meta{factor} (initially 1)} Like |scale length|, but for dimensions related to the width. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz { \draw [arrows = {-Stealth[]}] (0,1) -- (1,1); \draw [arrows = {-Stealth[scale width=1.5]}] (0,0.5) -- (1,0.5); @@ -606,7 +607,7 @@ these arrow tips, you use the following key: setting the length and width''. In contrast, the |arc| key is used to set the degrees of arcs that are part of an arrow tip: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] { \draw [arrows = {-Hooks[]}] (0,1) -- (1,1); \draw [arrows = {-Hooks[arc=90]}] (0,0.5) -- (1,0.5); @@ -625,7 +626,7 @@ You can ``slant'' arrow tips using the following key: Slanting is used to create an ``italics'' effect for arrow tips: All arrow tips get ``slanted'' a little bit relative to the axis of the arrow: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz { \draw [arrows = {->[]}] (0,1) -- (1,1); \draw [arrows = {->[slant=.5]}] (0,0.5) -- (1,0.5); @@ -641,7 +642,7 @@ You can ``slant'' arrow tips using the following key: Here is another example where slanting is used to match italic text: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,graphs}}] \tikz [>={[slant=.3] To[] To[]}] \graph [math nodes] { A -> B <-> C }; \end{codeexample} @@ -665,10 +666,10 @@ You can ``slant'' arrow tips using the following key: If you apply this key twice, the effect cancels, which is useful for the definition of shorthands (which will be discussed later). % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [arrows = {-Stealth[reversed]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [arrows = {-Stealth[reversed, reversed]}] (0,0) -- (1,0); \end{codeexample} \end{key} @@ -676,10 +677,10 @@ You can ``slant'' arrow tips using the following key: \begin{key}{/pgf/arrow keys/harpoon} The key requests that only the ``left half'' of the arrow tip should drawn: % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [arrows = {-Stealth[harpoon]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [arrows = {->[harpoon]}] (0,0) -- (1,0); \end{codeexample} % @@ -695,10 +696,10 @@ You can ``slant'' arrow tips using the following key: only for asymmetric arrow tips like the harpoons created using the |harpoon| option. % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [arrows = {-Stealth[harpoon]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [arrows = {-Stealth[harpoon,swap]}] (0,0) -- (1,0); \end{codeexample} % @@ -713,10 +714,10 @@ You can ``slant'' arrow tips using the following key: \begin{key}{/pgf/arrow keys/right} A shorthand for |harpoon, swap|. % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [arrows = {-Stealth[left]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [arrows = {-Stealth[right]}] (0,0) -- (1,0); \end{codeexample} % @@ -743,10 +744,10 @@ The following options allow you to configure how arrow tips are colored: this default draw color of the path. Since this is the default behaviour, you usually do not need to specify anything: % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [red, arrows = {-Stealth}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [blue, arrows = {-Stealth}] (0,0) -- (1,0); \end{codeexample} @@ -754,10 +755,10 @@ The following options allow you to configure how arrow tips are colored: arrow tip should get this color \emph{instead} of the color of the main path: % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [red, arrows = {-Stealth[color=blue]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [red, arrows = {-Stealth[color=black]}] (0,0) -- (1,0); \end{codeexample} @@ -767,7 +768,7 @@ The following options allow you to configure how arrow tips are colored: key is the name of a color and, if so, execute |color=|\meta{arrow key}. So, the first of the above examples can be rewritten as follows: % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [red, arrows = {-Stealth[blue]}] (0,0) -- (1,0); \end{codeexample} @@ -781,7 +782,7 @@ The following options allow you to configure how arrow tips are colored: fill the arrow tips, even if a different color is specified for filling the path: % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [draw=red, fill=red!50, arrows = {-Stealth[length=10pt]}] (0,0) -- (1,1) -- (2,0); \end{codeexample} @@ -800,7 +801,7 @@ The following options allow you to configure how arrow tips are colored: This color can be different from the color used to draw (stroke) the arrow tip: % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz { \draw [help lines] (0,-.5) grid [step=1mm] (1,.5); \draw [thick, red, arrows = {-Stealth[fill=white,length=15pt]}] (0,0) -- (1,0); @@ -810,7 +811,7 @@ The following options allow you to configure how arrow tips are colored: You can also specify the special ``color'' |none|. In this case, the arrow tip is not filled at all (not even with white): % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz { \draw [help lines] (0,-.5) grid [step=1mm] (1,.5); \draw [thick, red, arrows = {-Stealth[fill=none,length=15pt]}] (0,0) -- (1,0); @@ -830,7 +831,7 @@ The following options allow you to configure how arrow tips are colored: come first since it will reset the filling to the color specified for drawing. % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz { \draw [help lines] (0,-.5) grid [step=1mm] (1,.5); \draw [thick, red, arrows = {-Stealth[color=blue, fill=white, length=15pt]}] @@ -843,7 +844,7 @@ The following options allow you to configure how arrow tips are colored: path. (This special color is always available and always set to the current filling color of the graphic state.): % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [ultra thick] \draw [draw=red, fill=red!50, arrows = {-Stealth[length=15pt, fill=pgffillcolor]}] (0,0) -- (1,1) -- (2,0); @@ -878,22 +879,22 @@ arrow tip: it will have an effect on where the exact ``tip'' of the arrow is since this will always be exactly at the end of the arrow: % -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [line width=2mm] \draw [arrows = {-Computer Modern Rightarrow[line cap=butt]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [line width=2mm] \draw [arrows = {-Computer Modern Rightarrow[line cap=round]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [line width=2mm] \draw [arrows = {-Bracket[reversed,line cap=butt]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [line width=2mm] \draw [arrows = {-Bracket[reversed,line cap=round]}] (0,0) -- (1,0); @@ -906,22 +907,22 @@ arrow tip: the key only has an effect on paths that have ``corners'' in them. The same rules as for |line cap| apply: the size is not affects, but the tip end is: % - \begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [line width=2mm] \draw [arrows = {-Computer Modern Rightarrow[line join=miter]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [line width=2mm] \draw [arrows = {-Computer Modern Rightarrow[line join=round]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [line width=2mm] \draw [arrows = {-Bracket[reversed,line join=miter]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [line width=2mm] \draw [arrows = {-Bracket[reversed,line join=round]}] (0,0) -- (1,0); @@ -935,11 +936,11 @@ The following keys set both of the above: A shorthand for |line cap=round, line join=round|, resulting in ``rounded'' arrow heads. % - \begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [line width=2mm] \draw [arrows = {-Computer Modern Rightarrow[round]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [line width=2mm] \draw [arrows = {-Bracket[reversed,round]}] (0,0) -- (1,0); \end{codeexample} @@ -949,11 +950,12 @@ The following keys set both of the above: \begin{key}{/pgf/arrow keys/sharp} A shorthand for |line cap=butt, line join=miter|, resulting in ``sharp'' or ``pointed'' arrow heads. - \begin{codeexample}[width=3cm] + % +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [line width=2mm] \draw [arrows = {-Computer Modern Rightarrow[sharp]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=3cm] +\begin{codeexample}[width=3cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz [line width=2mm] \draw [arrows = {-Bracket[reversed,sharp]}] (0,0) -- (1,0); \end{codeexample} @@ -972,10 +974,10 @@ You can also set the width of lines used inside arrow tips: The meaning of the factors is as usual the same as for |length| or |width|. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [arrows = {-Latex[line width=0.1pt, fill=white, length=10pt]}] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [arrows = {-Latex[line width=1pt, fill=white, length=10pt]}] (0,0) -- (1,0); \end{codeexample} % @@ -998,7 +1000,7 @@ To get a feeling for the difficulties involved, consider the following situation: We have a ``gray wall'' at the $x$-coordinate of and a red line that ends in its middle. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{patterns}}] \def\wall{ \fill [fill=black!50] (1,-.5) rectangle (2,.5); \pattern [pattern=bricks] (1,-.5) rectangle (2,.5); \draw [line width=1pt] (1cm+.5pt,-.5) -- ++(0,1); } @@ -1012,10 +1014,13 @@ ends in its middle. Now we wish to add a blue open arrow tip the red line like, say, |Stealth[length=1cm,open,blue]|: % +\begin{codeexample}[setup code,hidden] +\usetikzlibrary{patterns} \def\wall{ \fill [fill=black!50] (1,-.5) rectangle (2,.5); \pattern [pattern=bricks] (1,-.5) rectangle (2,.5); \draw [line width=1pt] (1cm+.5pt,-.5) -- ++(0,1); } -\begin{codeexample}[] +\end{codeexample} +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \begin{tikzpicture} \wall \draw [red,line width=1mm,-{Stealth[length=1cm,open,blue]}] @@ -1086,7 +1091,7 @@ way (although the option for selecting this option is politely just called same amount to ensure that the line still has the same tangent at the end. This will result in the following: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \begin{tikzpicture} \wall \draw [red!25,line width=1mm] (-1,0) -- (1,0); @@ -1153,7 +1158,7 @@ you need to load the following library: original line ended. Then, the arrow is rotated so the \emph{the visual end lies on the line}: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,bending}}] \begin{tikzpicture} \wall \draw [red!25,line width=1mm] (-1,0) -- (1,0); @@ -1183,7 +1188,7 @@ you need to load the following library: |flex=.5| will rotate the arrow's visual end ``halfway away from the tangent towards the actual position on the line''. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,bending}}] \begin{tikzpicture} \wall \draw [red!25,line width=1mm] (-1,0) -- (1,0); @@ -1191,7 +1196,7 @@ you need to load the following library: (-1,-.5) .. controls (0,-.5) and (0,0) .. (1,0); \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,bending}}] \begin{tikzpicture} \wall \draw [red!25,line width=1mm] (-1,0) -- (1,0); @@ -1204,7 +1209,7 @@ you need to load the following library: arrow tip. Open arrow tips do not go well with a flex value other than~|1|. Here is a more realistic use of the |flex=0| key: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,bending}}] \begin{tikzpicture} \wall \draw [red!25,line width=1mm] (-1,0) -- (1,0); @@ -1216,7 +1221,7 @@ you need to load the following library: If there are several arrow tips on a path, the |flex| option positions them independently, so that each of them lies optimally on the path: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{bending}}] \begin{tikzpicture} \wall \draw [red!25,line width=1mm] (-1,0) -- (1,0); @@ -1235,7 +1240,7 @@ you need to load the following library: distance of |6.25mm| from the tip lie on the path, we have the point at a distance of |1cm| from the tip lie on the path: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,bending}}] \begin{tikzpicture} \wall \draw [red!25,line width=1mm] (-1,0) -- (1,0); @@ -1251,7 +1256,7 @@ you need to load the following library: but rather with tips like the standard |>| in the context of a strongly curved line: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,bending}}] \begin{tikzpicture} \wall \draw [red!25,line width=1mm] (-1,0) -- (1,0); @@ -1269,7 +1274,7 @@ you need to load the following library: that it should be rotated. This is exactly what the |flex'| option does since it allows us to align the ``back end'' of the tip with the red line: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,bending}}] \begin{tikzpicture} \wall \draw [red!25,line width=1mm] (-1,0) -- (1,0); @@ -1294,7 +1299,7 @@ you need to load the following library: tips. On the other hand, for most arrow tips their bend version are visually quite pleasing and create a sophisticated look: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,bending}}] \begin{tikzpicture} \wall \draw [red!25,line width=1mm] (-1,0) -- (1,0); @@ -1302,7 +1307,7 @@ you need to load the following library: (-1,-.5) .. controls (0,-.5) and (0,0) .. (1,0); \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{bending}}] \begin{tikzpicture} \wall \draw [red!25,line width=1mm] (-1,0) -- (1,0); @@ -1310,7 +1315,7 @@ you need to load the following library: (-1,-.5) .. controls (0,-.5) and (0,0) .. (1,0); \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,bending}}] \begin{tikzpicture} \wall \draw [red!25,line width=1mm] (-1,0) -- (1,0); @@ -1320,6 +1325,9 @@ you need to load the following library: \end{codeexample} % \end{key} +% TODOsp: codeexamples: `bending` library is needed up to here +% TODOsp: codeexamples: `\def\wall` + `patterns` library are needed up to here +% TODOsp: codeexamples: `arrows.meta` library needed up to here \subsection{Arrow Tip Specifications} @@ -1475,7 +1483,7 @@ following arrow key is important: Let us now have a look at some examples. First, we use two arrow tips with different separations between them: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz { \draw [-{>[sep=1pt]>[sep= 2pt]>}] (0,1.0) -- (1,1.0); \draw [-{>[sep=1pt]>[sep=-2pt]>}] (0,0.5) -- (1,0.5); @@ -1489,7 +1497,7 @@ following arrow key is important: but will rather leave the specified amount of space. This is usually quite desirable. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,positioning}}] \tikz { \node [draw] (A) {A}; \node [draw] (B) [right=of A] {B}; @@ -1550,7 +1558,7 @@ the first one ``wins'' (for end specifications, otherwise the last one). Note that |.| is parsed as any other shorthand. In particular, if you wish to add a dot after a normal arrow tip kind name, you need to add brackets: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz [very thick] \draw [-{Stealth[] . Stealth[] Stealth[]}] (0,0) -- (2,0); \end{codeexample} % @@ -1583,11 +1591,11 @@ done using the following handler: keys inside the \meta{end specification} are translated automatically. \todosp{remaining instance of bug \#473} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz [foo /.tip = {Stealth[sep]. >>}] \draw [-foo] (0,0) -- (2,0); \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz [foo /.tip = {Stealth[sep] Latex[sep]}, bar /.tip = {Stealth[length=10pt,open]}] \draw [-{foo[red] . bar}] (0,0) -- (2,0); @@ -1633,7 +1641,7 @@ done using the following handler: \begin{codeexample}[] \tikz \draw [>->] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [Stealth-Stealth] (0,0) -- (1,0); \end{codeexample} % @@ -1651,10 +1659,10 @@ done using the following handler: start specifications}|-|\meta{name in end specifications}. Thus, to set the |>| key correctly, you actually need to write % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz [<-> /.tip = Stealth] \draw [<->>] (0,0) -- (1,0); \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz [<-> /.tip = Latex] \draw [>-<] (0,0) -- (1,0); \end{codeexample} @@ -1673,14 +1681,14 @@ done using the following handler: By default, |>| is a shorthand for |To| and |To| is a shorthand for |to| (an arrow from the old libraries) when |arrows.meta| is not loaded library. - When |arrow.meta| is loaded, |To| is redefined to mean the same as + When |arrows.meta| is loaded, |To| is redefined to mean the same as |Computer Modern Rightarrow|. \end{handler} \begin{key}{/tikz/>=\meta{end arrow specification}} This is a short way of saying |<->/.tip=|\meta{end arrow specification}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \begin{tikzpicture}[scale=2,ultra thick] \begin{scope}[>=Latex] \draw[>->] (0pt,3ex) -- (1cm,3ex); @@ -1695,6 +1703,14 @@ done using the following handler: % \end{key} +\begin{key}{/tikz/shorten <=\meta{length}} + Shorten the path by \meta{length} in the direction of the starting point. +\end{key} + +\begin{key}{/tikz/shorten >=\meta{length}} + Shorten the path by \meta{length} in the direction of the end point. +\end{key} + \subsubsection{Scoping of Arrow Keys} \label{section-arrow-scopes} @@ -1835,7 +1851,7 @@ classified in different groups: difference is that the background will ``shine through'' an open arrow, while a filled arrow always obscures the background: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz { \shade [left color=white, right color=red!50] (0,0) rectangle (4,1); @@ -1911,7 +1927,7 @@ classified in different groups: \end{arrowtipsimple} \begin{arrowtip}{Bracket}{ - This is an instance of the |Tee Barb| arrow tip that results in something + This is an instance of the |Tee Barb| \todosp{no space shown here} arrow tip that results in something resembling a bracket. Just like the |Parenthesis| arrow tip, a |Bracket| is not modelled from a text square bracket, but rather its size has been chosen so that it fits with the other arrow tips. @@ -1973,7 +1989,7 @@ classified in different groups: \end{arrowtip} \begin{arrowtip}{Parenthesis}{ - This arrow tip is an instantiation of the |Arc Barb| so that it resembles a + This arrow tip is an instantiation of the |Arc Barb| \todosp{no space shown here} so that it resembles a parenthesis. However, the idea is not to recreate a ``real'' parenthesis as it is used in text, but rather a ``bow'' at a size that harmonizes with the other arrow tips at their default sizes. @@ -2107,7 +2123,7 @@ classified in different groups: like \texttt{\string\rightarrow} ($\to$) of the Computer Modern math fonts. However, it is not a ``perfect'' match: the line caps and joins of the ``real'' $\to$ are rounded differently from this arrow tip; but it takes a - keen eye to notice the difference. When the |arrow.meta| library is loaded, + keen eye to notice the difference. When the |arrows.meta| library is loaded, this arrow tip becomes the default of |To| and, thus, is used whenever |>| is used (unless, of course, you redefined |>|). }% @@ -2138,7 +2154,7 @@ classified in different groups: like \TeX's \texttt{\string\implies} arrow ($\implies$). A typical use of this arrow tip is % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,graphs}}] \tikz \graph [clockwise=3, math nodes, edges = {double equal sign distance, -Implies}] { "\alpha", "\beta", "\gamma"; @@ -2153,7 +2169,7 @@ classified in different groups: \end{arrowtipsimple} \begin{arrowtipsimple}{To} - This is a shorthand for |Computer Modern Rightarrow| when the |arrow.meta| + This is a shorthand for |Computer Modern Rightarrow| when the |arrows.meta| library is loaded. Otherwise, it is a shorthand for the classical \tikzname\ rightarrow. \end{arrowtipsimple} @@ -2382,7 +2398,7 @@ different caps for the end and the start. happens to differ from the normal cap. In the following example, the line cap is ``round'', but, nevertheless, the right end is a ``butt'' cap: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [line width=1ex, line cap=round, -Butt Cap] (0,0) -- (1,0); \end{codeexample} % @@ -2399,7 +2415,7 @@ different caps for the end and the start. {length=5mm,inset=-1cm}% {-15mm} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [line width=1ex, -{Round Cap []. Fast Round[] Fast Round[]}] (0,0) -- (1,0); @@ -2408,7 +2424,7 @@ different caps for the end and the start. Note that in conjunction with the |bend| option, this works even quite well for curves: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,bending}}] \tikz [f/.tip = Fast Round] % shorthand \draw [line width=1ex, -{[bend] Round Cap[] . f f f}] (0,0) to [bend left] (1,0); @@ -2431,7 +2447,7 @@ different caps for the end and the start. {length=5mm,inset=-1cm}% {-15mm} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \tikz \draw [line width=1ex, -{Triangle Cap []. Fast Triangle[] Fast Triangle[]}] (0,0) -- (1,0); @@ -2439,7 +2455,7 @@ different caps for the end and the start. % Again, this tip works well for curves: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,bending}}] \tikz [f/.tip = Fast Triangle] % shorthand \draw [line width=1ex, -{[bend] Triangle Cap[] . f f f}] (0,0) to [bend left] (1,0); diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-coordinates.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-coordinates.tex index c3921486e6d..047592f5c26 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-coordinates.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-coordinates.tex @@ -380,7 +380,7 @@ following coordinate system: \begin{key}{/tikz/anchor=\meta{anchor}} Specifies an anchor of the node. Here is an example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \begin{tikzpicture} \node (shape) at (0,2) [draw] {|class Shape|}; \node (rect) at (-2,0) [draw] {|class Rectangle|}; @@ -401,7 +401,7 @@ following coordinate system: This coordinate refers to a point of the node's border where a ray shot from the center in the given angle hits the border. Here is an example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture} \node (start) [draw,shape=ellipse] {start}; \foreach \angle in {-90, -80, ..., 90} @@ -415,7 +415,7 @@ following coordinate system: |angle=| option. In this case, \tikzname\ will calculate an appropriate border position for you. Here is an example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture} \path (0,0) node(a) [ellipse,rotate=10,draw] {An ellipse} (3,-1) node(b) [circle,draw] {A circle}; @@ -465,7 +465,7 @@ following coordinate system: Here is a more complete example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[fill=blue!20] \draw[help lines] (-1,-2) grid (6,3); \path (0,0) node(a) [ellipse,rotate=10,draw,fill] {An ellipse} @@ -621,7 +621,7 @@ following coordinate system: \item |circle| \end{itemize} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw[help lines] (0,0) grid (3,2); @@ -746,11 +746,11 @@ point $q$. For this situation there is a useful coordinate system. of the line from $A$ to~$B$ and vertically at the middle of the line from $C$ to~$D$: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} - \node (A) at (0,1) {A}; - \node (B) at (1,1.5) {B}; - \node (C) at (2,0) {C}; + \node (A) at (0,1) {A}; + \node (B) at (1,1.5) {B}; + \node (C) at (2,0) {C}; \node (D) at (2.5,-2) {D}; \draw (A) -- (B) node [midway] {x}; @@ -805,7 +805,7 @@ To find the intersection of named paths, the following key is used: Optionally, the prefix |intersection| can be changed, and the total number of intersections stored in a \TeX-macro. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{intersections}}] \begin{tikzpicture}[every node/.style={opacity=1, black, above left}] \draw [help lines] grid (3,2); \draw [name path=ellipse] (2,0.5) ellipse (0.75cm and 1cm); @@ -833,7 +833,7 @@ To find the intersection of named paths, the following key is used: stored in \meta{macro}. \end{key} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{intersections}}] \begin{tikzpicture} \clip (-2,-2) rectangle (2,2); \draw [name path=curve 1] (-2,-1) .. controls (8,-1) and (-8,1) .. (2,1); @@ -854,7 +854,7 @@ To find the intersection of named paths, the following key is used: to the |\foreach| statement and for \meta{list member} a coordinate is created at the already-named intersection. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{intersections}}] \begin{tikzpicture} \clip (-2,-2) rectangle (2,2); \draw [name path=curve 1] (-2,-1) .. controls (8,-1) and (-8,1) .. (2,1); @@ -874,7 +874,7 @@ To find the intersection of named paths, the following key is used: is created. A coordinate name can still, but need not, follow the options. This makes it easy to add labels to intersections: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{intersections}}] \begin{tikzpicture} \clip (-2,-2) rectangle (2,2); \draw [name path=curve 1] (-2,-1) .. controls (8,-1) and (-8,1) .. (2,1); @@ -895,7 +895,7 @@ To find the intersection of named paths, the following key is used: should be one of the paths mentioned in the |/tikz/intersection/of| key. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{intersections}}] \begin{tikzpicture} \clip (-0.5,-0.75) rectangle (3.25,2.25); \foreach \pathname/\shift in {line/0cm, curve/2cm}{ @@ -1074,7 +1074,7 @@ essence, you can add and subtract coordinates, scale them, compute midpoints, and do projections. For instance, |($(a) + 1/3*(1cm,0)$)| is the coordinate that is $1/3 \text{cm}$ to the right of the point |a|: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); @@ -1141,7 +1141,7 @@ whenever it is unclear where the \meta{factor} would end. Here are some examples of coordinate specifications that consist of exactly one \meta{factor} and one \meta{coordinate}: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); @@ -1180,7 +1180,7 @@ second coordinate, not the first. It is permissible to use a \meta{number} that is smaller than $0$ or larger than $1$. The \meta{number} is evaluated using the |\pgfmathparse| command and, thus, it can involve complicated computations. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); @@ -1201,7 +1201,7 @@ computation, namely the partway computation.'' Here are two examples: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,3); @@ -1218,7 +1218,7 @@ Here are two examples: \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (4,4); @@ -1230,7 +1230,7 @@ Here are two examples: You can repeatedly apply modifiers. That is, after any modifier you can add another (possibly different) modifier. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); @@ -1255,7 +1255,7 @@ When you write \meta{a}|!|\meta{dimension}|!|\meta{b}, this means the following: Use the point that is distanced \meta{dimension} from \meta{a} on the straight line from \meta{a} to \meta{b}. Here is an example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); @@ -1275,7 +1275,7 @@ computed a point |(c)| that lies somewhere on a line from |(a)| to~|(b)| and you now wish to offset this point by |1cm| so that the distance from this offset point to the line is |1cm|. This can be achieved as follows: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); @@ -1313,7 +1313,7 @@ The effect is the following: We project the \meta{projection coordinate} orthogonally onto the line from \meta{coordinate} to \meta{second coordinate}. This makes it easy to compute projected points: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-decorations.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-decorations.tex index 009660a911d..f1027d3bc88 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-decorations.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-decorations.tex @@ -16,7 +16,11 @@ Decorations are a general concept to make (sub)paths ``more interesting''. Before we have a look at the details, let us have a look at some examples: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{ + decorations.pathmorphing, + decorations.pathreplacing, + decorations.shapes, +}}] \begin{tikzpicture}[thick] \draw (0,3) -- (3,3); \draw[decorate,decoration=zigzag] (0,2.5) -- (3,2.5); @@ -28,7 +32,7 @@ Before we have a look at the details, let us have a look at some examples: \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} \node [fill=red!20,draw,decorate,decoration={bumps,mirror}, minimum height=1cm] @@ -36,7 +40,7 @@ Before we have a look at the details, let us have a look at some examples: \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} \filldraw[fill=blue!20] (0,3) decorate [decoration=saw] { -- (3,3) } @@ -45,7 +49,7 @@ Before we have a look at the details, let us have a look at some examples: \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}},preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} \node [fill=yellow!50,draw,thick, minimum height=2cm, minimum width=3cm, decorate, decoration={random steps,segment length=3pt,amplitude=1pt}] @@ -65,12 +69,12 @@ Let us have a look at an example: In the first picture, we see a path that consists of a line, an arc, and a line. In the second picture, this path has been used as the basis of a decoration. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \tikz \fill [fill=blue!20,draw=blue,thick] (0,0) -- (2,1) arc (90:-90:.5) -- cycle; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \tikz \fill [decorate,decoration={zigzag}] [fill=blue!20,draw=blue,thick] (0,0) -- (2,1) arc (90:-90:.5) -- cycle; \end{codeexample} @@ -78,7 +82,7 @@ been used as the basis of a decoration. It is also possible to decorate only a subpath (the exact syntax will be explained later in this section). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \tikz \fill [decoration={zigzag}] [fill=blue!20,draw=blue,thick] (0,0) -- (2,1) decorate { arc (90:-90:.5) } -- cycle; @@ -106,7 +110,7 @@ decorations. path has no effect since the path consist only of (numerous) unconnected straight line subpaths: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes}}] \tikz \fill [decorate,decoration={crosses}] [fill=blue!20,draw=blue,thick] (0,0) -- (2,1) arc (90:-90:.5) -- cycle; \end{codeexample} @@ -122,7 +126,7 @@ decorations. such decorations the path usage command for the main path have no influence on how the decoration looks like. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \tikz \fill [decorate,decoration={text along path, text=This is a text along a path. Note how the path is lost.}] [fill=blue!20,draw=blue,thick] (0,0) -- (2,1) arc (90:-90:.5) -- cycle; @@ -144,13 +148,16 @@ decorate the decorated path once more. (0,0) rectangle (3,2); \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \tikz \fill [fill=blue!20,draw=blue,thick] decorate[decoration={zigzag,segment length=10mm,amplitude=2.5mm}] { (0,0) rectangle (3,2) }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{ + decorations.pathmorphing, + decorations.shapes, +}}] \tikz \fill [fill=blue!20,draw=blue,thick] decorate[decoration={crosses,segment length=2mm}] { decorate[decoration={zigzag,segment length=10mm,amplitude=2.5mm}] { @@ -169,11 +176,11 @@ pattern will literally be thousands of times faster to typeset. However, for most decorations there are no real alternatives. \begin{tikzlibrary}{decorations} - In order to use decorations, you first have to load a decoration library. - This |decoration| library defines the basic options described in the + In order to use decorations, you first have to load a |decorations| library. + This |decorations| library defines the basic options described in the following, but it does not define any new decorations. This is done by libraries like |decorations.text|. Since these more specialized libraries - include the |decoration| library automatically, you usually do not have to + include the |decorations| library automatically, you usually do not have to bother about it. \end{tikzlibrary} @@ -187,7 +194,7 @@ The most general way to decorate a (sub)path is the following path command. current decoration. Depending on the decoration, this may or may not extend the current path. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \draw decorate [decoration={name=zigzag}] @@ -205,7 +212,10 @@ The most general way to decorate a (sub)path is the following path command. You can use nodes normally inside the \meta{subpath}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{ + decorations.pathmorphing, + decorations.shapes, +}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \draw decorate [decoration={name=zigzag}] @@ -230,7 +240,10 @@ The most general way to decorate a (sub)path is the following path command. |decorate| path command. Naturally, any local options of the |decorate| path command override these ``global'' options. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{ + decorations.pathmorphing, + decorations.shapes, +}}] \begin{tikzpicture}[decoration=zigzag] \draw decorate {(0,0) -- (3,2)}; \draw [red] decorate [decoration=crosses] {(0,2) -- (3,0)}; @@ -254,7 +267,7 @@ The most general way to decorate a (sub)path is the following path command. If you set \meta{name} to |none|, no decorations are added. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \draw decorate [decoration={name=zigzag}] @@ -266,7 +279,7 @@ The most general way to decorate a (sub)path is the following path command. |name=| part. Thus, the above example can be rewritten more succinctly: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \draw decorate [decoration=zigzag] @@ -289,7 +302,7 @@ The most general way to decorate a (sub)path is the following path command. path. In such cases, the construction of the main path is resumed after the |decorate| path command ends. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture}[decoration={text along path,text= around and around and around and around we go}] @@ -306,7 +319,7 @@ The most general way to decorate a (sub)path is the following path command. Repeatedly applying this transformation to a triangle yields a fractal that looks a bit like a snowflake, hence the name. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.fractals}}] \begin{tikzpicture}[decoration=Koch snowflake,draw=blue,fill=blue!20,thick] \filldraw (0,0) -- ++(60:1) -- ++(-60:1) -- cycle ; \filldraw decorate{ (0,-1) -- ++(60:1) -- ++(-60:1) -- cycle }; @@ -341,7 +354,11 @@ the following option, which allows you to decorate a path ``after the fact''. in contrast to the |decorate| path command you cannot apply this option twice (this would just set it to |true|, once more). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{ + decorations.pathmorphing, + decorations.text, + shapes.geometric, +}}] \begin{tikzpicture}[decoration=zigzag] \draw [help lines] (0,0) grid (3,5); @@ -360,7 +377,11 @@ the following option, which allows you to decorate a path ``after the fact''. Incidentally, this is another application of the |decorate| option that you cannot achieve with the decorate path command. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{ + decorations.pathmorphing, + decorations.text, + shapes.geometric, +}}] \begin{tikzpicture}[decoration=zigzag] \node at (1.5,1) [inner sep=6mm,fill=red!20,ellipse, postaction={decorate,decoration= @@ -372,7 +393,7 @@ the following option, which allows you to decorate a path ``after the fact''. after the main path has been drawn. % % \catcode`\|12 % !? -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.text}}] \begin{tikzpicture} \draw [help lines] grid (3,2); \fill [draw=red,fill=red!20, @@ -403,7 +424,7 @@ modify the positioning of decorations relative to the to-be-decorated path. A negative \meta{dimension} will offset the decoration ``to the right'' of the to-be-decorated path. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); @@ -422,7 +443,7 @@ modify the positioning of decorations relative to the to-be-decorated path. to-be-decorated path. This is done after and in addition to any transformations set using the |transform| and/or |raise| options. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathreplacing}}] \begin{tikzpicture} \node (a) {A}; \node (b) at (2,1) {B}; @@ -445,7 +466,7 @@ modify the positioning of decorations relative to the to-be-decorated path. In the following example the |shift only| transformation is used to make sure that the crosses are \emph{not} sloped along the path. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.shapes}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); @@ -475,17 +496,20 @@ decorations, not with meta-decorations. also need to set the |pre length| option. % % TODO: Nesting tikzpictures is NOT supported -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \tikz [decoration={zigzag,pre=lineto,pre length=1cm}] \draw [decorate] (0,0) -- (2,1) arc (90:0:1); \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \tikz [decoration={zigzag,pre=moveto,pre length=1cm}] \draw [decorate] (0,0) -- (2,1) arc (90:0:1); \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{ + decorations.pathmorphing, + decorations.shapes, +}}] \tikz [decoration={zigzag,pre=crosses,pre length=1cm}] \draw [decorate] (0,0) -- (2,1) arc (90:0:1); \end{codeexample} @@ -494,12 +518,12 @@ decorations, not with meta-decorations. that the default |pre| decoration will not follow curves (for efficiency reasons). Change the |pre| key to |curveto| if you have a curved path. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \tikz [decoration={zigzag,pre length=3cm}] \draw [decorate] (0,0) -- (2,1) arc (90:0:1); \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \tikz [decoration={zigzag,pre=curveto,pre length=3cm}] \draw [decorate] (0,0) -- (2,1) arc (90:0:1); \end{codeexample} @@ -523,7 +547,7 @@ decorations, not with meta-decorations. Here is a typical example that shows how these keys can be used: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} [decoration=snake, line around/.style={decoration={pre length=#1,post length=#1}}] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-design.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-design.tex index 607a55fb434..98f888e8eee 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-design.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-design.tex @@ -171,11 +171,11 @@ Since trees are made up from nodes, it is possible to use options to modify the way trees are drawn. Here are two examples of the above tree, redrawn with different options: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,trees}}] \begin{tikzpicture} [edge from parent fork down, sibling distance=15mm, level distance=15mm, every node/.style={fill=red!30,rounded corners}, - edge from parent/.style={red,-o,thick,draw}] + edge from parent/.style={red,-{Circle[open]},thick,draw}] \node {root} child {node {left}} child {node {right} @@ -210,7 +210,7 @@ only differ with respect to the name they show. In these cases, the |graph| syntax can be used, which is another syntax layer build ``on top'' of the node syntax. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow down, branch right] { root -> { left, right -> {child, child} } }; diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex index 7e4560d0da4..7c51ffe0e7c 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-graphs.tex @@ -26,11 +26,11 @@ In this section, by \emph{graph} we refer to a set of nodes together with some edges (sometimes also called arcs, in case they are directed) such as the following: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a -> {b, c} -> d }; \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph { subgraph I_nm [V={a, b, c}, W={1,...,4}]; @@ -40,7 +40,7 @@ following: }; \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [nodes={draw, circle}, clockwise, radius=.5cm, empty nodes, n=5] { subgraph I_n [name=inner] --[complete bipartite] @@ -48,7 +48,10 @@ following: }; \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{graphs}}, + pre={\definecolor{graphicbackground}{rgb}{0.96,0.96,0.8}}, +] \tikz \graph [nodes={draw, circle}, clockwise, radius=.75cm, empty nodes, n=8] { subgraph C_n [name=inner] <->[shorten <=1pt, shorten >=1pt] @@ -56,7 +59,7 @@ following: }; \end{codeexample} -\begin{codeexample}[width=6.6cm] +\begin{codeexample}[width=6.6cm,preamble={\usetikzlibrary{graphs}}] \tikz [>={To[sep]}, rotate=90, xscale=-1, mark/.style={fill=black!50}, mark/.default=] \graph [trie, simple, @@ -85,10 +88,10 @@ following: \end{codeexample} The nodes of a graph are normal \tikzname\ nodes, the edges are normal lines -drawn between nodes. There is nothing in the |graph| library that you cannot do -using the normal |\node| and the |edge| commands. Rather, its purpose is to +drawn between nodes. There is nothing in the |graphs| library that you cannot +do using the normal |\node| and the |edge| commands. Rather, its purpose is to offer a concise and powerful way of \emph{specifying} which nodes are present -and how they are connected. The |graph| library only offers simple methods for +and how they are connected. The |graphs| library only offers simple methods for specifying \emph{where} the nodes should be shown, its main strength is in specifying which nodes and edges are present in principle. The problem of finding ``good positions on the canvas'' for the nodes of a graph is left to @@ -131,12 +134,12 @@ and then using Lua\TeX, resulting in the following drawing of the same graph: \medskip \fi -The |graph| library uses a syntax that is quite different from the normal +The |graphs| library uses a syntax that is quite different from the normal \tikzname\ syntax for specifying nodes. The reason for this is that for many medium-sized graphs it can become quite cumbersome to specify all the nodes using |\node| repeatedly and then using a great number of |edge| command; possibly with complicated |\foreach| statements. Instead, the syntax of the -|graph| library is loosely inspired by the \textsc{dot} format, which is quite +|graphs| library is loosely inspired by the \textsc{dot} format, which is quite useful for specifying medium-sized graphs, with some extensions on top. @@ -152,7 +155,7 @@ sections. The basic way of specifying a graph is to write down a \emph{node chain} as in the following example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz [every node/.style = draw] \graph { foo -> bar -> blub }; \end{codeexample} @@ -165,7 +168,7 @@ the following. Inside a graph there can be more than one chain: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a -> b -> c; d -> e -> f; @@ -182,7 +185,7 @@ When a node like |f| is created, both the node name and the node text are identical by default. This is not always desirable and can be changed by using the |as| key or by providing another text after a slash: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { x1/$x_1$ -> x2 [as=$x_2$, red] -> x34/{$x_3,x_4$}; x1 -> [bend left] x34; @@ -193,7 +196,7 @@ When you wish to use a node name that contains special symbols like commas or dashes, you must surround the node name by quotes. This allows you to use quite arbitrary text as a ``node name'': % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { "$x_1$" -> "$x_2$"[red] -> "$x_3,x_4$"; "$x_1$" ->[bend left] "$x_3,x_4$"; @@ -210,7 +213,7 @@ get interesting when you write down a node or even a whole group and connect it to another group. In this case, the ``exit points'' of the first node or group get connected to the ``entry points'' of the second node or group: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a -> { b -> c, @@ -221,7 +224,7 @@ get connected to the ``entry points'' of the second node or group: Chain groups make it easy to create tree structures: % -\begin{codeexample}[width=10cm] +\begin{codeexample}[width=10cm,preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow down, branch right=2.5cm] { @@ -269,7 +272,7 @@ When connectors like |->| or |--| are used to connect nodes or whole chain groups, one or more edges will typically be created. These edges can be styles easily by providing options in square brackets directly after these connectors: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a ->[red] b --[thick] {c, d}; }; @@ -278,7 +281,7 @@ easily by providing options in square brackets directly after these connectors: Using the quotes syntax, see Section~\ref{section-label-quotes}, you can even add labels to the edges easily by putting the labels in quotes: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph { a ->[red, "foo"] b --[thick, "bar"] {c, d}; }; @@ -295,7 +298,7 @@ somehow also indicate that these options actually ``belong'' to the edge ``leading to'' to nodes. This is achieved by preceding the options with a greater-than sign: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph { a -> b -- {c [> "foo"], d [> "bar"']}; }; @@ -304,7 +307,7 @@ greater-than sign: Symmetrically, preceding the options by |<| causes the options and labels to apply to the ``outgoing'' edges of the node: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph { a [< red] -> b -- {c [> blue], d [> "bar"']}; }; @@ -313,7 +316,7 @@ apply to the ``outgoing'' edges of the node: This syntax allows you to easily create trees with special edge labels as in the following example of a treap: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph [edge quotes={fill=white,inner sep=1pt}, grow down, branch right, nodes={circle,draw}] { @@ -340,7 +343,7 @@ part of a graph than have already been defined prior to the use of the |graph| command. For this, simply surround a node name by parentheses. This will cause a reference to be created to an already existing node: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz { \node (a) at (0,0) {A}; \node (b) at (1,0) {B}; @@ -355,7 +358,7 @@ to belong to a \emph{node set} by adding the option |set=|\meta{node set name}. Then, inside a |graph| command, you can collectively refer to these nodes by surrounding the node set name in parentheses: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,shapes.geometric}}] \tikz [new set=my nodes] { \node [set=my nodes, circle, draw] at (1,1) {A}; \node [set=my nodes, rectangle, draw] at (1.5,0) {B}; @@ -375,11 +378,11 @@ To facilitate specifying such graphs, you can define a \emph{graph macro}. Once a graph macro has been defined, you can use the name of the graph to make a copy of the graph part of the graph currently being specified: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph { subgraph K_n [n=6, clockwise] }; \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph { subgraph C_n [n=5, clockwise] -> mid }; \end{codeexample} @@ -406,7 +409,7 @@ saying |complete bipartite={red}{green}| will cause edges to be added between all red and all green nodes. More advanced connectors, like the |butterfly| connector, allow you to add edges between color classes in a fancy manner. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz [x=8mm, y=6mm, circle] \graph [nodes={fill=blue!70}, empty nodes, n=8] { subgraph I_n [name=A] --[butterfly={level=4}] @@ -480,7 +483,7 @@ like, say, |plot| or |--|. This option causes the \meta{options} to be applied to each newly created node inside the \meta{group specification}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [nodes=red] { a -> b -> c }; \end{codeexample} % @@ -491,7 +494,7 @@ like, say, |plot| or |--|. This option causes the \meta{options} to be applied to each newly created edge inside the \meta{group specification}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [edges={red,thick}] { a -> b -> c }; \end{codeexample} % @@ -506,13 +509,13 @@ like, say, |plot| or |--|. This key specifies that the \meta{node specification} should be added to each newly created edge as an implicitly placed node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [edge node={node [red, near end] {X}}] { a -> b -> c }; \end{codeexample} % Again, multiple uses of this key accumulate. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [edge node={node [near end] {X}}, edge node={node [near start] {Y}}] { a -> b -> c }; \end{codeexample} @@ -523,7 +526,7 @@ like, say, |plot| or |--|. The net effect is that the |text| is placed next to the newly created edges. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [edge label=x] { a -> b -> {c,d} }; \end{codeexample} \end{key} @@ -531,7 +534,7 @@ like, say, |plot| or |--|. \begin{key}{/tikz/graphs/edge label'=\meta{text}} This key is an abbreviation for |edge node=node[auto,swap]{|\meta{text}|}|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [edge label=out, edge label'=in] { subgraph C_n [clockwise, n=5] }; \end{codeexample} @@ -558,7 +561,7 @@ ignored by the parser. In the following example, the group specification consists of three chain specifications, namely of |a -> b|, then |c| alone, and finally |d -> e -> f|: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a -> b, c; @@ -574,7 +577,7 @@ Commas are used to detect where chain specifications end. However, you will often wish to use a comma also inside the options of a single node like in the following example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a [red, draw] -> b [blue, draw], c [brown, draw, circle] @@ -593,7 +596,7 @@ difference whether the options are passed to the |graph| command or whether they are given at the beginning of this group. However, for groups nested inside other groups, it does make a difference: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a -> { [nodes=red] % the option is local to these nodes: b, c @@ -610,7 +613,7 @@ specification} would normally go. In this case, the |\foreach| statement is executed and for each iteration the content of the statement's body is treated and parsed as a new chain specification. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [math nodes, branch down=5mm] { a -> { \foreach \i in {1,2,3} { @@ -644,7 +647,7 @@ group. allows you to say, for instance, |parse/.expand once| to insert the text stored in some macro into the group. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \def\mychain{ a -> b -> c; } \tikz \graph { [parse/.expand once=\mychain] d -> e }; \end{codeexample} @@ -652,7 +655,7 @@ group. In the following, more fancy example we use a loop to create a chain of dynamic length. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \def\mychain#1{ \def\mytext{1} \foreach \i in {2,...,#1} { @@ -765,13 +768,13 @@ written |->| between them. Then the following happens: no special anchor is used (which is the default). The \meta{anchor} is stored in the macro |\tikzgraphleftanchor| with a leading dot. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { {a,b,c} -> [complete bipartite] {e,f,g} }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [left anchor=east, right anchor=west] { {a,b,c} -- [complete bipartite] {e,f,g} }; @@ -826,7 +829,7 @@ written |->| between them. Then the following happens: Here is an example that shows the default rendering of the different edge specifications: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [branch down=5mm] { a -> b; c -- d; @@ -888,7 +891,7 @@ name was already used inside the current graph. If this is the case, then we say that the already existing node is \emph{referenced}; otherwise we say that the node is \emph{fresh}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a -> b; % both are fresh c -> a; % only c is fresh, a is referenced @@ -915,7 +918,7 @@ be modified by using the following keys: name is chosen is follows: An apostrophe (|'|) is appended repeatedly until a node name is found that has not yet been used: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [branch down=5mm] { { [fresh nodes] a -> { @@ -939,7 +942,7 @@ be modified by using the following keys: \begin{key}{/tikz/graphs/number nodes sep=\meta{text} (initially \normalfont space)} \end{key} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [branch down=5mm] { { [number nodes] a -> { @@ -984,7 +987,7 @@ is called. The different parameters are as follows: node name}. Repeated calls of this key accumulate, leading to ever-longer ``name paths'': % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \begin{tikzpicture} \graph { { [name=first] 1, 2, 3} -- @@ -1009,7 +1012,7 @@ is called. The different parameters are as follows: the \meta{node name}. The default is |\space|, resulting in a space. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \begin{tikzpicture} \graph [name separator=] { % no separator { [name=first] 1, 2, 3} -- @@ -1019,7 +1022,7 @@ is called. The different parameters are as follows: \end{tikzpicture} \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \begin{tikzpicture} \graph [name separator=-] { { [name=first] 1, 2, 3} -- @@ -1051,7 +1054,7 @@ is called. The different parameters are as follows: provide a text for the node that differs arbitrarily from the name of the node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a [as=$x$] -- b [as=$y_5$] -> c [red, as={a--b}] }; \end{codeexample} % @@ -1098,7 +1101,7 @@ is called. The different parameters are as follows: useful to change this: For instance, you might wish that the text of all graph nodes is, say, surrounded by parentheses: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [typeset=(\tikzgraphnodetext)] { a -> b -> c }; \end{codeexample} @@ -1106,7 +1109,7 @@ is called. The different parameters are as follows: A more advanced macro might take apart the node text and render it differently: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \def\mytypesetter{\expandafter\myparser\tikzgraphnodetext\relax} \def\myparser#1 #2 #3\relax{% $#1_{#2,\dots,#3}$ @@ -1121,7 +1124,7 @@ is called. The different parameters are as follows: Just sets |typeset| to nothing, which causes all nodes to have an empty text (unless, of course, the |as| option is used): % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [empty nodes, nodes={circle, draw}] { a -> {b, c} }; \end{codeexample} \end{key} @@ -1130,7 +1133,7 @@ is called. The different parameters are as follows: Sets |typeset| to |$\tikzgraphnodetext$|, which causes all nodes names to be typeset in math mode: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [math nodes, nodes={circle, draw}] { a_1 -> {b^2, c_3^n} }; \end{codeexample} \end{key} @@ -1149,7 +1152,7 @@ for details. a node is surrounded by quotation marks, you can use all sorts of special symbols as part of the text that are normally forbidden: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \begin{tikzpicture} \graph [grow right=2cm] { "Hi, World!" -> "It's \emph{important}!"[red,rotate=-45]; @@ -1251,7 +1254,7 @@ effect is the same as if instead of the reference to the set name you had created a group specification containing a list of references to all the nodes that are part of the node set. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \begin{tikzpicture}[new set=red, new set=green, shorten >=2pt] \foreach \i in {1,2,3} { \node [draw, red!80, set=red] (r\i) at (\i,1) {$r_\i$}; @@ -1276,7 +1279,7 @@ access them as if they had been defined inside the graph. Here is an example showing how you can create nodes outside a |graph| command and then connect them inside as if they had been declared inside: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \begin{tikzpicture}[new set=import nodes] \begin{scope}[nodes={set=import nodes}] % make all nodes part of this set \node [red] (a) at (0,1) {$a$}; @@ -1298,7 +1301,7 @@ should go, you can also instead provide a group specification. Since nodes specifications are part of chain specifications, which in turn are part of group specifications, this is a recursive definition. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a -> {b,c,d} -> {e -> {f,g}, h} }; \end{codeexample} @@ -1334,7 +1337,7 @@ several nodes have the same label. % In total, this is exactly the behaviour you would expect of a trie: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [trie] { a -> { a, @@ -1350,7 +1353,7 @@ several nodes have the same label. libraries, which need Lua\TeX. % \ifluatex -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing}\usegdlibrary{layered}}] \tikz \graph [trie, simple, layered layout] { a -> b -> a, a -> b -> c, @@ -1361,7 +1364,7 @@ several nodes have the same label. In the following example, we setup the |typeset| key so that it shows the complete names of the nodes: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,graphdrawing}\usegdlibrary{layered}}] \tikz \graph [trie, simple, layered layout, typeset=\tikzgraphnodefullname] { a -> b -> a, @@ -1374,7 +1377,7 @@ several nodes have the same label. You can also use the |trie| key locally and later reference nodes using their full name: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { { [trie, simple] a -> { @@ -1456,11 +1459,11 @@ large, algorithmically generated graphs. Here is a typical way this syntax might be used: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph [quick] { "a" --["foo"] "b"[x=1] }; \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [quick] { "a"/"$a$" -- "b"[x=1] --[red] "c"[x=2]; { [nodes=blue] "a" -- "d"[y=1]; }; @@ -1487,7 +1490,7 @@ large, algorithmically generated graphs. \subsection{Simple Versus Multi-Graphs} \label{section-library-graphs-simple} -The |graph| library allows you to construct both simple graphs and +The |graphs| library allows you to construct both simple graphs and multi-graphs. In a simple graph there can be at most one edge between any two vertices, while in a multi-graph there can be multiple edges (hence the name). The two keys |multi| and |simple| allow you to switch (even locally inside on @@ -1501,7 +1504,7 @@ construct. part is a multi-graph), then when you specify an edge between two nodes several times, several such edges get created: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [multi] { % "multi" is not really necessary here a ->[bend left, red] b; a ->[bend right, blue] b; @@ -1523,7 +1526,7 @@ construct. In contrast a multi-graph, in a simple graph, at most one edge gets created for every pair of vertices: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [simple]{ a ->[bend left, red] b; a ->[bend right, blue] b; @@ -1539,7 +1542,7 @@ construct. create a complicated graph and then later redirect and otherwise modify edges easily: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [simple, grow right=2cm] { {a,b,c,d} ->[complete bipartite] {e,f,g,h}; @@ -1554,7 +1557,7 @@ construct. superfluous. In a simple graph, however, it counts as an edge kind and you can thus use it to remove an edge that been added previously: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [simple] { subgraph K_n [n=8, clockwise]; % Get rid of the following edges: @@ -1588,7 +1591,7 @@ construct. \subsection{Graph Edges: Labeling and Styling} -When the |graph| library creates an edge between two nodes in a graph, the +When the |graphs| library creates an edge between two nodes in a graph, the appearance (called ``styling'' in \tikzname) can be specified in different ways. Sometimes you will simply wish to say ``the edges between these two groups of node should be red'', but sometimes you may wish to say ``this @@ -1607,7 +1610,7 @@ chain group before the |->| and the nodes in the chain group following it. The library and you write some text in quotes inside the |options|, this text will be added as a label to each edge: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph [edge quotes=near start] { { a, b } -> [red, "x", complete bipartite] { c, d }; @@ -1618,7 +1621,7 @@ As documented in the |quotes| library in more detail, you can easily modify the appearance of edge labels created using the quotes syntax by adding options after the closing quotes: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph { a ->["x"] b ->["y"'] c ->["z" red] d; }; @@ -1628,19 +1631,20 @@ The following options make it easy to setup the styling of nodes created in this way: % \begin{key}{/tikz/graphs/edge quotes=\opt{\meta{options}}} - A shorthand for setting the style |every edge quotes| to \meta{options}. -\begin{codeexample}[] + A shorthand for setting the style |every edge quotes| to \meta{options}. + % +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph [edge quotes={blue,auto}] { a ->["x"] b ->["y"'] c ->["b" red] d; }; \end{codeexample} -% + % \end{key} \begin{key}{/tikz/graphs/edge quotes center} A shorthand for |edge quotes| to |anchor=center|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph [edge quotes center] { a ->["x"] b ->["y"] c ->["z" red] d; }; @@ -1651,7 +1655,7 @@ this way: \begin{key}{/tikz/graphs/edge quotes mid} A shorthand for |edge quotes| to |anchor=mid|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph [edge quotes mid] { a ->["x"] b ->["y"] c ->["z" red] d; }; @@ -1664,7 +1668,7 @@ this way: Consider the following tree-like graph: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a -> {b,c} }; \end{codeexample} @@ -1676,7 +1680,7 @@ one of these option |red| or |blue| to the operator. There are several ways to solve this problem. First, we can simply split up the specification and specify the two edges separately: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a -> [red] b; a -> [blue] c; @@ -1695,7 +1699,7 @@ One can sidestep this problem using the |simple| option: This option allows you to first specify a graph and then, later on, replace edges by other edges and, thereby, provide new options: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [simple] { a -> {b,c}; a -> [red] b; @@ -1711,7 +1715,7 @@ path in a larger tree: First specify the tree normally and, then, ``respecify'' the path or paths with some other edge options in force. In the following example, we use this to highlight a whole subtree of a larger tree: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [simple] { % The larger tree, no special options in force a -> { @@ -1737,7 +1741,7 @@ red edge between |a| and |b| and a blue edge between |a| and |c|, this could also be phrased as follows: ``Make the edge leading to |b| red and make the edge leading to |c| blue''. -For this situation, the |graph| library offers a number of special keys, which +For this situation, the |graphs| library offers a number of special keys, which are documented in the following. However, most of the time you will not use these keys directly, but, rather, use a special syntax explained in Section~\ref{section-syntax-outgoing-incoming}. @@ -1748,7 +1752,7 @@ Section~\ref{section-syntax-outgoing-incoming}. that is created by a connector like |->| in which the node is a \emph{target}. Consider the following example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { { a, b } -> { c [target edge style=red], d } -> @@ -1762,7 +1766,7 @@ Section~\ref{section-syntax-outgoing-incoming}. When an edge already has options set directly, the \meta{options} are executed after these direct options, thus, they ``overrule'' them: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { { a, b } -> [blue, thick] { c [target edge style=red], d } -> @@ -1774,7 +1778,7 @@ Section~\ref{section-syntax-outgoing-incoming}. for edges created later on that lead to the node will have these options set: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { { a, b } -> { c [target edge style=red], d } -> @@ -1793,7 +1797,7 @@ Section~\ref{section-syntax-outgoing-incoming}. also edge labels (see below) for this node. \end{key} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { { a, b } -> { c [target edge style=red], d }, @@ -1808,7 +1812,7 @@ Section~\ref{section-syntax-outgoing-incoming}. will not be added as options to any newly created edges with the current node as their target, but rather it will be added as a node specification. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { { a, b } -> { c [target edge node=node{X}], d } -> @@ -1825,7 +1829,7 @@ Section~\ref{section-syntax-outgoing-incoming}. Works exactly like |target edge style|, only now the \meta{options} are only added when the node is a source of a newly created edge: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { { a, b } -> { c [source edge style=red], d } -> @@ -1844,7 +1848,7 @@ Section~\ref{section-syntax-outgoing-incoming}. |target node style|. \end{enumerate} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a [source edge style=red] ->[green] b [target edge style=blue] % blue wins @@ -1902,7 +1906,7 @@ target and source options: These mechanisms make it especially easy to create trees in which the edges are labeled in some special way: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph [edge quotes={fill=white,inner sep=1pt}, grow down, branch right] { @@ -1924,7 +1928,7 @@ instance when drawing certain kind of trees, the nodes themselves should not get any text, but rather the edge leading to the node should be labeled as in the following example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,quotes}}] \tikz \graph [empty nodes] { root -> { @@ -1959,7 +1963,7 @@ The following styles do exactly this: % Here is an example that show how this command is used. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [put node text on incoming edges, math nodes, nodes={circle,draw}] { a -> b -> {c, d} }; @@ -2015,7 +2019,7 @@ key: encompassing scopes, unless it is explicitly changed (see below) or unset (again, see below). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [color class=red] { [cycle=red] % causes all "logically" red nodes to be connected in % a cycle @@ -2026,7 +2030,7 @@ key: }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [color class=red, color class=green, math nodes, clockwise, n=5] { [complete bipartite={red}{green}] @@ -2041,7 +2045,7 @@ key: the color \meta{color class name}. You can also use |!|\meta{color class name} as an alias for this key. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [color class=red, color class=green, math nodes, clockwise, n=5] { [complete bipartite={red}{green}] @@ -2057,7 +2061,7 @@ key: color} instead. They loose having color \meta{color class name}, but other colors are not affected. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [color class=red, color class=green, math nodes, clockwise, n=5] { [complete bipartite={red}{green}] @@ -2082,12 +2086,13 @@ The following color classes are available by default: saying |not source| or |not target| with a node, you can influence how it is connected: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a -> { b, c, d } -> e }; - \end{codeexample} - \begin{codeexample}[] +\end{codeexample} + % +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a -> { b[not source], c, d[not target] } -> e }; - \end{codeexample} +\end{codeexample} % \item Color classes |source'| and |target'|. These are temporary colors that are also explained in Section~\ref{section-library-graphs-join}. @@ -2150,7 +2155,7 @@ simply add edges between all nodes of the group. \begin{key}{/tikz/graphs/--} Sets the |default edge kind| to |--|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph { subgraph K_n [--, n=5, clockwise, radius=6mm] }; \end{codeexample} \end{key} @@ -2158,7 +2163,7 @@ simply add edges between all nodes of the group. \begin{key}{/tikz/graphs/->} Sets the |default edge kind| to |->|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph { subgraph K_n [->, n=5, clockwise, radius=6mm] }; \end{codeexample} \end{key} @@ -2166,7 +2171,7 @@ simply add edges between all nodes of the group. \begin{key}{/tikz/graphs/<-} Sets the |default edge kind| to |<-|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph { subgraph K_n [<-, n=5, clockwise, radius=6mm] }; \end{codeexample} \end{key} @@ -2174,7 +2179,7 @@ simply add edges between all nodes of the group. \begin{key}{/tikz/graphs/<->} Sets the |default edge kind| to |<->|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph { subgraph K_n [<->, n=5, clockwise, radius=6mm] }; \end{codeexample} \end{key} @@ -2199,7 +2204,7 @@ simply add edges between all nodes of the group. In the following example we use an operator to connect every node colored |all| inside the subgroup to he node |root|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \def\myconnect#1{\tikzset{graphs/new ->={root}{#1}{}{}}} \begin{tikzpicture} @@ -2232,7 +2237,7 @@ simply add edges between all nodes of the group. As an example, let us create an operator then adds a zig-zag path between two color classes: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \newcount\leftshorecount \newcount\rightshorecount \newcount\mycount \newcount\myothercount \def\zigzag{ @@ -2336,7 +2341,7 @@ them) are connected to the sources of |{d,e->f}| (which are just |d| and~|e|). Finally, in the whole graph only |a|, |b|, and |c| are sources while only |d| and |f| are targets. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \def\hilightsource#1{\fill [green, opacity=.25] (#1) circle [radius=2mm]; } \def\hilighttarget#1{\fill [red, opacity=.25] (#1) circle [radius=2mm]; } \tikz \graph @@ -2385,7 +2390,7 @@ determine which operator should be chosen for performing this job: \meta{edge specification} whose \meta{options} do not contain the |operator| key. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [default edge operator=matching] { {a, b} ->[matching and star] {c, d, e} --[complete bipartite] @@ -2414,7 +2419,7 @@ with an edge specification, it can also be used as a normal operator together with a group specification. In this case, however, the color classes must be named explicitly: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \begin{tikzpicture} \graph [color class=red, color class=green, math nodes] { [complete bipartite={red}{green}] @@ -2461,7 +2466,7 @@ A graph macro is declared using the following key: with some \meta{options}, they are executed prior to inserting the \meta{specification}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [branch down=4mm, declare={claw}{1 -- {2,3,4}}] { a; claw; @@ -2471,7 +2476,7 @@ A graph macro is declared using the following key: % In the next example, we use a key to configure a subgraph: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [ n/.code=\def\n{#1}, branch down=4mm, declare={star}{root -- { \foreach \i in {1,...,\n} {\i} }}] { star [n=5]; }; @@ -2481,7 +2486,7 @@ A graph macro is declared using the following key: As a last example, let us define a somewhat more complicated graph macro. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \newcount\mycount \tikzgraphsset{ levels/.store in=\tikzgraphlevel, @@ -2514,7 +2519,7 @@ Note that when you use a graph macro several time inside the same graph, you will typically have to use the |name| option so that different copies of the subgraph are created: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [branch down=4mm, declare={claw}{1 -- {2,3,4}}] { claw [name=left], claw [name=right] @@ -2528,14 +2533,14 @@ Section~\ref{section-library-graphs-reference-macros}. \subsection{Online Placement Strategies} \label{section-library-graphs-placement} -The main job of the |graph| library is to make it easy to specify which nodes +The main job of the |graphs| library is to make it easy to specify which nodes are present in a graph and how they are connected. In contrast, it is \emph{not} the primary job of the library to compute good positions for nodes in a graph -- use for instance a |\matrix|, specify good positions ``by hand'' or use the graph drawing facilities. Nevertheless, some basic support for -automatic node placement is provided for simple cases. The graph library will -provide you with information about the position of nodes inside their groups -and chains. +automatic node placement is provided for simple cases. The |graphs| library +will provide you with information about the position of nodes inside their +groups and chains. As a graph is being constructed, a \emph{placement strategy} is used to determine a (reasonably good) position for the nodes as they are created. These @@ -2562,7 +2567,7 @@ work together in perfect harmony. this strategy if you position nodes ``by hand''. For this, you can use the |at| key, the |shift| keys: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [no placement] { a[at={(0:0)}] -> b[at={(1,0)}] -> c[yshift=1cm]; @@ -2577,7 +2582,7 @@ work together in perfect harmony. written |at={(|\meta{x dimension}|,|\meta{y dimension}|)}|, where \meta{y dimension} is a value set using the |y| key: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [no placement] { a[x=0,y=0] -> b[x=1,y=0] -> c[x=0,y=1]; @@ -2587,7 +2592,7 @@ work together in perfect harmony. Note that you can specify an |x| or a |y| key for a whole scope and then vary only the other key: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [no placement] { a -> @@ -2622,10 +2627,10 @@ work together in perfect harmony. This slightly confusing explanation is perhaps best exemplified. In the below example, the two numbers indicate the two logical width and depth of - each node as computed by the |graph| library. Just ignore the arcane code + each node as computed by the |graphs| library. Just ignore the arcane code that is used to print these numbers. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [nodes={align=center, inner sep=1pt}, grow right=7mm, typeset={\tikzgraphnodetext\\[-4pt] @@ -2656,7 +2661,7 @@ work together in perfect harmony. Under the regime of the |Cartesian placement| strategy, each node is shifted by the current logical width times this \meta{coordinate}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [chain shift=(45:1)] { a -> b -> c; d -> e; @@ -2669,7 +2674,7 @@ work together in perfect harmony. Like for |chain shift|, each node is shifted by the current logical depth times this \meta{coordinate}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [chain shift=(45:7mm), group shift=(-45:7mm)] { a -> b -> c; d -> e; @@ -2680,11 +2685,11 @@ work together in perfect harmony. \end{key} \begin{key}{/tikz/graphs/grow up=\meta{distance} (default 1)} - Sets the |chain shift| to |(|\meta{distance}|,0)|, so that chains ``grow + Sets the |chain shift| to |(0,|\meta{distance}|)|, so that chains ``grow upward''. The distance by which the center of each new element is removed from the center of the previous one is \meta{distance}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow up=7mm] { a -> b -> c}; \end{codeexample} % @@ -2693,7 +2698,7 @@ work together in perfect harmony. \begin{key}{/tikz/graphs/grow down=\meta{distance} (default 1)} Like |grow up|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow down=7mm] { a -> b -> c}; \end{codeexample} % @@ -2702,7 +2707,7 @@ work together in perfect harmony. \begin{key}{/tikz/graphs/grow left=\meta{distance} (default 1)} Like |grow up|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow left=7mm] { a -> b -> c}; \end{codeexample} % @@ -2711,7 +2716,7 @@ work together in perfect harmony. \begin{key}{/tikz/graphs/grow right=\meta{distance} (default 1)} Like |grow up|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow right=7mm] { a -> b -> c}; \end{codeexample} % @@ -2722,7 +2727,7 @@ work together in perfect harmony. which the center of each new element is removed from the center of the previous one is \meta{distance}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [branch up=7mm] { a -> b -> {c, d, e} }; \end{codeexample} % @@ -2733,7 +2738,7 @@ work together in perfect harmony. \begin{key}{/tikz/graphs/branch down=\meta{distance} (default 1)} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [branch down=7mm] { a -> b -> {c, d, e}}; \end{codeexample} % @@ -2741,7 +2746,7 @@ work together in perfect harmony. \begin{key}{/tikz/graphs/branch left=\meta{distance} (default 1)} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [branch left=7mm, grow down=7mm] { a -> b -> {c, d, e}}; \end{codeexample} % @@ -2749,7 +2754,7 @@ work together in perfect harmony. \begin{key}{/tikz/graphs/branch right=\meta{distance} (default 1)} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [branch right=7mm, grow down=7mm] { a -> b -> {c, d, e}}; \end{codeexample} % @@ -2766,17 +2771,17 @@ The following keys place nodes in a $N\times M$ grid. automatically as $\sqrt{\texttt{\string|V\string|}}$. $N$ is the number of rows needed to lay out the graph in a grid with $M$ columns. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] % An example with 6 nodes, 3 columns and therefor 2 rows \tikz \graph [grid placement] { subgraph I_n[n=6, wrap after=3] }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] % An example with 9 nodes with columns and rows computed automatically \tikz \graph [grid placement] { subgraph Grid_n [n=9] }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] % Directions can be changed \tikz \graph [grid placement, branch up, grow left] { subgraph Grid_n [n=9] }; \end{codeexample} @@ -2784,7 +2789,7 @@ The following keys place nodes in a $N\times M$ grid. In case a user-defined graph instead of a pre-defined |subgraph| is to be laid out using |grid placement|, |n| has to be specified explicitly: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grid placement] { [n=6, wrap after=3] a -- b -- c -- d -- e -- f @@ -2809,7 +2814,7 @@ or advanced offline strategies to place the nodes. along a chain are placed in such a way that the left end of a new node is \meta{distance} from the right end of the previous node: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow right sep, left anchor=east, right anchor=west] { start -- { long text -- {short, very long text} -- more text, @@ -2828,14 +2833,15 @@ or advanced offline strategies to place the nodes. \begin{key}{/tikz/graphs/grow left sep=\meta{distance} (default 1em)} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow left sep] { long -- longer -- longest }; \end{codeexample} % \end{key} \begin{key}{/tikz/graphs/grow up sep=\meta{distance} (default 1em)} -\begin{codeexample}[] +% +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow up sep] { a / $a=x$ -- b / {$b=\displaystyle \int_0^1 x dx$} -- @@ -2853,7 +2859,7 @@ or advanced offline strategies to place the nodes. This key works like |grow right sep|, only it affects groups rather than chains. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow down, branch right sep] { start -- { an even longer text -- {short, very long text} -- more text, @@ -2869,7 +2875,7 @@ or advanced offline strategies to place the nodes. \begin{key}{/tikz/graphs/branch left sep=\meta{distance} (default 1em)} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow down sep, branch left sep] { start -- { an even longer text -- {short, very long text} -- more text, @@ -2883,7 +2889,7 @@ or advanced offline strategies to place the nodes. \begin{key}{/tikz/graphs/branch up sep=\meta{distance} (default 1em)} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [branch up sep] { a, b, c[draw, circle, inner sep=7mm] }; \end{codeexample} % @@ -2910,7 +2916,7 @@ or |counterclockwise|. chain is shifted by |(|\meta{logical width}\meta{angle}|:|\meta{logical width}\meta{angle}|)|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [circular placement] { a -> b -> c; d -> e; @@ -2924,7 +2930,7 @@ or |counterclockwise|. Like for |group shift|, each node on a chain is shifted by |(|\meta{logical depth}\meta{angle}|:|\meta{logical depth}\meta{angle}|)|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [circular placement, group polar shift=(30:0)] { a -> b -> c; d -> e; @@ -2932,7 +2938,7 @@ or |counterclockwise|. }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [circular placement, chain polar shift=(30:0), group polar shift=(0:1cm)] { @@ -2948,11 +2954,11 @@ or |counterclockwise|. when the polar shift of a node has been calculated. Essentially, this key allows you to set the \meta{radius} of the innermost circle. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [circular placement, radius=5mm] { a, b, c, d }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [circular placement, radius=1cm] { a, b, c, d }; \end{codeexample} \end{key} @@ -2961,11 +2967,11 @@ or |counterclockwise|. This is an initial value that is added to the total computed angle when the polar shift of a node has been calculated. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [circular placement] { a, b, c, d }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [circular placement, phase=0] { a, b, c, d }; \end{codeexample} \end{key} @@ -2979,11 +2985,11 @@ or |counterclockwise|. which is exactly what you want when you use predefined graph macros like |subgraph K_n|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [clockwise=4] { a, b, c, d }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [clockwise] { subgraph K_n [n=5] }; \end{codeexample} % @@ -3006,7 +3012,7 @@ the node inside this tree. This key stores a number that is increased for each element on a chain, but gets reset at the end of a group: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [ branch down=5mm, typeset= \tikzgraphnodetext:\pgfkeysvalueof{/tikz/graphs/placement/level}] { @@ -3039,7 +3045,7 @@ command also executes the following keys whenever it creates a node: This key also gets executed for each newly created node with \meta{level} set to the current level of the node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [ branch down=5mm, level 1/.style={nodes=red}, @@ -3058,7 +3064,7 @@ command also executes the following keys whenever it creates a node: }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [ branch down=5mm, level 1/.style={grow right=2cm}, @@ -3086,7 +3092,7 @@ command also executes the following keys whenever it creates a node: In the following the details of how to define a new placement strategy are explained. Most readers may wish to skip this section. -As a graph specification is being parsed, the |graph| library will keep track +As a graph specification is being parsed, the |graphs| library will keep track of different numbers that identify the positions of the nodes. Let us start with what happens on a chain. First, the following counter is increased for each element of the chain: @@ -3096,7 +3102,7 @@ each element of the chain: current chain. However, you only have access to this value inside the code passed to the macro |compute position|, explained later on. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [ grow right sep, typeset=\tikzgraphnodetext:\mynum, placement/compute position/.append code= @@ -3142,7 +3148,7 @@ gives more interesting information: just setup things so that the computed width and depth of each node is displayed at the bottom of each node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [nodes={align=center, inner sep=1pt}, grow right=7mm, typeset={\tikzgraphnodetext\\[-4pt] @@ -3166,7 +3172,7 @@ gives more interesting information: option, which internally sets the |logical node width| key so that it returns the width of its parameter in points. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow right sep, branch down sep, nodes={align=left, inner sep=1pt}, typeset={\tikzgraphnodetext\\[-4pt] \tiny Width: \mywidth\\[-6pt] \tiny Depth: \mydepth}, @@ -3190,11 +3196,11 @@ Symmetrically to chains, as a group is being constructed, counters are available for the number of chains encountered so far in the current group and for the logical depth of the current group: % -\begin{key}{/tikz/graphs/placement/element count} +\begin{key}{/tikz/graphs/placement/chain count} This key stores a number that tells us the sequence number of the chain in the current group. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [ grow right sep, branch down=5mm, typeset=\tikzgraphnodetext:\mynum, placement/compute position/.append code= @@ -3246,7 +3252,7 @@ following two keys: (Naturally, the same effect could be achieved much more easily using the |level| key.) % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \newcount\mycount \def\lightendeepernodes{ \pgfmathsetcount{\mycount}{ @@ -3321,7 +3327,7 @@ following two keys: |V={1,...,|\meta{number}|}, name shore V/.style={name=V}|. \end{key} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [branch right, nodes={draw, circle}] { subgraph I_n [V={a,b,c}] }; \end{codeexample} @@ -3330,7 +3336,7 @@ following two keys: used to introduce nodes into a graph that are then connected as in the following example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [clockwise, clique] { subgraph I_n [n=4] }; \end{codeexample} % @@ -3341,7 +3347,7 @@ following two keys: $m$ unconnected vertices. The first set consists of the vertices set by the key |V|, the other set consists of the vertices set by the key |W|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph { subgraph I_nm [V={1,2,3}, W={a,b,c}] }; \end{codeexample} % @@ -3371,7 +3377,7 @@ following two keys: The main purpose of this subgraph is to setup the nodes in a bipartite graph: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph { subgraph I_nm [n=3, m=4]; @@ -3386,7 +3392,7 @@ following two keys: \begin{graph}{subgraph K\_n} This graph is the complete clique on the vertices from the |V| key. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [clockwise] { subgraph K_n [n=7] }; \end{codeexample} % @@ -3396,12 +3402,12 @@ following two keys: This graph is the complete bipartite graph with the two shores |V| and |W| as in |subgraph I_nm|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [branch right, grow down] { subgraph K_nm [V={6,...,9}, W={b,...,e}] }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [simple, branch right, grow down] { subgraph K_nm [V={1,2,3}, W={a,b,c,d}, ->]; @@ -3414,7 +3420,7 @@ following two keys: \begin{graph}{subgraph P\_n} This graph is the path on the vertices in |V|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [branch right] { subgraph P_n [n=3] }; \end{codeexample} % @@ -3423,7 +3429,7 @@ following two keys: \begin{graph}{subgraph C\_n} This graph is the cycle on the vertices in |V|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [clockwise] { subgraph C_n [n=7, ->] }; \end{codeexample} % @@ -3439,12 +3445,12 @@ following two keys: created between the nodes of a |Grid_n| |subgraph| using different values for |wrap after|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [grid placement] { subgraph Grid_n [n=3,wrap after=1] }; \tikz \graph [grid placement] { subgraph Grid_n [n=3,wrap after=3] }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [grid placement] { subgraph Grid_n [n=4,wrap after=2] }; \tikz \graph [grid placement] { subgraph Grid_n [n=4] }; \end{codeexample} @@ -3464,7 +3470,7 @@ following two keys: % The names of the two shores |V| and |W| can be changed as described in % the documentation of the keys |/tikz/graphs/name shore V| and % |/tikz/graphs/name shore W|. -% \begin{codeexample}[] +% \begin{codeexample}[preamble={\usetikzlibrary{graphs}}] %\tikz \graph [grid placement] { subgraph Grid_nm [V={1,2,3}, W={4, 5, 6}] }; % \end{codeexample} %\end{graph} @@ -3481,7 +3487,7 @@ vertices of the current group having a certain color in a specific way. a color that all nodes get by default, when you do not specify anything, all nodes will be connected. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [clockwise, n=5] { a, b, @@ -3492,7 +3498,7 @@ vertices of the current group having a certain color in a specific way. }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [color class=red, clockwise, n=5] { [clique=red, ->] a, b[red], c[red], d, e[red] @@ -3506,7 +3512,8 @@ vertices of the current group having a certain color in a specific way. current group having belonging to color class \meta{color}. More precisely, an edge of kind |-!-| is added for each pair of vertices. This means that edge only get removed if you specify the |simple| option. -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [simple] { subgraph K_n [<->, n=7, clockwise]; % create lots of edges @@ -3520,7 +3527,7 @@ vertices of the current group having a certain color in a specific way. Connects the nodes colored \meta{color} is a cyclic fashion. The ordering is the ordering in which they appear in the whole graph specification. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [clockwise, n=6, phase=60] { { [cycle, ->] a, b, c }, { [cycle, <-] d, e, f } @@ -3534,7 +3541,7 @@ vertices of the current group having a certain color in a specific way. all other edges between the nodes of the cycle, provided we are constructing a |simple| graph. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [simple] { subgraph K_n [n=7, clockwise]; % create lots of edges @@ -3548,7 +3555,7 @@ vertices of the current group having a certain color in a specific way. Works like |cycle|, only there is no edge from the last to the first vertex. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [clockwise, n=6] { { [path, ->] a, b, c }, { [path, <-] d, e, f } @@ -3561,7 +3568,7 @@ vertices of the current group having a certain color in a specific way. Works like |induced cycle|, only there is no edge from the last to the first vertex. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [simple] { subgraph K_n [n=7, clockwise]; % create lots of edges @@ -3582,14 +3589,14 @@ the colors need to be set explicitly). Adds all possible edges from every node having color \meta{from color} to every node having color \meta{to color}: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { {a, b} ->[complete bipartite] {c, d, e} --[complete bipartite] {g, h, i, j} --[complete bipartite] k }; \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [color class=red, color class=green, clockwise, n=6] { [complete bipartite={red}{green}, ->] a [red], b[red], c[red], d[green], e[green], f[green] @@ -3603,7 +3610,7 @@ the colors need to be set explicitly). edges between the vertices in either shore are removed (more precisely, they get replaced by |-!-| edges). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [simple] { subgraph K_n [n=5, clockwise]; % Lots of edges @@ -3622,7 +3629,7 @@ the colors need to be set explicitly). what graph theoreticians call a \emph{perfect matching}, otherwise only a maximum, but not perfect matching results. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { {a, b, c} ->[matching] {d, e, f} --[matching] @@ -3641,7 +3648,7 @@ the colors need to be set explicitly). This simple rule allows for some powerful effects (since this connector is the one initially set, there is no need to add it here): % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph { a -> {b, c} -> {d, e} -- f}; \end{codeexample} % @@ -3661,7 +3668,7 @@ the colors need to be set explicitly). each node gets connected to the corresponding node in the other set with the same index (as in a |matching|): % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs.standard}}] \tikz \graph [left anchor=east, right anchor=west, branch down=4mm, grow right=15mm] { subgraph I_n [n=12, name=A] --[butterfly={level=3}] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-matrices.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-matrices.tex index e8c5a77dc9a..8288a0797f6 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-matrices.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-matrices.tex @@ -68,6 +68,11 @@ tree, and so on. Also, you can refer to the different anchors of a matrix. \begin{stylekey}{/tikz/every matrix (initially \normalfont empty)} This style is used in every matrix. \end{stylekey} + % + \begin{stylekey}{/tikz/every outer matrix (initially \normalfont empty)} + While the |every matrix| key also applies to the matrix contents, this + only applies to the outer node which holds the matrix. + \end{stylekey} \end{key} Even more so than nodes, matrices will often be the only object on a path. @@ -87,6 +92,11 @@ normal nodes: transformation matrix is reset. \item For multi-part shapes you can only set the |text| part of the node. \item All options starting with |text| such as |text width| have no effect. + \item If you place a matrix on a path, the matrix contents will be + collected into a macro, which tokenizes them. This means that |&| will + lose its meaning as an alignment character, resulting in an error. If + you need to place a matrix on a path, use |ampersand replacement| to + work around that problem. \end{enumerate} @@ -614,7 +624,7 @@ The following examples are adapted from code by Mark Wibrow. The first two redraw pictures from Timothy van Zandt's PStricks documentation: % {\catcode`\|=12 -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix [matrix of math nodes,row sep=1cm] { @@ -633,7 +643,10 @@ redraw pictures from Timothy van Zandt's PStricks documentation: \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{matrix}}, + pre={\definecolor{graphicbackground}{rgb}{0.96,0.96,0.8}}, +] \begin{tikzpicture}[>=stealth,->,shorten >=2pt,looseness=.5,auto] \matrix [matrix of math nodes, column sep={2cm,between origins}, @@ -658,7 +671,7 @@ redraw pictures from Timothy van Zandt's PStricks documentation: \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{matrix}}] \begin{tikzpicture} \matrix (network) [matrix of nodes,% @@ -688,7 +701,7 @@ is based on the following paper: K.~Bossley, M.~Brown, and C.~Harris, Neurofuzzy identification of an autonomous underwater vehicle, \emph{International Journal of Systems Science}, 1999, 30, 901--913. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows,shapes.geometric}}] \begin{tikzpicture} [auto, decision/.style={diamond, draw=blue, thick, fill=blue!20, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex index ac0d0080b64..4a8874131de 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-paths.tex @@ -94,24 +94,25 @@ which is described in the subsections of the present section. the path options (like filling and drawing the path due to a |fill| and a |draw| option somewhere in the \meta{specification}), the nodes are added in a post-processing step. +\end{command} - \begin{key}{/tikz/name=\meta{path name}} - Assigns a name to the path for reference (specifically, for reference - in animations; for reference in intersections, use the |name path| - command, which has a different purpose, see the |intersections| library - for details). Since the name is a ``high-level'' name (drivers never - know of it), you can use spaces, number, letters, or whatever you like - when naming a path, but the name may \emph{not} contain any punctuation - like a dot, a comma, or a colon. - \end{key} +\begin{key}{/tikz/name=\meta{path name}} + Assigns a name to the path for reference (specifically, for reference + in animations; for reference in intersections, use the |name path| + command, which has a different purpose, see the |intersections| library + for details). Since the name is a ``high-level'' name (drivers never + know of it), you can use spaces, number, letters, or whatever you like + when naming a path, but the name may \emph{not} contain any punctuation + like a dot, a comma, or a colon. +\end{key} - The following style influences scopes: +The following style influences scopes: +% +\begin{stylekey}{/tikz/every path (initially \normalfont empty)} + This style is installed at the beginning of every path. This can be + useful for (temporarily) adding, say, the |draw| option to everything + in a scope. % - \begin{stylekey}{/tikz/every path (initially \normalfont empty)} - This style is installed at the beginning of every path. This can be - useful for (temporarily) adding, say, the |draw| option to everything - in a scope. - % \begin{codeexample}[] \begin{tikzpicture} [fill=yellow!80!black, % only sets the color @@ -120,8 +121,8 @@ which is described in the subsections of the present section. \shade (2,0) rectangle +(1,1); \end{tikzpicture} \end{codeexample} - \end{stylekey} -\end{command} + % +\end{stylekey} \begin{key}{/tikz/insert path=\meta{path}} This key can be used inside an option to add something to the current path. @@ -820,7 +821,7 @@ cosine curve whose end points are not multiples of $\pi/2$. The |svg| operation can be used to extend the current path by a path given in the \textsc{svg} path data syntax. This syntax is described in detail in -Section 8.3 of the \textsc{svg 1.1} specification, please consult this +Section~8.3 of the \textsc{svg 1.1} specification, please consult this specification for details. \begin{pathoperation}{svg}{\opt{\oarg{options}}\marg{path data}} @@ -832,7 +833,7 @@ specification for details. \meta{options} apply locally to this path operation, typically you will use them to set up, say, some transformations. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{svg.path}}] \begin{tikzpicture} \filldraw [fill=red!20] (0,1) svg[scale=2] {h 10 v 10 h -10} node [above left] {upper left} -- cycle; @@ -918,8 +919,8 @@ path to be used instead of the straight line. To do so, you specify the nodes between the |to| keyword and the coordinate (if there are options to the |to| operation, these come first). The effect of |(a) to node {x} (b)| (typically) is the same as if you had written - |(a) -- node {x} (b)|, namely that the node is placed on the to. This can - be used to add labels to tos: + |(a) -- node {x} (b)|, namely that the node is placed on the |to|. This can + be used to add labels to |to|s: % \begin{codeexample}[] \begin{tikzpicture} @@ -1184,7 +1185,7 @@ not actually extend that path, but have different, mostly local, effects. and a $y$-part measured in \TeX\ points (|pt|). In particular, point registers do not store nodes or node names. Here is an example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); @@ -1224,7 +1225,7 @@ not actually extend that path, but have different, mostly local, effects. point. Naturally, using the \verb!|-! notation, this could be written much more compactly. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); @@ -1241,7 +1242,7 @@ not actually extend that path, but have different, mostly local, effects. operation. If you wish to access a computed coordinate outside the body, you must use a |coordinate| path operation: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,2); @@ -1263,7 +1264,7 @@ not actually extend that path, but have different, mostly local, effects. For a more useful application of the let operation, let us draw a circle that touches a given line: % -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}},preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \draw [help lines] (0,0) grid (3,3); @@ -1336,7 +1337,7 @@ to the |node| operation and discussed in detail in Section~\ref{section-pics}. This causes an animation of \meta{animate attribute} to be added to the current path, see Section~\ref{section-tikz-animations} for details. % -\begin{codeexample}[width=2cm] +\begin{codeexample}[width=2cm,preamble={\usetikzlibrary{animations}}] \tikz \draw :xshift = {0s = "0cm", 30s = "-3cm", repeats} (0,0) circle (5mm); \end{codeexample} % @@ -1392,10 +1393,10 @@ experts and should only be used deep inside clever macros, not on normal paths. \subsection{Interacting with the Soft Path subsystem} During construction \tikzname\ stores the path internally as a \emph{soft -path}. Sometimes it is desirable to save a path during the stage of -construction, restore it elsewhere and continue using it. There are two keys -to facilitate this operation, which are explained below. To learn more about -the soft path subsystem, refer to section~\ref{section-soft-paths}. +path}. Sometimes it is desirable to save a path during the stage of +construction, restore it elsewhere and continue using it. There are two keys to +facilitate this operation, which are explained below. To learn more about the +soft path subsystem, refer to section~\ref{section-soft-paths}. \begin{key}{/tikz/save path=\meta{macro}} Save the current soft path into \meta{macro}. @@ -1405,7 +1406,7 @@ the soft path subsystem, refer to section~\ref{section-soft-paths}. Set the current path to the soft path stored in \meta{macro}. \end{key} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{intersections}}] \begin{tikzpicture} \path[save path=\pathA,name path=A] (0,1) to [bend left] (1,0); \path[save path=\pathB,name path=B] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-pics.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-pics.tex index c18b7a61766..06145514b4d 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-pics.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-pics.tex @@ -46,7 +46,13 @@ anywhere). We have now defined a |seagull| pic type and can use it as follows: \draw (-3mm,0) to [bend left] (0,0) to [bend left] (3mm,0); } } -\begin{codeexample}[] +\begin{codeexample}[ + pre={\tikzset{ + seagull/.pic={ + % Code for a "seagull". Do you see it?... + \draw (-3mm,0) to [bend left] (0,0) to [bend left] (3mm,0); + }, +}}] \tikz \fill [fill=blue!20] (1,1) -- (2,2) pic {seagull} @@ -126,7 +132,13 @@ braces: this option behaves exactly like the |node contents| option and, indeed, the two are interchangeable.) % -\begin{codeexample}[] +\begin{codeexample}[ + pre={\tikzset{ + seagull/.pic={ + % Code for a "seagull". Do you see it?... + \draw (-3mm,0) to [bend left] (0,0) to [bend left] (3mm,0); + }, +}}] \tikz { \path (0,0) pic [pic type = seagull] (1,0) pic {seagull}; @@ -143,7 +155,13 @@ braces: of the origin refers to the last position used on the path or to the specified |at|. % -\begin{codeexample}[] +\begin{codeexample}[ + pre={\tikzset{ + seagull/.pic={ + % Code for a "seagull". Do you see it?... + \draw (-3mm,0) to [bend left] (0,0) to [bend left] (3mm,0); + }, +}}] \tikz { % different ways of placing pics \draw [help lines] (0,0) grid (3,2); \pic at (1,0) {seagull}; @@ -157,7 +175,13 @@ braces: using the |transform shape| option, which has the same effect as for nodes: The ``outer'' transformation gets applied to the node: % -\begin{codeexample}[] +\begin{codeexample}[ + pre={\tikzset{ + seagull/.pic={ + % Code for a "seagull". Do you see it?... + \draw (-3mm,0) to [bend left] (0,0) to [bend left] (3mm,0); + }, +}}] \tikz [scale=2] { \pic at (0,0) {seagull}; \pic at (1,0) [transform shape] {seagull}; @@ -167,7 +191,13 @@ braces: When the \meta{options} contain transformation commands like |scale| or |rotate|, these transformations always apply to the pic: % -\begin{codeexample}[] +\begin{codeexample}[ + pre={\tikzset{ + seagull/.pic={ + % Code for a "seagull". Do you see it?... + \draw (-3mm,0) to [bend left] (0,0) to [bend left] (3mm,0); + }, +}}] \tikz [rotate=30] { \pic at (0,0) {seagull}; \pic at (1,0) [rotate=90] {seagull}; @@ -177,7 +207,13 @@ braces: Just like nodes, pics can also be positioned implicitly and, somewhat unsurprisingly, the same rules concerning positioning and sloping apply: % -\begin{codeexample}[] +\begin{codeexample}[ + pre={\tikzset{ + seagull/.pic={ + % Code for a "seagull". Do you see it?... + \draw (-3mm,0) to [bend left] (0,0) to [bend left] (3mm,0); + }, +}}] \tikz \draw (0,0) to [bend left] pic [near start] {seagull} @@ -276,7 +312,14 @@ braces: \draw (-3mm,-3mm) rectangle (3mm,3mm); } } -\begin{codeexample}[width=6cm] +\begin{codeexample}[ + width=6cm, + pre={\tikzset{ + my pic/.pic = { + \path [pic actions] (0,0) circle[radius=3mm]; + \draw (-3mm,-3mm) rectangle (3mm,3mm); + } +}}] \tikz \pic {my pic}; \space \tikz \pic [red] {my pic}; \space \tikz \pic [draw] {my pic}; \space @@ -297,7 +340,13 @@ braces: regard), then comes the path, and then come all nodes and pics that are in front of the path in the order they appeared. % -\begin{codeexample}[] +\begin{codeexample}[ + pre={\tikzset{ + seagull/.pic={ + % Code for a "seagull". Do you see it?... + \draw (-3mm,0) to [bend left] (0,0) to [bend left] (3mm,0); + }, +}}] \tikz \fill [fill=blue!20] (1,1) -- (2,2) pic [behind path] {seagull} @@ -330,7 +379,13 @@ braces: As for nodes, a pic specification may start with |foreach|. The effect and semantics are the same as for nodes. % -\begin{codeexample}[] +\begin{codeexample}[ + pre={\tikzset{ + seagull/.pic={ + % Code for a "seagull". Do you see it?... + \draw (-3mm,0) to [bend left] (0,0) to [bend left] (3mm,0); + }, +}}] \tikz \pic foreach \x in {1,2,3} at (\x,0) {seagull}; \end{codeexample} @@ -341,9 +396,15 @@ braces: \begin{stylekey}{/tikz/every pic (initially \normalfont empty)} This style is installed at the beginning of every pic. % -\begin{codeexample}[] -\begin{tikzpicture}[every node/.style={draw}] - \draw (0,0) node {A} -- (1,1) node {B}; +\begin{codeexample}[ + pre={\tikzset{ + seagull/.pic={ + % Code for a "seagull". Do you see it?... + \draw (-3mm,0) to [bend left] (0,0) to [bend left] (3mm,0); + }, +}}] +\begin{tikzpicture}[every pic/.style={scale=2,transform shape}] + \pic foreach \x in {1,2,3} at (\x,0) {seagull}; \end{tikzpicture} \end{codeexample} \end{stylekey} @@ -416,7 +477,20 @@ braces: Just as for nodes, you can use the attribute--colon syntax to add an animation to a pic: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, + pre={\tikzset{ + seagull/.pic={ + % Code for a "seagull". Do you see it?... + \coordinate (-left wing) at (-3mm,0); + \coordinate (-head) at (0,0); + \coordinate (-right wing) at (3mm,0); + % + \draw (-left wing) to [bend left] (0,0) (-head) to [bend left] (-right wing); + } +}}, +] \tikz { \pic :rotate={0s="0", 20s="90"} {seagull}; \pic at (1.5,1.5) {seagull}; @@ -425,7 +499,11 @@ braces: % Naturally, you can also use animations in the code of a picture: % -\begin{codeexample}[animation list={0.5,1,1.5,2},width=3cm] +\begin{codeexample}[ + preamble={\usetikzlibrary{animations}}, + animation list={0.5,1,1.5,2}, + width=3cm, +] \begin{tikzpicture} [flapping seagull/.pic={ \draw (0,0) :path={ 0s= {"{(180:3mm) to [bend left] (0,0) to [bend left] (0:3mm)}"=base}, @@ -483,7 +561,7 @@ This string is transformed into the following: As example of a pic type that takes these values into account is the |angle| pic type: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{angles,quotes}}] \tikz \draw (3,0) coordinate (A) -- (0,1) coordinate (B) -- (1,2) coordinate (C) diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex index 3859a65f5c0..894f6d44d9e 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-plots.tex @@ -715,7 +715,7 @@ behavior of |plot|. \end{tikzpicture} \end{codeexample} % - The use of |bar width| and |bar shift| is explained in the plot handler + The use of |bar width| and |bar shift| is explained in the |plothandlers| library documentation, section~\ref{section-plotlib-bar-handlers}. Please refer to page~\pageref{key-bar-width}. \end{key} @@ -723,7 +723,7 @@ behavior of |plot|. \begin{key}{/tikz/xbar} This option works like |ybar| except that the bars are horizontal. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{patterns}}] \tikz \draw[pattern=north west lines] plot[xbar] coordinates{(1,0) (0.4,1) (1.7,2) (1.6,3)}; \end{codeexample} @@ -747,7 +747,7 @@ behavior of |plot|. be ignored. You can configure relative shifts and relative bar widths, which is - explained in the plot handler library documentation, + explained in the |plothandlers| library documentation, section~\ref{section-plotlib-bar-handlers}. Please refer to page~\pageref{key-bar-interval-width}. \end{key} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-scopes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-scopes.tex index 61f0aafb81b..d37579fae65 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-scopes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-scopes.tex @@ -106,8 +106,8 @@ are local to the |{tikzpicture}| to which they apply. approximation of the bounding box, but will not always be accurate. First, the line thickness of diagonal lines is not taken into account correctly. Second, control points of a curve often lie far ``outside'' the curve and - make the bounding box too large. In this case, you should use the |[use as - bounding box]| option. + make the bounding box too large. In this case, you should use the + |[use as bounding box]| option. The following key influences the baseline of the resulting picture: % @@ -140,7 +140,7 @@ $A \mathbin{\tikz[baseline] \draw[->>] (0pt,.5ex) -- (3ex,.5ex);} B$ $y$-coordinate of the resulting point. This makes it easy to reference the $y$-coordinate of, say, the baseline of nodes. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] Hello \tikz[baseline=(X.base)] \node [cross out,draw] (X) {world.}; @@ -173,7 +173,7 @@ Top align: accumulate. This option must also be given in the optional argument of the |{tikzpicture}| environment. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \begin{tikzpicture}[execute at end picture=% { \begin{pgfonlayer}{background} @@ -358,7 +358,7 @@ When this library is loaded, the following happens: At certain places inside a \tikzname\ picture, it is allowed to start a scope just using a single brace, provided the single brace is followed by options in square brackets: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{scopes}}] \begin{tikzpicture} { [ultra thick] { [red] @@ -404,7 +404,7 @@ pair just for a single command, the |\scoped| command may be useful: semicolon or it may contain multiple commands, but then they must be surrounded by curly braces. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds}}] \begin{tikzpicture} \node [fill=white] at (1,1) {Hello world}; \scoped [on background layer] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex index 01af022c291..e4c7d11f92d 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-shapes.tex @@ -175,7 +175,7 @@ The syntax for specifying nodes is the following: Note that |behind path| only applies to the current path; not to the current scope or picture. To put a node ``behind everything'' you need to use layers and options like |on background layer|, see the - background library in Section~\ref{section-tikz-backgrounds}. + |backgrounds| library in Section~\ref{section-tikz-backgrounds}. \end{key} \begin{key}{/tikz/in front of path} @@ -237,7 +237,7 @@ The syntax for specifying nodes is the following: instead or an ellipse shape (you have to include one of the |shapes.geometric| library for the latter shape): % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \tikz \fill[fill=yellow!80!black] (0,0) node {first node} -- (1,1) node[ellipse,draw, behind path] {second node} @@ -275,7 +275,7 @@ The syntax for specifying nodes is the following: Section~\ref{section-tikz-animations}. Here is a typical example of how this syntax can be used: % -\begin{codeexample}[animation list={0.5,1,1.5,2}] +\begin{codeexample}[preamble={\usetikzlibrary{animations}},animation list={0.5,1,1.5,2}] \tikz \node :fill opacity = { 0s="1", 2s="0", begin on=click } :rotate = { 0s="0", 2s="90", begin on=click } @@ -632,7 +632,7 @@ that apply to most shapes: Sets a desired aspect ratio for the shape. For the |diamond| shape, this option sets the ratio between width and height of the shape. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture} \draw (0,0) node[shape aspect=1,diamond,draw] {aspect 1}; \draw (0,-2) node[shape aspect=2,diamond,draw] {aspect 2}; @@ -647,7 +647,7 @@ Some shapes (but not all), support a special kind of rotation. This rotation affects only the border of a shape and is independent of the node contents, but \emph{in addition} to any other transformations. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \tikzset{every node/.style={dart, shape border uses incircle, inner sep=1pt, draw}} \tikz \node foreach \a/\b/\c in {A/0/0, B/45/0, C/0/45, D/45/45} @@ -669,7 +669,7 @@ rotation must be restricted to integer multiples of 90 degrees. By using an incircle, unrestricted rotation is possible, but the border will not make a very tight fit to the node contents. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \tikzset{every node/.style={isosceles triangle, draw}} \begin{tikzpicture} \node {abc}; @@ -699,7 +699,7 @@ Note that if the border of the shape is rotated, the compass point anchors, and `text box' anchors (including |mid east|, |base west|, and so on), \emph{do not rotate}, but the other anchors do: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \tikzset{every node/.style={shape=trapezium, draw, shape border uses incircle}} \begin{tikzpicture} \node at (0,0) (A) {A}; @@ -742,7 +742,7 @@ the following command: name} -- until another |\partname| is encountered or until the node \meta{text} ends. The \meta{options} will be local to this part. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \begin{tikzpicture} \node [circle split,draw,double,fill=red!20] { @@ -763,7 +763,7 @@ the following command: This style is installed at the beginning of every node part named \meta{part name}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \tikz [every lower node part/.style={red}] \node [circle split,draw] {$q_1$ \nodepart{lower} $00$}; \end{codeexample} @@ -851,7 +851,7 @@ The other font command is: A useful example of how the |font| option can be used is the following: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.multipart}}] \tikz [every text node part/.style={font=\itshape}, every lower node part/.style={font=\footnotesize}] \node [circle split,draw] {state \nodepart{lower} output}; @@ -1424,7 +1424,7 @@ differently. node is shifted by the vertical component of this point. The anchor is set to |south|. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture} \draw[help lines] (0,0) grid (2,2); \node at (1,1) [above=.2 and 3mm,draw] {above}; @@ -1440,14 +1440,14 @@ differently. \item The \meta{of-part} can be \declareandlabel{of}| |\meta{coordinate}, where \meta{coordinate} is \emph{not} in parentheses and it is \emph{not} just a node name. An - example would be |of somenode.north| or |of 2,3|. In this case, the + example would be |of somenode.north| or |of {2,3}|. In this case, the following happens: First, the node's |at| parameter is set to the \meta{coordinate}. Second, the node is shifted according to the \meta{shift-part}. Third, the anchor is set to |south|. Here is a basic example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture}[every node/.style=draw] \draw[help lines] (0,0) grid (2,2); \node (somenode) at (1,1) {some node}; @@ -1480,7 +1480,7 @@ differently. such a way that the distance between its south border and \meta{node name}'s north border is exactly the given distance. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture}[every node/.style=draw] \draw[help lines] (0,0) grid (2,2); \node (some node) at (1,1) {some node}; @@ -1508,7 +1508,7 @@ differently. will result in nodes that are centered on ``grid coordinate'', hence the name of the option. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture}[every node/.style=draw] \draw[help lines] (0,0) grid (2,3); @@ -1530,7 +1530,7 @@ differently. The value of this key is used as \meta{shifting part} is used if and only if a \meta{of-part} is present, but no \meta{shifting part}. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture}[every node/.style=draw,node distance=5mm] \draw[help lines] (0,0) grid (2,3); @@ -1595,7 +1595,7 @@ differently. % The following example should help to illustrate the difference: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture}[every node/.style={draw,circle}] \draw[help lines] (0,0) grid (2,5); \begin{scope}[node distance=5mm and 5mm] @@ -1615,7 +1615,7 @@ differently. \end{tikzpicture} \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture}[every node/.style={draw,rectangle}] \draw[help lines] (0,0) grid (2,5); \begin{scope}[node distance=5mm and 5mm] @@ -1635,7 +1635,7 @@ differently. \end{tikzpicture} \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture}[every node/.style={draw,rectangle},on grid] \draw[help lines] (0,0) grid (4,4); \begin{scope}[node distance=1] @@ -1679,7 +1679,7 @@ The |positioning| package also introduces the following new placement keys: This key is useful for chaining together nodes so that their base lines are aligned. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture}[node distance=1ex] \draw[help lines] (0,0) grid (3,1); \huge @@ -1734,7 +1734,7 @@ give the |fit| option to a node. The |fit| option expects a list of coordinates the node's text area has exactly the necessary size so that it contains all the given coordinates. Here is an example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fit,shapes.geometric}}] \begin{tikzpicture}[level distance=8mm] \node (root) {root} child { node (a) {a} } @@ -1751,7 +1751,7 @@ given coordinates. Here is an example: If you want to fill the fitted node you will usually have to place it on a background layer. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds,fit,shapes.geometric}}] \begin{tikzpicture}[level distance=8mm] \node (root) {root} child { node (a) {a} } @@ -1792,7 +1792,10 @@ ways to achieve this: \item You can give transformation options \emph{inside} the option list of the node. \emph{These} transformations always apply to the node. % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usepgfmodule{nonlineartransformations}\usetikzlibrary{curvilinear}}, + pre={\makeatletter}, +] \begin{tikzpicture}[every node/.style={draw}] \draw[help lines](0,0) grid (3,2); \draw (1,0) node{A} @@ -1820,7 +1823,10 @@ force: Section~\ref{section-nonlinear-transformations}. % \makeatletter -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usepgfmodule{nonlineartransformations}\usetikzlibrary{curvilinear}}, + pre={\makeatletter}, +] \begin{tikzpicture} % Install a nonlinear transformation: \pgfsetcurvilinearbeziercurve @@ -1960,7 +1966,7 @@ explicitly by using the |pos| option or implicitly by placing the node placement. That is, if |left| is the current |auto| placement, |right| is set instead and the other way round. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{automata}}] \begin{tikzpicture}[auto] \draw[help lines,use as bounding box] (0,-.5) grid (4,5); @@ -1972,7 +1978,7 @@ explicitly by using the |pos| option or implicitly by placing the node \end{tikzpicture} \end{codeexample} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{automata}}] \begin{tikzpicture}[shorten >=1pt,node distance=2cm,auto] \draw[help lines] (0,0) grid (3,2); @@ -2132,7 +2138,7 @@ In addition to the |node| path operation, the two options |label| and |pin| can be used to ``add a node next to another node''. As an example, suppose we want to draw a graph in which the nodes are small circles: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \tikz [circle] { \node [draw] (s) {}; \node [draw] (a) [right=of s] {} edge (s); @@ -2149,7 +2155,7 @@ the start node and the last node is the target node. We could write option allow us to do exactly this without having to use the cumbersome |node| syntax: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \tikz [circle] { \node [draw] (s) [label=$s$] {}; \node [draw] (a) [right=of s] {} edge (s); @@ -2338,7 +2344,7 @@ nodes. \begin{stylekey}{/tikz/every pin edge (initially help lines)} This style is used in every edge created by the |pin| options. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \tikz [pin distance=15mm, every pin edge/.style={<-,shorten <=1pt,decorate, decoration={snake,pre length=4pt}}] @@ -2403,7 +2409,7 @@ When a \meta{string} of the above form is encountered inside the options of a Let us have a look at an example: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikz \node ["my label" red, draw] {my node}; \end{codeexample} % @@ -2417,7 +2423,7 @@ Here are further examples, one where no \meta{options} are added to the |label|, one where a position is specified, and examples with more complicated options in curly braces: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \begin{tikzpicture} \matrix [row sep=5mm] { \node [draw, "label"] {A}; \\ @@ -2470,7 +2476,7 @@ provides: the \meta{text} relative to the main node you can just put something like |left| or |above right| inside the \meta{options}: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikz \node ["$90^\circ$" above, "$180^\circ$" left, circle, draw] {circle}; \end{codeexample} @@ -2479,7 +2485,7 @@ provides: your \meta{text}. This works since the |label| command allows you to specify a direction at the beginning when it is separated by a colon: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikz \node ["90:$90^\circ$", "left:$180^\circ$", circle, draw] {circle}; \end{codeexample} @@ -2491,7 +2497,7 @@ provides: following style is also executed: % \begin{stylekey}{/tikz/every label quotes} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikz [every label quotes/.style=red] \node ["90:$90^\circ$", "left:$180^\circ$", circle, draw] {circle}; \end{codeexample} @@ -2505,7 +2511,7 @@ provides: just add curly braces around either the comma or just around the whole \meta{text}: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikz \node ["{yes, we can}", draw] {foo}; \end{codeexample} % @@ -2513,7 +2519,7 @@ provides: specifically the colon by curly braces to stop the |label| option from interpreting everything before the colon as a direction: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikz \node ["yes{:} we can", draw] {foo}; \end{codeexample} @@ -2542,7 +2548,7 @@ provides: instead of transforming quoted text to the |label| option, they get transformed to the |pin| option: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikz [quotes mean pin] \node ["$90^\circ$" above, "$180^\circ$" left, circle, draw] {circle}; \end{codeexample} @@ -2577,7 +2583,7 @@ interpreted in a different manner, you can also define your own handlers: Here is an example, where the quotes are used to define labels that are automatically named according to the |text|: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikzset{node quotes mean={label={[#2,name={#1}]#1}}} \tikz { @@ -2783,14 +2789,14 @@ The following style is important for the placement of the labels: quotes-syntax to be placed next to the edges. Unless the setting of |auto| has been changed, they will be placed to the left. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikz \draw (0,0) edge ["left", ->] (2,0); \end{codeexample} In order to place all labels to the right by default, change this style to |auto=right|: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikz [every edge quotes/.style={auto=right}] \draw (0,0) edge ["right", ->] (2,0); \end{codeexample} @@ -2798,7 +2804,7 @@ The following style is important for the placement of the labels: To place all nodes ``on'' the edge, just make this style empty (and, possibly, make your labels opaque): % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikz [every edge quotes/.style={fill=white,font=\footnotesize}] \draw (0,0) edge ["mid", ->] (2,1); \end{codeexample} @@ -2815,7 +2821,7 @@ placed on the other side. Because of the special treatment, you can even add another option like |near end| after the apostrophe without having to add curly braces and commas: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikz \draw (0,0) edge ["left", "right"', "start" near start, @@ -2825,7 +2831,7 @@ braces and commas: In order to modify the distance between the edge labels and the edge, you should consider introducing some styles: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{quotes}}] \tikz [tight/.style={inner sep=1pt}, loose/.style={inner sep=.7em}] \draw (0,0) edge ["left" tight, "right"' loose, diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transparency.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transparency.tex index b93d2f20034..0483ee57ad3 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transparency.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-transparency.tex @@ -424,8 +424,8 @@ commands, which are \emph{only defined in the library}, namely the library The following shading is 2cm by 2cm and gets more and more transparent from left to right, but is 50\% transparent for a large circle in the middle. % -{\tikzexternaldisable -\begin{codeexample}[] +{\ifpgfmanualexternalize\tikzexternaldisable\fi +\begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns}}] \begin{tikzfadingfrompicture}[name=fade right] \shade[left color=transparent!0, right color=transparent!100] (0,0) rectangle (2,2); @@ -446,7 +446,7 @@ commands, which are \emph{only defined in the library}, namely the library In the next example we create a fading picture that contains some text. When the fading is used, we only see the shading ``through it''. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns}}] \begin{tikzfadingfrompicture}[name=tikz] \node [text=transparent!20] {\fontencoding{T1}\fontfamily{ptm}\fontsize{45}{45}\bfseries\selectfont Ti\emph{k}Z}; @@ -491,7 +491,7 @@ commands, which are \emph{only defined in the library}, namely the library % Then, a new fading named \meta{name} will be created based on the shading. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns}}] \tikzfading[name=fade right, left color=transparent!0, right color=transparent!100] @@ -507,7 +507,7 @@ commands, which are \emph{only defined in the library}, namely the library \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns}}] \tikzfading[name=fade out, inner color=transparent!0, outer color=transparent!100] @@ -550,7 +550,7 @@ current scope or path. fading for the path will be switched off in case it has been switched on by previous options or styles. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns}}] \begin{tikzpicture}[path fading=south] % Checker board \fill [black!20] (0,0) rectangle (4,3); @@ -579,7 +579,12 @@ current scope or path. is used. For instance, if \meta{transformation options} is set to |rotate=90|, the fading is rotated by 90 degrees. % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{fadings,patterns}}, + pre={\pgfdeclarefading{fade down}{% + \tikzset{top color=pgftransparent!0,bottom color=pgftransparent!100} + \pgfuseshading{axis} +}}] \begin{tikzpicture}[path fading=fade down] % Checker board \fill [black!20] (0,0) rectangle (4,1.5); @@ -600,7 +605,7 @@ current scope or path. Note that you can ``fade just about anything''. In particular, you can fade a shading. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns}}] \begin{tikzpicture} % Checker board \fill [black!20] (0,0) rectangle (4,4); @@ -613,7 +618,7 @@ current scope or path. The |fade inside| of the following example is more transparent in the middle than on the outside. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns}}] \tikzfading[name=fade inside, inner color=transparent!80, outer color=transparent!30] @@ -635,7 +640,7 @@ current scope or path. Note that using fadings in conjunction with patterns can create visually rather pleasing effects: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns,shadows}}] \tikzfading[name=middle, top color=transparent!50, bottom color=transparent!50, @@ -680,7 +685,7 @@ then all subsequent drawings in the scope are faded. You will use a be used. You have to explicitly provide the |scope fading| with a path to actually install a fading. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns}}] \begin{tikzpicture} \fill [black!20] (-2,-2) rectangle (2,2); \pattern [pattern=checkerboard,pattern color=black!30] @@ -701,7 +706,7 @@ then all subsequent drawings in the scope are faded. You will use a In the following example we resize the fading to the size of the whole picture: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fadings,patterns}}] \begin{tikzpicture} \fill [black!20] (-2,-2) rectangle (2,2); \pattern [pattern=checkerboard,pattern color=black!30] @@ -717,7 +722,7 @@ then all subsequent drawings in the scope are faded. You will use a Scope fadings are also needed if you wish to fade a node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{fadings}}] \tikz \node [scope fading=south,fading angle=45,text width=3.5cm] { This is some text that will fade out as we go right @@ -742,7 +747,7 @@ how they were constructed, while this is not really part of the desired effect. \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture} \node at (0,0) [forbidden sign,line width=2ex,draw=red,fill=white] {Smoking}; @@ -762,7 +767,7 @@ Transparency groups are used to render them correctly: \end{tikzpicture} \end{codeexample} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.symbols}}] \begin{tikzpicture} \node at (0,0) [forbidden sign,line width=2ex,draw=red,fill=white] {Smoking}; @@ -789,7 +794,7 @@ Transparency groups are used to render them correctly: end, so this red color will be blended with whatever is ``behind'' the group on the page. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{patterns,shapes.symbols}}] \begin{tikzpicture} \pattern[pattern=checkerboard,pattern color=black!15](-1,-1) rectangle (3,1); \node at (0,0) [forbidden sign,line width=2ex,draw=red,fill=white] {Smoking}; @@ -808,7 +813,7 @@ Transparency groups are used to render them correctly: open another scope inside it or use the |opacity| key with a command inside the group: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{patterns,shapes.symbols}}] \begin{tikzpicture} \pattern[pattern=checkerboard,pattern color=black!15](-1,-1) rectangle (3,1); \node at (0,0) [forbidden sign,line width=2ex,draw=red,fill=white] {Smoking}; diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-trees.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-trees.tex index 91d2030c385..e2c3dc2e34e 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-trees.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tikz-trees.tex @@ -141,7 +141,7 @@ child node is specified and, thus, it is just |coordinate|. As for any normal node, you can give the child node a name, shift it around, or use options to influence how it is rendered. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.geometric}}] \begin{tikzpicture}[sibling distance=15mm] \node[rectangle,draw] {root} child {node[circle,draw,yshift=-5mm] (left node) {left}} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-Euclid.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-Euclid.tex index ace6c5d8827..b276178cd80 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-Euclid.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-Euclid.tex @@ -36,6 +36,7 @@ found on his website at Clark University.} \bigskip \noindent \begin{tikzpicture}[thick,help lines/.style={thin,draw=black!50}] + \pgfmathsetseed{1} \def\A{\textcolor{input}{$A$}} \def\B{\textcolor{input}{$B$}} \def\C{\textcolor{output}{$C$}} @@ -226,7 +227,7 @@ it easy to access the $x$- and $y$-coordinates of the coordinates. Euclid would write the following: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \coordinate [label=left:$A$] (A) at (0,0); \coordinate [label=right:$B$] (B) at (1.25,0.25); @@ -267,7 +268,7 @@ we can also use a let operation: Instead of writing |\p1 = ...|, we write ``point''). The assignment of a number should be followed by a number in curly braces. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \coordinate [label=left:$A$] (A) at (0,0); \coordinate [label=right:$B$] (B) at (1.25,0.25); @@ -288,7 +289,7 @@ have replaced |\n2| in the example by |\n1| and it would still work. Indeed, the digits following these macros are just normal \TeX\ parameters. We could also use a longer name, but then we have to use curly braces: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \coordinate [label=left:$A$] (A) at (0,0); \coordinate [label=right:$B$] (B) at (1.25,0.25); @@ -314,7 +315,7 @@ and outer separations to be set to zero. Then it sets the shape of the node to parameter given to |circle through|. This radius is computed in essentially the same way as above. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{through}}] \begin{tikzpicture} \coordinate [label=left:$A$] (A) at (0,0); \coordinate [label=right:$B$] (B) at (1.25,0.25); @@ -329,8 +330,8 @@ same way as above. Euclid can now draw the line and the circles. The final problem is to compute the intersection of the two circles. This computation is a bit involved if you -want to do it ``by hand''. Fortunately, the intersection library allows us to -compute the intersection of arbitrary paths. +want to do it ``by hand''. Fortunately, the |intersections| library allows us +to compute the intersection of arbitrary paths. The idea is simple: First, you ``name'' two paths using the |name path| option. Then, at some later point, you can use the option |name intersections|, which @@ -339,7 +340,7 @@ intersections of the paths. Euclid assigns the names |D| and |E| to the paths of the two circles (which happen to be the same names as the nodes themselves, but nodes and their paths live in different ``namespaces''). % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{intersections,through}}] \begin{tikzpicture} \coordinate [label=left:$A$] (A) at (0,0); \coordinate [label=right:$B$] (B) at (1.25,0.25); @@ -364,7 +365,7 @@ options for them. This creates more compact code. Although Euclid does not need it for the current picture, it is just a small step to computing the bisection of the line $AB$: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{intersections,through}}] \begin{tikzpicture} \coordinate [label=left:$A$] (A) at (0,0); \coordinate [label=right:$B$] (B) at (1.25,0.25); @@ -389,7 +390,7 @@ Back to Euclid's code. He introduces a few macros to make life simpler, like a |\A| macro for typesetting a blue $A$. He also uses the |background| layer for drawing the triangle behind everything at the end. % -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}},preamble={\usetikzlibrary{backgrounds,calc,intersections,through}}] \begin{tikzpicture}[thick,help lines/.style={thin,draw=black!50}] \def\A{\textcolor{input}{$A$}} \def\B{\textcolor{input}{$B$}} \def\C{\textcolor{output}{$C$}} \def\D{$D$} @@ -434,6 +435,7 @@ The second proposition in the Elements is the following: \bigskip\noindent \begin{tikzpicture}[thick,help lines/.style={thin,draw=black!50}] + \pgfmathsetseed{1} \def\A{\textcolor{orange}{$A$}} \def\B{\textcolor{input}{$B$}} \def\C{\textcolor{input}{$C$}} \def\D{$D$} \def\E{$E$} \def\F{$F$} @@ -524,7 +526,7 @@ the |xcolor| syntax for mixing colors. Here is the computation of the point in the middle of the line $AB$: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \coordinate [label=left:$A$] (A) at (0,0); \coordinate [label=right:$B$] (B) at (1.25,0.25); @@ -543,7 +545,7 @@ a partway computation can be prefixed by an angle. Then the partway point is computed normally (as if no angle were given), but the resulting point is rotated by this angle around the first point. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \coordinate [label=left:$A$] (A) at (0,0); \coordinate [label=right:$B$] (B) at (1.25,0.25); @@ -558,7 +560,7 @@ rotated by this angle around the first point. Finally, it is not necessary to explicitly name the point $X$. Rather, again like in the |xcolor| package, it is possible to chain partway modifiers: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc}}] \begin{tikzpicture} \coordinate [label=left:$A$] (A) at (0,0); \coordinate [label=right:$B$] (B) at (1.25,0.25); @@ -577,7 +579,7 @@ which is easy enough to do using the |circle through| option. Extending the lines $DA$ and $DB$ can be done using partway calculations, but this time with a part value outside the range $[0,1]$: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc,through}}] \begin{tikzpicture} \coordinate [label=left:$A$] (A) at (0,0); \coordinate [label=right:$B$] (B) at (0.75,0.25); @@ -603,9 +605,10 @@ straight line to \meta{q}. We know that the point $G$ is on the way from $B$ to $F$. The distance is given by the radius of the circle~$H$. Here is the code for computing $H$: % -{\tikzexternaldisable -\begin{codeexample}[pre={ -\begin{tikzpicture} +{\ifpgfmanualexternalize\tikzexternaldisable\fi +\begin{codeexample}[ + preamble={\usetikzlibrary{calc,through}}, + pre={\begin{tikzpicture} \coordinate [label=left:$A$] (A) at (0,0); \coordinate [label=right:$B$] (B) at (0.75,0.25); \coordinate [label=above:$C$] (C) at (1,1.5); @@ -613,8 +616,9 @@ by the radius of the circle~$H$. Here is the code for computing $H$: \coordinate [label=above:$D$] (D) at ($ (A) ! .5 ! (B) ! {sin(60)*2} ! 90:(B) $) {}; \draw (D) -- ($ (D) ! 3.5 ! (B) $) coordinate [label=below:$F$] (F); - \draw (D) -- ($ (D) ! 2.5 ! (A) $) coordinate [label=below:$E$] (E); -},post={\end{tikzpicture}}] + \draw (D) -- ($ (D) ! 2.5 ! (A) $) coordinate [label=below:$E$] (E);}, + post={\end{tikzpicture}}, +] \node (H) [label=135:$H$,draw,circle through=(C)] at (B) {}; \path let \p1 = ($ (B) - (C) $) in coordinate [label=left:$G$] (G) at ($ (B) ! veclen(\x1,\y1) ! (F) $); @@ -625,8 +629,9 @@ However, there is a simpler way: We can simply name the path of the circle and of the line in question and then use |name intersections| to compute the intersections. % -\begin{codeexample}[pre={ -\begin{tikzpicture} +\begin{codeexample}[ + preamble={\usetikzlibrary{calc,intersections,through}}, + pre={\begin{tikzpicture} \coordinate [label=left:$A$] (A) at (0,0); \coordinate [label=right:$B$] (B) at (0.75,0.25); \coordinate [label=above:$C$] (C) at (1,1.5); @@ -634,8 +639,9 @@ intersections. \coordinate [label=above:$D$] (D) at ($ (A) ! .5 ! (B) ! {sin(60)*2} ! 90:(B) $) {}; \draw (D) -- ($ (D) ! 3.5 ! (B) $) coordinate [label=below:$F$] (F); - \draw (D) -- ($ (D) ! 2.5 ! (A) $) coordinate [label=below:$E$] (E); -},post={\end{tikzpicture}}] + \draw (D) -- ($ (D) ! 2.5 ! (A) $) coordinate [label=below:$E$] (E);}, + post={\end{tikzpicture}}, +] \node (H) [name path=H,label=135:$H$,draw,circle through=(C)] at (B) {}; \path [name path=B--F] (B) -- (F); \path [name intersections={of=H and B--F,by={[label=left:$G$]G}}]; @@ -646,7 +652,7 @@ intersections. \subsubsection{The Complete Code} -\begin{codeexample}[] +\begin{codeexample}[pre={\pgfmathsetseed{1}},preamble={\usetikzlibrary{calc,intersections,through}}] \begin{tikzpicture}[thick,help lines/.style={thin,draw=black!50}] \def\A{\textcolor{orange}{$A$}} \def\B{\textcolor{input}{$B$}} \def\C{\textcolor{input}{$C$}} \def\D{$D$} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-chains.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-chains.tex index 023efec0855..9e8dfd00caa 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-chains.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-chains.tex @@ -21,39 +21,37 @@ looks like this% \footnote{The shown diagram was not scanned, but rather typeset using \tikzname. The jittering lines were created using the |random steps| decoration.}: -% -\begin{codeexample}[setup code, hidden] -\tikzset{ - nonterminal/.style={ - % The shape: - rectangle, - % The size: - minimum size=6mm, - % The border: - very thick, - draw=red!50!black!50, % 50% red and 50% black, - % and that mixed with 50% white - % The filling: - top color=white, % a shading that is white at the top... - bottom color=red!50!black!20, % and something else at the bottom - % Font - font=\itshape - }, - terminal/.style={ - % The shape: - rounded rectangle, - minimum size=6mm, - % The rest - very thick,draw=black!50, - top color=white,bottom color=black!20, - font=\ttfamily}, - skip loop/.style={to path={-- ++(0,#1) -| (\tikztotarget)}} -} -\end{codeexample} { + \tikzset{ + nonterminal/.style={ + % The shape: + rectangle, + % The size: + minimum size=6mm, + % The border: + very thick, + draw=red!50!black!50, % 50% red and 50% black, + % and that mixed with 50% white + % The filling: + top color=white, % a shading that is white at the top... + bottom color=red!50!black!20, % and something else at the bottom + % Font + font=\itshape + }, + terminal/.style={ + % The shape: + rounded rectangle, + minimum size=6mm, + % The rest + very thick,draw=black!50, + top color=white,bottom color=black!20, + font=\ttfamily}, + skip loop/.style={to path={-- ++(0,#1) -| (\tikztotarget)}} + } \tikzset{terminal/.append style={text height=1.5ex,text depth=.25ex}} \tikzset{nonterminal/.append style={text height=1.5ex,text depth=.25ex}} + \pgfmathsetseed{1} \medskip \noindent\begin{tikzpicture}[ >=latex,thick, @@ -106,7 +104,7 @@ For her next lecture, Ilka decides to redo this diagram, but this time perhaps a bit cleaner and perhaps also bit ``cooler''. \medskip -\noindent\begin{tikzpicture}[point/.style={coordinate},>=stealth',thick,draw=black!50, +\noindent\begin{tikzpicture}[point/.style={coordinate},>={Stealth[round]},thick,draw=black!50, tip/.style={->,shorten >=1pt},every join/.style={rounded corners}, hv path/.style={to path={-| (\tikztotarget)}}, vh path/.style={to path={|- (\tikztotarget)}}] @@ -178,7 +176,7 @@ get a bit of red mixed in. Ilka starts with the simpler nonterminals, as there are no rounded corners involved. Naturally, she sets up a style: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture}[ nonterminal/.style={ % The shape: @@ -212,7 +210,7 @@ setting the radius to 3mm, she will get exactly what she needs: circles, when the shapes are, indeed, exactly 6mm by 6mm and otherwise half circles on the sides: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture}[node distance=5mm, terminal/.style={ % The shape: @@ -233,7 +231,7 @@ use it). This shape gives Ilka much more control over the appearance. For instance, she could have an arc only on the left side, but she will not need this. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning,shapes.misc}}] \begin{tikzpicture}[node distance=5mm, terminal/.style={ % The shape: @@ -252,7 +250,20 @@ this. At this point, she notices a problem. The baseline of the text in the nodes is not aligned: % -\begin{codeexample}[] +\begin{codeexample}[setup code,hidden] +\tikzset{ + terminal/.style={ + % The shape: + rounded rectangle, + minimum size=6mm, + % The rest + very thick,draw=black!50, + top color=white,bottom color=black!20, + font=\ttfamily}, +} +\end{codeexample} +% +\begin{codeexample}[preamble={\usetikzlibrary{calc,positioning,shapes.misc}}] \begin{tikzpicture}[node distance=5mm] \node (dot) [terminal] {.}; \node (digit) [terminal,right=of dot] {digit}; @@ -280,9 +291,9 @@ the same line (the |base right| option places a node right of something so that the baseline is right of the baseline of the other object). However, this does not have the desired effect: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning,shapes.misc}}] \begin{tikzpicture}[node distance=5mm] - \node (dot) [terminal] {.}; + \node (dot) [terminal] {.}; \node (digit) [terminal,base right=of dot] {digit}; \node (E) [terminal,base right=of digit] {E}; \end{tikzpicture} @@ -296,7 +307,7 @@ all be positioned vertically in the same manner. So, all Ilka needs to do is to use the |text height| and |text depth| options to explicitly specify a height and depth for the nodes. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning,shapes.misc}}] \begin{tikzpicture}[node distance=5mm, text height=1.5ex,text depth=.25ex] \node (dot) [terminal] {.}; @@ -306,7 +317,7 @@ and depth for the nodes. \end{codeexample} -\subsection{Aligning the Nodes Using Positioning Options} +\subsection{Aligning the Nodes Using Positioning Options} Ilka now has the ``styling'' of the nodes ready. The next problem is to place them in the right places. There are several ways to do this. The most @@ -336,11 +347,30 @@ borders separated by |node distance|. Ilka can use this to draw the place the nodes in a long row: % \begin{codeexample}[setup code,hidden] -\tikzset{terminal/.append style={text height=1.5ex,text depth=.25ex}} -\tikzset{nonterminal/.append style={text height=1.5ex,text - depth=.25ex}} +\tikzset{ + nonterminal/.style={ + % The shape: + rectangle, + % The size: + minimum size=6mm, + % The border: + very thick, + draw=red!50!black!50, % 50% red and 50% black, + % and that mixed with 50% white + % The filling: + top color=white, % a shading that is white at the top... + bottom color=red!50!black!20, % and something else at the bottom + % Font + font=\itshape, + }, +} +\tikzset{ + terminal/.append style={text height=1.5ex,text depth=.25ex}, + nonterminal/.append style={text height=1.5ex,text depth=.25ex}, +} \end{codeexample} -\begin{codeexample}[] +% +\begin{codeexample}[preamble={\usetikzlibrary{positioning,shapes.misc}}] \begin{tikzpicture}[node distance=5mm and 5mm] \node (ui1) [nonterminal] {unsigned integer}; \node (dot) [terminal,right=of ui1] {.}; @@ -363,7 +393,7 @@ between the top of the |E| node and the bottom of the |+| node are both 5mm. There are several ways of fixing this problem. The easiest way is to simply add a little bit of horizontal shift by hand: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning,shapes.misc}}] \begin{tikzpicture}[node distance=5mm and 5mm] \node (E) [terminal] {E}; \node (plus) [terminal,above right=of E,xshift=5mm] {+}; @@ -376,7 +406,7 @@ A second way is to revert back to the idea of using a normal rectangle for the terminals, but with rounded corners. Since corner rounding does not affect anchors, she gets the following result: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning,shapes.misc}}] \begin{tikzpicture}[node distance=5mm and 5mm,terminal/.append style={rectangle,rounded corners=3mm}] \node (E) [terminal] {E}; \node (plus) [terminal,above right=of E] {+}; @@ -394,7 +424,7 @@ connections are more difficult than others. Consider for instance the the left and finally ends at a point a little to the left of |digit|''. Ilka can put this into code as follows: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc,positioning,shapes.misc}}] \begin{tikzpicture}[node distance=5mm and 5mm] \node (dot) [terminal] {.}; \node (digit) [terminal,right=of dot] {digit}; @@ -421,7 +451,7 @@ for this. Whenever the |edge| command is used, it simply adds the current value of |to path| to the path. So, Ilka can set up a style that contains the correct path: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc,positioning,shapes.misc}}] \begin{tikzpicture}[node distance=5mm and 5mm, skip loop/.style={to path={-- ++(0,-.5) -| (\tikztotarget)}}] \node (dot) [terminal] {.}; @@ -435,12 +465,12 @@ path: \end{tikzpicture} \end{codeexample} -Ilka can even go a step further and make her |skip look| style parameterized. +Ilka can even go a step further and make her |skip loop| style parameterized. For this, the skip loop's vertical offset is passed as parameter |#1|. Also, in the following code Ilka specifies the start and targets differently, namely as the positions that are ``in the middle between the nodes''. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{calc,positioning,shapes.misc}}] \begin{tikzpicture}[node distance=5mm and 5mm, skip loop/.style={to path={-- ++(0,#1) -| (\tikztotarget)}}] \node (dot) [terminal] {.}; @@ -455,7 +485,7 @@ the positions that are ``in the middle between the nodes''. \end{codeexample} -\subsection{Aligning the Nodes Using Matrices} +\subsection{Aligning the Nodes Using Matrices} Ilka is still bothered a bit by the placement of the plus and minus nodes. Somehow, having to add an explicit |xshift| seems too much like cheating. @@ -470,7 +500,7 @@ In Ilka's graphic, there will be three rows: One row containing only the plus node, one row containing the main nodes and one row containing only the minus node. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \begin{tikzpicture} \matrix[row sep=1mm,column sep=5mm] { % First row: @@ -496,7 +526,7 @@ idea: She adds small nodes (they will be turned into coordinates later on and be invisible) at all the places where she would like connections to start and end. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{shapes.misc}}] \begin{tikzpicture}[point/.style={circle,inner sep=0pt,minimum size=2pt,fill=red}, skip loop/.style={to path={-- ++(0,#1) -| (\tikztotarget)}}] \matrix[row sep=1mm,column sep=2mm] { @@ -528,8 +558,8 @@ Now, it's only a small step to add all the missing edges. Matrices allow Ilka to align the nodes nicely, but the connections are not quite perfect. The problem is that the code does not really reflect the paths that underlie the diagram. For this, it seems natural enough to Ilka to use the -|graph| library since, after all, connecting nodes by edges is exactly what -happens in a graph. The |graph| library can both be used to connect nodes that +|graphs| library since, after all, connecting nodes by edges is exactly what +happens in a graph. The |graphs| library can both be used to connect nodes that have already been created, but it can also be used to create nodes ``on the fly'' and these processes can also be mixed. @@ -543,6 +573,7 @@ allows her to write down edges between them in a simple way (the macro |\matrixcontent| contains exactly the matrix content from the previous example; no need to repeat it here): % +\begin{codeexample}[setup code,hidden] \def\matrixcontent{ % First row: \& \& \& \& \& \& \& \& \& \& \& \node (plus) [terminal] {+};\\ @@ -558,7 +589,12 @@ no need to repeat it here): % Third row: \& \& \& \& \& \& \& \& \& \& \& \node (minus)[terminal] {-};\\ } -\begin{codeexample}[pre={\tikzset{ampersand replacement=\&,point/.style={coordinate}}}] +\end{codeexample} +% +\begin{codeexample}[ + preamble={\usetikzlibrary{graphs,shapes.misc}}, + pre={\tikzset{ampersand replacement=\&,point/.style={coordinate}}}, +] \begin{tikzpicture}[skip loop/.style={to path={-- ++(0,#1) -| (\tikztotarget)}}, hv path/.style={to path={-| (\tikztotarget)}}, vh path/.style={to path={|- (\tikztotarget)}}] @@ -570,8 +606,8 @@ no need to repeat it here): (p4) ->[skip loop=-5mm] (p3); (p2) ->[skip loop=5mm] (p5); (p6) ->[skip loop=-11mm] (p9); - (p7) ->[vh path] (plus) -> [hv path] (p8); - (p7) ->[vh path] (minus) -> [hv path] (p8); + (p7) ->[vh path] (plus) -> [hv path] (p8); + (p7) ->[vh path] (minus) -> [hv path] (p8); }; \end{tikzpicture} \end{codeexample} @@ -592,11 +628,17 @@ specify, as shown in the next example. Additionally, by using the |use existing nodes| option, Ilka can also leave out all the parentheses (again, some options have been moved outside to keep the examples shorter): % -\begin{codeexample}[pre={\tikzset{ampersand replacement=\&,point/.style={coordinate}, - skip loop/.style={to path={-- ++(0,##1) -| (\tikztotarget)}}, - hv path/.style={to path={-| (\tikztotarget)}}, - vh path/.style={to path={|- (\tikztotarget)}}}}] -\begin{tikzpicture}[,>=stealth',thick,black!50,text=black, +\begin{codeexample}[ + preamble={\usetikzlibrary{arrows.meta,graphs,shapes.misc}}, + pre={\tikzset{ + ampersand replacement=\&, + point/.style={coordinate}, + skip loop/.style={to path={-- ++(0,##1) -| (\tikztotarget)}}, + hv path/.style={to path={-| (\tikztotarget)}}, + vh path/.style={to path={|- (\tikztotarget)}}, +}}, +] +\begin{tikzpicture}[>={Stealth[round]},thick,black!50,text=black, every new ->/.style={shorten >=1pt}, graphs/every graph/.style={edges=rounded corners}] \matrix[column sep=4mm] { \matrixcontent }; @@ -620,7 +662,7 @@ create nodes, not only to connect them. This is, indeed, correct: When the by parentheses, then \tikzname\ will actually create a node whose name and text is the node name: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs}}] \tikz \graph [grow right=2cm] { unsigned integer -> d -> digit -> E }; \end{codeexample} % @@ -633,8 +675,8 @@ but got some error messages. The reason is that a node cannot be called |.| in \tikzname, so she had to choose a different name -- which is not good, since she wants a dot to be shown! The trick is to put the dot in quotation marks, this allows you to use ``quite arbitrary text'' as a node name: - -\begin{codeexample}[] +% +\begin{codeexample}[preamble={\usetikzlibrary{graphs,shapes.misc}}] \tikz \graph [grow right sep] { unsigned integer[nonterminal] -> "."[terminal] -> digit[terminal] -> E[terminal] }; @@ -643,7 +685,7 @@ this allows you to use ``quite arbitrary text'' as a node name: Now comes the fork to the plus and minus signs. Here, Ilka can use the grouping mechanism of the |graph| command to create a split: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{graphs,shapes.misc}}] \tikz \graph [grow right sep] { unsigned integer [nonterminal] -> "." [terminal] -> @@ -677,11 +719,15 @@ anonymous'' node name. Next, Ilka needs to add some coordinates in between of some nodes where the back-loops should got and she needs to shift the nodes a bit: % -\begin{codeexample}[pre={\tikzset{ - skip loop/.style={to path={-- ++(0,##1) -| (\tikztotarget)}}, - hv path/.style={to path={-| (\tikztotarget)}}, - vh path/.style={to path={|- (\tikztotarget)}}}}] -\begin{tikzpicture}[>=stealth', thick, black!50, text=black, +\begin{codeexample}[ + preamble={\usetikzlibrary{arrows.meta,graphs,shapes.misc}}, + pre={\tikzset{ + skip loop/.style={to path={-- ++(0,##1) -| (\tikztotarget)}}, + hv path/.style={to path={-| (\tikztotarget)}}, + vh path/.style={to path={|- (\tikztotarget)}}, +}}, +] +\begin{tikzpicture}[>={Stealth[round]}, thick, black!50, text=black, every new ->/.style={shorten >=1pt}, graphs/every graph/.style={edges=rounded corners}] \graph [grow right sep, branch down=7mm] { @@ -726,8 +772,8 @@ any two nodes. Now, if you specify an edge twice, the options of the second specification ``win''. Thus, by adding two more lines that ``correct'' these edges, we get the final diagram with its complete code: % -\begin{codeexample}[] -\tikz [>=stealth', black!50, text=black, thick, +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,graphs,shapes.misc}}] +\tikz [>={Stealth[round]}, black!50, text=black, thick, every new ->/.style = {shorten >=1pt}, graphs/every graph/.style = {edges=rounded corners}, skip loop/.style = {to path={-- ++(0,#1) -| (\tikztotarget)}}, @@ -968,8 +1014,8 @@ edges, we get the final diagram with its complete code: % Ilka starts with the matrix we had earlier, only with slightly adapted % styles. Then she writes down the main chain and its branches: % -% \begin{codeexample}[] -% \begin{tikzpicture}[point/.style={coordinate},>=stealth',thick,draw=black!50, +% \begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] +% \begin{tikzpicture}[point/.style={coordinate},>={Stealth[round]},thick,draw=black!50, % tip/.style={->,shorten >=1pt},every join/.style={rounded corners}, % hv path/.style={to path={-| (\tikztotarget)}}, % vh path/.style={to path={|- (\tikztotarget)}}] diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-map.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-map.tex index e3af1d3b5fe..8a81429b678 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-map.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-map.tex @@ -164,30 +164,33 @@ expect?). There are two problems: Johannes redraws the tree, but this time with some more appropriate options set, which he found more or less by trial-and-error: % -\begin{codeexample}[render instead={ -\tikz [font=\footnotesize, - grow=right, level 1/.style={sibling distance=6em}, - level 2/.style={sibling distance=1em}, level distance=5cm] - \node {Computational Complexity} % root - child { node {Computational Problems} - child { node {Problem Measures} } child { node {Problem Aspects} } - child { node {Problem Domains} } child { node {Key Problems} } - } - child { node {Computational Models} - child { node {Turing Machines} } child { node {Random-Access Machines} } - child { node {Circuits} } child { node {Binary Decision Diagrams} } - child { node {Oracle Machines} } child { node {Programming in Logic} } - } - child { node {Measuring Complexity} - child { node {Complexity Measures} } child { node {Classifying Complexity} } - child { node {Comparing Complexity} } child { node {Describing Complexity} } - } - child { node {Solving Problems} - child { node {Exact Algorithms} } child { node {Randomization} } - child { node {Fixed-Parameter Algorithms} } child { node {Parallel Computation} } - child { node {Partial Solutions} } child { node {Approximation} } - }; - }] +\begin{codeexample}[ + preamble={\usetikzlibrary{trees}}, + render instead={ + \tikz [font=\footnotesize, + grow=right, level 1/.style={sibling distance=6em}, + level 2/.style={sibling distance=1em}, level distance=5cm] + \node {Computational Complexity} % root + child { node {Computational Problems} + child { node {Problem Measures} } child { node {Problem Aspects} } + child { node {Problem Domains} } child { node {Key Problems} } + } + child { node {Computational Models} + child { node {Turing Machines} } child { node {Random-Access Machines} } + child { node {Circuits} } child { node {Binary Decision Diagrams} } + child { node {Oracle Machines} } child { node {Programming in Logic} } + } + child { node {Measuring Complexity} + child { node {Complexity Measures} } child { node {Classifying Complexity} } + child { node {Comparing Complexity} } child { node {Describing Complexity} } + } + child { node {Solving Problems} + child { node {Exact Algorithms} } child { node {Randomization} } + child { node {Fixed-Parameter Algorithms} } child { node {Parallel Computation} } + child { node {Partial Solutions} } child { node {Approximation} } + }; + }, +] \tikz [font=\footnotesize, grow=right, level 1/.style={sibling distance=6em}, level 2/.style={sibling distance=1em}, level distance=5cm] @@ -224,31 +227,34 @@ can change growth direction ``in the middle of a tree'' simply by changing this key for a single child or a whole level. By including the |trees| library you also get access to additional growth strategies such as a ``circular'' growth: % -\begin{codeexample}[render instead={ -\tikz [text width=2.7cm, align=flush center, - grow cyclic, - level 1/.style={level distance=2.5cm,sibling angle=90}, - level 2/.style={text width=2cm, font=\footnotesize, level distance=3cm,sibling angle=30}] - \node[font=\bfseries] {Computational Complexity} % root - child { node {Computational Problems} - child { node {Problem Measures} } child { node {Problem Aspects} } - child { node {Problem Domains} } child { node {Key Problems} } - } - child { node {Computational Models} - child { node {Turing Machines} } child { node {Random-Access Machines} } - child { node {Circuits} } child { node {Binary Decision Diagrams} } - child { node {Oracle Machines} } child { node {Programming in Logic} } - } - child { node {Measuring Complexity} - child { node {Complexity Measures} } child { node {Classifying Complexity} } - child { node {Comparing Complexity} } child { node {Describing Complexity} } - } - child { node {Solving Problems} - child { node {Exact Algorithms} } child { node {Randomization} } - child { node {Fixed-Parameter Algorithms} } child { node {Parallel Computation} } - child { node {Partial Solutions} } child { node {Approximation} } - }; - }] +\begin{codeexample}[ + preamble={\usetikzlibrary{trees}}, + render instead={ + \tikz [text width=2.7cm, align=flush center, + grow cyclic, + level 1/.style={level distance=2.5cm,sibling angle=90}, + level 2/.style={text width=2cm, font=\footnotesize, level distance=3cm,sibling angle=30}] + \node[font=\bfseries] {Computational Complexity} % root + child { node {Computational Problems} + child { node {Problem Measures} } child { node {Problem Aspects} } + child { node {Problem Domains} } child { node {Key Problems} } + } + child { node {Computational Models} + child { node {Turing Machines} } child { node {Random-Access Machines} } + child { node {Circuits} } child { node {Binary Decision Diagrams} } + child { node {Oracle Machines} } child { node {Programming in Logic} } + } + child { node {Measuring Complexity} + child { node {Complexity Measures} } child { node {Classifying Complexity} } + child { node {Comparing Complexity} } child { node {Describing Complexity} } + } + child { node {Solving Problems} + child { node {Exact Algorithms} } child { node {Randomization} } + child { node {Fixed-Parameter Algorithms} } child { node {Parallel Computation} } + child { node {Partial Solutions} } child { node {Approximation} } + }; + }, +] \tikz [text width=2.7cm, align=flush center, grow cyclic, level 1/.style={level distance=2.5cm,sibling angle=90}, @@ -292,40 +298,44 @@ is not the case, so you might consider saying |every node/.style=concept|. The third step is to set up the sibling \emph{angle} (rather than a sibling distance) to specify the angle between sibling concepts. % -\begin{codeexample}[render instead={ -\tikz [mindmap, every node/.style=concept, concept color=black!20, - grow cyclic, - level 1/.append style={level distance=4.5cm,sibling angle=90}, - level 2/.append style={level distance=3cm,sibling angle=45}] - \node [root concept] {Computational Complexity} % root - child { node {\hbox to 2cm{Computational\hss} Problems} - child { node {Problem Measures} } - child { node {Problem Aspects} } - child { node {Problem Domains} } - child { node {Key Problems} } - } - child { node {\hbox to 2cm{Computational\hss} Models} - child { node {Turing Machines} } - child { node {Random-Access Machines} } - child { node {Circuits} } - child { node {Binary Decision Diagrams} } - child { node {Oracle Machines} } - child { node {\hbox to1.5cm{Programming\hss} in Logic} } - } - child { node {Measuring Complexity} - child { node {Complexity Measures} } - child { node {Classifying Complexity} } - child { node {Comparing Complexity} } - child { node {Describing Complexity} } - } - child { node {Solving Problems} - child { node {Exact Algorithms} } - child { node {\hbox to 1.5cm{Randomization\hss}} } - child { node {Fixed-Parameter Algorithms} } - child { node {Parallel Computation} } - child { node {Partial Solutions} } - child { node {\hbox to1.5cm{Approximation\hss}} } - };}] +\begin{codeexample}[ + preamble={\usetikzlibrary{mindmap}}, + render instead={ + \tikz [mindmap, every node/.style=concept, concept color=black!20, + grow cyclic, + level 1/.append style={level distance=4.5cm,sibling angle=90}, + level 2/.append style={level distance=3cm,sibling angle=45}] + \node [root concept] {Computational Complexity} % root + child { node {\hbox to 2cm{Computational\hss} Problems} + child { node {Problem Measures} } + child { node {Problem Aspects} } + child { node {Problem Domains} } + child { node {Key Problems} } + } + child { node {\hbox to 2cm{Computational\hss} Models} + child { node {Turing Machines} } + child { node {Random-Access Machines} } + child { node {Circuits} } + child { node {Binary Decision Diagrams} } + child { node {Oracle Machines} } + child { node {\hbox to1.5cm{Programming\hss} in Logic} } + } + child { node {Measuring Complexity} + child { node {Complexity Measures} } + child { node {Classifying Complexity} } + child { node {Comparing Complexity} } + child { node {Describing Complexity} } + } + child { node {Solving Problems} + child { node {Exact Algorithms} } + child { node {\hbox to 1.5cm{Randomization\hss}} } + child { node {Fixed-Parameter Algorithms} } + child { node {Parallel Computation} } + child { node {Partial Solutions} } + child { node {\hbox to1.5cm{Approximation\hss}} } + }; + }, +] \tikz [mindmap, every node/.style=concept, concept color=black!20, grow cyclic, level 1/.append style={level distance=4.5cm,sibling angle=90}, @@ -350,46 +360,49 @@ the first word also. Since Johannes does not want to add |\hskip0pt| inside each node, he uses the |execute at begin node| option to make \tikzname\ insert this text with every node. % -\begin{codeexample}[render instead={ -\begin{tikzpicture} - [mindmap, - every node/.style={concept, execute at begin node=\hskip0pt}, - concept color=black!20, - grow cyclic, - level 1/.append style={level distance=4.5cm,sibling angle=90}, - level 2/.append style={level distance=3cm,sibling angle=45}] - \clip (-1,2) rectangle ++ (-4,5); - \node [root concept] {Computational Complexity} % root - child { node {Computational Problems} - child { node {Problem Measures} } - child { node {Problem Aspects} } - child { node {Problem Domains} } - child { node {Key Problems} } - } - child { node {Computational Models} - child { node {Turing Machines} } - child { node {Random-Access Machines} } - child { node {Circuits} } - child { node {Binary Decision Diagrams} } - child { node {Oracle Machines} } - child { node {Programming in Logic} } - } - child { node {Measuring Complexity} - child { node {Complexity Measures} } - child { node {Classifying Complexity} } - child { node {Comparing Complexity} } - child { node {Describing Complexity} } - } - child { node {Solving Problems} - child { node {Exact Algorithms} } - child { node {Randomization} } - child { node {Fixed-Parameter Algorithms} } - child { node {Parallel Computation} } - child { node {Partial Solutions} } - child { node {Approximation} } - }; -\end{tikzpicture} -}] +\begin{codeexample}[ + preamble={\usetikzlibrary{mindmap}}, + render instead={ + \begin{tikzpicture} + [mindmap, + every node/.style={concept, execute at begin node=\hskip0pt}, + concept color=black!20, + grow cyclic, + level 1/.append style={level distance=4.5cm,sibling angle=90}, + level 2/.append style={level distance=3cm,sibling angle=45}] + \clip (-1,2) rectangle ++ (-4,5); + \node [root concept] {Computational Complexity} % root + child { node {Computational Problems} + child { node {Problem Measures} } + child { node {Problem Aspects} } + child { node {Problem Domains} } + child { node {Key Problems} } + } + child { node {Computational Models} + child { node {Turing Machines} } + child { node {Random-Access Machines} } + child { node {Circuits} } + child { node {Binary Decision Diagrams} } + child { node {Oracle Machines} } + child { node {Programming in Logic} } + } + child { node {Measuring Complexity} + child { node {Complexity Measures} } + child { node {Classifying Complexity} } + child { node {Comparing Complexity} } + child { node {Describing Complexity} } + } + child { node {Solving Problems} + child { node {Exact Algorithms} } + child { node {Randomization} } + child { node {Fixed-Parameter Algorithms} } + child { node {Parallel Computation} } + child { node {Partial Solutions} } + child { node {Approximation} } + }; + \end{tikzpicture} + }, +] \begin{tikzpicture} [mindmap, every node/.style={concept, execute at begin node=\hskip0pt}, @@ -434,49 +447,53 @@ color to white. The effect of this is that the root concept will be encircled with a thick black line and the children are connected to the central concept via bars. % -\begin{codeexample}[render instead={ -\begin{tikzpicture} - [mindmap, - every node/.style={concept, execute at begin node=\hskip0pt}, - root concept/.append style={ - concept color=black, - fill=white, line width=1ex, - text=black}, - text=white, - grow cyclic, - level 1/.append style={level distance=4.5cm,sibling angle=90}, - level 2/.append style={level distance=3cm,sibling angle=45}] - \clip (0,-1) rectangle ++(4,5); - \node [root concept] {Computational Complexity} % root - child [concept color=red] { node {Computational Problems} - child { node {Problem Measures} } - child { node {Problem Aspects} } - child { node {Problem Domains} } - child { node {Key Problems} } - } - child [concept color=blue] { node {Computational Models} - child { node {Turing Machines} } - child { node {Random-Access Machines} } - child { node {Circuits} } - child { node {Binary Decision Diagrams} } - child { node {Oracle Machines} } - child { node {Programming in Logic} } - } - child [concept color=orange] { node {Measuring Complexity} - child { node {Complexity Measures} } - child { node {Classifying Complexity} } - child { node {Comparing Complexity} } - child { node {Describing Complexity} } - } - child [concept color=green!50!black] { node {Solving Problems} - child { node {Exact Algorithms} } - child { node {Randomization} } - child { node {Fixed-Parameter Algorithms} } - child { node {Parallel Computation} } - child { node {Partial Solutions} } - child { node {Approximation} } - }; - \end{tikzpicture}}] +\begin{codeexample}[ + preamble={\usetikzlibrary{mindmap}}, + render instead={ + \begin{tikzpicture} + [mindmap, + every node/.style={concept, execute at begin node=\hskip0pt}, + root concept/.append style={ + concept color=black, + fill=white, line width=1ex, + text=black}, + text=white, + grow cyclic, + level 1/.append style={level distance=4.5cm,sibling angle=90}, + level 2/.append style={level distance=3cm,sibling angle=45}] + \clip (0,-1) rectangle ++(4,5); + \node [root concept] {Computational Complexity} % root + child [concept color=red] { node {Computational Problems} + child { node {Problem Measures} } + child { node {Problem Aspects} } + child { node {Problem Domains} } + child { node {Key Problems} } + } + child [concept color=blue] { node {Computational Models} + child { node {Turing Machines} } + child { node {Random-Access Machines} } + child { node {Circuits} } + child { node {Binary Decision Diagrams} } + child { node {Oracle Machines} } + child { node {Programming in Logic} } + } + child [concept color=orange] { node {Measuring Complexity} + child { node {Complexity Measures} } + child { node {Classifying Complexity} } + child { node {Comparing Complexity} } + child { node {Describing Complexity} } + } + child [concept color=green!50!black] { node {Solving Problems} + child { node {Exact Algorithms} } + child { node {Randomization} } + child { node {Fixed-Parameter Algorithms} } + child { node {Parallel Computation} } + child { node {Partial Solutions} } + child { node {Approximation} } + }; + \end{tikzpicture} + }, +] \begin{tikzpicture} [mindmap, every node/.style={concept, execute at begin node=\hskip0pt}, @@ -517,53 +534,57 @@ set up the correct concept color for the whole branch and (b) define the |circular drop shadow|, defined in the |shadows| library, to the concepts, just to make things look a bit more fancy. % -\begin{codeexample}[render instead={ -\begin{tikzpicture}[mindmap] - \begin{scope}[ - every node/.style={concept, circular drop shadow,execute at begin node=\hskip0pt}, - root concept/.append style={ - concept color=black, - fill=white, line width=1ex, - text=black, font=\large\scshape}, - text=white, - computational problems/.style={concept color=red,faded/.style={concept color=red!50}}, - computational models/.style={concept color=blue,faded/.style={concept color=blue!50}}, - measuring complexity/.style={concept color=orange,faded/.style={concept color=orange!50}}, - solving problems/.style={concept color=green!50!black,faded/.style={concept color=green!50!black!50}}, - grow cyclic, - level 1/.append style={level distance=4.5cm,sibling angle=90,font=\scshape}, - level 2/.append style={level distance=3cm,sibling angle=45,font=\scriptsize}] - \node [root concept] {Computational Complexity} % root - child [computational problems] { node {Computational Problems} - child { node {Problem Measures} } - child { node {Problem Aspects} } - child [faded] { node {Problem Domains} } - child { node {Key Problems} } - } - child [computational models] { node {Computational Models} - child { node {Turing Machines} } - child [faded] { node {Random-Access Machines} } - child { node {Circuits} } - child [faded] { node {Binary Decision Diagrams} } - child { node {Oracle Machines} } - child { node {Programming in Logic} } - } - child [measuring complexity] { node {Measuring Complexity} - child { node {Complexity Measures} } - child { node {Classifying Complexity} } - child { node {Comparing Complexity} } - child [faded] { node {Describing Complexity} } - } - child [solving problems] { node {Solving Problems} - child { node {Exact Algorithms} } - child { node {Randomization} } - child { node {Fixed-Parameter Algorithms} } - child { node {Parallel Computation} } - child { node {Partial Solutions} } - child { node {Approximation} } - }; - \end{scope} -\end{tikzpicture}}] +\begin{codeexample}[ + preamble={\usetikzlibrary{mindmap,shadows}}, + render instead={ + \begin{tikzpicture}[mindmap] + \begin{scope}[ + every node/.style={concept, circular drop shadow,execute at begin node=\hskip0pt}, + root concept/.append style={ + concept color=black, + fill=white, line width=1ex, + text=black, font=\large\scshape}, + text=white, + computational problems/.style={concept color=red,faded/.style={concept color=red!50}}, + computational models/.style={concept color=blue,faded/.style={concept color=blue!50}}, + measuring complexity/.style={concept color=orange,faded/.style={concept color=orange!50}}, + solving problems/.style={concept color=green!50!black,faded/.style={concept color=green!50!black!50}}, + grow cyclic, + level 1/.append style={level distance=4.5cm,sibling angle=90,font=\scshape}, + level 2/.append style={level distance=3cm,sibling angle=45,font=\scriptsize}] + \node [root concept] {Computational Complexity} % root + child [computational problems] { node {Computational Problems} + child { node {Problem Measures} } + child { node {Problem Aspects} } + child [faded] { node {Problem Domains} } + child { node {Key Problems} } + } + child [computational models] { node {Computational Models} + child { node {Turing Machines} } + child [faded] { node {Random-Access Machines} } + child { node {Circuits} } + child [faded] { node {Binary Decision Diagrams} } + child { node {Oracle Machines} } + child { node {Programming in Logic} } + } + child [measuring complexity] { node {Measuring Complexity} + child { node {Complexity Measures} } + child { node {Classifying Complexity} } + child { node {Comparing Complexity} } + child [faded] { node {Describing Complexity} } + } + child [solving problems] { node {Solving Problems} + child { node {Exact Algorithms} } + child { node {Randomization} } + child { node {Fixed-Parameter Algorithms} } + child { node {Parallel Computation} } + child { node {Partial Solutions} } + child { node {Approximation} } + }; + \end{scope} + \end{tikzpicture} + }, +] \begin{tikzpicture}[mindmap] \begin{scope}[ every node/.style={concept, circular drop shadow,execute at begin node=\hskip0pt}, @@ -602,7 +623,7 @@ acquire during this particular lecture (note that learning targets are not the same as the contents of a lecture). For each lecture he intends to put a little rectangle on the map containing these learning targets and the name of the lecture, each time somewhere near the topic of the lecture. Such ``little -rectangles'' are called ``annotations'' by the mindmap library. +rectangles'' are called ``annotations'' by the |mindmap| library. In order to place the annotations next to the concepts, Johannes must assign names to the nodes of the concepts. He could rely on \tikzname's automatic @@ -622,68 +643,72 @@ explicitly name all concepts of the tree in the following manner: ... \end{codeexample} -The |annotation| style of the mind map library mainly sets up a rectangular +The |annotation| style of the |mindmap| library mainly sets up a rectangular shape of appropriate size. Johannes configures the style by defining |every annotation| appropriately. % -\begin{codeexample}[render instead={ -\begin{tikzpicture}[mindmap] - \clip (-5.25,-3) rectangle ++ (4,5); - \begin{scope}[ - every node/.style={concept, circular drop shadow,execute at begin node=\hskip0pt}, - root concept/.append style={ - concept color=black, - fill=white, line width=1ex, - text=black, font=\large\scshape}, - text=white, - computational problems/.style={concept color=red,faded/.style={concept color=red!50}}, - computational models/.style={concept color=blue,faded/.style={concept color=blue!50}}, - measuring complexity/.style={concept color=orange,faded/.style={concept color=orange!50}}, - solving problems/.style={concept color=green!50!black,faded/.style={concept color=green!50!black!50}}, - grow cyclic, - level 1/.append style={level distance=4.5cm,sibling angle=90,font=\scshape}, - level 2/.append style={level distance=3cm,sibling angle=45,font=\scriptsize}] - \node [root concept] (Computational Complexity) {Computational Complexity} % root - child [computational problems] { node (Computational Problems) {Computational Problems} - child { node (Problem Measures) {Problem Measures} } - child { node (Problem Aspects) {Problem Aspects} } - child [faded] { node (problem Domains) {Problem Domains} } - child { node (Key Problems) {Key Problems} } - } - child [computational models] { node (Computational Models) {Computational Models} - child { node (Turing Machines) {Turing Machines} } - child [faded] { node (Random-Access Machines) {Random-Access Machines} } - child { node (Circuits) {Circuits} } - child [faded] { node (Binary Decision Diagrams) {Binary Decision Diagrams} } - child { node (Oracle Machines) {Oracle Machines} } - child { node (Programming in Logic) {Programming in Logic} } - } - child [measuring complexity] { node (Measuring Complexity) {Measuring Complexity} - child { node (Complexity Measures) {Complexity Measures} } - child { node (Classifying Complexity) {Classifying Complexity} } - child { node (Comparing Complexity) {Comparing Complexity} } - child [faded] { node (Describing Complexity) {Describing Complexity} } - } - child [solving problems] { node (Solving Problems) {Solving Problems} - child { node (Exact Algorithms) {Exact Algorithms} } - child { node (Randomization) {Randomization} } - child { node (Fixed-Parameter Algorithms) {Fixed-Parameter Algorithms} } - child { node (Parallel Computation) {Parallel Computation} } - child { node (Partial Solutions) {Partial Solutions} } - child { node (Approximation) {Approximation} } - }; - \end{scope} - \begin{scope}[every annotation/.style={fill=black!40}] - \node [annotation, above] at (Computational Problems.north) { - Lecture 1: Computational Problems - \begin{itemize} - \item Knowledge of several key problems - \item Knowledge of problem encodings - \item Being able to formalize problems - \end{itemize} - }; - \end{scope} -\end{tikzpicture}}] +\begin{codeexample}[ + preamble={\usetikzlibrary{mindmap,shadows}}, + render instead={ + \begin{tikzpicture}[mindmap] + \clip (-5.25,-3) rectangle ++ (4,5); + \begin{scope}[ + every node/.style={concept, circular drop shadow,execute at begin node=\hskip0pt}, + root concept/.append style={ + concept color=black, + fill=white, line width=1ex, + text=black, font=\large\scshape}, + text=white, + computational problems/.style={concept color=red,faded/.style={concept color=red!50}}, + computational models/.style={concept color=blue,faded/.style={concept color=blue!50}}, + measuring complexity/.style={concept color=orange,faded/.style={concept color=orange!50}}, + solving problems/.style={concept color=green!50!black,faded/.style={concept color=green!50!black!50}}, + grow cyclic, + level 1/.append style={level distance=4.5cm,sibling angle=90,font=\scshape}, + level 2/.append style={level distance=3cm,sibling angle=45,font=\scriptsize}] + \node [root concept] (Computational Complexity) {Computational Complexity} % root + child [computational problems] { node (Computational Problems) {Computational Problems} + child { node (Problem Measures) {Problem Measures} } + child { node (Problem Aspects) {Problem Aspects} } + child [faded] { node (problem Domains) {Problem Domains} } + child { node (Key Problems) {Key Problems} } + } + child [computational models] { node (Computational Models) {Computational Models} + child { node (Turing Machines) {Turing Machines} } + child [faded] { node (Random-Access Machines) {Random-Access Machines} } + child { node (Circuits) {Circuits} } + child [faded] { node (Binary Decision Diagrams) {Binary Decision Diagrams} } + child { node (Oracle Machines) {Oracle Machines} } + child { node (Programming in Logic) {Programming in Logic} } + } + child [measuring complexity] { node (Measuring Complexity) {Measuring Complexity} + child { node (Complexity Measures) {Complexity Measures} } + child { node (Classifying Complexity) {Classifying Complexity} } + child { node (Comparing Complexity) {Comparing Complexity} } + child [faded] { node (Describing Complexity) {Describing Complexity} } + } + child [solving problems] { node (Solving Problems) {Solving Problems} + child { node (Exact Algorithms) {Exact Algorithms} } + child { node (Randomization) {Randomization} } + child { node (Fixed-Parameter Algorithms) {Fixed-Parameter Algorithms} } + child { node (Parallel Computation) {Parallel Computation} } + child { node (Partial Solutions) {Partial Solutions} } + child { node (Approximation) {Approximation} } + }; + \end{scope} + \begin{scope}[every annotation/.style={fill=black!40}] + \node [annotation, above] at (Computational Problems.north) { + Lecture 1: Computational Problems + \begin{itemize} + \item Knowledge of several key problems + \item Knowledge of problem encodings + \item Being able to formalize problems + \end{itemize} + }; + \end{scope} + \end{tikzpicture} + }, +] \begin{tikzpicture}[mindmap] \clip (-5,-5) rectangle ++ (4,5); \begin{scope}[ @@ -717,6 +742,7 @@ position where the node is placed, the fifth is the list of items to be shown, and the sixth is a date when the lecture will be held (this parameter is not yet needed, we will, however, need it later on). % +% TODOsp: codeexamples: redo `\lecture` definition*s* when `preamble` can be emptied \begin{codeexample}[code only] \def\lecture#1#2#3#4#5#6{ \node [annotation, #3, scale=0.65, text width=4cm, inner sep=2mm] at (#4) { @@ -729,6 +755,8 @@ yet needed, we will, however, need it later on). }; } \end{codeexample} +% TODOsp: codeexamples: this definition can most likely be deleted, +% because it is moved to the `pre` key in the `codeexamples` \def\lecture#1#2#3#4#5#6{ \node [annotation, #3, scale=0.65, text width=4cm, inner sep=2mm] at (#4) { Lecture #1: \textcolor{orange}{\textbf{#2}} @@ -740,59 +768,74 @@ yet needed, we will, however, need it later on). }; } -\begin{codeexample}[render instead={ -\begin{tikzpicture}[mindmap,every annotation/.style={fill=white}] - \clip (-5.25,-3) rectangle ++ (4,5); - \begin{scope}[ - every node/.style={concept, circular drop shadow,execute at begin node=\hskip0pt}, - root concept/.append style={ - concept color=black, - fill=white, line width=1ex, - text=black, font=\large\scshape}, - text=white, - computational problems/.style={concept color=red,faded/.style={concept color=red!50}}, - computational models/.style={concept color=blue,faded/.style={concept color=blue!50}}, - measuring complexity/.style={concept color=orange,faded/.style={concept color=orange!50}}, - solving problems/.style={concept color=green!50!black,faded/.style={concept color=green!50!black!50}}, - grow cyclic, - level 1/.append style={level distance=4.5cm,sibling angle=90,font=\scshape}, - level 2/.append style={level distance=3cm,sibling angle=45,font=\scriptsize}] - \node [root concept] (Computational Complexity) {Computational Complexity} % root - child [computational problems] { node (Computational Problems) {Computational Problems} - child { node (Problem Measures) {Problem Measures} } - child { node (Problem Aspects) {Problem Aspects} } - child [faded] { node (problem Domains) {Problem Domains} } - child { node (Key Problems) {Key Problems} } - } - child [computational models] { node (Computational Models) {Computational Models} - child { node (Turing Machines) {Turing Machines} } - child [faded] { node (Random-Access Machines) {Random-Access Machines} } - child { node (Circuits) {Circuits} } - child [faded] { node (Binary Decision Diagrams) {Binary Decision Diagrams} } - child { node (Oracle Machines) {Oracle Machines} } - child { node (Programming in Logic) {Programming in Logic} } - } - child [measuring complexity] { node (Measuring Complexity) {Measuring Complexity} - child { node (Complexity Measures) {Complexity Measures} } - child { node (Classifying Complexity) {Classifying Complexity} } - child { node (Comparing Complexity) {Comparing Complexity} } - child [faded] { node (Describing Complexity) {Describing Complexity} } - } - child [solving problems] { node (Solving Problems) {Solving Problems} - child { node (Exact Algorithms) {Exact Algorithms} } - child { node (Randomization) {Randomization} } - child { node (Fixed-Parameter Algorithms) {Fixed-Parameter Algorithms} } - child { node (Parallel Computation) {Parallel Computation} } - child { node (Partial Solutions) {Partial Solutions} } - child { node (Approximation) {Approximation} } - }; - \end{scope} - \lecture{1}{Computational Problems}{above,xshift=-3mm}{Computational Problems.north}{ - \item Knowledge of several key problems - \item Knowledge of problem encodings - \item Being able to formalize problems - }{2009-04-08} -\end{tikzpicture}}] +\begin{codeexample}[ + preamble={\usetikzlibrary{mindmap,shadows}}, + pre={ % !!! replace all `##x` with `#x` +\def\lecture##1##2##3##4##5##6{ + \node [annotation, ##3, scale=0.65, text width=4cm, inner sep=2mm] at (##4) { + Lecture ##1: \textcolor{orange}{\textbf{##2}} + \list{--}{\topsep=2pt\itemsep=0pt\parsep=0pt + \parskip=0pt\labelwidth=8pt\leftmargin=8pt + \itemindent=0pt\labelsep=2pt} + ##5 + \endlist + }; +}}, + render instead={ + \begin{tikzpicture}[mindmap,every annotation/.style={fill=white}] + \clip (-5.25,-3) rectangle ++ (4,5); + \begin{scope}[ + every node/.style={concept, circular drop shadow,execute at begin node=\hskip0pt}, + root concept/.append style={ + concept color=black, + fill=white, line width=1ex, + text=black, font=\large\scshape}, + text=white, + computational problems/.style={concept color=red,faded/.style={concept color=red!50}}, + computational models/.style={concept color=blue,faded/.style={concept color=blue!50}}, + measuring complexity/.style={concept color=orange,faded/.style={concept color=orange!50}}, + solving problems/.style={concept color=green!50!black,faded/.style={concept color=green!50!black!50}}, + grow cyclic, + level 1/.append style={level distance=4.5cm,sibling angle=90,font=\scshape}, + level 2/.append style={level distance=3cm,sibling angle=45,font=\scriptsize}] + \node [root concept] (Computational Complexity) {Computational Complexity} % root + child [computational problems] { node (Computational Problems) {Computational Problems} + child { node (Problem Measures) {Problem Measures} } + child { node (Problem Aspects) {Problem Aspects} } + child [faded] { node (problem Domains) {Problem Domains} } + child { node (Key Problems) {Key Problems} } + } + child [computational models] { node (Computational Models) {Computational Models} + child { node (Turing Machines) {Turing Machines} } + child [faded] { node (Random-Access Machines) {Random-Access Machines} } + child { node (Circuits) {Circuits} } + child [faded] { node (Binary Decision Diagrams) {Binary Decision Diagrams} } + child { node (Oracle Machines) {Oracle Machines} } + child { node (Programming in Logic) {Programming in Logic} } + } + child [measuring complexity] { node (Measuring Complexity) {Measuring Complexity} + child { node (Complexity Measures) {Complexity Measures} } + child { node (Classifying Complexity) {Classifying Complexity} } + child { node (Comparing Complexity) {Comparing Complexity} } + child [faded] { node (Describing Complexity) {Describing Complexity} } + } + child [solving problems] { node (Solving Problems) {Solving Problems} + child { node (Exact Algorithms) {Exact Algorithms} } + child { node (Randomization) {Randomization} } + child { node (Fixed-Parameter Algorithms) {Fixed-Parameter Algorithms} } + child { node (Parallel Computation) {Parallel Computation} } + child { node (Partial Solutions) {Partial Solutions} } + child { node (Approximation) {Approximation} } + }; + \end{scope} + \lecture{1}{Computational Problems}{above,xshift=-3mm}{Computational Problems.north}{ + \item Knowledge of several key problems + \item Knowledge of problem encodings + \item Being able to formalize problems + }{2009-04-08} + \end{tikzpicture} + }, +] \begin{tikzpicture}[mindmap,every annotation/.style={fill=white}] \clip (-5,-5) rectangle ++ (4,5); \begin{scope}[ @@ -839,7 +882,7 @@ Johannes puts all his background stuff on the |background| layer. In the following code, only the central concept is shown to save some space: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{backgrounds,mindmap,shadows}}] \begin{tikzpicture}[ mindmap, concept color=black, @@ -902,7 +945,10 @@ about any kind of calendar imaginable. For Johannes' purposes, a simple |day list downward| will be a nice option since it produces a list of days that go ``downward''. % -\begin{codeexample}[leave comments] +\begin{codeexample}[ + leave comments, + preamble={\usetikzlibrary{calendar}}, +] \tiny \begin{tikzpicture} \calendar [day list downward, @@ -955,7 +1001,13 @@ when the lecture will be held: Johannes can now use this new |\lecture| command as follows (in the example, only the new part of the definition is used): % -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{calendar}}, + pre={ % !!! replace all `##x` with `#x` +\def\lecture##1##2##3##4##5##6{ + \node [anchor=base west] at (cal-##6.base east) {\textcolor{orange}{\textbf{##2}}}; +}}, +] \tiny \begin{tikzpicture} \calendar [day list downward, @@ -979,7 +1031,14 @@ command: He uses the |month text| option to configure how the text of a month is rendered (see Section~\ref{section-calender} for details) and then typesets the month text at a special position at the beginning of each month. % -\begin{codeexample}[leave comments] +\begin{codeexample}[ + leave comments, + preamble={\usetikzlibrary{calendar}}, + pre={ % !!! replace all `##x` with `#x` +\def\lecture##1##2##3##4##5##6{ + \node [anchor=base west] at (cal-##6.base east) {\textcolor{orange}{\textbf{##2}}}; +}}, +] \tiny \begin{tikzpicture} \calendar [day list downward, @@ -1053,7 +1112,9 @@ This is followed by the main mindmap setup\dots level 1/.append style={level distance=4.5cm,sibling angle=90,font=\scshape}, level 2/.append style={level distance=3cm,sibling angle=45,font=\scriptsize}] \end{codeexample} +% \dots and contents: +% \begin{codeexample}[code only] \node [root concept] (Computational Complexity) {Computational Complexity} % root child [computational problems] { node [yshift=-1cm] (Computational Problems) {Computational Problems} diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-nodes.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-nodes.tex index 26f9805b6a0..71e1486b1c9 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-nodes.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial-nodes.tex @@ -30,7 +30,7 @@ should look like this, ideally: % \begin{quote} \begin{tikzpicture} - [node distance=1.3cm,>=stealth',bend angle=45,auto, + [node distance=1.3cm,>={Stealth[round]},bend angle=45,auto, place/.style={circle,thick,draw=blue!75,fill=blue!20,minimum size=6mm}, red place/.style={place,draw=red!75,fill=red!20}, transition/.style={rectangle,thick,draw=black!75,fill=black!20,minimum size=4mm}, @@ -402,22 +402,25 @@ second method is to write the desired name in parentheses after the |node| operation. Hagen thinks that this second method seems strange, but he will soon change his opinion. % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} +\begin{codeexample}[setup code,hidden] +\tikzset{ + place/.style={circle,draw=blue!50,fill=blue!20,thick, + inner sep=0pt,minimum size=6mm}, + transition/.style={rectangle,draw=black!50,fill=black!20,thick, + inner sep=0pt,minimum size=4mm} +} +\end{codeexample} +% \begin{codeexample}[] % ... set up styles \begin{tikzpicture} - \node (waiting 1) at ( 0,2) [place] {}; - \node (critical 1) at ( 0,1) [place] {}; - \node (semaphore) at ( 0,0) [place] {}; + \node (waiting 1) at ( 0,2) [place] {}; + \node (critical 1) at ( 0,1) [place] {}; + \node (semaphore) at ( 0,0) [place] {}; \node (leave critical) at ( 1,1) [transition] {}; \node (enter critical) at (-1,1) [transition] {}; \end{tikzpicture} \end{codeexample} -} Hagen is pleased to note that the names help in understanding the code. Names for nodes can be pretty arbitrary, but they should not contain commas, periods, @@ -430,11 +433,6 @@ can even have multiple option blocks between the |node| and the text in curly braces, they accumulate. You can rearrange them arbitrarily and perhaps the following might be preferable: % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} \begin{codeexample}[] \begin{tikzpicture} \node[place] (waiting 1) at ( 0,2) {}; @@ -444,7 +442,6 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, \node[transition] (enter critical) at (-1,1) {}; \end{tikzpicture} \end{codeexample} -} \subsection{Placing Nodes Using Relative Placement} @@ -457,12 +454,7 @@ below the |waiting 1| node, wherever the |waiting 1| node might be. There are different ways of achieving this, but the nicest one in Hagen's case is the |below| option: % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture} \node[place] (waiting) {}; \node[place] (critical) [below=of waiting] {}; @@ -471,7 +463,6 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, \node[transition] (enter critical) [left=of critical] {}; \end{tikzpicture} \end{codeexample} -} With the |positioning| library loaded, when an option like |below| is followed by |of|, then the position of the node is shifted in such a manner that it is @@ -494,12 +485,8 @@ possible: \begin{enumerate} \item Hagen can just add a new node above the |north| anchor of the |semaphore| node. -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} -\begin{codeexample}[] + % +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture} \node[place] (waiting) {}; \node[place] (critical) [below=of waiting] {}; @@ -510,7 +497,6 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, \node [red,above] at (semaphore.north) {$s\le 3$}; \end{tikzpicture} \end{codeexample} -} % This is a general approach that will ``always work''. @@ -524,12 +510,7 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, 3$''. Instead of |above| we could also use things like |below left| before the colon or a number like |60|. % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture} \node[place] (waiting) {}; \node[place] (critical) [below=of waiting] {}; @@ -539,7 +520,6 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, \node[transition] (enter critical) [left=of critical] {}; \end{tikzpicture} \end{codeexample} -} % It is also possible to give multiple |label| options, this causes multiple labels to be drawn. @@ -559,12 +539,7 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, |label={[red]above:$s\le3$}|. Since this looks a bit ugly, Hagen decides to redefine the |every label| style. % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture}[every label/.style={red}] \node[place] (waiting) {}; \node[place] (critical) [below=of waiting] {}; @@ -574,7 +549,6 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, \node[transition] (enter critical) [left=of critical] {}; \end{tikzpicture} \end{codeexample} -} \end{enumerate} @@ -590,12 +564,7 @@ on the left of the node, and so on. To access the coordinate of a node, we use a coordinate that contains the node's name followed by a dot, followed by the anchor's name: % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture} \node[place] (waiting) {}; \node[place] (critical) [below=of waiting] {}; @@ -605,17 +574,11 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, \draw [->] (critical.west) -- (enter critical.east); \end{tikzpicture} \end{codeexample} -} Next, let us tackle the curve from |waiting| to |enter critical|. This can be specified using curves and controls: % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture} \node[place] (waiting) {}; \node[place] (critical) [below=of waiting] {}; @@ -627,7 +590,6 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, .. (enter critical.north); \end{tikzpicture} \end{codeexample} -} Hagen sees how he can now add all his edges, but the whole process seems a but awkward and not very flexible. Again, the code seems to obscure the structure @@ -636,12 +598,7 @@ of the graphic rather than showing it. So, let us start improving the code for the edges. First, Hagen can leave out the anchors: % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture} \node[place] (waiting) {}; \node[place] (critical) [below=of waiting] {}; @@ -653,7 +610,6 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, .. (enter critical); \end{tikzpicture} \end{codeexample} -} Hagen is a bit surprised that this works. After all, how did \tikzname\ know that the line from |enter critical| to |critical| should actually start on the @@ -671,12 +627,7 @@ pair of options is useful for Hagen: The pair |in| and |out|. These options take angles at which a curve should leave or reach the start or target coordinates. Without these options, a straight line is drawn: % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture} \node[place] (waiting) {}; \node[place] (critical) [below=of waiting] {}; @@ -687,18 +638,12 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, \draw [->] (waiting) to [out=180,in=90] (enter critical); \end{tikzpicture} \end{codeexample} -} There is another option for the |to| operation, that is even better suited to Hagen's problem: The |bend right| option. This option also takes an angle, but this angle only specifies the angle by which the curve is bent to the right: % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture} \node[place] (waiting) {}; \node[place] (critical) [below=of waiting] {}; @@ -710,7 +655,6 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, \draw [->] (enter critical) to [bend right=45] (semaphore); \end{tikzpicture} \end{codeexample} -} It is now time for Hagen to learn about yet another way of specifying edges: Using the |edge| path operation. This operation is very similar to the |to| @@ -721,12 +665,7 @@ consequences. For example, every edge can have its own arrow tips and its own color and so on and, still, all the edges can be given on the same path. This allows Hagen to write the following: % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{positioning}}] \begin{tikzpicture} \node[place] (waiting) {}; \node[place] (critical) [below=of waiting] {}; @@ -738,7 +677,6 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, edge [->,bend right=45] (semaphore); \end{tikzpicture} \end{codeexample} -} Each |edge| caused a new path to be constructed, consisting of a |to| between the node |enter critical| and the node following the |edge| command. @@ -746,17 +684,12 @@ the node |enter critical| and the node following the |edge| command. The finishing touch is to introduce two styles |pre| and |post| and to use the |bend angle=45| option to set the bend angle once and for all: % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}} -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta,positioning}}] % Styles place and transition as before \begin{tikzpicture} [bend angle=45, - pre/.style={<-,shorten <=1pt,>=stealth',semithick}, - post/.style={->,shorten >=1pt,>=stealth',semithick}] + pre/.style={<-,shorten <=1pt,>={Stealth[round]},semithick}, + post/.style={->,shorten >=1pt,>={Stealth[round]},semithick}] \node[place] (waiting) {}; \node[place] (critical) [below=of waiting] {}; @@ -772,7 +705,6 @@ transition/.style={rectangle,draw=black!50,fill=black!20,thick, edge [post,bend right] (semaphore); \end{tikzpicture} \end{codeexample} -} \subsection{Adding Labels Next to Lines} @@ -783,7 +715,7 @@ Hagen can use \tikzname's automatic node placement: By adding the option they are not on the curve but next to it. Adding |swap| will mirror the label with respect to the line. Here is a general example: % -{ +% TODOsp: codeexamples: styles not needed here \begin{codeexample}[] \begin{tikzpicture}[auto,bend right] \node (a) at (0:1) {$0^\circ$}; @@ -795,7 +727,6 @@ with respect to the line. Here is a general example: (c) to node {3} node [swap] {3'} (a); \end{tikzpicture} \end{codeexample} -} What is happening here? The nodes are given somehow inside the |to| operation! When this is done, the node is placed on the middle of the curve or line @@ -807,14 +738,13 @@ For Hagen that |auto| option is not really necessary since the two ``2'' labels could also easily be placed ``by hand''. However, in a complicated plot with numerous edges automatic placement can be a blessing. % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}, -pre/.style={<-,shorten <=1pt,>=stealth',semithick}, -post/.style={->,shorten >=1pt,>=stealth',semithick}} -\begin{codeexample}[] +\begin{codeexample}[ + preamble={\usetikzlibrary{arrows.meta,positioning}}, + pre={\tikzset{ + pre/.style={<-,shorten <=1pt,>={Stealth[round]},semithick}, + post/.style={->,shorten >=1pt,>={Stealth[round]},semithick}, +}}, +] % Styles as before \begin{tikzpicture}[bend angle=45] \node[place] (waiting) {}; @@ -831,7 +761,7 @@ post/.style={->,shorten >=1pt,>=stealth',semithick}} edge [post,bend right] (semaphore); \end{tikzpicture} \end{codeexample} -} +% TODOsp: codeexamples: styles and `positioning` are needed up to here \subsection{Adding the Snaked Line and Multi-Line Text} @@ -844,7 +774,7 @@ needs to set the two options |decoration=snake| and |decorate| on the path. This causes all lines of the path to be replaced by snakes. It is also possible to use snakes only in certain parts of a path, but Hagen will not need this. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} \draw [->,decorate,decoration=snake] (0,0) -- (2,0); \end{tikzpicture} @@ -855,7 +785,7 @@ happens to end exactly at the position where the arrow begins. Fortunately, there is an option that helps here. Also, the snake should be a bit smaller, which can be influenced by even more options. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} \draw [->,decorate, decoration={snake,amplitude=.4mm,segment length=2mm,post length=1mm}] @@ -868,7 +798,7 @@ since it is a multi-line text. Hagen has two options for this: First, he can specify an |align=center| and then use the |\\| command to enforce the line breaks at the desired positions. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} \draw [->,decorate, decoration={snake,amplitude=.4mm,segment length=2mm,post length=1mm}] @@ -885,7 +815,7 @@ breaks at the desired positions. Instead of specifying the line breaks ``by hand'', Hagen can also specify a width for the text and let \TeX\ perform the line breaking for him: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{decorations.pathmorphing}}] \begin{tikzpicture} \draw [->,decorate, decoration={snake,amplitude=.4mm,segment length=2mm,post length=1mm}] @@ -908,7 +838,7 @@ coordinates that make up the corners of the rectangle. If Hagen draws the rectangle first, then he needs to know the exact size of the Petri net -- which he does not. -The solution is to use \emph{layers}. When the background library is loaded, +The solution is to use \emph{layers}. When the |backgrounds| library is loaded, Hagen can put parts of his picture inside a scope with the |on background layer| option. Then this part of the picture becomes part of the layer that is given as an argument to this environment. When the @@ -924,14 +854,14 @@ the $x$- and $y$-coordinates of the nodes, but it would be nicer to just have node, causes the node to be resized and shifted such that it exactly covers all the nodes and coordinates given as parameters to the |fit| option. % -{ -\tikzset{place/.style={circle,draw=blue!50,fill=blue!20,thick, - inner sep=0pt,minimum size=6mm}, -transition/.style={rectangle,draw=black!50,fill=black!20,thick, - inner sep=0pt,minimum size=4mm}, -pre/.style={<-,shorten <=1pt,>=stealth',semithick}, -post/.style={->,shorten >=1pt,>=stealth',semithick}} -\begin{codeexample}[] +% TODOsp: codeexamples: redo/add styles starting from here +\begin{codeexample}[ + preamble={\usetikzlibrary{arrows.meta,backgrounds,fit,positioning}}, + pre={\tikzset{ + pre/.style={<-,shorten <=1pt,>={Stealth[round]},semithick}, + post/.style={->,shorten >=1pt,>={Stealth[round]},semithick}, +}}, +] % Styles as before \begin{tikzpicture}[bend angle=45] \node[place] (waiting) {}; @@ -953,7 +883,6 @@ post/.style={->,shorten >=1pt,>=stealth',semithick}} \end{scope} \end{tikzpicture} \end{codeexample} -} \subsection{The Complete Code} @@ -969,7 +898,7 @@ colors of places and transitions. % \begin{codeexample}[code only] \begin{tikzpicture} - [node distance=1.3cm,on grid,>=stealth',bend angle=45,auto, + [node distance=1.3cm,on grid,>={Stealth[round]},bend angle=45,auto, every place/.style= {minimum size=6mm,thick,draw=blue!75,fill=blue!20}, every transition/.style={thick,draw=black!75,fill=black!20}, red place/.style= {place,draw=red!75,fill=red!20}, @@ -978,15 +907,18 @@ colors of places and transitions. Now comes the code for the nets: % -{ -\tikzset{ - every place/.style={minimum size=6mm,thick,draw=blue!75,fill=blue!20}, - every transition/.style={thick,draw=black!75,fill=black!20}, - red place/.style={place,draw=red!75,fill=red!20}, - every label/.style={red}, - every picture/.style={on grid,node distance=1.3cm,>=stealth',bend angle=45,auto}} -\tikzexternaldisable -\begin{codeexample}[pre=\begin{tikzpicture},post=\end{tikzpicture}] +\ifpgfmanualexternalize\tikzexternaldisable\fi +\begin{codeexample}[ + preamble={\usetikzlibrary{arrows.meta,petri,positioning}}, + pre={\tikzset{ + every place/.style={minimum size=6mm,thick,draw=blue!75,fill=blue!20}, + every transition/.style={thick,draw=black!75,fill=black!20}, + every label/.style={red}, + every picture/.style={on grid,node distance=1.3cm,>={Stealth[round]},bend angle=45,auto}, +}% +\begin{tikzpicture}}, + post={\end{tikzpicture}}, +] \node [place,tokens=1] (w1) {}; \node [place] (c1) [below=of w1] {}; \node [place] (s) [below=of c1,label=above:$s\le 3$] {}; @@ -1010,17 +942,20 @@ Now comes the code for the nets: edge [pre,bend right] (s) edge [post,bend left] node {2} (w2); \end{codeexample} -} -{ -\tikzset{ -every place/.style={minimum size=6mm,thick,draw=blue!75,fill=blue!20}, -every transition/.style={thick,draw=black!75,fill=black!20}, -red place/.style= {place,draw=red!75,fill=red!20}, -every label/.style={red}, -every picture/.style={on grid,node distance=1.3cm,>=stealth',bend angle=45,auto}} -\tikzexternaldisable -\begin{codeexample}[pre=\begin{tikzpicture},post=\end{tikzpicture}] +\ifpgfmanualexternalize\tikzexternaldisable\fi +\begin{codeexample}[ + preamble={\usetikzlibrary{arrows.meta,petri,positioning}}, + pre={\tikzset{ + every place/.style={minimum size=6mm,thick,draw=blue!75,fill=blue!20}, + every transition/.style={thick,draw=black!75,fill=black!20}, + red place/.style= {place,draw=red!75,fill=red!20}, + every label/.style={red}, + every picture/.style={on grid,node distance=1.3cm,>={Stealth[round]},bend angle=45,auto}, +}% +\begin{tikzpicture}}, + post={\end{tikzpicture}}, +] \begin{scope}[xshift=6cm] \node [place,tokens=1] (w1') {}; \node [place] (c1') [below=of w1'] {}; @@ -1053,7 +988,6 @@ every picture/.style={on grid,node distance=1.3cm,>=stealth',bend angle=45,auto} edge [post,bend left] node {2} (w2'); \end{scope} \end{codeexample} -} The code for the background and the snake is the following: % @@ -1070,3 +1004,17 @@ The code for the background and the snake is the following: {replacement of the \textcolor{red}{capacity} by \textcolor{red}{two places}}; \end{tikzpicture} \end{codeexample} + +% ----------------------------------------------------------------------------- +% TODOsp: codeexamples: This is needed because -- unlike I thought -- +% `setup code is remembered also outside this file. Thus the changed +% style of `place` and `transition` are "remembered" in +% <pgfmanual-en-library-petri.tex> +\begin{codeexample}[setup code,hidden] +% from <tikzlibrarypetri.code.tex> +\tikzset{ + place/.style={circle,draw,inner sep=0pt,minimum size=5ex,every place}, + transition/.style={rectangle,draw,inner sep=0pt,minimum size=4mm,every transition}, +} +\end{codeexample} +% ----------------------------------------------------------------------------- diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex index 614177a7fa5..04ec7082d9b 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-tutorial.tex @@ -471,6 +471,11 @@ use another color. \end{tikzpicture} \end{codeexample} + In this example, the definition of the style |Karl's grid| is given as an + optional argument to the |{tikzpicture}| environment. Additional styles for other + elements would follow after a comma. With many styles in effect, the optional + argument of the environment may easily happen to be longer than the actual + contents. \subsection{Drawing Options} @@ -609,6 +614,7 @@ It is also possible to place the bend somewhere else: The operations |sin| and |cos| add a sine or cosine curve in the interval $[0,\pi/2]$ such that the previous current point is at the start of the curve and the curve ends at the given end point. Here are two examples: +% \begin{codeexample}[] A sine \tikz \draw[x=1ex,y=1ex] (0,0) sin (1.57,1); curve. \end{codeexample} @@ -868,7 +874,7 @@ do not care about arrow tips. It turns out that adding arrow tips is pretty easy: Karl adds the option |->| to the drawing commands for the axes: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{intersections}}] \begin{tikzpicture}[scale=3] \clip (-0.1,-0.2) rectangle (1.1,1.51); \draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4); @@ -918,7 +924,7 @@ specification. For example, if Karl says |>=Stealth|, then he tells \tikzname\ that he would like ``stealth-fighter-like'' arrow tips: \todosp{remaining instance of bug \#473} % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{arrows.meta}}] \begin{tikzpicture}[>=Stealth] \draw [->] (0,0) arc [start angle=180, end angle=30, radius=10pt]; \draw [<<-,very thick] (1,0) -- (1.5cm,10pt) -- (2cm,0pt) -- (2.5cm,10pt); @@ -1040,7 +1046,7 @@ All of these can be used together with \tikzname, so if you are familiar with them, feel free to use them. \tikzname\ introduces yet another command, called |\foreach|, which I introduced since I could never remember the syntax of the other packages. |\foreach| is defined in the package |pgffor| and can be used -independently \tikzname, but \tikzname\ includes it automatically. +independently of \tikzname, but \tikzname\ includes it automatically. In its basic form, the |\foreach| command is easy to use: % @@ -1232,7 +1238,7 @@ this places the label in the middle of the line, but the |pos=| options can be used to modify this. Also, options like |near start| and |near end| can be used to modify this position: % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{intersections}}] \begin{tikzpicture}[scale=3] \clip (-2,-0.2) rectangle (2,0.8); \draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4); @@ -1369,7 +1375,7 @@ The |angle| pic draws an angle between the two lines $BA$ and $BC$, where $A$, $B$, and $C$ are three coordinates. In our case, $B$ is the origin, $A$ is somewhere on the $x$-axis and $C$ is somewhere on a line at $30^\circ$. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usetikzlibrary{angles,quotes}}] \begin{tikzpicture}[scale=3] \coordinate (A) at (1,0); \coordinate (B) at (0,0); diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-xxcolor.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-xxcolor.tex index 2a114913a68..022f2769b83 100644 --- a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-xxcolor.tex +++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-xxcolor.tex @@ -24,7 +24,7 @@ such an environment is not available. \begin{environment}{{colormixin}\marg{mix-in specification}} The mix-in specification is applied to all colors inside the environment. At the beginning of the environment, the mix-in is applied to the current - color, i.\,e., the color that was in effect before the environment started. + color, i.e., the color that was in effect before the environment started. A mix-in specification is a number between 0 and 100 followed by an exclamation mark and a color name. When a |\color| command is encountered inside a mix-in environment, the number states what percentage of the @@ -33,7 +33,7 @@ such an environment is not available. |90!blue| will mix in 10\% of blue into everything, whereas |25!white| will make everything nearly white. % -\begin{codeexample}[width=4cm] +\begin{codeexample}[width=4cm,preamble={\usepackage{xxcolor}}] \begin{minipage}{3.5cm}\raggedright \color{red}Red text,% \begin{colormixin}{25!white} @@ -67,7 +67,8 @@ whether there exists an image named |foo.!25!white!25!black|. Expands to the current accumulated mix-in. Each nesting of a |colormixin| adds a mix-in to this list. % -\begin{codeexample}[] +\begin{codeexample}[preamble={\usepackage{xxcolor} +\usepackage{calc}}] \begin{minipage}{\linewidth-6pt}\raggedright \begin{colormixin}{75!white} \colorcurrentmixin\ should be ``!75!white''\par diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-asymptotic-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-asymptotic-example.gnuplot new file mode 100644 index 00000000000..c99b87dbc89 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-asymptotic-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-asymptotic-example.table"; set format "%.5f" +set samples 200.0; set parametric; plot [t=0.4:1.5] [] [] (t*t*t)*sin(1/(t*t*t)),(t*t*t)*cos(1/(t*t*t)) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-asymptotic-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-asymptotic-example.table new file mode 100644 index 00000000000..173ab5e9c77 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-asymptotic-example.table @@ -0,0 +1,204 @@ +#Curve 0, 200 points +#x y type +0.00530 -0.06378 i +0.04363 -0.05043 i +0.06711 -0.01790 i +0.06896 0.02170 i +0.05014 0.05606 i +0.01712 0.07631 i +-0.02110 0.07849 i +-0.05579 0.06337 i +-0.08032 0.03512 i +-0.09097 -0.00029 i +-0.08696 -0.03664 i +-0.06987 -0.06850 i +-0.04284 -0.09192 i +-0.00982 -0.10460 i +0.02515 -0.10585 i +0.05841 -0.09629 i +0.08703 -0.07749 i +0.10892 -0.05162 i +0.12282 -0.02111 i +0.12828 0.01163 i +0.12547 0.04436 i +0.11507 0.07518 i +0.09810 0.10255 i +0.07579 0.12534 i +0.04948 0.14280 i +0.02048 0.15454 i +-0.00995 0.16043 i +-0.04065 0.16063 i +-0.07063 0.15545 i +-0.09905 0.14536 i +-0.12521 0.13092 i +-0.14860 0.11273 i +-0.16882 0.09143 i +-0.18562 0.06764 i +-0.19885 0.04197 i +-0.20848 0.01500 i +-0.21454 -0.01276 i +-0.21712 -0.04083 i +-0.21637 -0.06879 i +-0.21247 -0.09627 i +-0.20565 -0.12295 i +-0.19613 -0.14858 i +-0.18415 -0.17294 i +-0.16996 -0.19585 i +-0.15379 -0.21718 i +-0.13589 -0.23682 i +-0.11647 -0.25471 i +-0.09576 -0.27080 i +-0.07396 -0.28508 i +-0.05126 -0.29753 i +-0.02783 -0.30819 i +-0.00384 -0.31707 i +0.02057 -0.32421 i +0.04526 -0.32967 i +0.07011 -0.33350 i +0.09502 -0.33576 i +0.11989 -0.33651 i +0.14463 -0.33582 i +0.16917 -0.33376 i +0.19345 -0.33040 i +0.21741 -0.32580 i +0.24100 -0.32003 i +0.26418 -0.31315 i +0.28691 -0.30524 i +0.30918 -0.29634 i +0.33096 -0.28653 i +0.35222 -0.27585 i +0.37297 -0.26437 i +0.39318 -0.25213 i +0.41285 -0.23918 i +0.43197 -0.22557 i +0.45056 -0.21134 i +0.46860 -0.19654 i +0.48611 -0.18119 i +0.50309 -0.16535 i +0.51954 -0.14904 i +0.53547 -0.13229 i +0.55090 -0.11514 i +0.56582 -0.09761 i +0.58026 -0.07972 i +0.59422 -0.06150 i +0.60772 -0.04298 i +0.62076 -0.02416 i +0.63336 -0.00508 i +0.64554 0.01425 i +0.65729 0.03382 i +0.66864 0.05361 i +0.67960 0.07361 i +0.69018 0.09381 i +0.70039 0.11420 i +0.71024 0.13475 i +0.71975 0.15548 i +0.72892 0.17636 i +0.73778 0.19739 i +0.74632 0.21857 i +0.75456 0.23989 i +0.76251 0.26134 i +0.77018 0.28291 i +0.77759 0.30461 i +0.78473 0.32643 i +0.79162 0.34837 i +0.79826 0.37042 i +0.80468 0.39258 i +0.81087 0.41485 i +0.81684 0.43723 i +0.82261 0.45972 i +0.82817 0.48232 i +0.83354 0.50502 i +0.83872 0.52782 i +0.84372 0.55073 i +0.84855 0.57374 i +0.85321 0.59686 i +0.85772 0.62009 i +0.86206 0.64342 i +0.86626 0.66685 i +0.87032 0.69040 i +0.87423 0.71405 i +0.87801 0.73781 i +0.88167 0.76169 i +0.88520 0.78567 i +0.88861 0.80977 i +0.89191 0.83398 i +0.89510 0.85831 i +0.89818 0.88276 i +0.90115 0.90733 i +0.90403 0.93202 i +0.90682 0.95683 i +0.90951 0.98177 i +0.91211 1.00683 i +0.91463 1.03202 i +0.91707 1.05735 i +0.91942 1.08280 i +0.92171 1.10839 i +0.92391 1.13411 i +0.92605 1.15998 i +0.92812 1.18598 i +0.93012 1.21213 i +0.93205 1.23842 i +0.93393 1.26485 i +0.93575 1.29143 i +0.93751 1.31817 i +0.93921 1.34505 i +0.94086 1.37209 i +0.94246 1.39929 i +0.94401 1.42664 i +0.94552 1.45415 i +0.94697 1.48183 i +0.94838 1.50967 i +0.94975 1.53767 i +0.95108 1.56584 i +0.95236 1.59418 i +0.95361 1.62270 i +0.95482 1.65138 i +0.95600 1.68025 i +0.95713 1.70928 i +0.95824 1.73850 i +0.95931 1.76790 i +0.96035 1.79748 i +0.96136 1.82725 i +0.96234 1.85720 i +0.96329 1.88735 i +0.96422 1.91768 i +0.96511 1.94820 i +0.96598 1.97892 i +0.96683 2.00983 i +0.96765 2.04094 i +0.96845 2.07225 i +0.96922 2.10376 i +0.96998 2.13547 i +0.97071 2.16739 i +0.97142 2.19952 i +0.97211 2.23185 i +0.97278 2.26439 i +0.97344 2.29714 i +0.97407 2.33010 i +0.97469 2.36328 i +0.97529 2.39667 i +0.97588 2.43028 i +0.97644 2.46411 i +0.97700 2.49817 i +0.97754 2.53244 i +0.97806 2.56694 i +0.97857 2.60166 i +0.97906 2.63661 i +0.97955 2.67179 i +0.98001 2.70720 i +0.98047 2.74284 i +0.98092 2.77871 i +0.98135 2.81482 i +0.98177 2.85117 i +0.98218 2.88775 i +0.98258 2.92457 i +0.98297 2.96163 i +0.98335 2.99894 i +0.98372 3.03649 i +0.98408 3.07428 i +0.98443 3.11232 i +0.98477 3.15061 i +0.98511 3.18914 i +0.98543 3.22793 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-exp.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-exp.gnuplot new file mode 100644 index 00000000000..8109ea408c5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-exp.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-exp.table"; set format "%.5f" +set samples 25; plot [x=0:4] 0.05*exp(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-exp.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-exp.table new file mode 100644 index 00000000000..8e728570397 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-exp.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.05000 i +0.16667 0.05907 i +0.33333 0.06978 i +0.50000 0.08244 i +0.66667 0.09739 i +0.83333 0.11505 i +1.00000 0.13591 i +1.16667 0.16056 i +1.33333 0.18968 i +1.50000 0.22408 i +1.66667 0.26472 i +1.83333 0.31274 i +2.00000 0.36945 i +2.16667 0.43646 i +2.33333 0.51561 i +2.50000 0.60912 i +2.66667 0.71960 i +2.83333 0.85010 i +3.00000 1.00428 i +3.16667 1.18641 i +3.33333 1.40158 i +3.50000 1.65577 i +3.66667 1.95606 i +3.83333 2.31082 i +4.00000 2.72991 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-parametric-example-cut.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-parametric-example-cut.gnuplot new file mode 100644 index 00000000000..1f81f6a7b90 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-parametric-example-cut.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example-cut.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [0:1] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-parametric-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-parametric-example.gnuplot new file mode 100644 index 00000000000..ea9639bd782 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-parametric-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-parametric-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-parametric-example.table new file mode 100644 index 00000000000..de0c383ddde --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-parametric-example.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00186 3.14100 i +0.74672 2.78074 i +1.30987 2.26617 i +1.66651 1.66503 i +1.81387 1.04628 i +1.76998 0.47361 i +1.57050 -0.00047 i +1.26407 -0.33904 i +0.90663 -0.52368 i +0.55517 -0.55534 i +0.26171 -0.45339 i +0.06773 -0.25283 i +0.00000 -0.00000 i +0.06773 0.25283 i +0.26171 0.45339 i +0.55517 0.55534 i +0.90663 0.52368 i +1.26407 0.33904 i +1.57050 0.00047 i +1.76998 -0.47361 i +1.81387 -1.04628 i +1.66651 -1.66503 i +1.30987 -2.26617 i +0.74672 -2.78074 i +0.00186 -3.14100 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-sin.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-sin.gnuplot new file mode 100644 index 00000000000..48df575630c --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-sin.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-sin.table"; set format "%.5f" +set samples 25; plot [x=0:4] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-sin.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-sin.table new file mode 100644 index 00000000000..9ab8f2c8d56 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-sin.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.00000 i +0.16667 0.16590 i +0.33333 0.32719 i +0.50000 0.47943 i +0.66667 0.61837 i +0.83333 0.74018 i +1.00000 0.84147 i +1.16667 0.91944 i +1.33333 0.97194 i +1.50000 0.99749 i +1.66667 0.99541 i +1.83333 0.96573 i +2.00000 0.90930 i +2.16667 0.82766 i +2.33333 0.72309 i +2.50000 0.59847 i +2.66667 0.45727 i +2.83333 0.30340 i +3.00000 0.14112 i +3.16667 -0.02507 i +3.33333 -0.19057 i +3.50000 -0.35078 i +3.66667 -0.50128 i +3.83333 -0.63788 i +4.00000 -0.75680 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-tan-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-tan-example.gnuplot new file mode 100644 index 00000000000..0b0a1ad8ff3 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-tan-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-tan-example.table"; set format "%.5f" +set samples 100.0; plot [x=-3.141:3.141] [-3:3]tan(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-tan-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-tan-example.table new file mode 100644 index 00000000000..63beeda4b7a --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-tan-example.table @@ -0,0 +1,104 @@ + +#Curve 0 of 1, 100 points +#x y type +-3.14100 0.00059 i +-3.07755 0.06413 i +-3.01409 0.12820 i +-2.95064 0.19331 i +-2.88718 0.26005 i +-2.82373 0.32902 i +-2.76027 0.40094 i +-2.69682 0.47663 i +-2.63336 0.55704 i +-2.56991 0.64335 i +-2.50645 0.73701 i +-2.44300 0.83989 i +-2.37955 0.95436 i +-2.31609 1.08360 i +-2.25264 1.23197 i +-2.18918 1.40553 i +-2.12573 1.61314 i +-2.06227 1.86816 i +-1.99882 2.19188 i +-1.93536 2.62036 i +-1.87191 3.22003 o +-1.80845 4.12820 o +-1.74500 5.68222 o +-1.68155 8.99247 o +-1.61809 21.12830 o +-1.55464 -61.87594 o +-1.49118 -12.53398 o +-1.42773 -6.94188 o +-1.36427 -4.77302 o +-1.30082 -3.61357 o +-1.23736 -2.88713 i +-1.17391 -2.38590 i +-1.11045 -2.01664 i +-1.04700 -1.73126 i +-0.98355 -1.50245 i +-0.92009 -1.31351 i +-0.85664 -1.15368 i +-0.79318 -1.01569 i +-0.72973 -0.89443 i +-0.66627 -0.78621 i +-0.60282 -0.68828 i +-0.53936 -0.59856 i +-0.47591 -0.51542 i +-0.41245 -0.43755 i +-0.34900 -0.36390 i +-0.28555 -0.29357 i +-0.22209 -0.22582 i +-0.15864 -0.15998 i +-0.09518 -0.09547 i +-0.03173 -0.03174 i +0.03173 0.03174 i +0.09518 0.09547 i +0.15864 0.15998 i +0.22209 0.22582 i +0.28555 0.29357 i +0.34900 0.36390 i +0.41245 0.43755 i +0.47591 0.51542 i +0.53936 0.59856 i +0.60282 0.68828 i +0.66627 0.78621 i +0.72973 0.89443 i +0.79318 1.01569 i +0.85664 1.15368 i +0.92009 1.31351 i +0.98355 1.50245 i +1.04700 1.73126 i +1.11045 2.01664 i +1.17391 2.38590 i +1.23736 2.88713 i +1.30082 3.61357 o +1.36427 4.77302 o +1.42773 6.94188 o +1.49118 12.53398 o +1.55464 61.87594 o +1.61809 -21.12830 o +1.68155 -8.99247 o +1.74500 -5.68222 o +1.80845 -4.12820 o +1.87191 -3.22003 o +1.93536 -2.62036 i +1.99882 -2.19188 i +2.06227 -1.86816 i +2.12573 -1.61314 i +2.18918 -1.40553 i +2.25264 -1.23197 i +2.31609 -1.08360 i +2.37955 -0.95436 i +2.44300 -0.83989 i +2.50645 -0.73701 i +2.56991 -0.64335 i +2.63336 -0.55704 i +2.69682 -0.47663 i +2.76027 -0.40094 i +2.82373 -0.32902 i +2.88718 -0.26005 i +2.95064 -0.19331 i +3.01409 -0.12820 i +3.07755 -0.06413 i +3.14100 -0.00059 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-x.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-x.gnuplot new file mode 100644 index 00000000000..0e57c0571ad --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-x.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-x.table"; set format "%.5f" +set samples 25; plot [x=0:4] x diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-x.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-x.table new file mode 100644 index 00000000000..329b9fa56b5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgf-x.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.00000 i +0.16667 0.16667 i +0.33333 0.33333 i +0.50000 0.50000 i +0.66667 0.66667 i +0.83333 0.83333 i +1.00000 1.00000 i +1.16667 1.16667 i +1.33333 1.33333 i +1.50000 1.50000 i +1.66667 1.66667 i +1.83333 1.83333 i +2.00000 2.00000 i +2.16667 2.16667 i +2.33333 2.33333 i +2.50000 2.50000 i +2.66667 2.66667 i +2.83333 2.83333 i +3.00000 3.00000 i +3.16667 3.16667 i +3.33333 3.33333 i +3.50000 3.50000 i +3.66667 3.66667 i +3.83333 3.83333 i +4.00000 4.00000 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgfmanual-sine.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgfmanual-sine.gnuplot new file mode 100644 index 00000000000..8e3f24b9172 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgfmanual-sine.gnuplot @@ -0,0 +1,5 @@ +set terminal table +set output "pgfmanual-sine.table" +set format "%.5f" +set samples 20 +plot [x=0:10] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgfmanual-sine.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgfmanual-sine.table new file mode 100644 index 00000000000..9d5d248a561 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgfmanual-sine.table @@ -0,0 +1,24 @@ +#Curve 0, 20 points +#x y type +0.00000 0.00000 i +0.52632 0.50235 i +1.05263 0.86873 i +1.57895 0.99997 i +2.10526 0.86054 i +2.63158 0.48819 i +3.15789 -0.01630 i +3.68421 -0.51638 i +4.21053 -0.87669 i +4.73684 -0.99970 i +5.26316 -0.85212 i +5.78947 -0.47390 i +6.31579 0.03260 i +6.84211 0.53027 i +7.36842 0.88441 i +7.89474 0.99917 i +8.42105 0.84348 i +8.94737 0.45948 i +9.47368 -0.04889 i +10.00000 -0.54402 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgfplotgnuplot-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgfplotgnuplot-example.gnuplot new file mode 100644 index 00000000000..ebac36dd234 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgfplotgnuplot-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgfplotgnuplot-example.table"; set format "%.5f" +plot [x=0:3.5] x*sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgfplotgnuplot-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgfplotgnuplot-example.table new file mode 100644 index 00000000000..a4e517898a8 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfm/en/plots/pgfplotgnuplot-example.table @@ -0,0 +1,104 @@ +#Curve 0, 100 points +#x y type +0.00000 0.00000 i +0.03535 0.00125 i +0.07071 0.00500 i +0.10606 0.01123 i +0.14141 0.01993 i +0.17677 0.03108 i +0.21212 0.04466 i +0.24747 0.06062 i +0.28283 0.07893 i +0.31818 0.09954 i +0.35354 0.12240 i +0.38889 0.14745 i +0.42424 0.17463 i +0.45960 0.20387 i +0.49495 0.23509 i +0.53030 0.26822 i +0.56566 0.30318 i +0.60101 0.33986 i +0.63636 0.37817 i +0.67172 0.41803 i +0.70707 0.45932 i +0.74242 0.50194 i +0.77778 0.54577 i +0.81313 0.59069 i +0.84848 0.63660 i +0.88384 0.68337 i +0.91919 0.73086 i +0.95455 0.77896 i +0.98990 0.82753 i +1.02525 0.87643 i +1.06061 0.92554 i +1.09596 0.97471 i +1.13131 1.02381 i +1.16667 1.07269 i +1.20202 1.12121 i +1.23737 1.16923 i +1.27273 1.21661 i +1.30808 1.26320 i +1.34343 1.30886 i +1.37879 1.35345 i +1.41414 1.39682 i +1.44949 1.43884 i +1.48485 1.47937 i +1.52020 1.51826 i +1.55556 1.55537 i +1.59091 1.59059 i +1.62626 1.62376 i +1.66162 1.65477 i +1.69697 1.68348 i +1.73232 1.70977 i +1.76768 1.73353 i +1.80303 1.75463 i +1.83838 1.77296 i +1.87374 1.78841 i +1.90909 1.80089 i +1.94444 1.81028 i +1.97980 1.81650 i +2.01515 1.81946 i +2.05051 1.81906 i +2.08586 1.81524 i +2.12121 1.80792 i +2.15657 1.79704 i +2.19192 1.78252 i +2.22727 1.76433 i +2.26263 1.74240 i +2.29798 1.71671 i +2.33333 1.68720 i +2.36869 1.65386 i +2.40404 1.61667 i +2.43939 1.57560 i +2.47475 1.53066 i +2.51010 1.48184 i +2.54545 1.42915 i +2.58081 1.37260 i +2.61616 1.31223 i +2.65152 1.24805 i +2.68687 1.18011 i +2.72222 1.10845 i +2.75758 1.03312 i +2.79293 0.95418 i +2.82828 0.87170 i +2.86364 0.78576 i +2.89899 0.69642 i +2.93434 0.60380 i +2.96970 0.50797 i +3.00505 0.40904 i +3.04040 0.30713 i +3.07576 0.20235 i +3.11111 0.09482 i +3.14646 -0.01533 i +3.18182 -0.12796 i +3.21717 -0.24292 i +3.25253 -0.36007 i +3.28788 -0.47926 i +3.32323 -0.60032 i +3.35859 -0.72308 i +3.39394 -0.84739 i +3.42929 -0.97305 i +3.46465 -1.09990 i +3.50000 -1.22774 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-asymptotic-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-asymptotic-example.gnuplot new file mode 100644 index 00000000000..c99b87dbc89 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-asymptotic-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-asymptotic-example.table"; set format "%.5f" +set samples 200.0; set parametric; plot [t=0.4:1.5] [] [] (t*t*t)*sin(1/(t*t*t)),(t*t*t)*cos(1/(t*t*t)) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-asymptotic-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-asymptotic-example.table new file mode 100644 index 00000000000..98e1357c20b --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-asymptotic-example.table @@ -0,0 +1,205 @@ + +# Curve 0 of 1, 200 points +# Curve title: "(t*t*t)*sin(1/(t*t*t)),(t*t*t)*cos(1/(t*t*t))" +# x y type +0.00530 -0.06378 i +0.04363 -0.05043 i +0.06711 -0.01790 i +0.06896 0.02170 i +0.05014 0.05606 i +0.01712 0.07631 i +-0.02110 0.07849 i +-0.05579 0.06337 i +-0.08032 0.03512 i +-0.09097 -0.00029 i +-0.08696 -0.03664 i +-0.06987 -0.06850 i +-0.04284 -0.09192 i +-0.00982 -0.10460 i +0.02515 -0.10585 i +0.05841 -0.09629 i +0.08703 -0.07749 i +0.10892 -0.05162 i +0.12282 -0.02111 i +0.12828 0.01163 i +0.12547 0.04436 i +0.11507 0.07518 i +0.09810 0.10255 i +0.07579 0.12534 i +0.04948 0.14280 i +0.02048 0.15454 i +-0.00995 0.16043 i +-0.04065 0.16063 i +-0.07063 0.15545 i +-0.09905 0.14536 i +-0.12521 0.13092 i +-0.14860 0.11273 i +-0.16882 0.09143 i +-0.18562 0.06764 i +-0.19885 0.04197 i +-0.20848 0.01500 i +-0.21454 -0.01276 i +-0.21712 -0.04083 i +-0.21637 -0.06879 i +-0.21247 -0.09627 i +-0.20565 -0.12295 i +-0.19613 -0.14858 i +-0.18415 -0.17294 i +-0.16996 -0.19585 i +-0.15379 -0.21718 i +-0.13589 -0.23682 i +-0.11647 -0.25471 i +-0.09576 -0.27080 i +-0.07396 -0.28508 i +-0.05126 -0.29753 i +-0.02783 -0.30819 i +-0.00384 -0.31707 i +0.02057 -0.32421 i +0.04526 -0.32967 i +0.07011 -0.33350 i +0.09502 -0.33576 i +0.11989 -0.33651 i +0.14463 -0.33582 i +0.16917 -0.33376 i +0.19345 -0.33040 i +0.21741 -0.32580 i +0.24100 -0.32003 i +0.26418 -0.31315 i +0.28691 -0.30524 i +0.30918 -0.29634 i +0.33096 -0.28653 i +0.35222 -0.27585 i +0.37297 -0.26437 i +0.39318 -0.25213 i +0.41285 -0.23918 i +0.43197 -0.22557 i +0.45056 -0.21134 i +0.46860 -0.19654 i +0.48611 -0.18119 i +0.50309 -0.16535 i +0.51954 -0.14904 i +0.53547 -0.13229 i +0.55090 -0.11514 i +0.56582 -0.09761 i +0.58026 -0.07972 i +0.59422 -0.06150 i +0.60772 -0.04298 i +0.62076 -0.02416 i +0.63336 -0.00508 i +0.64554 0.01425 i +0.65729 0.03382 i +0.66864 0.05361 i +0.67960 0.07361 i +0.69018 0.09381 i +0.70039 0.11420 i +0.71024 0.13475 i +0.71975 0.15548 i +0.72892 0.17636 i +0.73778 0.19739 i +0.74632 0.21857 i +0.75456 0.23989 i +0.76251 0.26134 i +0.77018 0.28291 i +0.77759 0.30461 i +0.78473 0.32643 i +0.79162 0.34837 i +0.79826 0.37042 i +0.80468 0.39258 i +0.81087 0.41485 i +0.81684 0.43723 i +0.82261 0.45972 i +0.82817 0.48232 i +0.83354 0.50502 i +0.83872 0.52782 i +0.84372 0.55073 i +0.84855 0.57374 i +0.85321 0.59686 i +0.85772 0.62009 i +0.86206 0.64342 i +0.86626 0.66685 i +0.87032 0.69040 i +0.87423 0.71405 i +0.87801 0.73781 i +0.88167 0.76169 i +0.88520 0.78567 i +0.88861 0.80977 i +0.89191 0.83398 i +0.89510 0.85831 i +0.89818 0.88276 i +0.90115 0.90733 i +0.90403 0.93202 i +0.90682 0.95683 i +0.90951 0.98177 i +0.91211 1.00683 i +0.91463 1.03202 i +0.91707 1.05735 i +0.91942 1.08280 i +0.92171 1.10839 i +0.92391 1.13411 i +0.92605 1.15998 i +0.92812 1.18598 i +0.93012 1.21213 i +0.93205 1.23842 i +0.93393 1.26485 i +0.93575 1.29143 i +0.93751 1.31817 i +0.93921 1.34505 i +0.94086 1.37209 i +0.94246 1.39929 i +0.94401 1.42664 i +0.94552 1.45415 i +0.94697 1.48183 i +0.94838 1.50967 i +0.94975 1.53767 i +0.95108 1.56584 i +0.95236 1.59418 i +0.95361 1.62270 i +0.95482 1.65138 i +0.95600 1.68025 i +0.95713 1.70928 i +0.95824 1.73850 i +0.95931 1.76790 i +0.96035 1.79748 i +0.96136 1.82725 i +0.96234 1.85720 i +0.96329 1.88735 i +0.96422 1.91768 i +0.96511 1.94820 i +0.96598 1.97892 i +0.96683 2.00983 i +0.96765 2.04094 i +0.96845 2.07225 i +0.96922 2.10376 i +0.96998 2.13547 i +0.97071 2.16739 i +0.97142 2.19952 i +0.97211 2.23185 i +0.97278 2.26439 i +0.97344 2.29714 i +0.97407 2.33010 i +0.97469 2.36328 i +0.97529 2.39667 i +0.97588 2.43028 i +0.97644 2.46411 i +0.97700 2.49817 i +0.97754 2.53244 i +0.97806 2.56694 i +0.97857 2.60166 i +0.97906 2.63661 i +0.97955 2.67179 i +0.98001 2.70720 i +0.98047 2.74284 i +0.98092 2.77871 i +0.98135 2.81482 i +0.98177 2.85117 i +0.98218 2.88775 i +0.98258 2.92457 i +0.98297 2.96163 i +0.98335 2.99894 i +0.98372 3.03649 i +0.98408 3.07428 i +0.98443 3.11232 i +0.98477 3.15061 i +0.98511 3.18914 i +0.98543 3.22793 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-exp.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-exp.gnuplot new file mode 100644 index 00000000000..8109ea408c5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-exp.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-exp.table"; set format "%.5f" +set samples 25; plot [x=0:4] 0.05*exp(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-exp.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-exp.table new file mode 100644 index 00000000000..3b4004ac39e --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-exp.table @@ -0,0 +1,30 @@ + +# Curve 0 of 1, 25 points +# Curve title: "0.05*exp(x)" +# x y type +0.00000 0.05000 i +0.16667 0.05907 i +0.33333 0.06978 i +0.50000 0.08244 i +0.66667 0.09739 i +0.83333 0.11505 i +1.00000 0.13591 i +1.16667 0.16056 i +1.33333 0.18968 i +1.50000 0.22408 i +1.66667 0.26472 i +1.83333 0.31274 i +2.00000 0.36945 i +2.16667 0.43646 i +2.33333 0.51561 i +2.50000 0.60912 i +2.66667 0.71960 i +2.83333 0.85010 i +3.00000 1.00428 i +3.16667 1.18641 i +3.33333 1.40158 i +3.50000 1.65577 i +3.66667 1.95606 i +3.83333 2.31082 i +4.00000 2.72991 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example-cut.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example-cut.gnuplot new file mode 100644 index 00000000000..1f81f6a7b90 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example-cut.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example-cut.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [0:1] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example-cut.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example-cut.table new file mode 100644 index 00000000000..fbd3c23fa7f --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example-cut.table @@ -0,0 +1,30 @@ + +# Curve 0 of 1, 25 points +# Curve title: "t*sin(t),t*cos(t)" +# x y type +0.00186 3.14100 i +0.74672 2.78074 i +1.30987 2.26617 o +1.66651 1.66503 o +1.81387 1.04628 o +1.76998 0.47361 o +1.57050 -0.00047 o +1.26407 -0.33904 o +0.90663 -0.52368 i +0.55517 -0.55534 i +0.26171 -0.45339 i +0.06773 -0.25283 i +0.00000 0.00000 i +0.06773 0.25283 i +0.26171 0.45339 i +0.55517 0.55534 i +0.90663 0.52368 i +1.26407 0.33904 o +1.57050 0.00047 o +1.76998 -0.47361 o +1.81387 -1.04628 o +1.66651 -1.66503 o +1.30987 -2.26617 o +0.74672 -2.78074 i +0.00186 -3.14100 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example.gnuplot new file mode 100644 index 00000000000..ea9639bd782 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example.table new file mode 100644 index 00000000000..3755e8c6d05 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-parametric-example.table @@ -0,0 +1,30 @@ + +# Curve 0 of 1, 25 points +# Curve title: "t*sin(t),t*cos(t)" +# x y type +0.00186 3.14100 i +0.74672 2.78074 i +1.30987 2.26617 i +1.66651 1.66503 i +1.81387 1.04628 i +1.76998 0.47361 i +1.57050 -0.00047 i +1.26407 -0.33904 i +0.90663 -0.52368 i +0.55517 -0.55534 i +0.26171 -0.45339 i +0.06773 -0.25283 i +0.00000 0.00000 i +0.06773 0.25283 i +0.26171 0.45339 i +0.55517 0.55534 i +0.90663 0.52368 i +1.26407 0.33904 i +1.57050 0.00047 i +1.76998 -0.47361 i +1.81387 -1.04628 i +1.66651 -1.66503 i +1.30987 -2.26617 i +0.74672 -2.78074 i +0.00186 -3.14100 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-sin.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-sin.gnuplot new file mode 100644 index 00000000000..48df575630c --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-sin.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-sin.table"; set format "%.5f" +set samples 25; plot [x=0:4] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-sin.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-sin.table new file mode 100644 index 00000000000..756bf7f0934 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-sin.table @@ -0,0 +1,30 @@ + +# Curve 0 of 1, 25 points +# Curve title: "sin(x)" +# x y type +0.00000 0.00000 i +0.16667 0.16590 i +0.33333 0.32719 i +0.50000 0.47943 i +0.66667 0.61837 i +0.83333 0.74018 i +1.00000 0.84147 i +1.16667 0.91944 i +1.33333 0.97194 i +1.50000 0.99749 i +1.66667 0.99541 i +1.83333 0.96573 i +2.00000 0.90930 i +2.16667 0.82766 i +2.33333 0.72309 i +2.50000 0.59847 i +2.66667 0.45727 i +2.83333 0.30340 i +3.00000 0.14112 i +3.16667 -0.02507 i +3.33333 -0.19057 i +3.50000 -0.35078 i +3.66667 -0.50128 i +3.83333 -0.63788 i +4.00000 -0.75680 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-tan-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-tan-example.gnuplot new file mode 100644 index 00000000000..0b0a1ad8ff3 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-tan-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-tan-example.table"; set format "%.5f" +set samples 100.0; plot [x=-3.141:3.141] [-3:3]tan(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-tan-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-tan-example.table new file mode 100644 index 00000000000..def4c602751 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-tan-example.table @@ -0,0 +1,105 @@ + +# Curve 0 of 1, 100 points +# Curve title: "tan(x)" +# x y type +-3.14100 0.00059 i +-3.07755 0.06413 i +-3.01409 0.12820 i +-2.95064 0.19331 i +-2.88718 0.26005 i +-2.82373 0.32902 i +-2.76027 0.40094 i +-2.69682 0.47663 i +-2.63336 0.55704 i +-2.56991 0.64335 i +-2.50645 0.73701 i +-2.44300 0.83989 i +-2.37955 0.95436 i +-2.31609 1.08360 i +-2.25264 1.23197 i +-2.18918 1.40553 i +-2.12573 1.61314 i +-2.06227 1.86816 i +-1.99882 2.19188 i +-1.93536 2.62036 i +-1.87191 3.22003 o +-1.80845 4.12820 o +-1.74500 5.68222 o +-1.68155 8.99247 o +-1.61809 21.12830 o +-1.55464 -61.87594 o +-1.49118 -12.53398 o +-1.42773 -6.94188 o +-1.36427 -4.77302 o +-1.30082 -3.61357 o +-1.23736 -2.88713 i +-1.17391 -2.38590 i +-1.11045 -2.01664 i +-1.04700 -1.73126 i +-0.98355 -1.50245 i +-0.92009 -1.31351 i +-0.85664 -1.15368 i +-0.79318 -1.01569 i +-0.72973 -0.89443 i +-0.66627 -0.78621 i +-0.60282 -0.68828 i +-0.53936 -0.59856 i +-0.47591 -0.51542 i +-0.41245 -0.43755 i +-0.34900 -0.36390 i +-0.28555 -0.29357 i +-0.22209 -0.22582 i +-0.15864 -0.15998 i +-0.09518 -0.09547 i +-0.03173 -0.03174 i +0.03173 0.03174 i +0.09518 0.09547 i +0.15864 0.15998 i +0.22209 0.22582 i +0.28555 0.29357 i +0.34900 0.36390 i +0.41245 0.43755 i +0.47591 0.51542 i +0.53936 0.59856 i +0.60282 0.68828 i +0.66627 0.78621 i +0.72973 0.89443 i +0.79318 1.01569 i +0.85664 1.15368 i +0.92009 1.31351 i +0.98355 1.50245 i +1.04700 1.73126 i +1.11045 2.01664 i +1.17391 2.38590 i +1.23736 2.88713 i +1.30082 3.61357 o +1.36427 4.77302 o +1.42773 6.94188 o +1.49118 12.53398 o +1.55464 61.87594 o +1.61809 -21.12830 o +1.68155 -8.99247 o +1.74500 -5.68222 o +1.80845 -4.12820 o +1.87191 -3.22003 o +1.93536 -2.62036 i +1.99882 -2.19188 i +2.06227 -1.86816 i +2.12573 -1.61314 i +2.18918 -1.40553 i +2.25264 -1.23197 i +2.31609 -1.08360 i +2.37955 -0.95436 i +2.44300 -0.83989 i +2.50645 -0.73701 i +2.56991 -0.64335 i +2.63336 -0.55704 i +2.69682 -0.47663 i +2.76027 -0.40094 i +2.82373 -0.32902 i +2.88718 -0.26005 i +2.95064 -0.19331 i +3.01409 -0.12820 i +3.07755 -0.06413 i +3.14100 -0.00059 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-x.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-x.gnuplot new file mode 100644 index 00000000000..0e57c0571ad --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-x.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-x.table"; set format "%.5f" +set samples 25; plot [x=0:4] x diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-x.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-x.table new file mode 100644 index 00000000000..3e745c11668 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgf-x.table @@ -0,0 +1,30 @@ + +# Curve 0 of 1, 25 points +# Curve title: "x" +# x y type +0.00000 0.00000 i +0.16667 0.16667 i +0.33333 0.33333 i +0.50000 0.50000 i +0.66667 0.66667 i +0.83333 0.83333 i +1.00000 1.00000 i +1.16667 1.16667 i +1.33333 1.33333 i +1.50000 1.50000 i +1.66667 1.66667 i +1.83333 1.83333 i +2.00000 2.00000 i +2.16667 2.16667 i +2.33333 2.33333 i +2.50000 2.50000 i +2.66667 2.66667 i +2.83333 2.83333 i +3.00000 3.00000 i +3.16667 3.16667 i +3.33333 3.33333 i +3.50000 3.50000 i +3.66667 3.66667 i +3.83333 3.83333 i +4.00000 4.00000 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfmanual-sine.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfmanual-sine.gnuplot new file mode 100644 index 00000000000..8e3f24b9172 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfmanual-sine.gnuplot @@ -0,0 +1,5 @@ +set terminal table +set output "pgfmanual-sine.table" +set format "%.5f" +set samples 20 +plot [x=0:10] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfmanual-sine.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfmanual-sine.table new file mode 100644 index 00000000000..9d5d248a561 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfmanual-sine.table @@ -0,0 +1,24 @@ +#Curve 0, 20 points +#x y type +0.00000 0.00000 i +0.52632 0.50235 i +1.05263 0.86873 i +1.57895 0.99997 i +2.10526 0.86054 i +2.63158 0.48819 i +3.15789 -0.01630 i +3.68421 -0.51638 i +4.21053 -0.87669 i +4.73684 -0.99970 i +5.26316 -0.85212 i +5.78947 -0.47390 i +6.31579 0.03260 i +6.84211 0.53027 i +7.36842 0.88441 i +7.89474 0.99917 i +8.42105 0.84348 i +8.94737 0.45948 i +9.47368 -0.04889 i +10.00000 -0.54402 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfplotgnuplot-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfplotgnuplot-example.gnuplot new file mode 100644 index 00000000000..ebac36dd234 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfplotgnuplot-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgfplotgnuplot-example.table"; set format "%.5f" +plot [x=0:3.5] x*sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfplotgnuplot-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfplotgnuplot-example.table new file mode 100644 index 00000000000..29942bca36a --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvipdfmx/en/plots/pgfplotgnuplot-example.table @@ -0,0 +1,105 @@ + +# Curve 0 of 1, 100 points +# Curve title: "x*sin(x)" +# x y type +0.00000 0.00000 i +0.03535 0.00125 i +0.07071 0.00500 i +0.10606 0.01123 i +0.14141 0.01993 i +0.17677 0.03108 i +0.21212 0.04466 i +0.24747 0.06062 i +0.28283 0.07893 i +0.31818 0.09954 i +0.35354 0.12240 i +0.38889 0.14745 i +0.42424 0.17463 i +0.45960 0.20387 i +0.49495 0.23509 i +0.53030 0.26822 i +0.56566 0.30318 i +0.60101 0.33986 i +0.63636 0.37817 i +0.67172 0.41803 i +0.70707 0.45932 i +0.74242 0.50194 i +0.77778 0.54577 i +0.81313 0.59069 i +0.84848 0.63660 i +0.88384 0.68337 i +0.91919 0.73086 i +0.95455 0.77896 i +0.98990 0.82753 i +1.02525 0.87643 i +1.06061 0.92554 i +1.09596 0.97471 i +1.13131 1.02381 i +1.16667 1.07269 i +1.20202 1.12121 i +1.23737 1.16923 i +1.27273 1.21661 i +1.30808 1.26320 i +1.34343 1.30886 i +1.37879 1.35345 i +1.41414 1.39682 i +1.44949 1.43884 i +1.48485 1.47937 i +1.52020 1.51826 i +1.55556 1.55537 i +1.59091 1.59059 i +1.62626 1.62376 i +1.66162 1.65477 i +1.69697 1.68348 i +1.73232 1.70977 i +1.76768 1.73353 i +1.80303 1.75463 i +1.83838 1.77296 i +1.87374 1.78841 i +1.90909 1.80089 i +1.94444 1.81028 i +1.97980 1.81650 i +2.01515 1.81946 i +2.05051 1.81906 i +2.08586 1.81524 i +2.12121 1.80792 i +2.15657 1.79704 i +2.19192 1.78252 i +2.22727 1.76433 i +2.26263 1.74240 i +2.29798 1.71671 i +2.33333 1.68720 i +2.36869 1.65386 i +2.40404 1.61667 i +2.43939 1.57560 i +2.47475 1.53066 i +2.51010 1.48184 i +2.54545 1.42915 i +2.58081 1.37260 i +2.61616 1.31223 i +2.65152 1.24805 i +2.68687 1.18011 i +2.72222 1.10845 i +2.75758 1.03312 i +2.79293 0.95418 i +2.82828 0.87170 i +2.86364 0.78576 i +2.89899 0.69642 i +2.93434 0.60380 i +2.96970 0.50797 i +3.00505 0.40904 i +3.04040 0.30713 i +3.07576 0.20235 i +3.11111 0.09482 i +3.14646 -0.01533 i +3.18182 -0.12796 i +3.21717 -0.24292 i +3.25253 -0.36007 i +3.28788 -0.47926 i +3.32323 -0.60032 i +3.35859 -0.72308 i +3.39394 -0.84739 i +3.42929 -0.97305 i +3.46465 -1.09990 i +3.50000 -1.22774 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/pgfmanual-test.tex b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/pgfmanual-test.tex new file mode 100644 index 00000000000..2cc03e5cd9a --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/pgfmanual-test.tex @@ -0,0 +1,23 @@ +% Copyright 2006 by Till Tantau +% +% This file may be distributed and/or modified +% +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Free Documentation License. +% +% See the file doc/generic/pgf/licenses/LICENSE for more details. + +\documentclass[a4paper]{ltxdoc} + + +% pgf version is defined in \pgfversion in file +% generic/pgf/utilities/pgfrcs.code.tex + +\input{../pgfmanual-dvips.cfg} +\input{../../text-en/pgfmanual-en-main-preamble.tex} + +\begin{document} + +\include{pgfmanual-en-tikz-animations} + +\end{document} diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-asymptotic-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-asymptotic-example.gnuplot new file mode 100644 index 00000000000..c99b87dbc89 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-asymptotic-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-asymptotic-example.table"; set format "%.5f" +set samples 200.0; set parametric; plot [t=0.4:1.5] [] [] (t*t*t)*sin(1/(t*t*t)),(t*t*t)*cos(1/(t*t*t)) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-asymptotic-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-asymptotic-example.table new file mode 100644 index 00000000000..173ab5e9c77 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-asymptotic-example.table @@ -0,0 +1,204 @@ +#Curve 0, 200 points +#x y type +0.00530 -0.06378 i +0.04363 -0.05043 i +0.06711 -0.01790 i +0.06896 0.02170 i +0.05014 0.05606 i +0.01712 0.07631 i +-0.02110 0.07849 i +-0.05579 0.06337 i +-0.08032 0.03512 i +-0.09097 -0.00029 i +-0.08696 -0.03664 i +-0.06987 -0.06850 i +-0.04284 -0.09192 i +-0.00982 -0.10460 i +0.02515 -0.10585 i +0.05841 -0.09629 i +0.08703 -0.07749 i +0.10892 -0.05162 i +0.12282 -0.02111 i +0.12828 0.01163 i +0.12547 0.04436 i +0.11507 0.07518 i +0.09810 0.10255 i +0.07579 0.12534 i +0.04948 0.14280 i +0.02048 0.15454 i +-0.00995 0.16043 i +-0.04065 0.16063 i +-0.07063 0.15545 i +-0.09905 0.14536 i +-0.12521 0.13092 i +-0.14860 0.11273 i +-0.16882 0.09143 i +-0.18562 0.06764 i +-0.19885 0.04197 i +-0.20848 0.01500 i +-0.21454 -0.01276 i +-0.21712 -0.04083 i +-0.21637 -0.06879 i +-0.21247 -0.09627 i +-0.20565 -0.12295 i +-0.19613 -0.14858 i +-0.18415 -0.17294 i +-0.16996 -0.19585 i +-0.15379 -0.21718 i +-0.13589 -0.23682 i +-0.11647 -0.25471 i +-0.09576 -0.27080 i +-0.07396 -0.28508 i +-0.05126 -0.29753 i +-0.02783 -0.30819 i +-0.00384 -0.31707 i +0.02057 -0.32421 i +0.04526 -0.32967 i +0.07011 -0.33350 i +0.09502 -0.33576 i +0.11989 -0.33651 i +0.14463 -0.33582 i +0.16917 -0.33376 i +0.19345 -0.33040 i +0.21741 -0.32580 i +0.24100 -0.32003 i +0.26418 -0.31315 i +0.28691 -0.30524 i +0.30918 -0.29634 i +0.33096 -0.28653 i +0.35222 -0.27585 i +0.37297 -0.26437 i +0.39318 -0.25213 i +0.41285 -0.23918 i +0.43197 -0.22557 i +0.45056 -0.21134 i +0.46860 -0.19654 i +0.48611 -0.18119 i +0.50309 -0.16535 i +0.51954 -0.14904 i +0.53547 -0.13229 i +0.55090 -0.11514 i +0.56582 -0.09761 i +0.58026 -0.07972 i +0.59422 -0.06150 i +0.60772 -0.04298 i +0.62076 -0.02416 i +0.63336 -0.00508 i +0.64554 0.01425 i +0.65729 0.03382 i +0.66864 0.05361 i +0.67960 0.07361 i +0.69018 0.09381 i +0.70039 0.11420 i +0.71024 0.13475 i +0.71975 0.15548 i +0.72892 0.17636 i +0.73778 0.19739 i +0.74632 0.21857 i +0.75456 0.23989 i +0.76251 0.26134 i +0.77018 0.28291 i +0.77759 0.30461 i +0.78473 0.32643 i +0.79162 0.34837 i +0.79826 0.37042 i +0.80468 0.39258 i +0.81087 0.41485 i +0.81684 0.43723 i +0.82261 0.45972 i +0.82817 0.48232 i +0.83354 0.50502 i +0.83872 0.52782 i +0.84372 0.55073 i +0.84855 0.57374 i +0.85321 0.59686 i +0.85772 0.62009 i +0.86206 0.64342 i +0.86626 0.66685 i +0.87032 0.69040 i +0.87423 0.71405 i +0.87801 0.73781 i +0.88167 0.76169 i +0.88520 0.78567 i +0.88861 0.80977 i +0.89191 0.83398 i +0.89510 0.85831 i +0.89818 0.88276 i +0.90115 0.90733 i +0.90403 0.93202 i +0.90682 0.95683 i +0.90951 0.98177 i +0.91211 1.00683 i +0.91463 1.03202 i +0.91707 1.05735 i +0.91942 1.08280 i +0.92171 1.10839 i +0.92391 1.13411 i +0.92605 1.15998 i +0.92812 1.18598 i +0.93012 1.21213 i +0.93205 1.23842 i +0.93393 1.26485 i +0.93575 1.29143 i +0.93751 1.31817 i +0.93921 1.34505 i +0.94086 1.37209 i +0.94246 1.39929 i +0.94401 1.42664 i +0.94552 1.45415 i +0.94697 1.48183 i +0.94838 1.50967 i +0.94975 1.53767 i +0.95108 1.56584 i +0.95236 1.59418 i +0.95361 1.62270 i +0.95482 1.65138 i +0.95600 1.68025 i +0.95713 1.70928 i +0.95824 1.73850 i +0.95931 1.76790 i +0.96035 1.79748 i +0.96136 1.82725 i +0.96234 1.85720 i +0.96329 1.88735 i +0.96422 1.91768 i +0.96511 1.94820 i +0.96598 1.97892 i +0.96683 2.00983 i +0.96765 2.04094 i +0.96845 2.07225 i +0.96922 2.10376 i +0.96998 2.13547 i +0.97071 2.16739 i +0.97142 2.19952 i +0.97211 2.23185 i +0.97278 2.26439 i +0.97344 2.29714 i +0.97407 2.33010 i +0.97469 2.36328 i +0.97529 2.39667 i +0.97588 2.43028 i +0.97644 2.46411 i +0.97700 2.49817 i +0.97754 2.53244 i +0.97806 2.56694 i +0.97857 2.60166 i +0.97906 2.63661 i +0.97955 2.67179 i +0.98001 2.70720 i +0.98047 2.74284 i +0.98092 2.77871 i +0.98135 2.81482 i +0.98177 2.85117 i +0.98218 2.88775 i +0.98258 2.92457 i +0.98297 2.96163 i +0.98335 2.99894 i +0.98372 3.03649 i +0.98408 3.07428 i +0.98443 3.11232 i +0.98477 3.15061 i +0.98511 3.18914 i +0.98543 3.22793 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-exp.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-exp.gnuplot new file mode 100644 index 00000000000..8109ea408c5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-exp.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-exp.table"; set format "%.5f" +set samples 25; plot [x=0:4] 0.05*exp(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-exp.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-exp.table new file mode 100644 index 00000000000..8e728570397 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-exp.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.05000 i +0.16667 0.05907 i +0.33333 0.06978 i +0.50000 0.08244 i +0.66667 0.09739 i +0.83333 0.11505 i +1.00000 0.13591 i +1.16667 0.16056 i +1.33333 0.18968 i +1.50000 0.22408 i +1.66667 0.26472 i +1.83333 0.31274 i +2.00000 0.36945 i +2.16667 0.43646 i +2.33333 0.51561 i +2.50000 0.60912 i +2.66667 0.71960 i +2.83333 0.85010 i +3.00000 1.00428 i +3.16667 1.18641 i +3.33333 1.40158 i +3.50000 1.65577 i +3.66667 1.95606 i +3.83333 2.31082 i +4.00000 2.72991 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-parametric-example-cut.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-parametric-example-cut.gnuplot new file mode 100644 index 00000000000..1f81f6a7b90 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-parametric-example-cut.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example-cut.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [0:1] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-parametric-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-parametric-example.gnuplot new file mode 100644 index 00000000000..ea9639bd782 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-parametric-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-parametric-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-parametric-example.table new file mode 100644 index 00000000000..de0c383ddde --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-parametric-example.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00186 3.14100 i +0.74672 2.78074 i +1.30987 2.26617 i +1.66651 1.66503 i +1.81387 1.04628 i +1.76998 0.47361 i +1.57050 -0.00047 i +1.26407 -0.33904 i +0.90663 -0.52368 i +0.55517 -0.55534 i +0.26171 -0.45339 i +0.06773 -0.25283 i +0.00000 -0.00000 i +0.06773 0.25283 i +0.26171 0.45339 i +0.55517 0.55534 i +0.90663 0.52368 i +1.26407 0.33904 i +1.57050 0.00047 i +1.76998 -0.47361 i +1.81387 -1.04628 i +1.66651 -1.66503 i +1.30987 -2.26617 i +0.74672 -2.78074 i +0.00186 -3.14100 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-sin.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-sin.gnuplot new file mode 100644 index 00000000000..48df575630c --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-sin.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-sin.table"; set format "%.5f" +set samples 25; plot [x=0:4] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-sin.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-sin.table new file mode 100644 index 00000000000..9ab8f2c8d56 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-sin.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.00000 i +0.16667 0.16590 i +0.33333 0.32719 i +0.50000 0.47943 i +0.66667 0.61837 i +0.83333 0.74018 i +1.00000 0.84147 i +1.16667 0.91944 i +1.33333 0.97194 i +1.50000 0.99749 i +1.66667 0.99541 i +1.83333 0.96573 i +2.00000 0.90930 i +2.16667 0.82766 i +2.33333 0.72309 i +2.50000 0.59847 i +2.66667 0.45727 i +2.83333 0.30340 i +3.00000 0.14112 i +3.16667 -0.02507 i +3.33333 -0.19057 i +3.50000 -0.35078 i +3.66667 -0.50128 i +3.83333 -0.63788 i +4.00000 -0.75680 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-tan-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-tan-example.gnuplot new file mode 100644 index 00000000000..0b0a1ad8ff3 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-tan-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-tan-example.table"; set format "%.5f" +set samples 100.0; plot [x=-3.141:3.141] [-3:3]tan(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-tan-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-tan-example.table new file mode 100644 index 00000000000..63beeda4b7a --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-tan-example.table @@ -0,0 +1,104 @@ + +#Curve 0 of 1, 100 points +#x y type +-3.14100 0.00059 i +-3.07755 0.06413 i +-3.01409 0.12820 i +-2.95064 0.19331 i +-2.88718 0.26005 i +-2.82373 0.32902 i +-2.76027 0.40094 i +-2.69682 0.47663 i +-2.63336 0.55704 i +-2.56991 0.64335 i +-2.50645 0.73701 i +-2.44300 0.83989 i +-2.37955 0.95436 i +-2.31609 1.08360 i +-2.25264 1.23197 i +-2.18918 1.40553 i +-2.12573 1.61314 i +-2.06227 1.86816 i +-1.99882 2.19188 i +-1.93536 2.62036 i +-1.87191 3.22003 o +-1.80845 4.12820 o +-1.74500 5.68222 o +-1.68155 8.99247 o +-1.61809 21.12830 o +-1.55464 -61.87594 o +-1.49118 -12.53398 o +-1.42773 -6.94188 o +-1.36427 -4.77302 o +-1.30082 -3.61357 o +-1.23736 -2.88713 i +-1.17391 -2.38590 i +-1.11045 -2.01664 i +-1.04700 -1.73126 i +-0.98355 -1.50245 i +-0.92009 -1.31351 i +-0.85664 -1.15368 i +-0.79318 -1.01569 i +-0.72973 -0.89443 i +-0.66627 -0.78621 i +-0.60282 -0.68828 i +-0.53936 -0.59856 i +-0.47591 -0.51542 i +-0.41245 -0.43755 i +-0.34900 -0.36390 i +-0.28555 -0.29357 i +-0.22209 -0.22582 i +-0.15864 -0.15998 i +-0.09518 -0.09547 i +-0.03173 -0.03174 i +0.03173 0.03174 i +0.09518 0.09547 i +0.15864 0.15998 i +0.22209 0.22582 i +0.28555 0.29357 i +0.34900 0.36390 i +0.41245 0.43755 i +0.47591 0.51542 i +0.53936 0.59856 i +0.60282 0.68828 i +0.66627 0.78621 i +0.72973 0.89443 i +0.79318 1.01569 i +0.85664 1.15368 i +0.92009 1.31351 i +0.98355 1.50245 i +1.04700 1.73126 i +1.11045 2.01664 i +1.17391 2.38590 i +1.23736 2.88713 i +1.30082 3.61357 o +1.36427 4.77302 o +1.42773 6.94188 o +1.49118 12.53398 o +1.55464 61.87594 o +1.61809 -21.12830 o +1.68155 -8.99247 o +1.74500 -5.68222 o +1.80845 -4.12820 o +1.87191 -3.22003 o +1.93536 -2.62036 i +1.99882 -2.19188 i +2.06227 -1.86816 i +2.12573 -1.61314 i +2.18918 -1.40553 i +2.25264 -1.23197 i +2.31609 -1.08360 i +2.37955 -0.95436 i +2.44300 -0.83989 i +2.50645 -0.73701 i +2.56991 -0.64335 i +2.63336 -0.55704 i +2.69682 -0.47663 i +2.76027 -0.40094 i +2.82373 -0.32902 i +2.88718 -0.26005 i +2.95064 -0.19331 i +3.01409 -0.12820 i +3.07755 -0.06413 i +3.14100 -0.00059 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-x.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-x.gnuplot new file mode 100644 index 00000000000..0e57c0571ad --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-x.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-x.table"; set format "%.5f" +set samples 25; plot [x=0:4] x diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-x.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-x.table new file mode 100644 index 00000000000..329b9fa56b5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgf-x.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.00000 i +0.16667 0.16667 i +0.33333 0.33333 i +0.50000 0.50000 i +0.66667 0.66667 i +0.83333 0.83333 i +1.00000 1.00000 i +1.16667 1.16667 i +1.33333 1.33333 i +1.50000 1.50000 i +1.66667 1.66667 i +1.83333 1.83333 i +2.00000 2.00000 i +2.16667 2.16667 i +2.33333 2.33333 i +2.50000 2.50000 i +2.66667 2.66667 i +2.83333 2.83333 i +3.00000 3.00000 i +3.16667 3.16667 i +3.33333 3.33333 i +3.50000 3.50000 i +3.66667 3.66667 i +3.83333 3.83333 i +4.00000 4.00000 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgfmanual-sine.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgfmanual-sine.gnuplot new file mode 100644 index 00000000000..8e3f24b9172 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgfmanual-sine.gnuplot @@ -0,0 +1,5 @@ +set terminal table +set output "pgfmanual-sine.table" +set format "%.5f" +set samples 20 +plot [x=0:10] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgfmanual-sine.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgfmanual-sine.table new file mode 100644 index 00000000000..9d5d248a561 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgfmanual-sine.table @@ -0,0 +1,24 @@ +#Curve 0, 20 points +#x y type +0.00000 0.00000 i +0.52632 0.50235 i +1.05263 0.86873 i +1.57895 0.99997 i +2.10526 0.86054 i +2.63158 0.48819 i +3.15789 -0.01630 i +3.68421 -0.51638 i +4.21053 -0.87669 i +4.73684 -0.99970 i +5.26316 -0.85212 i +5.78947 -0.47390 i +6.31579 0.03260 i +6.84211 0.53027 i +7.36842 0.88441 i +7.89474 0.99917 i +8.42105 0.84348 i +8.94737 0.45948 i +9.47368 -0.04889 i +10.00000 -0.54402 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgfplotgnuplot-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgfplotgnuplot-example.gnuplot new file mode 100644 index 00000000000..ebac36dd234 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgfplotgnuplot-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgfplotgnuplot-example.table"; set format "%.5f" +plot [x=0:3.5] x*sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgfplotgnuplot-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgfplotgnuplot-example.table new file mode 100644 index 00000000000..a4e517898a8 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvips/en/plots/pgfplotgnuplot-example.table @@ -0,0 +1,104 @@ +#Curve 0, 100 points +#x y type +0.00000 0.00000 i +0.03535 0.00125 i +0.07071 0.00500 i +0.10606 0.01123 i +0.14141 0.01993 i +0.17677 0.03108 i +0.21212 0.04466 i +0.24747 0.06062 i +0.28283 0.07893 i +0.31818 0.09954 i +0.35354 0.12240 i +0.38889 0.14745 i +0.42424 0.17463 i +0.45960 0.20387 i +0.49495 0.23509 i +0.53030 0.26822 i +0.56566 0.30318 i +0.60101 0.33986 i +0.63636 0.37817 i +0.67172 0.41803 i +0.70707 0.45932 i +0.74242 0.50194 i +0.77778 0.54577 i +0.81313 0.59069 i +0.84848 0.63660 i +0.88384 0.68337 i +0.91919 0.73086 i +0.95455 0.77896 i +0.98990 0.82753 i +1.02525 0.87643 i +1.06061 0.92554 i +1.09596 0.97471 i +1.13131 1.02381 i +1.16667 1.07269 i +1.20202 1.12121 i +1.23737 1.16923 i +1.27273 1.21661 i +1.30808 1.26320 i +1.34343 1.30886 i +1.37879 1.35345 i +1.41414 1.39682 i +1.44949 1.43884 i +1.48485 1.47937 i +1.52020 1.51826 i +1.55556 1.55537 i +1.59091 1.59059 i +1.62626 1.62376 i +1.66162 1.65477 i +1.69697 1.68348 i +1.73232 1.70977 i +1.76768 1.73353 i +1.80303 1.75463 i +1.83838 1.77296 i +1.87374 1.78841 i +1.90909 1.80089 i +1.94444 1.81028 i +1.97980 1.81650 i +2.01515 1.81946 i +2.05051 1.81906 i +2.08586 1.81524 i +2.12121 1.80792 i +2.15657 1.79704 i +2.19192 1.78252 i +2.22727 1.76433 i +2.26263 1.74240 i +2.29798 1.71671 i +2.33333 1.68720 i +2.36869 1.65386 i +2.40404 1.61667 i +2.43939 1.57560 i +2.47475 1.53066 i +2.51010 1.48184 i +2.54545 1.42915 i +2.58081 1.37260 i +2.61616 1.31223 i +2.65152 1.24805 i +2.68687 1.18011 i +2.72222 1.10845 i +2.75758 1.03312 i +2.79293 0.95418 i +2.82828 0.87170 i +2.86364 0.78576 i +2.89899 0.69642 i +2.93434 0.60380 i +2.96970 0.50797 i +3.00505 0.40904 i +3.04040 0.30713 i +3.07576 0.20235 i +3.11111 0.09482 i +3.14646 -0.01533 i +3.18182 -0.12796 i +3.21717 -0.24292 i +3.25253 -0.36007 i +3.28788 -0.47926 i +3.32323 -0.60032 i +3.35859 -0.72308 i +3.39394 -0.84739 i +3.42929 -0.97305 i +3.46465 -1.09990 i +3.50000 -1.22774 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/color.cfg b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/color.cfg new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/color.cfg diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-asymptotic-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-asymptotic-example.gnuplot new file mode 100644 index 00000000000..c99b87dbc89 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-asymptotic-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-asymptotic-example.table"; set format "%.5f" +set samples 200.0; set parametric; plot [t=0.4:1.5] [] [] (t*t*t)*sin(1/(t*t*t)),(t*t*t)*cos(1/(t*t*t)) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-exp.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-exp.gnuplot new file mode 100644 index 00000000000..8109ea408c5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-exp.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-exp.table"; set format "%.5f" +set samples 25; plot [x=0:4] 0.05*exp(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-parametric-example-cut.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-parametric-example-cut.gnuplot new file mode 100644 index 00000000000..1f81f6a7b90 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-parametric-example-cut.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example-cut.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [0:1] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-parametric-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-parametric-example.gnuplot new file mode 100644 index 00000000000..ea9639bd782 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-parametric-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-sin.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-sin.gnuplot new file mode 100644 index 00000000000..48df575630c --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-sin.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-sin.table"; set format "%.5f" +set samples 25; plot [x=0:4] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-tan-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-tan-example.gnuplot new file mode 100644 index 00000000000..0b0a1ad8ff3 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-tan-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-tan-example.table"; set format "%.5f" +set samples 100.0; plot [x=-3.141:3.141] [-3:3]tan(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-x.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-x.gnuplot new file mode 100644 index 00000000000..0e57c0571ad --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgf-x.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-x.table"; set format "%.5f" +set samples 25; plot [x=0:4] x diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgfplotgnuplot-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgfplotgnuplot-example.gnuplot new file mode 100644 index 00000000000..ebac36dd234 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/en/plots/pgfplotgnuplot-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgfplotgnuplot-example.table"; set format "%.5f" +plot [x=0:3.5] x*sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/pgfmanual-dvisvgm.cfg b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/pgfmanual-dvisvgm.cfg index 118da0bc8a4..d7b04c4ec75 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/pgfmanual-dvisvgm.cfg +++ b/Master/texmf-dist/doc/generic/pgf/version-for-dvisvgm/pgfmanual-dvisvgm.cfg @@ -159,7 +159,7 @@ % ignore } - \input{\jobname.toc}% + \IfFileExists{\jobname.toc}{\input{\jobname.toc}}{}% } {\catcode`\#=11 diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/pgfmanual-test.tex b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/pgfmanual-test.tex index 3afefe5c9e6..f2f2cfeaea3 100644 --- a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/pgfmanual-test.tex +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/pgfmanual-test.tex @@ -17,6 +17,6 @@ \begin{document} -\include{pgfmanual-en-tutorial-chains} +\include{pgfmanual-en-library-patterns} \end{document} diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-asymptotic-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-asymptotic-example.gnuplot new file mode 100644 index 00000000000..c99b87dbc89 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-asymptotic-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-asymptotic-example.table"; set format "%.5f" +set samples 200.0; set parametric; plot [t=0.4:1.5] [] [] (t*t*t)*sin(1/(t*t*t)),(t*t*t)*cos(1/(t*t*t)) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-asymptotic-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-asymptotic-example.table new file mode 100644 index 00000000000..98e1357c20b --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-asymptotic-example.table @@ -0,0 +1,205 @@ + +# Curve 0 of 1, 200 points +# Curve title: "(t*t*t)*sin(1/(t*t*t)),(t*t*t)*cos(1/(t*t*t))" +# x y type +0.00530 -0.06378 i +0.04363 -0.05043 i +0.06711 -0.01790 i +0.06896 0.02170 i +0.05014 0.05606 i +0.01712 0.07631 i +-0.02110 0.07849 i +-0.05579 0.06337 i +-0.08032 0.03512 i +-0.09097 -0.00029 i +-0.08696 -0.03664 i +-0.06987 -0.06850 i +-0.04284 -0.09192 i +-0.00982 -0.10460 i +0.02515 -0.10585 i +0.05841 -0.09629 i +0.08703 -0.07749 i +0.10892 -0.05162 i +0.12282 -0.02111 i +0.12828 0.01163 i +0.12547 0.04436 i +0.11507 0.07518 i +0.09810 0.10255 i +0.07579 0.12534 i +0.04948 0.14280 i +0.02048 0.15454 i +-0.00995 0.16043 i +-0.04065 0.16063 i +-0.07063 0.15545 i +-0.09905 0.14536 i +-0.12521 0.13092 i +-0.14860 0.11273 i +-0.16882 0.09143 i +-0.18562 0.06764 i +-0.19885 0.04197 i +-0.20848 0.01500 i +-0.21454 -0.01276 i +-0.21712 -0.04083 i +-0.21637 -0.06879 i +-0.21247 -0.09627 i +-0.20565 -0.12295 i +-0.19613 -0.14858 i +-0.18415 -0.17294 i +-0.16996 -0.19585 i +-0.15379 -0.21718 i +-0.13589 -0.23682 i +-0.11647 -0.25471 i +-0.09576 -0.27080 i +-0.07396 -0.28508 i +-0.05126 -0.29753 i +-0.02783 -0.30819 i +-0.00384 -0.31707 i +0.02057 -0.32421 i +0.04526 -0.32967 i +0.07011 -0.33350 i +0.09502 -0.33576 i +0.11989 -0.33651 i +0.14463 -0.33582 i +0.16917 -0.33376 i +0.19345 -0.33040 i +0.21741 -0.32580 i +0.24100 -0.32003 i +0.26418 -0.31315 i +0.28691 -0.30524 i +0.30918 -0.29634 i +0.33096 -0.28653 i +0.35222 -0.27585 i +0.37297 -0.26437 i +0.39318 -0.25213 i +0.41285 -0.23918 i +0.43197 -0.22557 i +0.45056 -0.21134 i +0.46860 -0.19654 i +0.48611 -0.18119 i +0.50309 -0.16535 i +0.51954 -0.14904 i +0.53547 -0.13229 i +0.55090 -0.11514 i +0.56582 -0.09761 i +0.58026 -0.07972 i +0.59422 -0.06150 i +0.60772 -0.04298 i +0.62076 -0.02416 i +0.63336 -0.00508 i +0.64554 0.01425 i +0.65729 0.03382 i +0.66864 0.05361 i +0.67960 0.07361 i +0.69018 0.09381 i +0.70039 0.11420 i +0.71024 0.13475 i +0.71975 0.15548 i +0.72892 0.17636 i +0.73778 0.19739 i +0.74632 0.21857 i +0.75456 0.23989 i +0.76251 0.26134 i +0.77018 0.28291 i +0.77759 0.30461 i +0.78473 0.32643 i +0.79162 0.34837 i +0.79826 0.37042 i +0.80468 0.39258 i +0.81087 0.41485 i +0.81684 0.43723 i +0.82261 0.45972 i +0.82817 0.48232 i +0.83354 0.50502 i +0.83872 0.52782 i +0.84372 0.55073 i +0.84855 0.57374 i +0.85321 0.59686 i +0.85772 0.62009 i +0.86206 0.64342 i +0.86626 0.66685 i +0.87032 0.69040 i +0.87423 0.71405 i +0.87801 0.73781 i +0.88167 0.76169 i +0.88520 0.78567 i +0.88861 0.80977 i +0.89191 0.83398 i +0.89510 0.85831 i +0.89818 0.88276 i +0.90115 0.90733 i +0.90403 0.93202 i +0.90682 0.95683 i +0.90951 0.98177 i +0.91211 1.00683 i +0.91463 1.03202 i +0.91707 1.05735 i +0.91942 1.08280 i +0.92171 1.10839 i +0.92391 1.13411 i +0.92605 1.15998 i +0.92812 1.18598 i +0.93012 1.21213 i +0.93205 1.23842 i +0.93393 1.26485 i +0.93575 1.29143 i +0.93751 1.31817 i +0.93921 1.34505 i +0.94086 1.37209 i +0.94246 1.39929 i +0.94401 1.42664 i +0.94552 1.45415 i +0.94697 1.48183 i +0.94838 1.50967 i +0.94975 1.53767 i +0.95108 1.56584 i +0.95236 1.59418 i +0.95361 1.62270 i +0.95482 1.65138 i +0.95600 1.68025 i +0.95713 1.70928 i +0.95824 1.73850 i +0.95931 1.76790 i +0.96035 1.79748 i +0.96136 1.82725 i +0.96234 1.85720 i +0.96329 1.88735 i +0.96422 1.91768 i +0.96511 1.94820 i +0.96598 1.97892 i +0.96683 2.00983 i +0.96765 2.04094 i +0.96845 2.07225 i +0.96922 2.10376 i +0.96998 2.13547 i +0.97071 2.16739 i +0.97142 2.19952 i +0.97211 2.23185 i +0.97278 2.26439 i +0.97344 2.29714 i +0.97407 2.33010 i +0.97469 2.36328 i +0.97529 2.39667 i +0.97588 2.43028 i +0.97644 2.46411 i +0.97700 2.49817 i +0.97754 2.53244 i +0.97806 2.56694 i +0.97857 2.60166 i +0.97906 2.63661 i +0.97955 2.67179 i +0.98001 2.70720 i +0.98047 2.74284 i +0.98092 2.77871 i +0.98135 2.81482 i +0.98177 2.85117 i +0.98218 2.88775 i +0.98258 2.92457 i +0.98297 2.96163 i +0.98335 2.99894 i +0.98372 3.03649 i +0.98408 3.07428 i +0.98443 3.11232 i +0.98477 3.15061 i +0.98511 3.18914 i +0.98543 3.22793 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-exp.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-exp.gnuplot new file mode 100644 index 00000000000..8109ea408c5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-exp.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-exp.table"; set format "%.5f" +set samples 25; plot [x=0:4] 0.05*exp(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-exp.table b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-exp.table new file mode 100644 index 00000000000..3b4004ac39e --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-exp.table @@ -0,0 +1,30 @@ + +# Curve 0 of 1, 25 points +# Curve title: "0.05*exp(x)" +# x y type +0.00000 0.05000 i +0.16667 0.05907 i +0.33333 0.06978 i +0.50000 0.08244 i +0.66667 0.09739 i +0.83333 0.11505 i +1.00000 0.13591 i +1.16667 0.16056 i +1.33333 0.18968 i +1.50000 0.22408 i +1.66667 0.26472 i +1.83333 0.31274 i +2.00000 0.36945 i +2.16667 0.43646 i +2.33333 0.51561 i +2.50000 0.60912 i +2.66667 0.71960 i +2.83333 0.85010 i +3.00000 1.00428 i +3.16667 1.18641 i +3.33333 1.40158 i +3.50000 1.65577 i +3.66667 1.95606 i +3.83333 2.31082 i +4.00000 2.72991 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-parametric-example-cut.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-parametric-example-cut.gnuplot new file mode 100644 index 00000000000..1f81f6a7b90 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-parametric-example-cut.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example-cut.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [0:1] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-parametric-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-parametric-example.gnuplot new file mode 100644 index 00000000000..ea9639bd782 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-parametric-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-parametric-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-parametric-example.table new file mode 100644 index 00000000000..3755e8c6d05 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-parametric-example.table @@ -0,0 +1,30 @@ + +# Curve 0 of 1, 25 points +# Curve title: "t*sin(t),t*cos(t)" +# x y type +0.00186 3.14100 i +0.74672 2.78074 i +1.30987 2.26617 i +1.66651 1.66503 i +1.81387 1.04628 i +1.76998 0.47361 i +1.57050 -0.00047 i +1.26407 -0.33904 i +0.90663 -0.52368 i +0.55517 -0.55534 i +0.26171 -0.45339 i +0.06773 -0.25283 i +0.00000 0.00000 i +0.06773 0.25283 i +0.26171 0.45339 i +0.55517 0.55534 i +0.90663 0.52368 i +1.26407 0.33904 i +1.57050 0.00047 i +1.76998 -0.47361 i +1.81387 -1.04628 i +1.66651 -1.66503 i +1.30987 -2.26617 i +0.74672 -2.78074 i +0.00186 -3.14100 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-sin.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-sin.gnuplot new file mode 100644 index 00000000000..48df575630c --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-sin.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-sin.table"; set format "%.5f" +set samples 25; plot [x=0:4] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-sin.table b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-sin.table new file mode 100644 index 00000000000..756bf7f0934 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-sin.table @@ -0,0 +1,30 @@ + +# Curve 0 of 1, 25 points +# Curve title: "sin(x)" +# x y type +0.00000 0.00000 i +0.16667 0.16590 i +0.33333 0.32719 i +0.50000 0.47943 i +0.66667 0.61837 i +0.83333 0.74018 i +1.00000 0.84147 i +1.16667 0.91944 i +1.33333 0.97194 i +1.50000 0.99749 i +1.66667 0.99541 i +1.83333 0.96573 i +2.00000 0.90930 i +2.16667 0.82766 i +2.33333 0.72309 i +2.50000 0.59847 i +2.66667 0.45727 i +2.83333 0.30340 i +3.00000 0.14112 i +3.16667 -0.02507 i +3.33333 -0.19057 i +3.50000 -0.35078 i +3.66667 -0.50128 i +3.83333 -0.63788 i +4.00000 -0.75680 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-tan-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-tan-example.gnuplot new file mode 100644 index 00000000000..0b0a1ad8ff3 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-tan-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-tan-example.table"; set format "%.5f" +set samples 100.0; plot [x=-3.141:3.141] [-3:3]tan(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-tan-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-tan-example.table new file mode 100644 index 00000000000..def4c602751 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-tan-example.table @@ -0,0 +1,105 @@ + +# Curve 0 of 1, 100 points +# Curve title: "tan(x)" +# x y type +-3.14100 0.00059 i +-3.07755 0.06413 i +-3.01409 0.12820 i +-2.95064 0.19331 i +-2.88718 0.26005 i +-2.82373 0.32902 i +-2.76027 0.40094 i +-2.69682 0.47663 i +-2.63336 0.55704 i +-2.56991 0.64335 i +-2.50645 0.73701 i +-2.44300 0.83989 i +-2.37955 0.95436 i +-2.31609 1.08360 i +-2.25264 1.23197 i +-2.18918 1.40553 i +-2.12573 1.61314 i +-2.06227 1.86816 i +-1.99882 2.19188 i +-1.93536 2.62036 i +-1.87191 3.22003 o +-1.80845 4.12820 o +-1.74500 5.68222 o +-1.68155 8.99247 o +-1.61809 21.12830 o +-1.55464 -61.87594 o +-1.49118 -12.53398 o +-1.42773 -6.94188 o +-1.36427 -4.77302 o +-1.30082 -3.61357 o +-1.23736 -2.88713 i +-1.17391 -2.38590 i +-1.11045 -2.01664 i +-1.04700 -1.73126 i +-0.98355 -1.50245 i +-0.92009 -1.31351 i +-0.85664 -1.15368 i +-0.79318 -1.01569 i +-0.72973 -0.89443 i +-0.66627 -0.78621 i +-0.60282 -0.68828 i +-0.53936 -0.59856 i +-0.47591 -0.51542 i +-0.41245 -0.43755 i +-0.34900 -0.36390 i +-0.28555 -0.29357 i +-0.22209 -0.22582 i +-0.15864 -0.15998 i +-0.09518 -0.09547 i +-0.03173 -0.03174 i +0.03173 0.03174 i +0.09518 0.09547 i +0.15864 0.15998 i +0.22209 0.22582 i +0.28555 0.29357 i +0.34900 0.36390 i +0.41245 0.43755 i +0.47591 0.51542 i +0.53936 0.59856 i +0.60282 0.68828 i +0.66627 0.78621 i +0.72973 0.89443 i +0.79318 1.01569 i +0.85664 1.15368 i +0.92009 1.31351 i +0.98355 1.50245 i +1.04700 1.73126 i +1.11045 2.01664 i +1.17391 2.38590 i +1.23736 2.88713 i +1.30082 3.61357 o +1.36427 4.77302 o +1.42773 6.94188 o +1.49118 12.53398 o +1.55464 61.87594 o +1.61809 -21.12830 o +1.68155 -8.99247 o +1.74500 -5.68222 o +1.80845 -4.12820 o +1.87191 -3.22003 o +1.93536 -2.62036 i +1.99882 -2.19188 i +2.06227 -1.86816 i +2.12573 -1.61314 i +2.18918 -1.40553 i +2.25264 -1.23197 i +2.31609 -1.08360 i +2.37955 -0.95436 i +2.44300 -0.83989 i +2.50645 -0.73701 i +2.56991 -0.64335 i +2.63336 -0.55704 i +2.69682 -0.47663 i +2.76027 -0.40094 i +2.82373 -0.32902 i +2.88718 -0.26005 i +2.95064 -0.19331 i +3.01409 -0.12820 i +3.07755 -0.06413 i +3.14100 -0.00059 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-x.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-x.gnuplot new file mode 100644 index 00000000000..0e57c0571ad --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-x.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-x.table"; set format "%.5f" +set samples 25; plot [x=0:4] x diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-x.table b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-x.table new file mode 100644 index 00000000000..3e745c11668 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgf-x.table @@ -0,0 +1,30 @@ + +# Curve 0 of 1, 25 points +# Curve title: "x" +# x y type +0.00000 0.00000 i +0.16667 0.16667 i +0.33333 0.33333 i +0.50000 0.50000 i +0.66667 0.66667 i +0.83333 0.83333 i +1.00000 1.00000 i +1.16667 1.16667 i +1.33333 1.33333 i +1.50000 1.50000 i +1.66667 1.66667 i +1.83333 1.83333 i +2.00000 2.00000 i +2.16667 2.16667 i +2.33333 2.33333 i +2.50000 2.50000 i +2.66667 2.66667 i +2.83333 2.83333 i +3.00000 3.00000 i +3.16667 3.16667 i +3.33333 3.33333 i +3.50000 3.50000 i +3.66667 3.66667 i +3.83333 3.83333 i +4.00000 4.00000 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgfplotgnuplot-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgfplotgnuplot-example.gnuplot new file mode 100644 index 00000000000..ebac36dd234 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgfplotgnuplot-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgfplotgnuplot-example.table"; set format "%.5f" +plot [x=0:3.5] x*sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgfplotgnuplot-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgfplotgnuplot-example.table new file mode 100644 index 00000000000..29942bca36a --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-luatex/en/plots/pgfplotgnuplot-example.table @@ -0,0 +1,105 @@ + +# Curve 0 of 1, 100 points +# Curve title: "x*sin(x)" +# x y type +0.00000 0.00000 i +0.03535 0.00125 i +0.07071 0.00500 i +0.10606 0.01123 i +0.14141 0.01993 i +0.17677 0.03108 i +0.21212 0.04466 i +0.24747 0.06062 i +0.28283 0.07893 i +0.31818 0.09954 i +0.35354 0.12240 i +0.38889 0.14745 i +0.42424 0.17463 i +0.45960 0.20387 i +0.49495 0.23509 i +0.53030 0.26822 i +0.56566 0.30318 i +0.60101 0.33986 i +0.63636 0.37817 i +0.67172 0.41803 i +0.70707 0.45932 i +0.74242 0.50194 i +0.77778 0.54577 i +0.81313 0.59069 i +0.84848 0.63660 i +0.88384 0.68337 i +0.91919 0.73086 i +0.95455 0.77896 i +0.98990 0.82753 i +1.02525 0.87643 i +1.06061 0.92554 i +1.09596 0.97471 i +1.13131 1.02381 i +1.16667 1.07269 i +1.20202 1.12121 i +1.23737 1.16923 i +1.27273 1.21661 i +1.30808 1.26320 i +1.34343 1.30886 i +1.37879 1.35345 i +1.41414 1.39682 i +1.44949 1.43884 i +1.48485 1.47937 i +1.52020 1.51826 i +1.55556 1.55537 i +1.59091 1.59059 i +1.62626 1.62376 i +1.66162 1.65477 i +1.69697 1.68348 i +1.73232 1.70977 i +1.76768 1.73353 i +1.80303 1.75463 i +1.83838 1.77296 i +1.87374 1.78841 i +1.90909 1.80089 i +1.94444 1.81028 i +1.97980 1.81650 i +2.01515 1.81946 i +2.05051 1.81906 i +2.08586 1.81524 i +2.12121 1.80792 i +2.15657 1.79704 i +2.19192 1.78252 i +2.22727 1.76433 i +2.26263 1.74240 i +2.29798 1.71671 i +2.33333 1.68720 i +2.36869 1.65386 i +2.40404 1.61667 i +2.43939 1.57560 i +2.47475 1.53066 i +2.51010 1.48184 i +2.54545 1.42915 i +2.58081 1.37260 i +2.61616 1.31223 i +2.65152 1.24805 i +2.68687 1.18011 i +2.72222 1.10845 i +2.75758 1.03312 i +2.79293 0.95418 i +2.82828 0.87170 i +2.86364 0.78576 i +2.89899 0.69642 i +2.93434 0.60380 i +2.96970 0.50797 i +3.00505 0.40904 i +3.04040 0.30713 i +3.07576 0.20235 i +3.11111 0.09482 i +3.14646 -0.01533 i +3.18182 -0.12796 i +3.21717 -0.24292 i +3.25253 -0.36007 i +3.28788 -0.47926 i +3.32323 -0.60032 i +3.35859 -0.72308 i +3.39394 -0.84739 i +3.42929 -0.97305 i +3.46465 -1.09990 i +3.50000 -1.22774 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-asymptotic-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-asymptotic-example.gnuplot new file mode 100644 index 00000000000..c99b87dbc89 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-asymptotic-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-asymptotic-example.table"; set format "%.5f" +set samples 200.0; set parametric; plot [t=0.4:1.5] [] [] (t*t*t)*sin(1/(t*t*t)),(t*t*t)*cos(1/(t*t*t)) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-asymptotic-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-asymptotic-example.table new file mode 100644 index 00000000000..173ab5e9c77 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-asymptotic-example.table @@ -0,0 +1,204 @@ +#Curve 0, 200 points +#x y type +0.00530 -0.06378 i +0.04363 -0.05043 i +0.06711 -0.01790 i +0.06896 0.02170 i +0.05014 0.05606 i +0.01712 0.07631 i +-0.02110 0.07849 i +-0.05579 0.06337 i +-0.08032 0.03512 i +-0.09097 -0.00029 i +-0.08696 -0.03664 i +-0.06987 -0.06850 i +-0.04284 -0.09192 i +-0.00982 -0.10460 i +0.02515 -0.10585 i +0.05841 -0.09629 i +0.08703 -0.07749 i +0.10892 -0.05162 i +0.12282 -0.02111 i +0.12828 0.01163 i +0.12547 0.04436 i +0.11507 0.07518 i +0.09810 0.10255 i +0.07579 0.12534 i +0.04948 0.14280 i +0.02048 0.15454 i +-0.00995 0.16043 i +-0.04065 0.16063 i +-0.07063 0.15545 i +-0.09905 0.14536 i +-0.12521 0.13092 i +-0.14860 0.11273 i +-0.16882 0.09143 i +-0.18562 0.06764 i +-0.19885 0.04197 i +-0.20848 0.01500 i +-0.21454 -0.01276 i +-0.21712 -0.04083 i +-0.21637 -0.06879 i +-0.21247 -0.09627 i +-0.20565 -0.12295 i +-0.19613 -0.14858 i +-0.18415 -0.17294 i +-0.16996 -0.19585 i +-0.15379 -0.21718 i +-0.13589 -0.23682 i +-0.11647 -0.25471 i +-0.09576 -0.27080 i +-0.07396 -0.28508 i +-0.05126 -0.29753 i +-0.02783 -0.30819 i +-0.00384 -0.31707 i +0.02057 -0.32421 i +0.04526 -0.32967 i +0.07011 -0.33350 i +0.09502 -0.33576 i +0.11989 -0.33651 i +0.14463 -0.33582 i +0.16917 -0.33376 i +0.19345 -0.33040 i +0.21741 -0.32580 i +0.24100 -0.32003 i +0.26418 -0.31315 i +0.28691 -0.30524 i +0.30918 -0.29634 i +0.33096 -0.28653 i +0.35222 -0.27585 i +0.37297 -0.26437 i +0.39318 -0.25213 i +0.41285 -0.23918 i +0.43197 -0.22557 i +0.45056 -0.21134 i +0.46860 -0.19654 i +0.48611 -0.18119 i +0.50309 -0.16535 i +0.51954 -0.14904 i +0.53547 -0.13229 i +0.55090 -0.11514 i +0.56582 -0.09761 i +0.58026 -0.07972 i +0.59422 -0.06150 i +0.60772 -0.04298 i +0.62076 -0.02416 i +0.63336 -0.00508 i +0.64554 0.01425 i +0.65729 0.03382 i +0.66864 0.05361 i +0.67960 0.07361 i +0.69018 0.09381 i +0.70039 0.11420 i +0.71024 0.13475 i +0.71975 0.15548 i +0.72892 0.17636 i +0.73778 0.19739 i +0.74632 0.21857 i +0.75456 0.23989 i +0.76251 0.26134 i +0.77018 0.28291 i +0.77759 0.30461 i +0.78473 0.32643 i +0.79162 0.34837 i +0.79826 0.37042 i +0.80468 0.39258 i +0.81087 0.41485 i +0.81684 0.43723 i +0.82261 0.45972 i +0.82817 0.48232 i +0.83354 0.50502 i +0.83872 0.52782 i +0.84372 0.55073 i +0.84855 0.57374 i +0.85321 0.59686 i +0.85772 0.62009 i +0.86206 0.64342 i +0.86626 0.66685 i +0.87032 0.69040 i +0.87423 0.71405 i +0.87801 0.73781 i +0.88167 0.76169 i +0.88520 0.78567 i +0.88861 0.80977 i +0.89191 0.83398 i +0.89510 0.85831 i +0.89818 0.88276 i +0.90115 0.90733 i +0.90403 0.93202 i +0.90682 0.95683 i +0.90951 0.98177 i +0.91211 1.00683 i +0.91463 1.03202 i +0.91707 1.05735 i +0.91942 1.08280 i +0.92171 1.10839 i +0.92391 1.13411 i +0.92605 1.15998 i +0.92812 1.18598 i +0.93012 1.21213 i +0.93205 1.23842 i +0.93393 1.26485 i +0.93575 1.29143 i +0.93751 1.31817 i +0.93921 1.34505 i +0.94086 1.37209 i +0.94246 1.39929 i +0.94401 1.42664 i +0.94552 1.45415 i +0.94697 1.48183 i +0.94838 1.50967 i +0.94975 1.53767 i +0.95108 1.56584 i +0.95236 1.59418 i +0.95361 1.62270 i +0.95482 1.65138 i +0.95600 1.68025 i +0.95713 1.70928 i +0.95824 1.73850 i +0.95931 1.76790 i +0.96035 1.79748 i +0.96136 1.82725 i +0.96234 1.85720 i +0.96329 1.88735 i +0.96422 1.91768 i +0.96511 1.94820 i +0.96598 1.97892 i +0.96683 2.00983 i +0.96765 2.04094 i +0.96845 2.07225 i +0.96922 2.10376 i +0.96998 2.13547 i +0.97071 2.16739 i +0.97142 2.19952 i +0.97211 2.23185 i +0.97278 2.26439 i +0.97344 2.29714 i +0.97407 2.33010 i +0.97469 2.36328 i +0.97529 2.39667 i +0.97588 2.43028 i +0.97644 2.46411 i +0.97700 2.49817 i +0.97754 2.53244 i +0.97806 2.56694 i +0.97857 2.60166 i +0.97906 2.63661 i +0.97955 2.67179 i +0.98001 2.70720 i +0.98047 2.74284 i +0.98092 2.77871 i +0.98135 2.81482 i +0.98177 2.85117 i +0.98218 2.88775 i +0.98258 2.92457 i +0.98297 2.96163 i +0.98335 2.99894 i +0.98372 3.03649 i +0.98408 3.07428 i +0.98443 3.11232 i +0.98477 3.15061 i +0.98511 3.18914 i +0.98543 3.22793 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-exp.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-exp.gnuplot new file mode 100644 index 00000000000..8109ea408c5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-exp.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-exp.table"; set format "%.5f" +set samples 25; plot [x=0:4] 0.05*exp(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-exp.table b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-exp.table new file mode 100644 index 00000000000..8e728570397 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-exp.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.05000 i +0.16667 0.05907 i +0.33333 0.06978 i +0.50000 0.08244 i +0.66667 0.09739 i +0.83333 0.11505 i +1.00000 0.13591 i +1.16667 0.16056 i +1.33333 0.18968 i +1.50000 0.22408 i +1.66667 0.26472 i +1.83333 0.31274 i +2.00000 0.36945 i +2.16667 0.43646 i +2.33333 0.51561 i +2.50000 0.60912 i +2.66667 0.71960 i +2.83333 0.85010 i +3.00000 1.00428 i +3.16667 1.18641 i +3.33333 1.40158 i +3.50000 1.65577 i +3.66667 1.95606 i +3.83333 2.31082 i +4.00000 2.72991 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-parametric-example-cut.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-parametric-example-cut.gnuplot new file mode 100644 index 00000000000..1f81f6a7b90 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-parametric-example-cut.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example-cut.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [0:1] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-parametric-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-parametric-example.gnuplot new file mode 100644 index 00000000000..ea9639bd782 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-parametric-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-parametric-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-parametric-example.table new file mode 100644 index 00000000000..de0c383ddde --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-parametric-example.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00186 3.14100 i +0.74672 2.78074 i +1.30987 2.26617 i +1.66651 1.66503 i +1.81387 1.04628 i +1.76998 0.47361 i +1.57050 -0.00047 i +1.26407 -0.33904 i +0.90663 -0.52368 i +0.55517 -0.55534 i +0.26171 -0.45339 i +0.06773 -0.25283 i +0.00000 -0.00000 i +0.06773 0.25283 i +0.26171 0.45339 i +0.55517 0.55534 i +0.90663 0.52368 i +1.26407 0.33904 i +1.57050 0.00047 i +1.76998 -0.47361 i +1.81387 -1.04628 i +1.66651 -1.66503 i +1.30987 -2.26617 i +0.74672 -2.78074 i +0.00186 -3.14100 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-sin.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-sin.gnuplot new file mode 100644 index 00000000000..48df575630c --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-sin.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-sin.table"; set format "%.5f" +set samples 25; plot [x=0:4] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-sin.table b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-sin.table new file mode 100644 index 00000000000..9ab8f2c8d56 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-sin.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.00000 i +0.16667 0.16590 i +0.33333 0.32719 i +0.50000 0.47943 i +0.66667 0.61837 i +0.83333 0.74018 i +1.00000 0.84147 i +1.16667 0.91944 i +1.33333 0.97194 i +1.50000 0.99749 i +1.66667 0.99541 i +1.83333 0.96573 i +2.00000 0.90930 i +2.16667 0.82766 i +2.33333 0.72309 i +2.50000 0.59847 i +2.66667 0.45727 i +2.83333 0.30340 i +3.00000 0.14112 i +3.16667 -0.02507 i +3.33333 -0.19057 i +3.50000 -0.35078 i +3.66667 -0.50128 i +3.83333 -0.63788 i +4.00000 -0.75680 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-tan-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-tan-example.gnuplot new file mode 100644 index 00000000000..0b0a1ad8ff3 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-tan-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-tan-example.table"; set format "%.5f" +set samples 100.0; plot [x=-3.141:3.141] [-3:3]tan(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-tan-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-tan-example.table new file mode 100644 index 00000000000..63beeda4b7a --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-tan-example.table @@ -0,0 +1,104 @@ + +#Curve 0 of 1, 100 points +#x y type +-3.14100 0.00059 i +-3.07755 0.06413 i +-3.01409 0.12820 i +-2.95064 0.19331 i +-2.88718 0.26005 i +-2.82373 0.32902 i +-2.76027 0.40094 i +-2.69682 0.47663 i +-2.63336 0.55704 i +-2.56991 0.64335 i +-2.50645 0.73701 i +-2.44300 0.83989 i +-2.37955 0.95436 i +-2.31609 1.08360 i +-2.25264 1.23197 i +-2.18918 1.40553 i +-2.12573 1.61314 i +-2.06227 1.86816 i +-1.99882 2.19188 i +-1.93536 2.62036 i +-1.87191 3.22003 o +-1.80845 4.12820 o +-1.74500 5.68222 o +-1.68155 8.99247 o +-1.61809 21.12830 o +-1.55464 -61.87594 o +-1.49118 -12.53398 o +-1.42773 -6.94188 o +-1.36427 -4.77302 o +-1.30082 -3.61357 o +-1.23736 -2.88713 i +-1.17391 -2.38590 i +-1.11045 -2.01664 i +-1.04700 -1.73126 i +-0.98355 -1.50245 i +-0.92009 -1.31351 i +-0.85664 -1.15368 i +-0.79318 -1.01569 i +-0.72973 -0.89443 i +-0.66627 -0.78621 i +-0.60282 -0.68828 i +-0.53936 -0.59856 i +-0.47591 -0.51542 i +-0.41245 -0.43755 i +-0.34900 -0.36390 i +-0.28555 -0.29357 i +-0.22209 -0.22582 i +-0.15864 -0.15998 i +-0.09518 -0.09547 i +-0.03173 -0.03174 i +0.03173 0.03174 i +0.09518 0.09547 i +0.15864 0.15998 i +0.22209 0.22582 i +0.28555 0.29357 i +0.34900 0.36390 i +0.41245 0.43755 i +0.47591 0.51542 i +0.53936 0.59856 i +0.60282 0.68828 i +0.66627 0.78621 i +0.72973 0.89443 i +0.79318 1.01569 i +0.85664 1.15368 i +0.92009 1.31351 i +0.98355 1.50245 i +1.04700 1.73126 i +1.11045 2.01664 i +1.17391 2.38590 i +1.23736 2.88713 i +1.30082 3.61357 o +1.36427 4.77302 o +1.42773 6.94188 o +1.49118 12.53398 o +1.55464 61.87594 o +1.61809 -21.12830 o +1.68155 -8.99247 o +1.74500 -5.68222 o +1.80845 -4.12820 o +1.87191 -3.22003 o +1.93536 -2.62036 i +1.99882 -2.19188 i +2.06227 -1.86816 i +2.12573 -1.61314 i +2.18918 -1.40553 i +2.25264 -1.23197 i +2.31609 -1.08360 i +2.37955 -0.95436 i +2.44300 -0.83989 i +2.50645 -0.73701 i +2.56991 -0.64335 i +2.63336 -0.55704 i +2.69682 -0.47663 i +2.76027 -0.40094 i +2.82373 -0.32902 i +2.88718 -0.26005 i +2.95064 -0.19331 i +3.01409 -0.12820 i +3.07755 -0.06413 i +3.14100 -0.00059 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-x.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-x.gnuplot new file mode 100644 index 00000000000..0e57c0571ad --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-x.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-x.table"; set format "%.5f" +set samples 25; plot [x=0:4] x diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-x.table b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-x.table new file mode 100644 index 00000000000..329b9fa56b5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgf-x.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.00000 i +0.16667 0.16667 i +0.33333 0.33333 i +0.50000 0.50000 i +0.66667 0.66667 i +0.83333 0.83333 i +1.00000 1.00000 i +1.16667 1.16667 i +1.33333 1.33333 i +1.50000 1.50000 i +1.66667 1.66667 i +1.83333 1.83333 i +2.00000 2.00000 i +2.16667 2.16667 i +2.33333 2.33333 i +2.50000 2.50000 i +2.66667 2.66667 i +2.83333 2.83333 i +3.00000 3.00000 i +3.16667 3.16667 i +3.33333 3.33333 i +3.50000 3.50000 i +3.66667 3.66667 i +3.83333 3.83333 i +4.00000 4.00000 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgfmanual-sine.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgfmanual-sine.gnuplot new file mode 100644 index 00000000000..8e3f24b9172 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgfmanual-sine.gnuplot @@ -0,0 +1,5 @@ +set terminal table +set output "pgfmanual-sine.table" +set format "%.5f" +set samples 20 +plot [x=0:10] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgfmanual-sine.table b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgfmanual-sine.table new file mode 100644 index 00000000000..9d5d248a561 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgfmanual-sine.table @@ -0,0 +1,24 @@ +#Curve 0, 20 points +#x y type +0.00000 0.00000 i +0.52632 0.50235 i +1.05263 0.86873 i +1.57895 0.99997 i +2.10526 0.86054 i +2.63158 0.48819 i +3.15789 -0.01630 i +3.68421 -0.51638 i +4.21053 -0.87669 i +4.73684 -0.99970 i +5.26316 -0.85212 i +5.78947 -0.47390 i +6.31579 0.03260 i +6.84211 0.53027 i +7.36842 0.88441 i +7.89474 0.99917 i +8.42105 0.84348 i +8.94737 0.45948 i +9.47368 -0.04889 i +10.00000 -0.54402 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgfplotgnuplot-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgfplotgnuplot-example.gnuplot new file mode 100644 index 00000000000..ebac36dd234 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgfplotgnuplot-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgfplotgnuplot-example.table"; set format "%.5f" +plot [x=0:3.5] x*sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgfplotgnuplot-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgfplotgnuplot-example.table new file mode 100644 index 00000000000..a4e517898a8 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-pdftex/en/plots/pgfplotgnuplot-example.table @@ -0,0 +1,104 @@ +#Curve 0, 100 points +#x y type +0.00000 0.00000 i +0.03535 0.00125 i +0.07071 0.00500 i +0.10606 0.01123 i +0.14141 0.01993 i +0.17677 0.03108 i +0.21212 0.04466 i +0.24747 0.06062 i +0.28283 0.07893 i +0.31818 0.09954 i +0.35354 0.12240 i +0.38889 0.14745 i +0.42424 0.17463 i +0.45960 0.20387 i +0.49495 0.23509 i +0.53030 0.26822 i +0.56566 0.30318 i +0.60101 0.33986 i +0.63636 0.37817 i +0.67172 0.41803 i +0.70707 0.45932 i +0.74242 0.50194 i +0.77778 0.54577 i +0.81313 0.59069 i +0.84848 0.63660 i +0.88384 0.68337 i +0.91919 0.73086 i +0.95455 0.77896 i +0.98990 0.82753 i +1.02525 0.87643 i +1.06061 0.92554 i +1.09596 0.97471 i +1.13131 1.02381 i +1.16667 1.07269 i +1.20202 1.12121 i +1.23737 1.16923 i +1.27273 1.21661 i +1.30808 1.26320 i +1.34343 1.30886 i +1.37879 1.35345 i +1.41414 1.39682 i +1.44949 1.43884 i +1.48485 1.47937 i +1.52020 1.51826 i +1.55556 1.55537 i +1.59091 1.59059 i +1.62626 1.62376 i +1.66162 1.65477 i +1.69697 1.68348 i +1.73232 1.70977 i +1.76768 1.73353 i +1.80303 1.75463 i +1.83838 1.77296 i +1.87374 1.78841 i +1.90909 1.80089 i +1.94444 1.81028 i +1.97980 1.81650 i +2.01515 1.81946 i +2.05051 1.81906 i +2.08586 1.81524 i +2.12121 1.80792 i +2.15657 1.79704 i +2.19192 1.78252 i +2.22727 1.76433 i +2.26263 1.74240 i +2.29798 1.71671 i +2.33333 1.68720 i +2.36869 1.65386 i +2.40404 1.61667 i +2.43939 1.57560 i +2.47475 1.53066 i +2.51010 1.48184 i +2.54545 1.42915 i +2.58081 1.37260 i +2.61616 1.31223 i +2.65152 1.24805 i +2.68687 1.18011 i +2.72222 1.10845 i +2.75758 1.03312 i +2.79293 0.95418 i +2.82828 0.87170 i +2.86364 0.78576 i +2.89899 0.69642 i +2.93434 0.60380 i +2.96970 0.50797 i +3.00505 0.40904 i +3.04040 0.30713 i +3.07576 0.20235 i +3.11111 0.09482 i +3.14646 -0.01533 i +3.18182 -0.12796 i +3.21717 -0.24292 i +3.25253 -0.36007 i +3.28788 -0.47926 i +3.32323 -0.60032 i +3.35859 -0.72308 i +3.39394 -0.84739 i +3.42929 -0.97305 i +3.46465 -1.09990 i +3.50000 -1.22774 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-asymptotic-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-asymptotic-example.gnuplot new file mode 100644 index 00000000000..4c854afda9f --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-asymptotic-example.gnuplot @@ -0,0 +1,2 @@ +set terminal table; set output "plots/pgf-asymptotic-example.table"; set format "%.5f" +set samples 200; set parametric; plot [t=0.4:1.5] (t*t*t)*sin(1/(t*t*t)),(t*t*t)*cos(1/(t*t*t)) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-asymptotic-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-asymptotic-example.table new file mode 100644 index 00000000000..173ab5e9c77 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-asymptotic-example.table @@ -0,0 +1,204 @@ +#Curve 0, 200 points +#x y type +0.00530 -0.06378 i +0.04363 -0.05043 i +0.06711 -0.01790 i +0.06896 0.02170 i +0.05014 0.05606 i +0.01712 0.07631 i +-0.02110 0.07849 i +-0.05579 0.06337 i +-0.08032 0.03512 i +-0.09097 -0.00029 i +-0.08696 -0.03664 i +-0.06987 -0.06850 i +-0.04284 -0.09192 i +-0.00982 -0.10460 i +0.02515 -0.10585 i +0.05841 -0.09629 i +0.08703 -0.07749 i +0.10892 -0.05162 i +0.12282 -0.02111 i +0.12828 0.01163 i +0.12547 0.04436 i +0.11507 0.07518 i +0.09810 0.10255 i +0.07579 0.12534 i +0.04948 0.14280 i +0.02048 0.15454 i +-0.00995 0.16043 i +-0.04065 0.16063 i +-0.07063 0.15545 i +-0.09905 0.14536 i +-0.12521 0.13092 i +-0.14860 0.11273 i +-0.16882 0.09143 i +-0.18562 0.06764 i +-0.19885 0.04197 i +-0.20848 0.01500 i +-0.21454 -0.01276 i +-0.21712 -0.04083 i +-0.21637 -0.06879 i +-0.21247 -0.09627 i +-0.20565 -0.12295 i +-0.19613 -0.14858 i +-0.18415 -0.17294 i +-0.16996 -0.19585 i +-0.15379 -0.21718 i +-0.13589 -0.23682 i +-0.11647 -0.25471 i +-0.09576 -0.27080 i +-0.07396 -0.28508 i +-0.05126 -0.29753 i +-0.02783 -0.30819 i +-0.00384 -0.31707 i +0.02057 -0.32421 i +0.04526 -0.32967 i +0.07011 -0.33350 i +0.09502 -0.33576 i +0.11989 -0.33651 i +0.14463 -0.33582 i +0.16917 -0.33376 i +0.19345 -0.33040 i +0.21741 -0.32580 i +0.24100 -0.32003 i +0.26418 -0.31315 i +0.28691 -0.30524 i +0.30918 -0.29634 i +0.33096 -0.28653 i +0.35222 -0.27585 i +0.37297 -0.26437 i +0.39318 -0.25213 i +0.41285 -0.23918 i +0.43197 -0.22557 i +0.45056 -0.21134 i +0.46860 -0.19654 i +0.48611 -0.18119 i +0.50309 -0.16535 i +0.51954 -0.14904 i +0.53547 -0.13229 i +0.55090 -0.11514 i +0.56582 -0.09761 i +0.58026 -0.07972 i +0.59422 -0.06150 i +0.60772 -0.04298 i +0.62076 -0.02416 i +0.63336 -0.00508 i +0.64554 0.01425 i +0.65729 0.03382 i +0.66864 0.05361 i +0.67960 0.07361 i +0.69018 0.09381 i +0.70039 0.11420 i +0.71024 0.13475 i +0.71975 0.15548 i +0.72892 0.17636 i +0.73778 0.19739 i +0.74632 0.21857 i +0.75456 0.23989 i +0.76251 0.26134 i +0.77018 0.28291 i +0.77759 0.30461 i +0.78473 0.32643 i +0.79162 0.34837 i +0.79826 0.37042 i +0.80468 0.39258 i +0.81087 0.41485 i +0.81684 0.43723 i +0.82261 0.45972 i +0.82817 0.48232 i +0.83354 0.50502 i +0.83872 0.52782 i +0.84372 0.55073 i +0.84855 0.57374 i +0.85321 0.59686 i +0.85772 0.62009 i +0.86206 0.64342 i +0.86626 0.66685 i +0.87032 0.69040 i +0.87423 0.71405 i +0.87801 0.73781 i +0.88167 0.76169 i +0.88520 0.78567 i +0.88861 0.80977 i +0.89191 0.83398 i +0.89510 0.85831 i +0.89818 0.88276 i +0.90115 0.90733 i +0.90403 0.93202 i +0.90682 0.95683 i +0.90951 0.98177 i +0.91211 1.00683 i +0.91463 1.03202 i +0.91707 1.05735 i +0.91942 1.08280 i +0.92171 1.10839 i +0.92391 1.13411 i +0.92605 1.15998 i +0.92812 1.18598 i +0.93012 1.21213 i +0.93205 1.23842 i +0.93393 1.26485 i +0.93575 1.29143 i +0.93751 1.31817 i +0.93921 1.34505 i +0.94086 1.37209 i +0.94246 1.39929 i +0.94401 1.42664 i +0.94552 1.45415 i +0.94697 1.48183 i +0.94838 1.50967 i +0.94975 1.53767 i +0.95108 1.56584 i +0.95236 1.59418 i +0.95361 1.62270 i +0.95482 1.65138 i +0.95600 1.68025 i +0.95713 1.70928 i +0.95824 1.73850 i +0.95931 1.76790 i +0.96035 1.79748 i +0.96136 1.82725 i +0.96234 1.85720 i +0.96329 1.88735 i +0.96422 1.91768 i +0.96511 1.94820 i +0.96598 1.97892 i +0.96683 2.00983 i +0.96765 2.04094 i +0.96845 2.07225 i +0.96922 2.10376 i +0.96998 2.13547 i +0.97071 2.16739 i +0.97142 2.19952 i +0.97211 2.23185 i +0.97278 2.26439 i +0.97344 2.29714 i +0.97407 2.33010 i +0.97469 2.36328 i +0.97529 2.39667 i +0.97588 2.43028 i +0.97644 2.46411 i +0.97700 2.49817 i +0.97754 2.53244 i +0.97806 2.56694 i +0.97857 2.60166 i +0.97906 2.63661 i +0.97955 2.67179 i +0.98001 2.70720 i +0.98047 2.74284 i +0.98092 2.77871 i +0.98135 2.81482 i +0.98177 2.85117 i +0.98218 2.88775 i +0.98258 2.92457 i +0.98297 2.96163 i +0.98335 2.99894 i +0.98372 3.03649 i +0.98408 3.07428 i +0.98443 3.11232 i +0.98477 3.15061 i +0.98511 3.18914 i +0.98543 3.22793 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-exp.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-exp.gnuplot new file mode 100644 index 00000000000..1d34e313af8 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-exp.gnuplot @@ -0,0 +1,2 @@ +set terminal table; set output "plots/pgf-exp.table"; set format "%.5f" +set samples 25; plot [x=0:4] 0.05*exp(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-exp.table b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-exp.table new file mode 100644 index 00000000000..8e728570397 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-exp.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.05000 i +0.16667 0.05907 i +0.33333 0.06978 i +0.50000 0.08244 i +0.66667 0.09739 i +0.83333 0.11505 i +1.00000 0.13591 i +1.16667 0.16056 i +1.33333 0.18968 i +1.50000 0.22408 i +1.66667 0.26472 i +1.83333 0.31274 i +2.00000 0.36945 i +2.16667 0.43646 i +2.33333 0.51561 i +2.50000 0.60912 i +2.66667 0.71960 i +2.83333 0.85010 i +3.00000 1.00428 i +3.16667 1.18641 i +3.33333 1.40158 i +3.50000 1.65577 i +3.66667 1.95606 i +3.83333 2.31082 i +4.00000 2.72991 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-parametric-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-parametric-example.gnuplot new file mode 100644 index 00000000000..e1c3f3b52f2 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-parametric-example.gnuplot @@ -0,0 +1,2 @@ +set terminal table; set output "plots/pgf-parametric-example.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-parametric-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-parametric-example.table new file mode 100644 index 00000000000..de0c383ddde --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-parametric-example.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00186 3.14100 i +0.74672 2.78074 i +1.30987 2.26617 i +1.66651 1.66503 i +1.81387 1.04628 i +1.76998 0.47361 i +1.57050 -0.00047 i +1.26407 -0.33904 i +0.90663 -0.52368 i +0.55517 -0.55534 i +0.26171 -0.45339 i +0.06773 -0.25283 i +0.00000 -0.00000 i +0.06773 0.25283 i +0.26171 0.45339 i +0.55517 0.55534 i +0.90663 0.52368 i +1.26407 0.33904 i +1.57050 0.00047 i +1.76998 -0.47361 i +1.81387 -1.04628 i +1.66651 -1.66503 i +1.30987 -2.26617 i +0.74672 -2.78074 i +0.00186 -3.14100 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-sin.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-sin.gnuplot new file mode 100644 index 00000000000..884d534bf4a --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-sin.gnuplot @@ -0,0 +1,2 @@ +set terminal table; set output "plots/pgf-sin.table"; set format "%.5f" +set samples 25; plot [x=0:4] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-sin.table b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-sin.table new file mode 100644 index 00000000000..9ab8f2c8d56 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-sin.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.00000 i +0.16667 0.16590 i +0.33333 0.32719 i +0.50000 0.47943 i +0.66667 0.61837 i +0.83333 0.74018 i +1.00000 0.84147 i +1.16667 0.91944 i +1.33333 0.97194 i +1.50000 0.99749 i +1.66667 0.99541 i +1.83333 0.96573 i +2.00000 0.90930 i +2.16667 0.82766 i +2.33333 0.72309 i +2.50000 0.59847 i +2.66667 0.45727 i +2.83333 0.30340 i +3.00000 0.14112 i +3.16667 -0.02507 i +3.33333 -0.19057 i +3.50000 -0.35078 i +3.66667 -0.50128 i +3.83333 -0.63788 i +4.00000 -0.75680 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-x.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-x.gnuplot new file mode 100644 index 00000000000..bb95994cd89 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-x.gnuplot @@ -0,0 +1,2 @@ +set terminal table; set output "plots/pgf-x.table"; set format "%.5f" +set samples 25; plot [x=0:4] x diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-x.table b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-x.table new file mode 100644 index 00000000000..329b9fa56b5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgf-x.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.00000 i +0.16667 0.16667 i +0.33333 0.33333 i +0.50000 0.50000 i +0.66667 0.66667 i +0.83333 0.83333 i +1.00000 1.00000 i +1.16667 1.16667 i +1.33333 1.33333 i +1.50000 1.50000 i +1.66667 1.66667 i +1.83333 1.83333 i +2.00000 2.00000 i +2.16667 2.16667 i +2.33333 2.33333 i +2.50000 2.50000 i +2.66667 2.66667 i +2.83333 2.83333 i +3.00000 3.00000 i +3.16667 3.16667 i +3.33333 3.33333 i +3.50000 3.50000 i +3.66667 3.66667 i +3.83333 3.83333 i +4.00000 4.00000 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgfmanual-sine.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgfmanual-sine.gnuplot new file mode 100644 index 00000000000..8e3f24b9172 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgfmanual-sine.gnuplot @@ -0,0 +1,5 @@ +set terminal table +set output "pgfmanual-sine.table" +set format "%.5f" +set samples 20 +plot [x=0:10] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgfmanual-sine.table b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgfmanual-sine.table new file mode 100644 index 00000000000..9d5d248a561 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgfmanual-sine.table @@ -0,0 +1,24 @@ +#Curve 0, 20 points +#x y type +0.00000 0.00000 i +0.52632 0.50235 i +1.05263 0.86873 i +1.57895 0.99997 i +2.10526 0.86054 i +2.63158 0.48819 i +3.15789 -0.01630 i +3.68421 -0.51638 i +4.21053 -0.87669 i +4.73684 -0.99970 i +5.26316 -0.85212 i +5.78947 -0.47390 i +6.31579 0.03260 i +6.84211 0.53027 i +7.36842 0.88441 i +7.89474 0.99917 i +8.42105 0.84348 i +8.94737 0.45948 i +9.47368 -0.04889 i +10.00000 -0.54402 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgfplotgnuplot-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgfplotgnuplot-example.gnuplot new file mode 100644 index 00000000000..3bd81ae92d1 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgfplotgnuplot-example.gnuplot @@ -0,0 +1,2 @@ +set terminal table; set output "plots/pgfplotgnuplot-example.table"; set format "%.5f" +plot [x=0:3.5] x*sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgfplotgnuplot-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgfplotgnuplot-example.table new file mode 100644 index 00000000000..a4e517898a8 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-tex4ht/en/plots/pgfplotgnuplot-example.table @@ -0,0 +1,104 @@ +#Curve 0, 100 points +#x y type +0.00000 0.00000 i +0.03535 0.00125 i +0.07071 0.00500 i +0.10606 0.01123 i +0.14141 0.01993 i +0.17677 0.03108 i +0.21212 0.04466 i +0.24747 0.06062 i +0.28283 0.07893 i +0.31818 0.09954 i +0.35354 0.12240 i +0.38889 0.14745 i +0.42424 0.17463 i +0.45960 0.20387 i +0.49495 0.23509 i +0.53030 0.26822 i +0.56566 0.30318 i +0.60101 0.33986 i +0.63636 0.37817 i +0.67172 0.41803 i +0.70707 0.45932 i +0.74242 0.50194 i +0.77778 0.54577 i +0.81313 0.59069 i +0.84848 0.63660 i +0.88384 0.68337 i +0.91919 0.73086 i +0.95455 0.77896 i +0.98990 0.82753 i +1.02525 0.87643 i +1.06061 0.92554 i +1.09596 0.97471 i +1.13131 1.02381 i +1.16667 1.07269 i +1.20202 1.12121 i +1.23737 1.16923 i +1.27273 1.21661 i +1.30808 1.26320 i +1.34343 1.30886 i +1.37879 1.35345 i +1.41414 1.39682 i +1.44949 1.43884 i +1.48485 1.47937 i +1.52020 1.51826 i +1.55556 1.55537 i +1.59091 1.59059 i +1.62626 1.62376 i +1.66162 1.65477 i +1.69697 1.68348 i +1.73232 1.70977 i +1.76768 1.73353 i +1.80303 1.75463 i +1.83838 1.77296 i +1.87374 1.78841 i +1.90909 1.80089 i +1.94444 1.81028 i +1.97980 1.81650 i +2.01515 1.81946 i +2.05051 1.81906 i +2.08586 1.81524 i +2.12121 1.80792 i +2.15657 1.79704 i +2.19192 1.78252 i +2.22727 1.76433 i +2.26263 1.74240 i +2.29798 1.71671 i +2.33333 1.68720 i +2.36869 1.65386 i +2.40404 1.61667 i +2.43939 1.57560 i +2.47475 1.53066 i +2.51010 1.48184 i +2.54545 1.42915 i +2.58081 1.37260 i +2.61616 1.31223 i +2.65152 1.24805 i +2.68687 1.18011 i +2.72222 1.10845 i +2.75758 1.03312 i +2.79293 0.95418 i +2.82828 0.87170 i +2.86364 0.78576 i +2.89899 0.69642 i +2.93434 0.60380 i +2.96970 0.50797 i +3.00505 0.40904 i +3.04040 0.30713 i +3.07576 0.20235 i +3.11111 0.09482 i +3.14646 -0.01533 i +3.18182 -0.12796 i +3.21717 -0.24292 i +3.25253 -0.36007 i +3.28788 -0.47926 i +3.32323 -0.60032 i +3.35859 -0.72308 i +3.39394 -0.84739 i +3.42929 -0.97305 i +3.46465 -1.09990 i +3.50000 -1.22774 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-asymptotic-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-asymptotic-example.gnuplot new file mode 100644 index 00000000000..4c854afda9f --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-asymptotic-example.gnuplot @@ -0,0 +1,2 @@ +set terminal table; set output "plots/pgf-asymptotic-example.table"; set format "%.5f" +set samples 200; set parametric; plot [t=0.4:1.5] (t*t*t)*sin(1/(t*t*t)),(t*t*t)*cos(1/(t*t*t)) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-asymptotic-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-asymptotic-example.table new file mode 100644 index 00000000000..173ab5e9c77 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-asymptotic-example.table @@ -0,0 +1,204 @@ +#Curve 0, 200 points +#x y type +0.00530 -0.06378 i +0.04363 -0.05043 i +0.06711 -0.01790 i +0.06896 0.02170 i +0.05014 0.05606 i +0.01712 0.07631 i +-0.02110 0.07849 i +-0.05579 0.06337 i +-0.08032 0.03512 i +-0.09097 -0.00029 i +-0.08696 -0.03664 i +-0.06987 -0.06850 i +-0.04284 -0.09192 i +-0.00982 -0.10460 i +0.02515 -0.10585 i +0.05841 -0.09629 i +0.08703 -0.07749 i +0.10892 -0.05162 i +0.12282 -0.02111 i +0.12828 0.01163 i +0.12547 0.04436 i +0.11507 0.07518 i +0.09810 0.10255 i +0.07579 0.12534 i +0.04948 0.14280 i +0.02048 0.15454 i +-0.00995 0.16043 i +-0.04065 0.16063 i +-0.07063 0.15545 i +-0.09905 0.14536 i +-0.12521 0.13092 i +-0.14860 0.11273 i +-0.16882 0.09143 i +-0.18562 0.06764 i +-0.19885 0.04197 i +-0.20848 0.01500 i +-0.21454 -0.01276 i +-0.21712 -0.04083 i +-0.21637 -0.06879 i +-0.21247 -0.09627 i +-0.20565 -0.12295 i +-0.19613 -0.14858 i +-0.18415 -0.17294 i +-0.16996 -0.19585 i +-0.15379 -0.21718 i +-0.13589 -0.23682 i +-0.11647 -0.25471 i +-0.09576 -0.27080 i +-0.07396 -0.28508 i +-0.05126 -0.29753 i +-0.02783 -0.30819 i +-0.00384 -0.31707 i +0.02057 -0.32421 i +0.04526 -0.32967 i +0.07011 -0.33350 i +0.09502 -0.33576 i +0.11989 -0.33651 i +0.14463 -0.33582 i +0.16917 -0.33376 i +0.19345 -0.33040 i +0.21741 -0.32580 i +0.24100 -0.32003 i +0.26418 -0.31315 i +0.28691 -0.30524 i +0.30918 -0.29634 i +0.33096 -0.28653 i +0.35222 -0.27585 i +0.37297 -0.26437 i +0.39318 -0.25213 i +0.41285 -0.23918 i +0.43197 -0.22557 i +0.45056 -0.21134 i +0.46860 -0.19654 i +0.48611 -0.18119 i +0.50309 -0.16535 i +0.51954 -0.14904 i +0.53547 -0.13229 i +0.55090 -0.11514 i +0.56582 -0.09761 i +0.58026 -0.07972 i +0.59422 -0.06150 i +0.60772 -0.04298 i +0.62076 -0.02416 i +0.63336 -0.00508 i +0.64554 0.01425 i +0.65729 0.03382 i +0.66864 0.05361 i +0.67960 0.07361 i +0.69018 0.09381 i +0.70039 0.11420 i +0.71024 0.13475 i +0.71975 0.15548 i +0.72892 0.17636 i +0.73778 0.19739 i +0.74632 0.21857 i +0.75456 0.23989 i +0.76251 0.26134 i +0.77018 0.28291 i +0.77759 0.30461 i +0.78473 0.32643 i +0.79162 0.34837 i +0.79826 0.37042 i +0.80468 0.39258 i +0.81087 0.41485 i +0.81684 0.43723 i +0.82261 0.45972 i +0.82817 0.48232 i +0.83354 0.50502 i +0.83872 0.52782 i +0.84372 0.55073 i +0.84855 0.57374 i +0.85321 0.59686 i +0.85772 0.62009 i +0.86206 0.64342 i +0.86626 0.66685 i +0.87032 0.69040 i +0.87423 0.71405 i +0.87801 0.73781 i +0.88167 0.76169 i +0.88520 0.78567 i +0.88861 0.80977 i +0.89191 0.83398 i +0.89510 0.85831 i +0.89818 0.88276 i +0.90115 0.90733 i +0.90403 0.93202 i +0.90682 0.95683 i +0.90951 0.98177 i +0.91211 1.00683 i +0.91463 1.03202 i +0.91707 1.05735 i +0.91942 1.08280 i +0.92171 1.10839 i +0.92391 1.13411 i +0.92605 1.15998 i +0.92812 1.18598 i +0.93012 1.21213 i +0.93205 1.23842 i +0.93393 1.26485 i +0.93575 1.29143 i +0.93751 1.31817 i +0.93921 1.34505 i +0.94086 1.37209 i +0.94246 1.39929 i +0.94401 1.42664 i +0.94552 1.45415 i +0.94697 1.48183 i +0.94838 1.50967 i +0.94975 1.53767 i +0.95108 1.56584 i +0.95236 1.59418 i +0.95361 1.62270 i +0.95482 1.65138 i +0.95600 1.68025 i +0.95713 1.70928 i +0.95824 1.73850 i +0.95931 1.76790 i +0.96035 1.79748 i +0.96136 1.82725 i +0.96234 1.85720 i +0.96329 1.88735 i +0.96422 1.91768 i +0.96511 1.94820 i +0.96598 1.97892 i +0.96683 2.00983 i +0.96765 2.04094 i +0.96845 2.07225 i +0.96922 2.10376 i +0.96998 2.13547 i +0.97071 2.16739 i +0.97142 2.19952 i +0.97211 2.23185 i +0.97278 2.26439 i +0.97344 2.29714 i +0.97407 2.33010 i +0.97469 2.36328 i +0.97529 2.39667 i +0.97588 2.43028 i +0.97644 2.46411 i +0.97700 2.49817 i +0.97754 2.53244 i +0.97806 2.56694 i +0.97857 2.60166 i +0.97906 2.63661 i +0.97955 2.67179 i +0.98001 2.70720 i +0.98047 2.74284 i +0.98092 2.77871 i +0.98135 2.81482 i +0.98177 2.85117 i +0.98218 2.88775 i +0.98258 2.92457 i +0.98297 2.96163 i +0.98335 2.99894 i +0.98372 3.03649 i +0.98408 3.07428 i +0.98443 3.11232 i +0.98477 3.15061 i +0.98511 3.18914 i +0.98543 3.22793 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-exp.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-exp.gnuplot new file mode 100644 index 00000000000..1d34e313af8 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-exp.gnuplot @@ -0,0 +1,2 @@ +set terminal table; set output "plots/pgf-exp.table"; set format "%.5f" +set samples 25; plot [x=0:4] 0.05*exp(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-exp.table b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-exp.table new file mode 100644 index 00000000000..8e728570397 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-exp.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.05000 i +0.16667 0.05907 i +0.33333 0.06978 i +0.50000 0.08244 i +0.66667 0.09739 i +0.83333 0.11505 i +1.00000 0.13591 i +1.16667 0.16056 i +1.33333 0.18968 i +1.50000 0.22408 i +1.66667 0.26472 i +1.83333 0.31274 i +2.00000 0.36945 i +2.16667 0.43646 i +2.33333 0.51561 i +2.50000 0.60912 i +2.66667 0.71960 i +2.83333 0.85010 i +3.00000 1.00428 i +3.16667 1.18641 i +3.33333 1.40158 i +3.50000 1.65577 i +3.66667 1.95606 i +3.83333 2.31082 i +4.00000 2.72991 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-parametric-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-parametric-example.gnuplot new file mode 100644 index 00000000000..e1c3f3b52f2 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-parametric-example.gnuplot @@ -0,0 +1,2 @@ +set terminal table; set output "plots/pgf-parametric-example.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-parametric-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-parametric-example.table new file mode 100644 index 00000000000..de0c383ddde --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-parametric-example.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00186 3.14100 i +0.74672 2.78074 i +1.30987 2.26617 i +1.66651 1.66503 i +1.81387 1.04628 i +1.76998 0.47361 i +1.57050 -0.00047 i +1.26407 -0.33904 i +0.90663 -0.52368 i +0.55517 -0.55534 i +0.26171 -0.45339 i +0.06773 -0.25283 i +0.00000 -0.00000 i +0.06773 0.25283 i +0.26171 0.45339 i +0.55517 0.55534 i +0.90663 0.52368 i +1.26407 0.33904 i +1.57050 0.00047 i +1.76998 -0.47361 i +1.81387 -1.04628 i +1.66651 -1.66503 i +1.30987 -2.26617 i +0.74672 -2.78074 i +0.00186 -3.14100 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-sin.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-sin.gnuplot new file mode 100644 index 00000000000..884d534bf4a --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-sin.gnuplot @@ -0,0 +1,2 @@ +set terminal table; set output "plots/pgf-sin.table"; set format "%.5f" +set samples 25; plot [x=0:4] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-sin.table b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-sin.table new file mode 100644 index 00000000000..9ab8f2c8d56 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-sin.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.00000 i +0.16667 0.16590 i +0.33333 0.32719 i +0.50000 0.47943 i +0.66667 0.61837 i +0.83333 0.74018 i +1.00000 0.84147 i +1.16667 0.91944 i +1.33333 0.97194 i +1.50000 0.99749 i +1.66667 0.99541 i +1.83333 0.96573 i +2.00000 0.90930 i +2.16667 0.82766 i +2.33333 0.72309 i +2.50000 0.59847 i +2.66667 0.45727 i +2.83333 0.30340 i +3.00000 0.14112 i +3.16667 -0.02507 i +3.33333 -0.19057 i +3.50000 -0.35078 i +3.66667 -0.50128 i +3.83333 -0.63788 i +4.00000 -0.75680 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-x.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-x.gnuplot new file mode 100644 index 00000000000..bb95994cd89 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-x.gnuplot @@ -0,0 +1,2 @@ +set terminal table; set output "plots/pgf-x.table"; set format "%.5f" +set samples 25; plot [x=0:4] x diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-x.table b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-x.table new file mode 100644 index 00000000000..329b9fa56b5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgf-x.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.00000 i +0.16667 0.16667 i +0.33333 0.33333 i +0.50000 0.50000 i +0.66667 0.66667 i +0.83333 0.83333 i +1.00000 1.00000 i +1.16667 1.16667 i +1.33333 1.33333 i +1.50000 1.50000 i +1.66667 1.66667 i +1.83333 1.83333 i +2.00000 2.00000 i +2.16667 2.16667 i +2.33333 2.33333 i +2.50000 2.50000 i +2.66667 2.66667 i +2.83333 2.83333 i +3.00000 3.00000 i +3.16667 3.16667 i +3.33333 3.33333 i +3.50000 3.50000 i +3.66667 3.66667 i +3.83333 3.83333 i +4.00000 4.00000 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgfmanual-sine.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgfmanual-sine.gnuplot new file mode 100644 index 00000000000..8e3f24b9172 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgfmanual-sine.gnuplot @@ -0,0 +1,5 @@ +set terminal table +set output "pgfmanual-sine.table" +set format "%.5f" +set samples 20 +plot [x=0:10] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgfmanual-sine.table b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgfmanual-sine.table new file mode 100644 index 00000000000..9d5d248a561 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgfmanual-sine.table @@ -0,0 +1,24 @@ +#Curve 0, 20 points +#x y type +0.00000 0.00000 i +0.52632 0.50235 i +1.05263 0.86873 i +1.57895 0.99997 i +2.10526 0.86054 i +2.63158 0.48819 i +3.15789 -0.01630 i +3.68421 -0.51638 i +4.21053 -0.87669 i +4.73684 -0.99970 i +5.26316 -0.85212 i +5.78947 -0.47390 i +6.31579 0.03260 i +6.84211 0.53027 i +7.36842 0.88441 i +7.89474 0.99917 i +8.42105 0.84348 i +8.94737 0.45948 i +9.47368 -0.04889 i +10.00000 -0.54402 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgfplotgnuplot-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgfplotgnuplot-example.gnuplot new file mode 100644 index 00000000000..3bd81ae92d1 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgfplotgnuplot-example.gnuplot @@ -0,0 +1,2 @@ +set terminal table; set output "plots/pgfplotgnuplot-example.table"; set format "%.5f" +plot [x=0:3.5] x*sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgfplotgnuplot-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgfplotgnuplot-example.table new file mode 100644 index 00000000000..a4e517898a8 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-vtex/en/plots/pgfplotgnuplot-example.table @@ -0,0 +1,104 @@ +#Curve 0, 100 points +#x y type +0.00000 0.00000 i +0.03535 0.00125 i +0.07071 0.00500 i +0.10606 0.01123 i +0.14141 0.01993 i +0.17677 0.03108 i +0.21212 0.04466 i +0.24747 0.06062 i +0.28283 0.07893 i +0.31818 0.09954 i +0.35354 0.12240 i +0.38889 0.14745 i +0.42424 0.17463 i +0.45960 0.20387 i +0.49495 0.23509 i +0.53030 0.26822 i +0.56566 0.30318 i +0.60101 0.33986 i +0.63636 0.37817 i +0.67172 0.41803 i +0.70707 0.45932 i +0.74242 0.50194 i +0.77778 0.54577 i +0.81313 0.59069 i +0.84848 0.63660 i +0.88384 0.68337 i +0.91919 0.73086 i +0.95455 0.77896 i +0.98990 0.82753 i +1.02525 0.87643 i +1.06061 0.92554 i +1.09596 0.97471 i +1.13131 1.02381 i +1.16667 1.07269 i +1.20202 1.12121 i +1.23737 1.16923 i +1.27273 1.21661 i +1.30808 1.26320 i +1.34343 1.30886 i +1.37879 1.35345 i +1.41414 1.39682 i +1.44949 1.43884 i +1.48485 1.47937 i +1.52020 1.51826 i +1.55556 1.55537 i +1.59091 1.59059 i +1.62626 1.62376 i +1.66162 1.65477 i +1.69697 1.68348 i +1.73232 1.70977 i +1.76768 1.73353 i +1.80303 1.75463 i +1.83838 1.77296 i +1.87374 1.78841 i +1.90909 1.80089 i +1.94444 1.81028 i +1.97980 1.81650 i +2.01515 1.81946 i +2.05051 1.81906 i +2.08586 1.81524 i +2.12121 1.80792 i +2.15657 1.79704 i +2.19192 1.78252 i +2.22727 1.76433 i +2.26263 1.74240 i +2.29798 1.71671 i +2.33333 1.68720 i +2.36869 1.65386 i +2.40404 1.61667 i +2.43939 1.57560 i +2.47475 1.53066 i +2.51010 1.48184 i +2.54545 1.42915 i +2.58081 1.37260 i +2.61616 1.31223 i +2.65152 1.24805 i +2.68687 1.18011 i +2.72222 1.10845 i +2.75758 1.03312 i +2.79293 0.95418 i +2.82828 0.87170 i +2.86364 0.78576 i +2.89899 0.69642 i +2.93434 0.60380 i +2.96970 0.50797 i +3.00505 0.40904 i +3.04040 0.30713 i +3.07576 0.20235 i +3.11111 0.09482 i +3.14646 -0.01533 i +3.18182 -0.12796 i +3.21717 -0.24292 i +3.25253 -0.36007 i +3.28788 -0.47926 i +3.32323 -0.60032 i +3.35859 -0.72308 i +3.39394 -0.84739 i +3.42929 -0.97305 i +3.46465 -1.09990 i +3.50000 -1.22774 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-asymptotic-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-asymptotic-example.gnuplot new file mode 100644 index 00000000000..c99b87dbc89 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-asymptotic-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-asymptotic-example.table"; set format "%.5f" +set samples 200.0; set parametric; plot [t=0.4:1.5] [] [] (t*t*t)*sin(1/(t*t*t)),(t*t*t)*cos(1/(t*t*t)) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-asymptotic-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-asymptotic-example.table new file mode 100644 index 00000000000..173ab5e9c77 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-asymptotic-example.table @@ -0,0 +1,204 @@ +#Curve 0, 200 points +#x y type +0.00530 -0.06378 i +0.04363 -0.05043 i +0.06711 -0.01790 i +0.06896 0.02170 i +0.05014 0.05606 i +0.01712 0.07631 i +-0.02110 0.07849 i +-0.05579 0.06337 i +-0.08032 0.03512 i +-0.09097 -0.00029 i +-0.08696 -0.03664 i +-0.06987 -0.06850 i +-0.04284 -0.09192 i +-0.00982 -0.10460 i +0.02515 -0.10585 i +0.05841 -0.09629 i +0.08703 -0.07749 i +0.10892 -0.05162 i +0.12282 -0.02111 i +0.12828 0.01163 i +0.12547 0.04436 i +0.11507 0.07518 i +0.09810 0.10255 i +0.07579 0.12534 i +0.04948 0.14280 i +0.02048 0.15454 i +-0.00995 0.16043 i +-0.04065 0.16063 i +-0.07063 0.15545 i +-0.09905 0.14536 i +-0.12521 0.13092 i +-0.14860 0.11273 i +-0.16882 0.09143 i +-0.18562 0.06764 i +-0.19885 0.04197 i +-0.20848 0.01500 i +-0.21454 -0.01276 i +-0.21712 -0.04083 i +-0.21637 -0.06879 i +-0.21247 -0.09627 i +-0.20565 -0.12295 i +-0.19613 -0.14858 i +-0.18415 -0.17294 i +-0.16996 -0.19585 i +-0.15379 -0.21718 i +-0.13589 -0.23682 i +-0.11647 -0.25471 i +-0.09576 -0.27080 i +-0.07396 -0.28508 i +-0.05126 -0.29753 i +-0.02783 -0.30819 i +-0.00384 -0.31707 i +0.02057 -0.32421 i +0.04526 -0.32967 i +0.07011 -0.33350 i +0.09502 -0.33576 i +0.11989 -0.33651 i +0.14463 -0.33582 i +0.16917 -0.33376 i +0.19345 -0.33040 i +0.21741 -0.32580 i +0.24100 -0.32003 i +0.26418 -0.31315 i +0.28691 -0.30524 i +0.30918 -0.29634 i +0.33096 -0.28653 i +0.35222 -0.27585 i +0.37297 -0.26437 i +0.39318 -0.25213 i +0.41285 -0.23918 i +0.43197 -0.22557 i +0.45056 -0.21134 i +0.46860 -0.19654 i +0.48611 -0.18119 i +0.50309 -0.16535 i +0.51954 -0.14904 i +0.53547 -0.13229 i +0.55090 -0.11514 i +0.56582 -0.09761 i +0.58026 -0.07972 i +0.59422 -0.06150 i +0.60772 -0.04298 i +0.62076 -0.02416 i +0.63336 -0.00508 i +0.64554 0.01425 i +0.65729 0.03382 i +0.66864 0.05361 i +0.67960 0.07361 i +0.69018 0.09381 i +0.70039 0.11420 i +0.71024 0.13475 i +0.71975 0.15548 i +0.72892 0.17636 i +0.73778 0.19739 i +0.74632 0.21857 i +0.75456 0.23989 i +0.76251 0.26134 i +0.77018 0.28291 i +0.77759 0.30461 i +0.78473 0.32643 i +0.79162 0.34837 i +0.79826 0.37042 i +0.80468 0.39258 i +0.81087 0.41485 i +0.81684 0.43723 i +0.82261 0.45972 i +0.82817 0.48232 i +0.83354 0.50502 i +0.83872 0.52782 i +0.84372 0.55073 i +0.84855 0.57374 i +0.85321 0.59686 i +0.85772 0.62009 i +0.86206 0.64342 i +0.86626 0.66685 i +0.87032 0.69040 i +0.87423 0.71405 i +0.87801 0.73781 i +0.88167 0.76169 i +0.88520 0.78567 i +0.88861 0.80977 i +0.89191 0.83398 i +0.89510 0.85831 i +0.89818 0.88276 i +0.90115 0.90733 i +0.90403 0.93202 i +0.90682 0.95683 i +0.90951 0.98177 i +0.91211 1.00683 i +0.91463 1.03202 i +0.91707 1.05735 i +0.91942 1.08280 i +0.92171 1.10839 i +0.92391 1.13411 i +0.92605 1.15998 i +0.92812 1.18598 i +0.93012 1.21213 i +0.93205 1.23842 i +0.93393 1.26485 i +0.93575 1.29143 i +0.93751 1.31817 i +0.93921 1.34505 i +0.94086 1.37209 i +0.94246 1.39929 i +0.94401 1.42664 i +0.94552 1.45415 i +0.94697 1.48183 i +0.94838 1.50967 i +0.94975 1.53767 i +0.95108 1.56584 i +0.95236 1.59418 i +0.95361 1.62270 i +0.95482 1.65138 i +0.95600 1.68025 i +0.95713 1.70928 i +0.95824 1.73850 i +0.95931 1.76790 i +0.96035 1.79748 i +0.96136 1.82725 i +0.96234 1.85720 i +0.96329 1.88735 i +0.96422 1.91768 i +0.96511 1.94820 i +0.96598 1.97892 i +0.96683 2.00983 i +0.96765 2.04094 i +0.96845 2.07225 i +0.96922 2.10376 i +0.96998 2.13547 i +0.97071 2.16739 i +0.97142 2.19952 i +0.97211 2.23185 i +0.97278 2.26439 i +0.97344 2.29714 i +0.97407 2.33010 i +0.97469 2.36328 i +0.97529 2.39667 i +0.97588 2.43028 i +0.97644 2.46411 i +0.97700 2.49817 i +0.97754 2.53244 i +0.97806 2.56694 i +0.97857 2.60166 i +0.97906 2.63661 i +0.97955 2.67179 i +0.98001 2.70720 i +0.98047 2.74284 i +0.98092 2.77871 i +0.98135 2.81482 i +0.98177 2.85117 i +0.98218 2.88775 i +0.98258 2.92457 i +0.98297 2.96163 i +0.98335 2.99894 i +0.98372 3.03649 i +0.98408 3.07428 i +0.98443 3.11232 i +0.98477 3.15061 i +0.98511 3.18914 i +0.98543 3.22793 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-exp.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-exp.gnuplot new file mode 100644 index 00000000000..8109ea408c5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-exp.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-exp.table"; set format "%.5f" +set samples 25; plot [x=0:4] 0.05*exp(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-exp.table b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-exp.table new file mode 100644 index 00000000000..8e728570397 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-exp.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.05000 i +0.16667 0.05907 i +0.33333 0.06978 i +0.50000 0.08244 i +0.66667 0.09739 i +0.83333 0.11505 i +1.00000 0.13591 i +1.16667 0.16056 i +1.33333 0.18968 i +1.50000 0.22408 i +1.66667 0.26472 i +1.83333 0.31274 i +2.00000 0.36945 i +2.16667 0.43646 i +2.33333 0.51561 i +2.50000 0.60912 i +2.66667 0.71960 i +2.83333 0.85010 i +3.00000 1.00428 i +3.16667 1.18641 i +3.33333 1.40158 i +3.50000 1.65577 i +3.66667 1.95606 i +3.83333 2.31082 i +4.00000 2.72991 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-parametric-example-cut.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-parametric-example-cut.gnuplot new file mode 100644 index 00000000000..1f81f6a7b90 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-parametric-example-cut.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example-cut.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [0:1] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-parametric-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-parametric-example.gnuplot new file mode 100644 index 00000000000..ea9639bd782 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-parametric-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-parametric-example.table"; set format "%.5f" +set samples 25; set parametric; plot [t=-3.141:3.141] [] [] t*sin(t),t*cos(t) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-parametric-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-parametric-example.table new file mode 100644 index 00000000000..de0c383ddde --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-parametric-example.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00186 3.14100 i +0.74672 2.78074 i +1.30987 2.26617 i +1.66651 1.66503 i +1.81387 1.04628 i +1.76998 0.47361 i +1.57050 -0.00047 i +1.26407 -0.33904 i +0.90663 -0.52368 i +0.55517 -0.55534 i +0.26171 -0.45339 i +0.06773 -0.25283 i +0.00000 -0.00000 i +0.06773 0.25283 i +0.26171 0.45339 i +0.55517 0.55534 i +0.90663 0.52368 i +1.26407 0.33904 i +1.57050 0.00047 i +1.76998 -0.47361 i +1.81387 -1.04628 i +1.66651 -1.66503 i +1.30987 -2.26617 i +0.74672 -2.78074 i +0.00186 -3.14100 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-sin.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-sin.gnuplot new file mode 100644 index 00000000000..48df575630c --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-sin.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-sin.table"; set format "%.5f" +set samples 25; plot [x=0:4] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-sin.table b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-sin.table new file mode 100644 index 00000000000..9ab8f2c8d56 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-sin.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.00000 i +0.16667 0.16590 i +0.33333 0.32719 i +0.50000 0.47943 i +0.66667 0.61837 i +0.83333 0.74018 i +1.00000 0.84147 i +1.16667 0.91944 i +1.33333 0.97194 i +1.50000 0.99749 i +1.66667 0.99541 i +1.83333 0.96573 i +2.00000 0.90930 i +2.16667 0.82766 i +2.33333 0.72309 i +2.50000 0.59847 i +2.66667 0.45727 i +2.83333 0.30340 i +3.00000 0.14112 i +3.16667 -0.02507 i +3.33333 -0.19057 i +3.50000 -0.35078 i +3.66667 -0.50128 i +3.83333 -0.63788 i +4.00000 -0.75680 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-tan-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-tan-example.gnuplot new file mode 100644 index 00000000000..0b0a1ad8ff3 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-tan-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-tan-example.table"; set format "%.5f" +set samples 100.0; plot [x=-3.141:3.141] [-3:3]tan(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-tan-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-tan-example.table new file mode 100644 index 00000000000..63beeda4b7a --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-tan-example.table @@ -0,0 +1,104 @@ + +#Curve 0 of 1, 100 points +#x y type +-3.14100 0.00059 i +-3.07755 0.06413 i +-3.01409 0.12820 i +-2.95064 0.19331 i +-2.88718 0.26005 i +-2.82373 0.32902 i +-2.76027 0.40094 i +-2.69682 0.47663 i +-2.63336 0.55704 i +-2.56991 0.64335 i +-2.50645 0.73701 i +-2.44300 0.83989 i +-2.37955 0.95436 i +-2.31609 1.08360 i +-2.25264 1.23197 i +-2.18918 1.40553 i +-2.12573 1.61314 i +-2.06227 1.86816 i +-1.99882 2.19188 i +-1.93536 2.62036 i +-1.87191 3.22003 o +-1.80845 4.12820 o +-1.74500 5.68222 o +-1.68155 8.99247 o +-1.61809 21.12830 o +-1.55464 -61.87594 o +-1.49118 -12.53398 o +-1.42773 -6.94188 o +-1.36427 -4.77302 o +-1.30082 -3.61357 o +-1.23736 -2.88713 i +-1.17391 -2.38590 i +-1.11045 -2.01664 i +-1.04700 -1.73126 i +-0.98355 -1.50245 i +-0.92009 -1.31351 i +-0.85664 -1.15368 i +-0.79318 -1.01569 i +-0.72973 -0.89443 i +-0.66627 -0.78621 i +-0.60282 -0.68828 i +-0.53936 -0.59856 i +-0.47591 -0.51542 i +-0.41245 -0.43755 i +-0.34900 -0.36390 i +-0.28555 -0.29357 i +-0.22209 -0.22582 i +-0.15864 -0.15998 i +-0.09518 -0.09547 i +-0.03173 -0.03174 i +0.03173 0.03174 i +0.09518 0.09547 i +0.15864 0.15998 i +0.22209 0.22582 i +0.28555 0.29357 i +0.34900 0.36390 i +0.41245 0.43755 i +0.47591 0.51542 i +0.53936 0.59856 i +0.60282 0.68828 i +0.66627 0.78621 i +0.72973 0.89443 i +0.79318 1.01569 i +0.85664 1.15368 i +0.92009 1.31351 i +0.98355 1.50245 i +1.04700 1.73126 i +1.11045 2.01664 i +1.17391 2.38590 i +1.23736 2.88713 i +1.30082 3.61357 o +1.36427 4.77302 o +1.42773 6.94188 o +1.49118 12.53398 o +1.55464 61.87594 o +1.61809 -21.12830 o +1.68155 -8.99247 o +1.74500 -5.68222 o +1.80845 -4.12820 o +1.87191 -3.22003 o +1.93536 -2.62036 i +1.99882 -2.19188 i +2.06227 -1.86816 i +2.12573 -1.61314 i +2.18918 -1.40553 i +2.25264 -1.23197 i +2.31609 -1.08360 i +2.37955 -0.95436 i +2.44300 -0.83989 i +2.50645 -0.73701 i +2.56991 -0.64335 i +2.63336 -0.55704 i +2.69682 -0.47663 i +2.76027 -0.40094 i +2.82373 -0.32902 i +2.88718 -0.26005 i +2.95064 -0.19331 i +3.01409 -0.12820 i +3.07755 -0.06413 i +3.14100 -0.00059 i + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-x.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-x.gnuplot new file mode 100644 index 00000000000..0e57c0571ad --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-x.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgf-x.table"; set format "%.5f" +set samples 25; plot [x=0:4] x diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-x.table b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-x.table new file mode 100644 index 00000000000..329b9fa56b5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgf-x.table @@ -0,0 +1,29 @@ +#Curve 0, 25 points +#x y type +0.00000 0.00000 i +0.16667 0.16667 i +0.33333 0.33333 i +0.50000 0.50000 i +0.66667 0.66667 i +0.83333 0.83333 i +1.00000 1.00000 i +1.16667 1.16667 i +1.33333 1.33333 i +1.50000 1.50000 i +1.66667 1.66667 i +1.83333 1.83333 i +2.00000 2.00000 i +2.16667 2.16667 i +2.33333 2.33333 i +2.50000 2.50000 i +2.66667 2.66667 i +2.83333 2.83333 i +3.00000 3.00000 i +3.16667 3.16667 i +3.33333 3.33333 i +3.50000 3.50000 i +3.66667 3.66667 i +3.83333 3.83333 i +4.00000 4.00000 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgfmanual-sine.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgfmanual-sine.gnuplot new file mode 100644 index 00000000000..8e3f24b9172 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgfmanual-sine.gnuplot @@ -0,0 +1,5 @@ +set terminal table +set output "pgfmanual-sine.table" +set format "%.5f" +set samples 20 +plot [x=0:10] sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgfmanual-sine.table b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgfmanual-sine.table new file mode 100644 index 00000000000..9d5d248a561 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgfmanual-sine.table @@ -0,0 +1,24 @@ +#Curve 0, 20 points +#x y type +0.00000 0.00000 i +0.52632 0.50235 i +1.05263 0.86873 i +1.57895 0.99997 i +2.10526 0.86054 i +2.63158 0.48819 i +3.15789 -0.01630 i +3.68421 -0.51638 i +4.21053 -0.87669 i +4.73684 -0.99970 i +5.26316 -0.85212 i +5.78947 -0.47390 i +6.31579 0.03260 i +6.84211 0.53027 i +7.36842 0.88441 i +7.89474 0.99917 i +8.42105 0.84348 i +8.94737 0.45948 i +9.47368 -0.04889 i +10.00000 -0.54402 i + + diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgfplotgnuplot-example.gnuplot b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgfplotgnuplot-example.gnuplot new file mode 100644 index 00000000000..ebac36dd234 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgfplotgnuplot-example.gnuplot @@ -0,0 +1,2 @@ +set table "plots/pgfplotgnuplot-example.table"; set format "%.5f" +plot [x=0:3.5] x*sin(x) diff --git a/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgfplotgnuplot-example.table b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgfplotgnuplot-example.table new file mode 100644 index 00000000000..a4e517898a8 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pgf/version-for-xetex/en/plots/pgfplotgnuplot-example.table @@ -0,0 +1,104 @@ +#Curve 0, 100 points +#x y type +0.00000 0.00000 i +0.03535 0.00125 i +0.07071 0.00500 i +0.10606 0.01123 i +0.14141 0.01993 i +0.17677 0.03108 i +0.21212 0.04466 i +0.24747 0.06062 i +0.28283 0.07893 i +0.31818 0.09954 i +0.35354 0.12240 i +0.38889 0.14745 i +0.42424 0.17463 i +0.45960 0.20387 i +0.49495 0.23509 i +0.53030 0.26822 i +0.56566 0.30318 i +0.60101 0.33986 i +0.63636 0.37817 i +0.67172 0.41803 i +0.70707 0.45932 i +0.74242 0.50194 i +0.77778 0.54577 i +0.81313 0.59069 i +0.84848 0.63660 i +0.88384 0.68337 i +0.91919 0.73086 i +0.95455 0.77896 i +0.98990 0.82753 i +1.02525 0.87643 i +1.06061 0.92554 i +1.09596 0.97471 i +1.13131 1.02381 i +1.16667 1.07269 i +1.20202 1.12121 i +1.23737 1.16923 i +1.27273 1.21661 i +1.30808 1.26320 i +1.34343 1.30886 i +1.37879 1.35345 i +1.41414 1.39682 i +1.44949 1.43884 i +1.48485 1.47937 i +1.52020 1.51826 i +1.55556 1.55537 i +1.59091 1.59059 i +1.62626 1.62376 i +1.66162 1.65477 i +1.69697 1.68348 i +1.73232 1.70977 i +1.76768 1.73353 i +1.80303 1.75463 i +1.83838 1.77296 i +1.87374 1.78841 i +1.90909 1.80089 i +1.94444 1.81028 i +1.97980 1.81650 i +2.01515 1.81946 i +2.05051 1.81906 i +2.08586 1.81524 i +2.12121 1.80792 i +2.15657 1.79704 i +2.19192 1.78252 i +2.22727 1.76433 i +2.26263 1.74240 i +2.29798 1.71671 i +2.33333 1.68720 i +2.36869 1.65386 i +2.40404 1.61667 i +2.43939 1.57560 i +2.47475 1.53066 i +2.51010 1.48184 i +2.54545 1.42915 i +2.58081 1.37260 i +2.61616 1.31223 i +2.65152 1.24805 i +2.68687 1.18011 i +2.72222 1.10845 i +2.75758 1.03312 i +2.79293 0.95418 i +2.82828 0.87170 i +2.86364 0.78576 i +2.89899 0.69642 i +2.93434 0.60380 i +2.96970 0.50797 i +3.00505 0.40904 i +3.04040 0.30713 i +3.07576 0.20235 i +3.11111 0.09482 i +3.14646 -0.01533 i +3.18182 -0.12796 i +3.21717 -0.24292 i +3.25253 -0.36007 i +3.28788 -0.47926 i +3.32323 -0.60032 i +3.35859 -0.72308 i +3.39394 -0.84739 i +3.42929 -0.97305 i +3.46465 -1.09990 i +3.50000 -1.22774 i + + |