Out of Memory

本ブログは更新を停止しました。Aerieをよろしくお願いいたします。

目次

Blog 利用状況

ニュース

2009年3月31日
更新を停止しました。引き続きAerieを御愛顧くださいませ。
2009年2月3日
原則としてコメント受付を停止しました。コメントはAerieまでお願いいたします。
詳細は2月3日のエントリをご覧ください。
2008年7月1日
Microsoft MVP for Developer Tools - Visual C++ を再受賞しました。
2008年2月某日
MVPアワードがVisual C++に変更になりました。
2007年10月23日
blogタイトルを変更しました。
2007年7月1日
Microsoft MVP for Windows - SDKを受賞しました!
2007年6月20日
スキル「ニュース欄ハック」を覚えた!
2006年12月14日
記念すべき初エントリ
2006年12月3日
わんくま同盟に加盟しました。

カレンダー

中の人

αετο? / aetos / あえとす

シャノン? 誰それ。

顔写真

埼玉を馬鹿にする奴は俺が許さん。

基本的に知ったかぶり。興味を持った技術に手を出して、ちょっと齧りはするものの、それを応用して何か形にするまでは及ばずに飽きて放り出す人。

書庫

日記カテゴリ

System.Drawing.Point

2次元座標を表す、おなじみのPoint構造体
こいつがSystem.Drawing名前空間にあることは、ちょっとした不満である。

理由は簡単で、2次元座標とは、何も描画するときだけに使うものではないからだ。
たとえばControl.Locationプロパティに使われるが、Locationプロパティを設定することは、何かを描画しているという意識なく行われるだろう。
だが、Windowsはウィンドウの移動を裏で描画しているわけだし、また、ピクセル単位での座標指定に使うものであると拡大解釈して、なんとか自分を納得させてきた。

だが、つい先ほど、ひょんなことから、DataGridView.CurrentCellAddressというプロパティを知ってしまった。
この型はPointであるが、単位はピクセルではない。DataGridViewのアクティブセルの行および列のインデックスである。
また、DataGridViewは、この座標を用いて何かを描画することもない。
ここへきて完全に、PointがDrawing名前空間にあることを正当化する理由は消えた。

だが、いくら文句を言ったところで、Point構造体がDrawing名前空間を脱することはないだろう。
だから、ここから先は妄想の域を出ない話だ。

そもそも、Point構造体を、座標の単位を意識せずに、単なる2つの座標のペアとして扱うことは正しいのだろうか。
それとも、表すものの単位ごとに異なるデータ型を用意すべきだったのだろうか。
あるいはまた、2次元座標であるという意味さえ捨てて、Pair<int, int>のようなもので統一してしまうことは是なのだろうか。
なかなか難しい問題ではないかと思うが、どうだろう。

投稿日時 : 2008年2月17日 0:53

Feedback

# re: System.Drawing.Point 2008/02/17 6:01 かzくん

グリッド座標系を定義するってのはだめです?
だめですか?
だめですか...orz

javaなんて、java.awtパッケージにいるからねぇ
Pointを使うときは、UIツールキットに依存するなんて、なんかやな感じって思ってる。
それに比べれば、.netの方がまだまし

# re: System.Drawing.Point 2008/02/17 11:04 よもやま

「とある場所」を指し示す為にPoint構造体が存在しているとしたら
いろんな使われ方が生まれますねえ。

# re: System.Drawing.Point 2008/02/17 22:59 よねけん

どちらかというと
DataGridView.CurrentCellAddressプロパティ
が間違ったPointの使い方をしたのだと思います。

Pointをこのように使いたい誘惑にかられたことのある人は
きっと多いと思いますけど。

# re: System.Drawing.Point 2008/02/17 23:20 シャノン

> グリッド座標系を定義するってのはだめです?

グリッド座標系って何です?
単純に、グリッドの行・列インデックスによる座標系ってことですか?
であれば、Pointは「何らかの座標系による2次元座標」を表わすものでなければならないところ、Drawing名前空間にあるので、描画を目的とする座標系以外に使っちゃいかんのではないかということなのです。

> 「とある場所」を指し示す為にPoint構造体が存在しているとしたら

それなら System.Point とでもしてくれればよかったんですが、Drawing 空間にある以上は、描画にしか使うべきではないのではないか? と。

> DataGridView.CurrentCellAddressプロパティ
> が間違ったPointの使い方をしたのだと思います。

.NET Frameworkの開発チームももちろん一枚岩ではなく、ADO.NETチームは独自の哲学を持ってるなんてよく言われますが、Drawing空間とForms空間は密接に関連しているほうだと思うので、そこで齟齬が起きるようではおしまいかなと。

# re: System.Drawing.Point 2008/02/17 23:49 れい

わたしも嫌です。
DataGridView.CurrentCellAddressはすごく嫌いです。

そもそもPointで2次元座標なのが嫌です。
System.Drawing.Drawing2D内にPointがあるなら2Dでも許せますが。

Pointぐらい簡単な構造だと適当に使われちゃうんでしょうね。

# re: System.Drawing.Point 2008/02/18 9:23 Zee

わー、疑問に思ってたことが記事になってる^^

「Point構造体」と思って、自分の勝手な潜入感で、
使ってえらいことになった経験がありました。


>理由は簡単で、2次元座標とは、何も描画するときだけに使うものではないからだ。
まったくそのとおり・・・


>それとも、表すものの単位ごとに異なるデータ型を用意すべきだったのだろうか。
どうしようもなく(私の知識不足で?)、自分で定義しなおしたデータ型を作りましたけども。

# What's up to every single one, it's actually a good for me to pay a visit this website, it includes valuable Information. 2018/10/06 12:01 What's up to every single one, it's actually a goo

