<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
<META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
<BODY id=role_body style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Arial" 
bottomMargin=7 leftMargin=7 topMargin=7 rightMargin=7><FONT id=role_document 
face=Arial color=#000000 size=2><FONT id=role_document face=Arial color=#000000 
size=2>
<DIV>&gt;Now for a more tricky example, if the<BR>&gt;cutting plane is not at 
the middle of the paraboloid? <BR><BR>&gt;Hum, probably is not possible to draw 
it. </DIV>
<DIV>&nbsp;</DIV>
<DIV>It is a very imperfect solution.<BR>The paraboloid has for equation : 
x*x+y*y=z<BR>The plan which cuts the paraboloïd has for equation x=1</DIV>
<DIV>&nbsp;</DIV>
<DIV>I cannot make more at present, sorry.</DIV>
<DIV>&nbsp;</DIV>
<DIV>\documentclass{article}<BR>\usepackage{pst-3d,pst-node,pst-plot}%<BR>\usepackage{pst-xkey}%<BR>\SpecialCoor<BR>\makeatletter<BR>\pst@addfams{pst-paraboloid}<BR>\newif\ifPstParaboloid@Inside<BR>\define@key[psset]{pst-paraboloid}{inside}[true]{\@nameuse{PstParaboloid@Inside#1}}<BR>\psset{inside=false}<BR>%<BR>\def\ParaboloidIIID{\pst@object{ParaboloidIIID}}<BR>\def\ParaboloidIIID@i{\@ifnextchar[{\ParaboloidIIID@do}{\ParaboloidIIID@do[]}}<BR>\def\ParaboloidIIID@do[#1]#2#3{{%<BR>\pst@Verb{%<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\psk@embedangle<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\psk@viewpoint<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\psk@viewangle<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\tx@SetMatrixThreeD}<BR>\psset{#1}%<BR>\def\parameters{%<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\psk@embedangle<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\psk@viewpoint<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\psk@viewangle<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\tx@SetMatrixThreeD<BR>% Vecteur 
ViewPoint<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\psk@viewpoint<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /vZ 
ED<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /vY 
ED<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /vX 
ED}%<BR>\begin@SpecialObj<BR>\addto@pscode{%<BR>1 
setlinejoin<BR>\parameters<BR>% Les couleurs<BR>/Cyan 0.5 def<BR>/Magenta 0.5 
def<BR>/Yellow 1 def<BR>% /K 0.5 def<BR>% les rayons de lumière<BR>/xLight 1 
def<BR>/yLight 0.5 def<BR>/zLight 1 def<BR>% précision du tracé<BR>/pas 0.5 
def<BR>/pas10 {pas 10 div} bind def<BR>%<BR>/NormeLight {xLight dup mul yLight 
dup mul zLight dup mul add 
add<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sqrt} 
bind def<BR>%<BR>/facette {<BR>newpath<BR>&nbsp;&nbsp;&nbsp; /Xpoint U cos V mul 
AR mul \pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; /Ypoint U sin V mul AR 
mul \pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; /Zpoint Z 
\pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; Xpoint Ypoint Zpoint 
\tx@ProjThreeD<BR>&nbsp;&nbsp;&nbsp;&nbsp; moveto<BR>U 1 U increment add&nbsp; 
{%<BR>&nbsp;&nbsp;&nbsp; /U1 exch def<BR>&nbsp;&nbsp;&nbsp; /Xpoint U1 cos V mul 
AR mul \pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; /Ypoint U1 sin V mul AR 
mul \pst@number\psunit mul def<BR>%&nbsp;&nbsp;&nbsp; /Zpoint Z 
\pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; Xpoint Ypoint Zpoint 
\tx@ProjThreeD<BR>&nbsp;&nbsp;&nbsp; lineto<BR>&nbsp;&nbsp;&nbsp; } for<BR>Z 
pas10 Z pas add {<BR>&nbsp;&nbsp;&nbsp; /Z1 exch def<BR>&nbsp;&nbsp;&nbsp; /V 
{Z1 sqrt} bind def<BR>&nbsp;&nbsp;&nbsp; /Xpoint U1 cos V mul AR mul 
\pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; /Ypoint U1 sin V mul AR mul 
\pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; /Zpoint Z1 \pst@number\psunit 
mul def<BR>&nbsp;&nbsp;&nbsp; Xpoint Ypoint Zpoint 
\tx@ProjThreeD<BR>&nbsp;&nbsp;&nbsp; lineto<BR>&nbsp;&nbsp;&nbsp; } for<BR>U 
increment add -1 U {%<BR>&nbsp;&nbsp;&nbsp; /U2 exch def<BR>&nbsp;&nbsp;&nbsp; 
/Xpoint U2 cos V mul AR mul \pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; 
/Ypoint U2 sin V mul AR mul \pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; 
/Zpoint Z pas add \pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; Xpoint Ypoint 
Zpoint \tx@ProjThreeD<BR>&nbsp;&nbsp;&nbsp; lineto<BR>&nbsp;&nbsp;&nbsp; } 
for<BR>Z pas add pas10 neg Z pas10 sub{<BR>&nbsp;&nbsp;&nbsp; /Z2 exch 
def<BR>&nbsp;&nbsp;&nbsp; /V {Z2 abs sqrt} bind def<BR>&nbsp;&nbsp;&nbsp; 
/Xpoint U cos V mul AR mul \pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; 
/Ypoint U sin V mul AR mul \pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; 
/Zpoint Z2 \pst@number\psunit mul def<BR>&nbsp;&nbsp;&nbsp; Xpoint Ypoint Zpoint 
\tx@ProjThreeD<BR>&nbsp;&nbsp;&nbsp; 
lineto<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } for<BR>closepath} 
def<BR>%<BR>/MaillageParaboloid {<BR>0 pas Hauteur pas 
sub{%<BR>&nbsp;&nbsp;&nbsp; /Z ED<BR>&nbsp;&nbsp;&nbsp; /V {Z sqrt} bind 
def<BR>0 increment 360 increment sub {%<BR>&nbsp;&nbsp;&nbsp; /U exch def<BR>% 
Centre de la facette<BR>&nbsp;&nbsp;&nbsp; /Ucentre {U increment 2 div add} bind 
def<BR>&nbsp;&nbsp;&nbsp; /Vcentre {Z pas 2 div add sqrt} bind def<BR>% normale 
à la facette<BR>&nbsp;&nbsp;&nbsp; /nXfacette {2 Vcentre dup mul mul Ucentre cos 
mul} bind def<BR>&nbsp;&nbsp;&nbsp; /nYfacette {2 Vcentre dup mul mul Ucentre 
sin mul} bind def<BR>&nbsp;&nbsp;&nbsp; /nZfacette Vcentre 
def<BR>&nbsp;&nbsp;&nbsp; /NormeN {nXfacette dup 
mul<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
nYfacette dup 
mul<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
nZfacette dup 
mul<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add 
add sqrt} bind def<BR>NormeN 0 eq {/NormeN 1e-10 def} if<BR>% test de 
visibilité<BR>&nbsp;&nbsp;&nbsp; /PSfacette vX nXfacette 
mul<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; vY nYfacette 
mul add<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; vZ 
nZfacette mul add<BR>&nbsp;&nbsp;&nbsp; def<BR>condition {<BR>facette<BR>/cosV 
{1 xLight nXfacette mul<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; yLight nYfacette 
mul<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; zLight nZfacette 
mul<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add 
add<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
NormeLight<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NormeN mul div sub} bind 
def<BR>% Cyan cosV dup mul mul Magenta cosV dup mul mul Yellow cosV mul K cosV 
mul setcmykcolor<BR>Cyan cosV mul dup mul Magenta cosV mul Yellow cosV mul 0 
setcmykcolor<BR>fill<BR>0 setgray<BR>facette<BR>stroke<BR>} if<BR>} for<BR>} 
for<BR>} def<BR>&nbsp;&nbsp;&nbsp; /Hauteur #2 def<BR>&nbsp;&nbsp;&nbsp; /AR #3 
def<BR>&nbsp;&nbsp;&nbsp; /increment 10 def<BR>/conditionGE {PSfacette 0 ge} 
def<BR>/conditionLE {PSfacette 0 le} 
def}%<BR>%<BR>\ifPstParaboloid@Inside{%<BR>\addto@pscode{%<BR>/condition 
{conditionLE} 
def<BR>MaillageParaboloid}}%<BR>\else%<BR>{%<BR>\addto@pscode{%<BR>/condition 
{conditionLE} def<BR>MaillageParaboloid<BR>/condition {conditionGE} 
def<BR>MaillageParaboloid}%<BR>}\fi%<BR>% fin du code 
ps<BR>\showpointsfalse%<BR>\end@SpecialObj}}<BR>\makeatother<BR>%<BR>\makeatletter<BR>\let\ProjThreeD\tx@ProjThreeD<BR>\def\pnodeThreeD(#1,#2,#3)#4{%<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\pst@Verb{%<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\psk@embedangle<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\psk@viewpoint<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\psk@viewangle<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
\tx@SetMatrixThreeD}<BR>&nbsp; \pnode(!#1 #2 #3 
\ProjThreeD){#4}}<BR>\makeatother<BR>\begin{document}<BR>\[<BR>\left\{<BR>\begin{array}{rcl}<BR>x&amp;=&amp;AR\sqrt{z}\cos\alpha\\<BR>y&amp;=&amp;AR\sqrt{z}\sin\alpha<BR>\end{array}<BR>\right.<BR>\]<BR>\[\textrm{Plan 
de coupe : } x=1\]<BR>\begin{pspicture}(-5,-2)(5,10)<BR>\psset{viewpoint=1 1 
0.5}<BR>\pnodeThreeD(0,0,0){O}<BR>\pnodeThreeD(0,0,10){Z}<BR>\pnodeThreeD(10,0,0){X}<BR>\pnodeThreeD(0,10,0){Y}<BR>\psline{-&gt;}(O)(X)<BR>\psline{-&gt;}(O)(Y)<BR>\psline{-&gt;}(O)(Z)<BR>\uput[180](Z){$z$}<BR>\uput[0](X){$x$}<BR>\uput[0](Y){$y$}<BR>% 
x=AR*sqrt(z)*cos(alpha)<BR>% y=AR*sqrt(z)*sin(alpha)<BR>% 
x^2+y^2=z*AR^2<BR>\ParaboloidIIID{7}{1}% hauteur, coefficient x et y<BR>% x=1 et 
y=0<BR>% zMini=sqrt(1)/AR=1/AR<BR>% AR = 
1<BR>\psclip{%<BR>\pscustom[linewidth=1mm]{%<BR>\parametricplot[plotpoints=200]{7}{1}{%<BR>&nbsp;&nbsp;&nbsp; 
/AR 1 def<BR>&nbsp;&nbsp;&nbsp; /xPt 1 def<BR>&nbsp;&nbsp;&nbsp; /zPt t 
def<BR>&nbsp;&nbsp;&nbsp; /yPt zPt AR dup mul mul xPt dup mul sub sqrt neg 
def<BR>&nbsp;&nbsp;&nbsp;&nbsp; xPt yPt zPt 
\ProjThreeD}%<BR>\parametricplot[plotpoints=200]{1}{7}{%<BR>&nbsp;&nbsp;&nbsp; 
/AR 1 def<BR>&nbsp;&nbsp;&nbsp; /xPt 1 def<BR>&nbsp;&nbsp;&nbsp; /zPt t 
def<BR>&nbsp;&nbsp;&nbsp; /yPt zPt AR dup mul mul xPt dup mul sub sqrt 
def<BR>&nbsp;&nbsp;&nbsp;&nbsp; xPt yPt zPt 
\ProjThreeD}}}%<BR>\ParaboloidIIID[inside=true]{7}{1}%<BR>\endpsclip%<BR>\pnodeThreeD(0,0,7){U}<BR>\psdot[dotsize=1mm,linecolor=red](U)<BR>\psline{-&gt;}(U)(Z)<BR>\end{pspicture}<BR>\end{document}<BR></DIV></FONT></FONT></BODY></HTML>