\input regression-test.tex \documentclass{article} \usepackage{tikzphysics} \newdimen\actual \newdimen\error \newcommand{\assertcoord}[5]{% \pgfextractx{\actual}{\pgfpointanchor{#1}{#2}}\error=\actual\advance\error by-#3\relax \ifdim\error<0pt\error=-\error\fi \ifdim\error<.04pt\TYPE{PASS: #5 x}\else\TYPE{FAIL: #5 x got \the\actual}\fi \pgfextracty{\actual}{\pgfpointanchor{#1}{#2}}\error=\actual\advance\error by-#4\relax \ifdim\error<0pt\error=-\error\fi \ifdim\error<.04pt\TYPE{PASS: #5 y}\else\TYPE{FAIL: #5 y got \the\actual}\fi} \newdimen\expectedx \newdimen\expectedy \newcommand{\sameanchor}[4]{% \pgfextractx{\expectedx}{\pgfpointanchor{#1}{#3}}% \pgfextracty{\expectedy}{\pgfpointanchor{#1}{#3}}% \assertcoord{#1}{#2}{\expectedx}{\expectedy}{#4}} \begin{document}\START\setbox0=\hbox{\begin{tikzpicture} \node[conduction slab] (N0) {}; \foreach \p in {0,...,100}{\pgfpointanchor{N0}{bottom-\p}} \TYPE{PASS: conduction slab bottom all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N0}{right-\p}} \TYPE{PASS: conduction slab right all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N0}{top-\p}} \TYPE{PASS: conduction slab top all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N0}{left-\p}} \TYPE{PASS: conduction slab left all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N0}{axis-\p}} \TYPE{PASS: conduction slab axis all integer percentages} \node[composite wall] (N1) {}; \foreach \p in {0,...,100}{\pgfpointanchor{N1}{bottom-\p}} \TYPE{PASS: composite wall bottom all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N1}{right-\p}} \TYPE{PASS: composite wall right all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N1}{top-\p}} \TYPE{PASS: composite wall top all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N1}{left-\p}} \TYPE{PASS: composite wall left all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N1}{axis-\p}} \TYPE{PASS: composite wall axis all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N1}{interface-\p}} \TYPE{PASS: composite wall interface all integer percentages} \node[convection surface] (N2) {}; \foreach \p in {0,...,100}{\pgfpointanchor{N2}{surface-\p}} \TYPE{PASS: convection surface surface all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N2}{bottom-\p}} \TYPE{PASS: convection surface bottom all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N2}{right-\p}} \TYPE{PASS: convection surface right all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N2}{left-\p}} \TYPE{PASS: convection surface left all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N2}{flow-\p}} \TYPE{PASS: convection surface flow all integer percentages} \node[cooling fin] (N3) {}; \foreach \p in {0,...,100}{\pgfpointanchor{N3}{base-\p}} \TYPE{PASS: cooling fin base all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N3}{axis-\p}} \TYPE{PASS: cooling fin axis all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N3}{fin-bottom-\p}} \TYPE{PASS: cooling fin fin-bottom all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N3}{fin-tip-\p}} \TYPE{PASS: cooling fin fin-tip all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N3}{fin-top-\p}} \TYPE{PASS: cooling fin fin-top all integer percentages} \node[radiating body] (N4) {}; \foreach \p in {0,...,100}{\pgfpointanchor{N4}{rim-\p}} \TYPE{PASS: radiating body rim all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N4}{ray-\p}} \TYPE{PASS: radiating body ray all integer percentages} \node[thermometer] (N5) {}; \foreach \p in {0,...,100}{\pgfpointanchor{N5}{scale-\p}} \TYPE{PASS: thermometer scale all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N5}{column-\p}} \TYPE{PASS: thermometer column all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N5}{bulb-\p}} \TYPE{PASS: thermometer bulb all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N5}{stem-right-\p}} \TYPE{PASS: thermometer stem-right all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N5}{cap-\p}} \TYPE{PASS: thermometer cap all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N5}{stem-left-\p}} \TYPE{PASS: thermometer stem-left all integer percentages} \node[calorimeter] (N6) {}; \foreach \p in {0,...,100}{\pgfpointanchor{N6}{bottom-\p}} \TYPE{PASS: calorimeter bottom all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N6}{right-\p}} \TYPE{PASS: calorimeter right all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N6}{top-\p}} \TYPE{PASS: calorimeter top all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N6}{left-\p}} \TYPE{PASS: calorimeter left all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N6}{lid-\p}} \TYPE{PASS: calorimeter lid all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N6}{surface-\p}} \TYPE{PASS: calorimeter surface all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N6}{inner-bottom-\p}} \TYPE{PASS: calorimeter inner-bottom all integer percentages} \node[expansion rod] (N7) {}; \foreach \p in {0,...,100}{\pgfpointanchor{N7}{original-\p}} \TYPE{PASS: expansion rod original all integer percentages} \foreach \p in {0,...,100}{\pgfpointanchor{N7}{expanded-\p}} \TYPE{PASS: expansion rod expanded all integer percentages} \assertcoord{N0}{axis-25}{-0.750000000cm}{0.000000000cm}{N0 axis-25} \assertcoord{N0}{bottom-0}{-1.500000000cm}{-1.000000000cm}{N0 bottom-0} \assertcoord{N0}{top-0}{1.500000000cm}{1.000000000cm}{N0 top-0} \assertcoord{N1}{interface-50}{-0.150000000cm}{0.000000000cm}{N1 interface-50} \assertcoord{N1}{layer-1-center}{-0.825000000cm}{0.000000000cm}{N1 layer-1-center} \assertcoord{N1}{layer-2-center}{0.675000000cm}{0.000000000cm}{N1 layer-2-center} \assertcoord{N2}{surface-0}{-1.800000000cm}{-0.475000000cm}{N2 surface-0} \assertcoord{N2}{flow-25}{0.000000000cm}{-0.175000000cm}{N2 flow-25} \assertcoord{N2}{right-50}{1.800000000cm}{-0.600000000cm}{N2 right-50} \assertcoord{N3}{root}{-1.250000000cm}{0.000000000cm}{N3 root} \assertcoord{N3}{axis-50}{0.125000000cm}{0.000000000cm}{N3 axis-50} \assertcoord{N3}{fin-top-50}{0.125000000cm}{0.090000000cm}{N3 fin-top-50} \assertcoord{N4}{rim-25}{0.000000000cm}{0.650000000cm}{N4 rim-25} \assertcoord{N4}{ray-50}{1.050000000cm}{0.000000000cm}{N4 ray-50} \assertcoord{N5}{liquid-top}{0.000000000cm}{0.522000000cm}{N5 liquid-top} \assertcoord{N5}{scale-50}{0.000000000cm}{0.275000000cm}{N5 scale-50} \assertcoord{N5}{bulb-50}{0.000000000cm}{-1.600000000cm}{N5 bulb-50} \assertcoord{N5}{bulb-0}{-0.090000000cm}{-0.972916949cm}{N5 bulb-0} \assertcoord{N5}{bulb-100}{0.090000000cm}{-0.972916949cm}{N5 bulb-100} \assertcoord{N6}{surface-50}{0.000000000cm}{0.105000000cm}{N6 surface-50} \assertcoord{N6}{liquid-center}{0.000000000cm}{-0.472500000cm}{N6 liquid-center} \assertcoord{N7}{original-end}{1.350000000cm}{-0.325000000cm}{N7 original-end} \assertcoord{N7}{expanded-end}{1.650000000cm}{0.325000000cm}{N7 expanded-end} \node[convection surface,thermal flow direction=-1] (Cool) {};\node[radiating body,thermal flow direction=-1] (Absorb) {}; \assertcoord{Cool}{flow-25}{0.000000000cm}{0.425000000cm}{Cool flow-25} \assertcoord{Absorb}{ray-25}{1.250000000cm}{0.000000000cm}{Absorb ray-25} \node[composite wall,composite split=.25,composite width=40mm,composite height=20mm,rotate=90,scale=2] (Rot) at (5,5) {}; \assertcoord{Rot}{interface-25}{6.000000000cm}{3.000000000cm}{Rot interface-25} \node[expansion rod,thermal expansion ratio=.8] (Contract) {}; \assertcoord{Contract}{expanded-100}{0.900000000cm}{0.325000000cm}{Contract expanded-100} \node[thermometer,thermometer level=0] (Zero) {};\node[thermometer,thermometer level=1] (Full) {}; \assertcoord{Zero}{liquid-top}{0.000000000cm}{-0.960000000cm}{Zero liquid-top} \assertcoord{Full}{liquid-top}{0.000000000cm}{1.510000000cm}{Full liquid-top} \node[convection surface,thermal plate width=8cm,thermal flow direction=-1] (Later) {};\node[thermometer,fill=white,thermometer level=1,thermal liquid color=blue,draw=red] (Colored) {}; \assertcoord{N2}{flow-25}{0.000000000cm}{-0.175000000cm}{N2 flow-25} \assertcoord{N5}{liquid-top}{0.000000000cm}{0.522000000cm}{N5 liquid-top} \end{tikzpicture}}\END\end{document}