What's up to every single one, it's actually a good for me to pay a visit this website, it includes valuable Information.

# I like reading through a post that can make people think. Also, thanks for allowing for me to comment! 2018/10/23 20:22 I like reading through a post that can make people

I like reading through a post that can make people think.
Also, thanks for allowing for me to comment!

# I feel that is among the most vital info for me. And i'm happy reading your article. But wanna commentary on few basic issues, The web site style is great, the articles is actually great : D. Good task, cheers 2018/10/27 22:36 I feel that is among the most vital info for me. A

I feel that is among the most vital info for me. And i'm happy reading
your article. But wanna commentary on few basic issues, The
web site style is great, the articles is actually
great : D. Good task, cheers

# Wonderful items from you, man. I've keep in mind your stuff previous to and you're simply extremely great. I really like what you've acquired right here, certainly like what you are stating and the best way during which you assert it. You make it enjoya 2018/11/12 12:25 Wonderful items from you, man. I've keep in mind y

Wonderful items from you, man. I've keep in mind
your stuff previous to and you're simply extremely great.
I really like what you've acquired right here, certainly like what you are stating and the best way during which you assert it.

You make it enjoyable and you continue to take care of to stay it smart.
I cant wait to read much more from you. That is actually a great web site.

# Sling tv coupons and promo codes for november 2018 Wonderful work! This is the type of info that should be shared around the internet. Shame on the search engines for no longer positioning this publish upper! Come on over and seek advice from my website 2018/11/17 10:53 Sling tv coupons and promo codes for november 2018

Sling tv coupons and promo codes for november 2018

Wonderful work! This is the type of info that should be
shared around the internet. Shame on the search engines
for no longer positioning this publish upper!
Come on over and seek advice from my website . Thanks =) sling tv coupons and promo codes for november 2018

# I always used to study article in news papers but now as I am a user of internet so from now I am using net for content, thanks to web. 2019/04/06 22:06 I always used to study article in news papers but

I always used to study article in news papers but now as I am a user of internet so from now I am using net for content, thanks to web.

# Magnificent beat ! I wish to apprentice even as you amend your website, how could i subscribe for a weblog website? The account aided me a acceptable deal. I had been a little bit acquainted of this your broadcast provided bright transparent concept 2019/04/07 6:07 Magnificent beat ! I wish to apprentice even as yo

Magnificent beat ! I wish to apprentice even as
you amend your website, how could i subscribe for a weblog website?
The account aided me a acceptable deal. I had been a little
bit acquainted of this your broadcast provided bright transparent concept

# What a data of un-ambiguity and preserveness of valuable know-how on the topic of unpredicted feelings. 2019/06/08 19:54 What a data of un-ambiguity and preserveness of va

What a data of un-ambiguity and preserveness of valuable know-how on the topic
of unpredicted feelings.

# Hi there, its pleasant piece of writing on the topic of media print, we all be familiar with media is a impressive source of data. 2019/06/14 23:22 Hi there, its pleasant piece of writing on the top

Hi there, its pleasant piece of writing on the topic of media print, we all be familiar with media is a impressive source of data.

# Right away I am ready to do my breakfast, once having my breakfast coming again to read other news. 2019/07/09 12:06 Right away I am ready to do my breakfast, once hav

Right away I am ready to do my breakfast, once having my breakfast coming again to read other news.

# Heya i'm for the first time here. I found this board and I find It really useful & it helped me out much. I hope to give something back and help others like you aided me. 2019/07/31 9:37 Heya i'm for the first time here. I found this boa

Heya i'm for the first time here. I found this board and I find It
really useful & it helped me out much. I hope to give something back and help others like you
aided me.

# Heya i'm for the first time here. I found this board and I find It really useful & it helped me out much. I hope to give something back and help others like you aided me. 2019/07/31 9:38 Heya i'm for the first time here. I found this boa

Heya i'm for the first time here. I found this board and I find It
really useful & it helped me out much. I hope to give something back and help others like you
aided me.

# Heya i'm for the first time here. I found this board and I find It really useful & it helped me out much. I hope to give something back and help others like you aided me. 2019/07/31 9:39 Heya i'm for the first time here. I found this boa

Heya i'm for the first time here. I found this board and I find It
really useful & it helped me out much. I hope to give something back and help others like you
aided me.

# Heya i'm for the first time here. I found this board and I find It really useful & it helped me out much. I hope to give something back and help others like you aided me. 2019/07/31 9:40 Heya i'm for the first time here. I found this boa

Heya i'm for the first time here. I found this board and I find It
really useful & it helped me out much. I hope to give something back and help others like you
aided me.

# Hi there, I enjoy reading all of your article post. I wanted to write a little comment to support you. 2019/08/20 12:00 Hi there, I enjoy reading all of your article post

Hi there, I enjoy reading all of your article post.

I wanted to write a little comment to support you.

# Hi there, I enjoy reading all of your article post. I wanted to write a little comment to support you. 2019/08/20 12:01 Hi there, I enjoy reading all of your article post

Hi there, I enjoy reading all of your article post.

I wanted to write a little comment to support you.

# Hi there, I enjoy reading all of your article post. I wanted to write a little comment to support you. 2019/08/20 12:02 Hi there, I enjoy reading all of your article post

Hi there, I enjoy reading all of your article post.

I wanted to write a little comment to support you.

# Hi there, I enjoy reading all of your article post. I wanted to write a little comment to support you. 2019/08/20 12:03 Hi there, I enjoy reading all of your article post

Hi there, I enjoy reading all of your article post.

I wanted to write a little comment to support you.

タイトル
名前
Url
コメント