JavaScript
初心者
数学

おっぱい関数ジェネレーターを作ってみた【初リリース】

2018年10月上旬からプログラミングスクールに通う駆け出しエンジニアです。

本格的にプログラミングを学習して約2ヶ月、たまたま昨日サービスを初リリースしました。名付けて、おっぱい関数ジェネレーター。英語でいうと、 OpPai Function Generatorです。略して、OPFG。正真正銘のクソアプリと自負しています。

たまたま、アドベントカレンダーをみていたら、12月17日のクソアプリに枠が空いていたので、これも何かの縁と思い、qiitaのクソアプリに投稿させて頂きます!

どうぞ宜しくお願いいたします。

おっぱい関数ジェネレーター

gz_opfg.gif


私が定義したおっぱい関数の解説


おっぱいの基本式

おっぱいの基本式はこちら!

y = xlogx

xlogx.png

引用:xlogxの極限,グラフ,積分など

こちらの式にパラメーター調整して作成したグラフがこちら!

スクリーンショット 2018-12-16 20.48.23.png

わりと、おっぱいに近づいていますね。次はちくび関数に移ります!


ちくび関数

ちくび関数はガウス関数(ガウシアン関数)を用いています。おっぱい関数の作り手の中では有名な関数ですね。

y = a e^{-\frac{(x-b)^2}{2c^2}}

1200px-Normal_Distribution_PDF.svg.png

引用:ガウス関数:wikipedia

こちらを、私がパラメーター調整し、上述したおっぱいの基本式に埋め込んであげます。埋め込む場所は、微分して0になる部分ですね!

おっぱいの基本式+ちくび関数のグラフがこちら!

スクリーンショット 2018-12-16 20.58.35.png

おっぱい!!!

これだけでも十分ではありますが、個人的におっぱいって、非おっぱい領域があって初めて美しいおっぱいが際立つと思っています。

刺し身をご想像してみて下さい。ただお皿にぽんっと置いてあるよりも、周りの白い大根や黄色い花があって、映えるじゃないですか!

なので、非おっぱい領域も表現することにしました。


非おっぱい領域

非おっぱい領域は、シグモイド関数を用いています。


y = {\frac{1}{1+e^{-ax}}}

220px-SigmoidFunction.png

引用:シグモイド関数:wikipedia

変数aはゲインとよばれ、図はa=1で、標準シグモイドです。実は、aが大きくなればなるほど、急激に0→1に変化します。

つまり、aを大きな値にすることで、おっぱいに影響を与えることなく、非おっぱい領域(下乳)のラインが書けるんです!

さらに、胸部分に対し、0、それ以外は1になるようなシグモイド関数をかけ合わせれば、無限大に発散する胸部分を打ち消すことが可能に!(これが1番大変だった…)

パラメーターを調整したおっぱい関数の完成形(グラフ)がこちら!

スクリーンショット 2018-12-16 21.13.06.png

正真正銘のおっぱいができました!私独自のおっぱい関数が誕生した瞬間です。


opf(y) = {\frac{0.12e^{-4(8(y-(2-4e^{-1}))^4)} + 1.2(y-2)\log(-\frac{1}{4}(y-2))-0.2(1+e^{-35(y-2)})^{-1}}{1+e^{-3(y+2)}}}


技術的な話

描画はcanvasを使用しています。あとはオプションを調整すると、貧乳から巨乳、さらに乳首、おっぱいのハリまで調整できるようにしました。

またダウンロードボタンを押すと、canvasに描画されたおっぱい関数が画像化されます。

数式の表現や画像化は、ライブラリmathjaxhtml2canvasを使っています!


最後に

初リリースがおっぱい関数ジェネレーターになるなんて、スクール入学当初は思いもしませんでした。そして、スクールにて、大きなドヨメキと感動を生むことにも成功しました。

今後もクソアプリを作っていきます!最後までご覧いただき、ありがとうございましたm(_ _)m

おっぱい関数ジェネレーター


OPFGを作れるようになるまでの道のり


元祖企画

Youtube:理系大学生が本気出しておっぱい型の関数を作ったら、誰が見てもおっぱいになったwwwww


参考URL

ニコニコ:【数学】おっぱい型の関数を作ったったwwwwwwwwwwwww