ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

ボーイの曲面

この例では、ボーイの曲面を作成する方法を示します。

1901 年に David Hilbert は、特異点のない 3 次元空間に射影平面を組み込むことが不可能であることを明示的に証明する任務を Werner Boy に課しました。代わりに Boy はこの曲面を携えて戻ってきました。その曲面には三重点がありますが、特異点は存在しません。詳細は、Wikipedia http://www.wikipedia.org でボーイの曲面についての記事を参照してください。

n = 128;
u = linspace(0,pi,n);
v = linspace(0,pi,n);

u = repmat(u,n,1);
v = repmat(v',1,n);

x = cos(v).*sin(u);
y = sin(v).*sin(u);
z = cos(u);
f = 1/2*((2*x.^2-y.^2-z.^2) + 2*y.*z.*(y.^2-z.^2) +  ...
    z.*x.*(x.^2-z.^2) + x.*y.*(y.^2-x.^2));
g = sqrt(3)/2 * ((y.^2-z.^2) + z.*x.*(z.^2-x.^2) + x.*y.*(y.^2-x.^2));
h = (x+y+z).*((x+y+z).^3 + 4*(y-x).*(z-y).*(x-z));

clf
s = surf(f,g,h/10,u, ...
    'LineStyle','none', ...
    'FaceLighting','gouraud', ...
    'FaceColor','interp');
colormap jet;

axis off;
daspect([1 1 1]);
l1 = light;
l2 = light;
lightangle(l1,70,-40);
lightangle(l2,-30,80);
view(-40,32);
camzoom(1.5);

この情報は役に立ちましたか?