[1]. z=1+x+y-3(x-y)y ,0<y<1, y<x<y+1 の表す領域
曲面は plot::Surface を使ってかきますが,「変域は x=0..1 のように定数でないといけない」ので
領域によっていろいろ工夫が必要になります.この場合は次のようにして簡単に描くことができます.
与式は「z=1+(x-y)+2y-3(x-y)y (0<y<1, 0<x-y<1)」と同値.よって t=x-y とおくと x=y+t だから
(x,y,1+(x-y)+2y-3(x-y)y) (0<y<1, 0<x-y<1) <-> (y+t, y,1+t+2y-3ty) (0<y<1, 0<t<1)
ゆえに,(x,y,z)=(x,y,1+x+y-3(x-y)y) ,0<y<1, y<x<y+1 という曲面は次のようになります.

これに側面を付け加えます.例えば 平面x=y による surface1 の切り口は 「(x,y,z)=(x,x,z), 0<x<1, 0<z<1+2x」 ですが 変域は定数でないといけないので 相似パラメータを使って,「(x,y,z)=(x,x,(1+2x)v),0<x<1,0<v<1」のようにします.同様に他の側面も作って 1つにまとめます. これに断面「y=k」を付け加えます.k がアニメーションパラメーターになります.

   

一般の曲面で 「(x,y,f(x,y)), a<x<b, 0<y<g(x) 」という場合も 「(x, t*g(x), f(x,t*g(x)), a<x<b, 0<t<1」とすれば,曲面を描くことができます.

[2]. x2+y2<z2, z2<x, 0<z<1 で表される領域を描きます. まず 単純に 円すい「x2+y2<z^2」と放物面「z2<x」, 平面「z=0」, 「z=1」の4つの曲面を描くことにします.
plot::ZRotate(f(x),x=a..b) は z=f(x)をz軸の周りに回転した曲面を描きます.これを使って円錐を描きます.
plot::Surface を使って 放物面と平面を描きます.
   

今度は放物面と円すいで囲まれる立体だけを表示してみます.そのために [x2+y2=z2 ,x=z2]から z を消去すると x2+y2-x=0 これは中心が(1/2,0,0)で半径が1/2の円を表すので,この円の内部の領域は 「(x,y)=(v(1+cos(t)), v sin(t)) v=0..1/2, t=0..2*PI」と表されます. (v は半径とは違います. 単なるパラメータです.) このように 変域が定数の変数 v,t を使って x,y が表されれば 後は 簡単です. 放物面の式に代入して 「z=sqrt(x)=sqrt(v(1+cos(t))=sqrt(2v)cos(t/2)」. 円錐面の式に代入して 「z=sqrt(x2+y2)=v*sqrt((1+cos(t))2+sin2(t))=2v cos(t/2)」 よって,次のようにすれば 放物面と円すいで囲まれる立体だけが表示されます.
   

[3]. x+y+z<3, x+2z<4, y-z<1, x>0, y>0, z>0 の表す領域
6個の平面によって囲まれる立体なので  多角形を描く plot::Polygon3d を使います.これは 任意の数の点をつなげて多角形を描くことができますが,「内部の塗りつぶし」は三角形に限ります.(同一平面上に有ってもだめです.) よって plot::Polygon3d では 三角形を何個かつなげて4角形や,5角形を描かないといけません. これは5角形の時には3個も三角形を書くことになり やや面倒なので, 同一平面上にある任意の凸多角形を塗りつぶせるように プログラムします.
   

このプログラムを使って 平面を6個作ります.
   

この立体を平面z=tで切った断面を描きます.断面は 0<t<1 のときは 4点 (0,0,t), (3-t,0,t), (2-2t,t+1,t), (0,t+1,t) で囲まれる四角形 section1, 1<t<2 のときは 4点 (0,0,t), (4-2t,0,t), (4-2t,t-1,t), (0,3-t,t) で囲まれる四角形 section2 となります. アニメーションにしたいので,先に作った myPolygon3d に TimeRange を付け加えます.さらに 今度は 断面をはっきり見せるために 多角形の「外周」も付け加えます.「外周」は plot::Polygon3d でも 任意の点をつなげて作ることができますが,辺によって色を変えたいのでLine3dを使ってみます. (plot::Polygon3d でも LineColorFunction を定義すれば線分によって色を代えることもできます.) fillcolor は 面の色,linecolors は辺の色です .
0..5秒は section1 が , 5..10秒は section2 が見えるアニメーションです.
   

[4]. xyz空間で P(t,sin(t),0), Q(t, t+1,0) とし,線分PQの真上に点Rを 三角形PQRが正三角形になるように取ります.
0<t<pi のとき 三角形PQRの通過する領域を描きます.まず P,Q,R の座標を関数にします.

これを使って 三角形PQRを作って plot します.(t が入っているので アニメーションになります.)
   

これでは よく分からないので,三角形をつなげて描きます.TimeRange を設定して,「VisibleBeforeBegin=FALSE」 と共に plot すれば 次々に三角形が加わっていくアニメーションになります.
   

さらに 三角形PQRの通過する曲面を描きます.そのためにまず Pの y 成分を対応させる関数 Py を作ります. これは Py:=t->sin(t) としても良いですが,先に P:=t->[t,sin(t),0] としたので Py:= t-> op(P(t),2) で作ります. 同様にして Pのz成分を対応させる関数 Pz, Qのy成分を対応させる関数Qyなども作ります. これを使って 「線分PQの描く surface1 」,「QRの描く surface2」, 「PRの描く surface3」 を作ります.
   

さらにもう一個パラメータaを増やすと,今度は surface1, surface2, surface3 の「アニメーション」になります.
   

[5]. xy平面上の原点を中心とする半径1の円C上の点Pと,平面z=2上の点A(0,0,2)を中心とし半径1の円D上の点をQとする. Pが円C上を動く時 線分PQの描く曲面. ただし Qの位相(角)は Pの位相より90度大きいとします. まず PとQの座標を関数にします. 次に線分PQを作って TimeRange も設定し アニメーションにします.
   


[6]. 空間での平面図形の回転体. A(1,1,4),B(3,-1,0),C(3,1,0)を3点とする三角形ABCと ,そのyz平面への正射影の三角形A'B'C' を回転させる.2つの回転体の体積は等しい. plot::Polygon3d をつかって三角形を2つつくり,それを Rotate3d でアニメーションにする.
   

z=k による断面積が等しいので この二つの回転体の体積は等しい.それが分かるように z=1 による断面の線分を作って回転させた. しかし,Rotate3dでやると 「軌跡が残らない」ので,数列生成子「$」を使ってたくさんの線分を作成し,それらのTimeRangeを変えることにより 次々に線分が移っていく様子が見えるようにした.このとき VisibleBeforeBegin=FALSE にして TimeRange に入る前には見えないように設定する. (default では VisibleBeforeBegin=TRUE になっている.) アニメーションは20秒続くが,19秒から20秒の間に線分を囲む円を作り,線分の軌跡がよく分かるようにした.