図形の回転について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
たけし

図形の回転について

#1

投稿記事 by たけし » 14年前

言語:C++
開発環境:Visual Studio2008
OS:Windows7

画像は使用しません。
Rectangle関数やEllipse関数などで描画した図形の中心を軸に、360度の回転運動(風車的な)をさせたいのですが・・・
PlgBltという関数を使ってみたのですが90度ずつの回転しか出来ない様ですし、
sin関数やcos関数を使っても円運動しか出来ません。

どうすれば出来るのでしょうか?
ご回答よろしくお願いします。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 図形の回転について

#2

投稿記事 by softya(ソフト屋) » 14年前

GDI+による描画という事でよろしいでしょうか?
それならSetTransformを使われると良いと思います。

「Graphics.SetTransform method (Windows)」
http://msdn.microsoft.com/en-us/library ... s.85).aspx

「VC++でGDI+ そにょ6 ~画像の描画2:中心回転~ - yuyarinの日記」
http://d.hatena.ne.jp/yuyarin/20071108/1194458341
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

たけし

Re: 図形の回転について

#3

投稿記事 by たけし » 14年前

すいません、説明不足でした。

Windows APIの関数でお願いします。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 図形の回転について

#4

投稿記事 by softya(ソフト屋) » 14年前

GDI+もWindowsAPIですよ。
GDI+ではなくGDIやるとすると自前でピクセルを回転させるしか無いと思います。

[追記]
分かりやすいかどうかは別にして、猫Winのリンクを張っておきます。
「第335章 GDI+の基礎 その1 」
http://www.kumei.ne.jp/c_lang/sdk4/sdk_335.htm
「第336章 GDI+の基礎 その2 」
http://www.kumei.ne.jp/c_lang/sdk4/sdk_336.htm
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

YuO
記事: 947
登録日時: 15年前
住所: 東京都世田谷区

Re: 図形の回転について

#5

投稿記事 by YuO » 14年前

私は使ったことがないですが,GDIにもSetWorldTransformという変換行列をDCに指定するAPIがあったりします。

閉鎖

“C言語何でも質問掲示板” へ戻る