No.1ベストアンサー
- 回答日時:
実験してないので違ってるかもしれませんが…
> ウインドウは描画関数で指定する座標系
> ビューポートはデバイス側の座標系
たとえば
Rectancle(hdc, 0, 0, 300, 200);
は幅300ピクセル、高さ200ピクセルの長方形を描けという意味になります。
画面解像度が2倍になったとき(ピクセル数が同じなので)
長方形の見た目は半分の大きさになります。
SetMapMode(hdc, MM_LOMETRIC);
Rectancle(hdc, 0, 0, 300, 200);
は幅30mm、高さ20mmの長方形を描けという意味になります。
この場合何ピクセルの長方形が描かれるかは画面解像度に依存します。
画面解像度が2倍になれば、使用するピクセル数も2倍になり
大体同じ大きさの長方形を描きます。
描画関数(Rectancle)に渡している(0,0,300,200)という値は論理座標で、
実際に何ピクセル描かれるかが物理座標(デバイス座標)です。
> SetWindowOrg()と
> SetViewportOrg()の違いがいまひとつ分かりません。
表示する位置をずらすという機能についていえば同じですが、
引数の座標系が違います。
両方を同時に使うことは避けるべきです。
SetWindowOrgEx(hdc, -100, -200, NULL);
とすれば、ウィンドウの左上(もしくは左下)が論理座標(-100, -200)になります。
表示位置は全体的に右下(もしくは右上)にずれます。
(上にずれるか下にずれるかはSetMapModeによる)
SetViewportOrgEx(hdc, 100, 200, NULL);
とすれば、論理座標(0, 0)を物理座標(100, 200)に描こうとするので
表示位置は全体的に右下にずれます。
この回答へのお礼
お礼日時:2006/06/16 21:44
お返事ありがとうございます。
SetWindowOrgとSetViewportOrgは同時に使うものだと考えていました。論理とデバイスそれぞれの座標で位置を指定できるものだったんですね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 2次関数y=ax^2のグラフは点A(4,2)を通っている。y軸上に点BをAB=OB(Oは原点)となる 1 2022/04/08 00:05
- 大学受験 赤しかく2つについてです。1つ目の赤しかくについて自分は最初A(a、b)B(−2C、0)C(2C、0 1 2022/07/03 14:01
- Microsoft ASP ASP.NETや.NET、C#とかVBとか 2 2022/05/16 21:16
- 物理学 ベクトルと座標系につきまして 1 2022/04/03 06:23
- Excel(エクセル) いつもお世話になっております。 円の直径290、半径145 ですが、 添付のエクセルように 座標に中 2 2023/03/14 03:34
- Java java 引数 戻り値のあるメソッド 3 2023/02/12 06:23
- 数学 線形代数の2次元直交座標系、極座標系についての問題がわからないです。 2 2022/07/16 20:42
- 美術・アート 絵柄や塗り方の悩み 3 2023/03/11 00:31
- 統計学 標本平均の分布 9 2022/06/08 09:47
- Excel(エクセル) Excel VBAについてです。 少しだけ知識はあるのですが、 うまくいかなかったので 質問させてい 3 2022/09/13 18:40
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
グラフの交点の求め方(Excel)
-
閉図形の座標の配列が右回りか...
-
選択範囲の座標値の抽出
-
コントロールのドラック&ドロップ
-
OpenGLの線の太さ
-
ピクチャボックスの座標取得
-
3次元空間上の2つの座標から...
-
c言語でキーボードから2点の座...
-
円周上に固定点を作る方法
-
MATLABの画像処理、2本の直線の...
-
PPTのVBA スライド右下端の座...
-
複数の回転する長方形の衝突判定
-
始点、終点の二つの座標と半径...
-
精度の荒いOCR文書からのデータ...
-
atan2関数 ベクトル計算・・・
-
y=x^2の座標をプロットするプロ...
-
ワード上Shapeの位置情報を統一...
-
ゲームプログラミングにおけるs...
-
DirectXを使ってテクスチャ(画...
-
C# 2つのベクトルのなす角を二...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
グラフの交点の求め方(Excel)
-
マインクラフト(pc版)で座標...
-
エクセルで回転する座標の出し方
-
エクセルである点からの距離で...
-
3次元空間上の2つの座標から...
-
閉図形の座標の配列が右回りか...
-
ダイアログ内コントロールの位...
-
始点、終点の二つの座標と半径...
-
座標を持った平面範囲に座標を...
-
空間上の二点を結ぶ直線上に任...
-
エクセルシート上のマウスポイ...
-
多角形の内部かどうか判定する方法
-
ワード上Shapeの位置情報を統一...
-
Excel VBA で自在に図形を変化...
-
OpenCvSharp4による画像判定解...
-
C言語 配列で座標
-
以下のプログラムは重心を求め...
-
シーケンサー(PLC?)で制...
-
交差する2線分の交点座標の求め方
-
VB6のPrinter.ScaleWidth に対...
おすすめ情報