hirax.net::inside out::2011年11月06日

最新記事(inside out)へ  |   年と月を指定して記事を読む(クリック!)

2011年10月 を読む << 2011年11月 を読む >> 2011年12月 を読む

2011-11-06[n年前へ]

Mathematica版「おっぱい(曲面)方程式」で「あなた好みのおっぱい」を作る!? 

 「Wolfram CDF PlayerをMathematicaとして使う方法」をRubyでもっと簡単にしてみたので、次は数式処理のみならず汎用処理が可能なプログラム言語であるMathematicaで、何かの処理をさせてみたくなります。まず手始めに、何かをしてみようとなると「オッパイ的なHelloWorld」を作ってみたくなります。

 タイムリーなことに「おっぱい(曲面)方程式を作り出した」という世紀の大発見がありました。そこで、まずはハロー・オッパイということで、Mathematica版「おっぱい(曲面)方程式」を書き、「Wolfram CDF PlayerをMathematicaとして使う方法」をRubyでもっと簡単にしてみたのやり方を使い、Universal Mathematica Manipulator 3でおっぱい(曲面)方程式を描いてみました。描いた結果が右上画像です。

 さて、最初のプログラム(HelloWorld)を書いたなら、次はちょっとカスタマイズして「プログラミングの楽しさを知る」というのが、学びの王道です。そこで、少しだけMathematicaの機能を使ってカスタマイズしてみた結果が下のようすです。「おっぱい肌色方程式」を曲面を塗りつぶす色に対して適用させることで、もっと写実的!?にビジュアリゼーション(可視化)してみました。

 「オレもやりたい」と思ったならば、やることはとても簡単です。「Wolfram CDF PlayerをMathematicaとして使う方法」をRubyでもっと簡単にしてみたのやり方(もしくは「Wolfram CDF PlayerをMathematicaとして使う方法」のやり方)でWolfram CDF PlayerをMathematicaとして使うことができるようにして、後は下記のコードを貼り付け・演算ボタンを押すだけ、です。もちろん、「Mathematicaを持っている」という人であれば「下記のコードをコピペするだけ」で終わりです。それだけの作業で、グリグリとおっぱいを後ろから前から眺めることができます。

Plot3D[
1/8 
  (6 Exp[-((2/3 Abs[x] - 1)^2
    + (2/3 y)^2) - 1/3 (2/3 y + 1/2)^3]
    + 2/3 Exp[-2.818^11 ((Abs[2/3 x] - 1)^2
    + (2/3 y)^2)^2] + 2/3 y - (2/3 x)^4),
 {x, -3, 3}, {y, -3, 3},
 PlotRange -> {-2, 1},
 BoxRatios -> {6, 6, 4},
 PlotPoints -> {100, 100},
ColorFunctionScaling -> False,
 ColorFunction -> Function[{x, y, z},
   If[Sqrt[(Abs[x] - 3/2)^2 + y^2] < 0.45,
    Blend[{Pink,LightPink},0.5],LightPink]],
 Mesh -> None
 ]
 "If[Sqrt[ (Abs[x] - 3/2)^2 + y^2 ] < 0.45, Blend[ {Pink, LightPink}, 0.5], LightPink]],"辺りの記述には、各自それぞれ意見があることでしょう。たとえば"0.45"という部分、あるいはBlend[ {Pink, LightPink}, 0.5]の比率(色)に関する部分…そうしたパラメータ(関数)をほんの少し変えただけで、驚くほど印象が変わるものです。たとえば、"0.45"を"0.35"に、"0.5"を"0.7"に変えてみたのが、右の「おっぱい曲線方程式」です。これだけでも、ずいぶんとニュアンスが変わって見えるものです。0.3でも0.4でもなく、0.45(とか0.35)にするといった小数点以下さらに数桁にこだわるのが「匠(たくみ)のワザ」なのです。…こうしたカスタマイズを繰り返すことで「あなた好みのおっぱい(曲面)方程式」を作り出してみるのも興味深いのではないでしょうか。

 というわけで、ハロー・グッバイならぬ、ハロー・おっぱい…じゃなかった(「Wolfram CDF PlayerをMathematicaとして使う方法」を利用した)Mathematica版ハロー・ワールドを今日は学んでみました。 それにしても、おっぱいの世界は実に奥が深いものですねぇ。


 この続編が、下記の「エクセルで「バスト(曲面)方程式」を描いてみよう!?」です。
 Mathematica(もしくはCDF Player活用)は敷居が高いだろうから、エクセル版も作ってみました。というわけで、エクセルで「バスト(曲面)方程式」を描いてみよう!? (シート付)です。

エクセルで「バスト(曲面)方程式」を描いてみよう!?


*各種環境へのポーティング(移植)例:
  1. Mac OSX Grapher版
  2. Wolfram Mathematica版
  3. Microsoft Excel例
  4. Maxima版
  5. R 版

Mathematica版「おっぱい(曲面)方程式」で「あなた好みのおっぱい」を作る!?Mathematica版「おっぱい(曲面)方程式」で「あなた好みのおっぱい」を作る!?Mathematica版「おっぱい(曲面)方程式」で「あなた好みのおっぱい」を作る!?Mathematica版「おっぱい(曲面)方程式」で「あなた好みのおっぱい」を作る!?Mathematica版「おっぱい(曲面)方程式」で「あなた好みのおっぱい」を作る!?