我正在尝试使用绘制双镜头系统pst-optic
。这是我的代码:
\documentclass{standalone}
\usepackage{pst-optic}
\begin{document}
\begin{pspicture}(-15,-3)(15,3)
\rput(5,0)
{\lens[lensType=CVG,lensHeight=5,lensWidth=0.5,lensGlass=true,focus=3.33333333333,OA=-10,AB=1,nameO=O_1,nameF=F_1,nameA=A_1,nameB=B_1,nameFi=F'_1,nameAi={},nameBi={}]}
\rput(12.5,0)
{\lens[lensType=CVG,lensHeight=5,lensWidth=0.5,lensGlass=true,focus=1.666666666666,nameA=A'_1,nameB=B'_1,nameO=O_2,nameAi=A'_2,nameF=F_2,nameFi=F'_2,nameBi=B'_2,OA=-2.5,AB=-0.5]}
\end{pspicture}
\end{document}
问题是,尽管左侧有很宽的空间,但我的图像还是被截断了(“对象”没有出现在图像的最左侧):
我该如何解决这个问题?
答案1
\lens
在内部使用一个pspicture*
环境来剪切预定义区域的外部。使用xLeft
第一个镜头的选项来修改边界:
\documentclass[pstricks]{standalone}
\usepackage{pst-optic}
\begin{document}
\begin{pspicture}(-5,-3)(21,3)
\rput(5,0)%
{\lens[lensType=CVG,lensHeight=5,lensWidth=0.5,lensGlass,
xLeft=-12,focus=3.33333333333,OA=-10,AB=1,nameO=O_1,nameF=F_1,nameA=A_1,nameB=B_1,nameFi=F'_1,nameAi={},nameBi={}]}
\rput(12.5,0)%
{\lens[lensType=CVG,lensHeight=5,lensWidth=0.5,lensGlass=true,focus=1.666666666666,nameA=A'_1,nameB=B'_1,nameO=O_2,nameAi=A'_2,nameF=F_2,nameFi=F'_2,nameBi=B'_2,OA=-2.5,AB=-0.5]}
\end{pspicture}
\end{document}
但是,使用xunit=0.6
左右可能有些意义:
\psset{xunit=0.6}
\begin{pspicture}(...)(...)
...
答案2
将图片的正确区域设置为(-3,-3)(21,3)
。另外,考虑将节点(A',B',...
)放置在易于阅读的好位置。
\documentclass{standalone}
\usepackage{pst-optic}
\begin{document}
\begin{pspicture}(-3,-3)(21,3)
\rput(5,0)
{\lens[lensType=CVG,lensHeight=5,lensWidth=0.5,lensGlass=true,focus=3.33333333333,OA=-10,AB=1,nameO=O_1,nameF=F_1,nameA=A_1,nameB=B_1,nameFi=F'_1,nameAi={},nameBi={}]}
\rput(12.5,0)
{\lens[lensType=CVG,lensHeight=5,lensWidth=0.5,lensGlass=true,focus=1.666666666666,nameA=A'_1,nameB=B'_1,nameO=O_2,nameAi=A'_2,nameF=F_2,nameFi=F'_2,nameBi=B'_2,OA=-2.5,AB=-0.5]}
\end{pspicture}
\end{document}