使用 fcol (pst-solides3d) 的未知颜色

使用 fcol (pst-solides3d) 的未知颜色

我正在使用 pst-solides3d 包以以下方式绘制多面体:

\begin{pspicture}[showgrid=false](-2,-0.5)(1.5,2.7)
\psset{viewpoint=26 10 5,Decran=60}
\psSolid[object=new, linewidth=0.7\pslinewidth,
action=draw*,
sommets= 
(long chain of coordinates which I do not insert here)
faces={
(long chain of vertices which I do not insert here)
}]%
\uput[270](0,0){$n=5$}
\end{pspicture}

我想将其中一个面涂成浅灰色。我可以通过向 \psSolid 添加选项“fcol=2 Gray”来为一个面(比如面号 2)着色。这可行;但是,颜色对我来说太暗了。如果我理解正确的话,“fcol”中允许的颜色名称是 dvips 颜色(Gray 是这些颜色之一)。但是,在 dvipsnames 中预定义的 68 种颜色中,没有浅灰色。在 pst-solides3d 文档中,有一个在 svgnames 中定义的颜色列表,其中包含所需的颜色“LightGray”。在该列表之前,写了以下内容:

当给出选项 svgnames 时,PSTricks 会识别以下颜色。这些颜色无法通过文件 solides.pro 识别:我们可以直接通过选项 fcol 使用它们。这些颜色由 xcolor 包提供。

我想知道我必须做什么才能使“fcol=2 LightGray”起作用。在我担心这个问题之前,我的 .tex 文件的序言(开头)如下所示:

\documentclass[singlecolumn, nofootinbib, notitlepage]{revtex4-1}

\usepackage{amsthm}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{bbding}
\usepackage{enumerate}
\usepackage{datetime}
\usepackage{pstricks}
\usepackage{pst-solides3d}
\usepackage{pst-poly}
\usepackage{pst-3dplot}

我尝试修改我的前言以使“fcol=2 LightGray”起作用,但没有成功。例如,我尝试了以下内容:

\documentclass[singlecolumn, nofootinbib, notitlepage]{revtex4-1}

\usepackage{amsthm}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{bbding}
\usepackage{enumerate}
\usepackage{datetime}
\usepackage[svgnames]{pstricks}
\usepackage{xcolor}
\usepackage{pst-solides3d}
\usepackage{pst-poly}
\usepackage{pst-3dplot}

这没有帮助:我收到错误消息“Error: /undefined in LightGray”。为 xcolor 提供选项“svgnames”也无济于事:错误消息相同。为 pst-solides3d 提供选项“svgnames”会产生错误“!Latex 错误:包‘pst-solides3d’的未知选项‘svgnames’。”

我不知道该怎么办。有人能帮助我吗?

答案1

有几种可能性:

\documentclass{article}
\usepackage{pst-solides3d}
\definecolor{myColA}{gray}{0.6}
\definecolor{myColB}{cmyk}{0.6,0.2,0.8,0.1}

\begin{document}
\psset{Decran=20,viewpoint=20 0 20 rtp2xyz,lightsrc=viewpoint}

\makeatletter
\begin{pspicture}(-4,-3)(4,2)
\psSolid[numfaces=all,
         object=anneau,
         fillcolor=yellow,
         h=1.5,r1=4,r0=3,
         color1=myColA,
         fcol=68 (color1) 
              72 (0.7 setgray) 
              76 (\pst@usecolor{myColB})]
\end{pspicture}

\end{document}

在此处输入图片描述

下次请提供完全的例子而不仅仅是片段!

相关内容