public PointF TransForm(PointF Pos, double RotRadian, SizeF Scale, PointF Move)
{
PointF Ret = new PointF();
float Sin = (float)Math.Sin(RotRadian);
float Cos = (float)Math.Cos(RotRadian);
Ret.X = ((Pos.X * Scale.Width) * Cos) - ((Pos.Y * Scale.Height) * Sin) + Move.X;
Ret.Y = ((Pos.X * Scale.Width) * Sin) + ((Pos.Y * Scale.Height) * Cos) + Move.Y;
return Ret;
}
ICAgICAgICBwdWJsaWMgUG9pbnRGIFRyYW5zRm9ybShQb2ludEYgUG9zLCBkb3VibGUgUm90UmFkaWFuLCBTaXplRiBTY2FsZSwgUG9pbnRGIE1vdmUpCiAgICAgICAgewogICAgICAgICAgICBQb2ludEYgUmV0ID0gbmV3IFBvaW50RigpOwogICAgICAgICAgICBmbG9hdCBTaW4gPSAoZmxvYXQpTWF0aC5TaW4oUm90UmFkaWFuKTsKICAgICAgICAgICAgZmxvYXQgQ29zID0gKGZsb2F0KU1hdGguQ29zKFJvdFJhZGlhbik7CgogICAgICAgICAgICBSZXQuWCA9ICgoUG9zLlggKiBTY2FsZS5XaWR0aCkgKiBDb3MpIC0gKChQb3MuWSAqIFNjYWxlLkhlaWdodCkgKiBTaW4pICsgTW92ZS5YOwogICAgICAgICAgICBSZXQuWSA9ICgoUG9zLlggKiBTY2FsZS5XaWR0aCkgKiBTaW4pICsgKChQb3MuWSAqIFNjYWxlLkhlaWdodCkgKiBDb3MpICsgTW92ZS5ZOwoKICAgICAgICAgICAgcmV0dXJuIFJldDsKICAgICAgICB9