a の形の画像System.Drawing.Bitmap
と 4 つの点の形の四角形がVector2
あります (自明に s に変換されるPointF
s )。
これらのポイントを使用して、画像の一部を切り抜きたいと考えています。私が望むものにかなり近いこの答えを見つけましたが、そこから正しいマトリックスを取得する方法がわかりません。
ここに私がこれまでに持っているものがあります:
protected static Bitmap CropImage(Bitmap src, Vector2[] rect)
{
var width = (rect[1] - rect[0]).Length;
var height = (rect[3] - rect[0]).Length;
var result = new Bitmap(M2.Round(width), M2.Round(height));
using (Graphics g = Graphics.FromImage(result))
{
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
using (Matrix mat = new Matrix())
{
// ????
}
}
return result;
}
rect から適切な変換行列を取得するにはどうすればよいですか?