2006-01-01から1ヶ月間の記事一覧

円をベジェに変換しよう2ヽ(´∀`)ノ

参考ページ(http://www.tensyo.com/urame/prog/ALGO.HTM#C1)にもあるのですが、単位円をベジェに変換するためには ■ベジェ曲線の方程式は ■ベジェ曲線への当て嵌め方は 1) 端点が一致する事 2) 中間点が一致する事 3) 微分が t=0,t=1で一致する事 からベジェ…

円をベジェに変換しようヽ(´∀`)ノ

数学が全然できないシーラカンスでありますが、このたびは円弧を任意の大きさ任意の角度で描画する必要に迫られました。言語はC#なのでGDI+を使えばいいのですが、pinvokeしまくりなプログラムを書いている私にはそんな邪道なことはできません(-_-;)どうでも…

コードじぇねれーと4

今回で4回目になるコードじぇねれーとですが、おそらく今回が最後です。次の更新がいつになるか自分でも楽しみです^^ここで、なぜソース生成を行うのか考えてみます。ソース生成を行うと 生成元ソースと生成後ソースの同期を常に考える必要がある。 生成ソ…

コードじぇねれーと3

前回、生成先ファイルから生成元ファイルに変更を反映させるにはマクロが使えると書きました。勢いで書いてしまったのですが、よく考えてみると「生成後のソースの変更を生成元のソースに反映させる」というのとはちょっと違うかもしれません(^^ まあ細かい…

コードじぇねれーと2

前回、C#によるmix-in作成や描画クラス作成など、ソース作成プログラムの例を紹介した訳ですが、実はこれには重大な問題があります。コードジェネレートでは一般的に、生成元ソースに何らかの操作をして新たなソースを作成するわけですが、そうすると生成後…

コードじぇねれーと

[mixin in C#2.0] [id:yaneurao:20060113]↑でやねうらおさんがC#2.0でmin-inを実現しています。原理は簡単で、外部ツールによってクラス実装をマージしてやります。マージするときにpartialキーワードを使うところが素敵です。私も以前C#での2D描画クラス…

スクリプト言語Lua4

いろいろ考えた結果、おそらく一番簡単なのが、luabind用にクラスをエクスポートするジェネレータを書くことです。 class_(L, "Test") .def("hoge", &Test::hoge); luabind を使うとこんな感じで簡単にクラスを出力できるので、rubyやperlでこれをやってくれ…

大変遅れましたが、あけましておめでとうございます。日記の更新はさぼりがちですが、暇なときにでも見てやってください。 ちょうど10月頃に某企画からプログラミングの仕事を頂き、今はそれをやっている状態です。