
我想更改 pst-optexp 中可用濾鏡的外觀:
每個過濾盒中有三個波。我希望帶有斜線的部分為紅色,其他部分保持黑色。我怎樣才能做到這一點?
代碼:
\documentclass[margin=0]{standalone}
\usepackage{pst-optexp}
\begin{document}
\begin{pspicture}(7,3)
\psset[optexp]{fiber=none,usefiberstyle}
\newpsstyle{Fiber}{linecolor=red,linewidth=2\pslinewidth}
\newpsstyle{Beam}{linestyle=none,fillstyle=solid,fillcolor=red,opacity=1}
\pnodes(2,2){Laser}(3,2){BS}(4,2){LP}(5,2){HP}(6,2){BP}
\optbox[optboxsize=2 1,innerlabel,position=start](Laser)(Laser){LASER}
\optfilter[filtertype=bandstop,filtersize=0.5,labeloffset=0.5,labelangle=-180](BS)(BS){BS}
\optfilter[filtertype=lowpass,filtersize=0.5,labeloffset=0.5,labelangle=-180](LP)(LP){LP}
\optfilter[filtertype=highpass,filtersize=0.5,labeloffset=0.5,labelangle=-180](HP)(HP){HP}
\optfilter[filtertype=bandpass,filtersize=0.5,labeloffset=0.5,labelangle=-180](BP)(BP){BP}
\drawwidebeam[beamwidth=0.1] {1-5}
\end{pspicture}
\end{document}
編輯:我嘗試將 linecolor=red 添加到過濾器,但整個框變成紅色。我只需要切割的波浪是紅色的。預期結果:
答案1
我新增了一行並修改了第二行。兩者都在下面的來源中進行了標記。
\documentclass[margin=0]{standalone}
\usepackage{pst-optexp}
\begin{document}
\begin{pspicture}(7,3)
\psset[optexp]{fiber=none,usefiberstyle}
\newpsstyle{FilterStyle}{linecolor=red}% <<< Define FilterStyle
\newpsstyle{Fiber}{linecolor=black,linewidth=1\pslinewidth}% <<< Set linecolor to black
\newpsstyle{Beam}{linestyle=none,fillstyle=solid,fillcolor=red,opacity=1}
\pnodes(2,2){Laser}(3,2){BS}(4,2){LP}(5,2){HP}(6,2){BP}
\optbox[optboxsize=2 1,innerlabel,position=start](Laser)(Laser){LASER}
\optfilter[filtertype=bandstop,filtersize=0.5,labeloffset=0.5,labelangle=-180](BS)(BS){BS}
\optfilter[filtertype=lowpass,filtersize=0.5,labeloffset=0.5,labelangle=-180](LP)(LP){LP}
\optfilter[filtertype=highpass,filtersize=0.5,labeloffset=0.5,labelangle=-180](HP)(HP){HP}
\optfilter[filtertype=bandpass,filtersize=0.5,labeloffset=0.5,labelangle=-180](BP)(BP){BP}
\drawwidebeam[beamwidth=0.1] {1-5}
\end{pspicture}
\end{document}