向 3D 渐近线图添加标签时的位置偏移

向 3D 渐近线图添加标签时的位置偏移

我在 3d 渐近线图方面遇到了一个奇怪的问题。没有标签时,它们会像正常图一样运行figure,但是当我添加标签时,图表会移动到页面边缘...

梅威瑟:

\documentclass[12pt,a4paper,addpoints]{exam}

\usepackage{asymptote}

\begin{document}
\begin{figure}
\begin{asy}
import solids;
import three;

size(5cm);

currentprojection=orthographic(0,-5,3);

triple start = (0,0,1);
real length = 5;
real radius = 1;
triple ax = (0,0,1);
revolution r = cylinder(start,radius,length,ax);
draw(r,black);

revolution downcone=cone(Z,1,-3);
draw (downcone,black);

draw((-1,0,7)--(1,0,7),Arrows3);

draw((1.5,0,1)--(1.5,0,6),Arrows3);

draw((1.5,0,1)--(1.5,0,-2),Arrows3);


\end{asy}
%label("2m",(0,0,7),N);
%label("5m",(1.5,0,3.5),E);
%label("3m",(1.5,0,-0.5),E)
\caption{Graansilo}
\end{figure}
\end{document}

当我将注释label行添加到asy环境中时,事情开始出错...图表不再居中(或者至少在页面的可见区域),而是移动到边缘...
当尝试在一页上使用多个图表时,它们甚至会出现在彼此的之上...
我尝试改变label行(添加$,仅数字,仅字母),尝试改变视角。

还是没有线索...

编译 .asy 会出现“非法标记“\””,但这就是我所拥有的……

答案1

更换线路

\usepackage{asymptote}

在你的序言中

\usepackage[inline]{asymptote}

答案2

在此处输入图片描述

尝试这个:

\documentclass[12pt,a4paper,addpoints]{exam}
\usepackage{asymptote}
\begin{document}
\begin{figure}
\centering
\begin{asy}
import settings;
settings.prc=false;
settings.render=0;
import solids;
import three;

size(5cm);

currentprojection=orthographic(0,-5,3);

triple start = (0,0,1);
real length = 5;
real radius = 1;
triple ax = (0,0,1);
revolution r = cylinder(start,radius,length,ax);
draw(r,black);

revolution downcone=cone(Z,1,-3);
draw (downcone,black);

draw((-1,0,7)--(1,0,7),Arrows3);
draw((1.5,0,1)--(1.5,0,6),Arrows3);
draw((1.5,0,1)--(1.5,0,-2),Arrows3);

label("2m",(0,0,7),N);
label("5m",(1.5,0,3.5),E);
label("3m",(1.5,0,-0.5),E);

\end{asy}

\caption{Graansilo}
\end{figure}
\end{document}

编辑 对 OP 代码的更改:

  • 标签取消注释并移至asy环境内部;
  • ;在第三个标签语句末尾添加了一个miss,这很可能就是导致问题的原因。

  • noprc+render=0添加设置以从 3D 绘图中获取矢量输出( ):

import settings;

settings.prc=false;

settings.render=0;

相关内容