Posts Tagged Bezier Curve

Bezier曲線の式でLaTeXのテスト

なんか、プログラミングWindows第5版〈上〉を読んでいたら、図形を描こうってんでBezier曲線が出てきたんですよ、ええ。
で、グラフィックツールとかによく出てくるから聞いたことあるとは思うんだけど、それが最近のWinでは標準でサポートしてますよ~、と言うお話だった。
あと、1960年代Renaultの社員であるピエール・ベジェさんが車体設計用にコンピュータを導入したときに開発したからBezier曲線というのはトリビア。
ただ、初期のWindowsはそうじゃなかったらしく、Polylineと言う連続した線を引く関数と自分で計算したBezier曲線式で表示しなきゃいけなかったらしい。
ちなみに、その時使う式は下記の通り。
x(t) = (1 - t)^3x_ {0} + 3t(1 - 5)^2x_ {1} + 3t^2(1 - t)x_ {2} + t^3x_ {3}
y(t) = (1 - t)^3y_ {0} + 3t(1 - 5)^2y_ {1} + 3t^2(1 - t)y_ {2} + t^3y_ {3}
ハッハ、もはや笑いしか出てこない。
昔の人は大変だったのね・・・。

そこでめげない俺は公式が知りたくなってWikipediaへ。
それによれば、Bezier曲線は下記のような公式なんだとか。
制御点がB_ 0, B_ 1,\cdots, B_ {N-1}のとき、
\displaystyle P(t) = \sum^{N-1}_{i=0}B_ iJ_ {(N-1)i}(t)
と表現するそうな。
また、J_ {mi}(t)と言うのはバーンスタイン基底関数のブレンディング関数だそうで、
J_{ni}(t) = \left(\begin{array}{c}n \\ i \end{array}\right)t^i(1-t)^{n-1}
と言う式になるそうです・・・何がなにやらw(たすけて)

あと、今回からLaTeX(ラーテック、あるいはラテック)と言うのをWordPressに導入してみた。
もともとLaTeXはHTMLみたいに数式を記述すると、教科書とかで使うような数式を構成してくれるというページ記述言語の一種っぽい。
元々はTeX(テック、あるいはテフ)と言うものだったのが、別の人が機能アップしていったんだとか。
エディタで言うところのViとVimの関係と同じだね。
ただ、UNIXツールだけあってやっぱり癖がある。
例えばE=mc^2
$latex E=mc^2$
とか。
さっき書いた式は上から
$ x(t) = (1 – t)^3x_ {0} + 3t(1 – 5)^2x_ {1} + 3t^2(1 – t)x_ {2} + t^3x_ {3}$
$ y(t) = (1 – t)^3y_ {0} + 3t(1 – 5)^2y_ {1} + 3t^2(1 – t)y_ {2} + t^3y_ {3}$
$ \displaystyle P(t) = \sum^{N-1}_{i=0}B_ iJ_ {(N-1)i}(t)$
$ J_{ni}(t) = \left(\begin{array}{c}n \\ i \end{array}\right)t^i(1-t)^{n-1}$
$ J_{ni}(t) = \left(\begin{array}{c}n \\ i \end{array}\right)t^i(1-t)^{n-1}$

ちなみに、「WP LaTeX」というプラグインでこのLaTeXを画像化して表示させているんだけど、Codeを可視化させる「SyntaxHighlighter Evolved」にLaTeXの定義があってバッティングしたりする。
その場しのぎの解決方法としては
$latex E=mc^2$
と書く。
そうすると
[latex]latex E=mc^2[/latex]
と言う書き方にも対応できる。

ただし、[latex][/latex]の中で$latex$と書く場合、$を実体参照しなくてはいけなくて、$のASCIIコード番号(10進数)は36なので$と書く・・・。
[latex]$latex E=mc^2$[/latex]
こんな感じ。
めんどくさいねw

まぁ、お試しあれ。

[改訂第5版] LaTeX2e 美文書作成入門

著者/訳者:奥村 晴彦

出版社:技術評論社( 2010-07-07 )

定価:¥ 3,434

大型本 ( 448 ページ )

ISBN-10 : 4774143197

ISBN-13 : 9784774143194


Post to Twitter

, , , ,

No Comments