summaryrefslogtreecommitdiff
path: root/info/examples/PSTricks_en/23-06-73.ltx
diff options
context:
space:
mode:
Diffstat (limited to 'info/examples/PSTricks_en/23-06-73.ltx')
-rw-r--r--info/examples/PSTricks_en/23-06-73.ltx48
1 files changed, 48 insertions, 0 deletions
diff --git a/info/examples/PSTricks_en/23-06-73.ltx b/info/examples/PSTricks_en/23-06-73.ltx
new file mode 100644
index 0000000000..c49cfd83c5
--- /dev/null
+++ b/info/examples/PSTricks_en/23-06-73.ltx
@@ -0,0 +1,48 @@
+%%
+%% A DANTE-Edition example
+%%
+%% Example 23-06-73 on page 421.
+%%
+%% Copyright (C) 2011 Herbert Voss
+%%
+%% It may be distributed and/or modified under the conditions
+%% of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%%
+%% See http://www.latex-project.org/lppl.txt for details.
+%%
+%%
+%% ====
+% Show page(s) 1
+%%
+\documentclass[]{article}
+\pagestyle{empty}
+\setlength\textwidth{201.70511pt}
+\setlength\parindent{0pt}
+
+\usepackage{pst-solides3d}
+
+\begin{document}
+\def\NormalSin#1#2#3{%
+ \psset{linecolor=#3}%
+ \pstVerb{
+ /xP #1 def
+ /yP #2 def
+ /zP 2 #1 Sin mul #2 Sin mul def
+ /normaleX 2 #1 Cos mul #2 Sin mul neg def
+ /normaleY 2 #2 Cos mul #1 Sin mul neg def
+ /Norme normaleX dup mul normaleY dup mul add 1 add sqrt def
+ /Nx normaleX Norme div def
+ /Ny normaleY Norme div def
+ /Nz 1 Norme div def }%
+\psSolid[object=vecteur,args=Nx Ny Nz](xP,yP,zP)}
+\psset{viewpoint=50 20 20 rtp2xyz,Decran=50}
+\begin{pspicture}(-3,-3)(3,4)
+\psSurface[algebraic,ngrid=0.2 0.2,incolor=yellow!20,axesboxed,Zmin=-2,Zmax=2,
+ fillcolor=blue!20](-3,-3)(3,3){2*sin(x)*sin(y)}%
+\NormalSin{1.57}{0.75}{red}%
+\NormalSin{1.57}{1.57}{blue}%
+\NormalSin{2}{1.57}{green}%
+\NormalSin{-1.57}{-1.57}{magenta}
+\end{pspicture}
+\end{document}