球体の陰影

球体の陰影

2番目の答えは

陰影付きの球体を描くにはどうすればいいですか?

黄色の影付きの球体です。これを白黒にするにはどうすればいいでしょうか? ご協力をお願いします! 1 時間ほど試して、値をランダムに変更してみましたが、コードが理解できないため、何も達成できませんでした。

答え1

色はここで設定されます:

%% currently there is just one number in the stack.
%% we need three corresponding to the RGB values
dup
0.4

色を変更したい RGB 値を入力する必要があります。たとえば、次のように設定します。

dup 
0.4 
0.5

ピンク色のようなものが出てきます。

RGB は赤、緑、青の原色を意味し、この表記では 0 (= 光なし) から 1 (= 完全な光) までの値を持ちます。例:

r g b 
0 0 0 = black
1 0 0 = red
0 1 0 = green
0 0 1 = blue
1 1 1 = white

3 つの値がすべて 0 から 1 までの値に等しい場合は、グレーのスケールが得られます。

コメントでおっしゃったように、RGB をすべて同じにすると陰影が失われます。他のコマンドを変更することで希望する結果が得られると思いますが、それらは PostScript 言語のサブセットの簡略化された形式であるため、わかりません。Ti_k_Z\pgfdeclarefunctionalshadingおよび PGF マニュアルで検索し、セクション 3.9.4 [こちら] を参照してください (http://www.adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/pdf_reference_1-7.pdf)を参照してください。

代わりに、よりシンプルなソリューションを使用することをお勧めします。CroCo のソリューションが気に入らない場合は、次のようなものを試してください (探しているものが見つかるまで値を変更します)。

\documentclass[border=5mm]{standalone}
\usepackage{tikz}

\pgfdeclareradialshading{sphere}{\pgfpoint{0.5cm}{0.5cm}}%
   {rgb(0cm)=(1,1,1);
    rgb(0.9cm)=(0.7,0.7,0.7);
    rgb(1cm)=(0.5,0.5,0.5);
    rgb(1.05cm)=(0,0,0)}

\begin{document}
    \pgfuseshading{sphere}
\end{document}

ここに画像の説明を入力してください

答え2

これがあなたが探しているものですか?

ここに画像の説明を入力してください

\documentclass[border={10pt}]{standalone}
\usepackage{tikz}  

\begin{document}

\begin{tikzpicture}
[ 
  sphereBlack/.style={ball color = black},
  sphereYellow/.style={ball color = yellow}
]

\shade[sphereBlack]  (0,0) circle (1cm); 
\shade[sphereYellow] (3,0) circle (1cm); 
\end{tikzpicture}

\end{document}

関連情報