SharpDxを利用して、ラインを回転(アフィン変換)し、描画する

SharpDxを利用して、ラインを生成し、生成したラインを回転(アフィン変換)して描画します。

SharpDxでは、一般的に、PathGeometryでラインを生成し、生成したラインの回転(アフィン変換)にTransformedGeometryクラスを利用しますが、TransformedGeometryでは、回転後の座標が取得できません。
※どうしても変換後の座標が欲しかったので…

そこで、今回は、GraphicsPathでラインを生成し、生成したラインの回転(アフィン変換)に
Matrix.RotateAt()を利用します。GraphicsPathの場合は、変換後の座標が取得できるので、
変換後の座標から、PathGeometryを生成し、ラインの描画を行います。

2.参考ソース

以下参考ソースです。

初期処理

画像の生成

GraphicsPathでラインを生成し、生成したラインを回転(アフィン変換)させて、
変換後の座標から、PathGeometryを生成し、ラインの描画を行います。

画像の表示

読み込んだ、SharpDX.Direct2D1.Bitmap型のデータを、
画像に表示するためのWinRenderTargetにドローし、画面に表示します。

Print Friendly, PDF & Email

シェアする

  • このエントリーをはてなブックマークに追加

フォローする