使用Graphics.DrawImage很好地支持绘制平行四边形:
Bitmap destImage = new Bitmap(srcImage.Width, srcImage.Height);
using (Graphics gr = new Graphics.FromImage(destImage))
{
Point[] destPts = new Point[] { new PointF(x1, y1),
new PointF(x2, y2), new PointF(x4, y4)};
gr.DrawImage(srcImage, destPts);
如何,你做4分(显然不支持以下内容,但这是你想要的):
Bitmap destImage = new Bitmap(srcImage.Width, srcImage.Height);
using (Graphics gr = new Graphics.FromImage(destImage))
{
Point[] destPts = new Point[] { new PointF(x1, y1), new PointF(x2, y2),
new PointF(x3, y3), new PointF(x4, y4)};
gr.DrawImage(srcImage, destPts);
}
答案 0 :(得分:1)
通常你会使用3x3矩阵来执行此操作,但Matrix类只允许您指定6个值而不是9.您可以在Direct X中执行此操作。
答案 1 :(得分:0)
在考虑3D工具如何处理它时...尝试绘制一半的三角形,然后绘制另一半的另一个三角形。所以,如果你有积分A,B,C和& d;你会绘制(使用剪裁平面)A,B,C,然后是B,C,D或类似的东西。
答案 2 :(得分:0)
答案 3 :(得分:-1)
我能找到的最近的是this information,这是非常滞后的。