Home > Tags > C#
C#
ちゃんと数学を勉強しておけばよかった。
- 2008-12-11 (木)
- Study
人間というものは、恥ずかしくて死にそうになることが、よくある。たとえば、"てけとーにマウスで引いたギザギザな線を微妙にきれいな曲線で描画したい(http://www.be-styles.jp/archives/2002)"みたいな記事だ。ほんとに、クソみたいなコードだ。マウスで絵を描いたとき、入力された点をただ直線で結ぶとギザギザになってしまう。それを、"不要な点を省く&曲線で繋ぐ"ことで滑らかな曲線にするというアイデアはともかくその実装方法は赤面ものだ。
ってことで、まともに考えてみた。
- Comments: 0
- Trackbacks: 0
[C#] 拡張メソッドでちょっとコードをきれいにする
- 2008-12-09 (火)
- Study
点と点の距離や中点をとる場合などに、Point型をPointF型に簡単に変換できたら便利。そのためのメソッドは、こんな感じになるだろう。
public PointF PointToPointF(Point p)
{
return new PointF((float)p.X, (float)p.Y);
}
けど、こんなメソッドが増えてくると、なんだか全体のコードの見通しが悪くなって気持ち悪い。ユーティリティー系メソッドを別ファイルにしてまとめておくというのもアリだが、PointToPointF() という名前がなんともはや(Delphi ならこれでもいい気がするけど)。
できれば、i.ToString() みたいに p.ToPointF() なんて書ければいいのだが。
C#3.0 なら拡張メソッドを使うことで、簡単に(継承を使わずに)既存のクラスへ新しいメソッドを付け加えることが出来るらしい。
- Comments: 0
- Trackbacks: 0
てけとーにマウスで引いたギザギザな線を微妙にきれいな曲線で描画したい
- 2008-12-04 (木)
- Study
経済学で使う無差別曲線をてきとーに書けるソフトがほしいけど、そんな都合のいいものはないらしい。んだらば自分で作るしかないんだけど、てけとーにマウスで引いたギザギザな線が微妙にきれいなるようにするのってどうすりゃいいんだろうか。さっぱり訳わかめ。
とりあえず、サンプルを作ってみた。左みたいに適当に書くと、右のようにちょっときれいになる。
- Comments: 0
- Trackbacks: 1
C# で SQLite を使う
- 2008-11-24 (月)
- Diary
System.Data.SQLite <http://sqlite.phxsoftware.com/> が有名だそうな。
なるほど、アーカイブを落として、DLLをプロジェクトの参照に加えるだけで簡単に SQLite を利用することができました。
ちょっと、軽いメモソフトを作りたいんですよね。
Wiki的な管理ができて、すべてのメモを単一ファイルで持ち運べるとうれしい。
ぜひタグ機能もほしいんだけど、(スマートな)実装はなかなか難しい感じ。もう少し勉強せねば。
ついでに、ここのメモを好きな時に WP-XML-RPCLib & WP-XML-RPCCLib – SharpLab. <http://blog.sharplab.net/computer/cprograming/wp-xml-rpclib/1383/> でそのままブログにつっこめたら、便利かなぁとか何とか考えています。
- Comments: 0
- Trackbacks: 0
[C#] システムフォントを列挙する
- 2008-07-13 (日)
- Programming
foreach (FontFamily family in FontFamily.Families)
{
if (family.IsStyleAvailable(FontStyle.Regular))
comboBoxFonts.Items.Add(family);
}
comboBoxFonts.SelectedIndex
= comboBoxFonts.Items.IndexOf(this.Font.FontFamily);
System.Windows.Drawing.FontFlamiliy で取れるみたいです。(via C# Programming)
System.Windows.Media にも似たようなクラスがありますね。WPFのときに使うのでしょうか。フォントによってはレギュラーもサポートしていないものがあって、描画しようとするとエラーがでるのでチェックの上弾いてます。
コレだけじゃ面白くないので、コンボボックスにしてみるありがちな例
- Comments: 0
- Trackbacks: 0
[C#] Web上のイメージをコントロールに描画する
- 2008-07-08 (火)
- Programming
private void button1_Click(object sender, EventArgs e)
{
Stream s = new WebClient().OpenRead("http://www.be-styles.jp/mainichi.jpg");
Bitmap b = new Bitmap(s);
using (Graphics g = this.CreateGraphics())
{
g.DrawImage(b, new Point(0, 0));
}
}
System.Net を using すること。
WebClient で画像のURLを開くと、stream が帰ってくる。 stream から Bitmap を生成できるので、あとはお気に召すまま。
- Comments: 0
- Trackbacks: 0
[C#] テキスト内のURLにリンクをはる
- 2008-07-08 (火)
- Programming
using System.Text.RegularExpressions;
static string MakeUrlLink(Match m)
{
return string.Format("<a href={0}>{0}</a>", m.ToString());
}
Regex r = new Regex("https?://[-_.!~*'()a-zA-Z0-9;/?:@&=+$,%# ]+");
text = r.Replace(text, MakeUrlLink);
もしかして MakeUrlLink を定義しなくても書ける…?それはおいおい勉強していくということで。
- Comments: 0
- Trackbacks: 0
Home > Tags > C#

