我有以下图像代码,它非常适合我的需求。我剪掉了大量的绘图,只关注我需要的部分(完整版中是带有增量标记的量筒)。
\documentclass[convert, border=1pt]{standalone}
\usepackage{xfp}
\usepackage{tikz}
\standaloneconfig{tikz}
\tikzset{x=5in, y=5in}
\pagestyle{empty}
\newcommand{\gradcylinder}[3]{
\begin{tikzpicture}
\pgfmathsetmacro\numLabels{#2}
\pgfmathsetmacro\minorSpace{#3}
\pgfmathsetmacro\majorSpace{\fpeval{\minorSpace*5}}
\pgfmathsetmacro\majorTBGap{\fpeval{\majorSpace/2}}
\pgfmathsetmacro\height{\fpeval{2*\majorTBGap+\majorSpace*((\numLabels*2)-2)}}
\pgfmathsetmacro\waterHeight{#1*\height}
\draw (1, 0) rectangle (1.2, \height);
\fill[cyan, fill opacity=0.4] (1, 0) to (1, \waterHeight) to [out=-30, in=210, looseness=0.8] (1.2, \waterHeight) to (1.2, 0);
\draw[densely dashed] (1.1, \waterHeight-0.02378) -- (1.2, \waterHeight-0.02378);
\end{tikzpicture}
}
\begin{document}
\gradcylinder{0.8}{2}{0.02}
\end{document}
#1 是阴影曲线从多高开始,占总高度的百分比。我有两个目标不知道如何实现:
- 我希望能够定义虚线阴影曲线的底部(而不是我破解的 -0.02378),但我不确定如何计算该值或弄清楚使用节点位置来绘制虚线
- 我希望能够将 #1 的值更改为设置曲线底部的百分比高度,而不是顶部的起始位置。我想知道是否有类似的方法来绘制设置了此点的曲线。
我希望这些目标是明确的,但如果不明确,请告诉我。