1

この単位円 (度) を考えると:

ここに画像の説明を入力

画像を回転させて水平方向と垂直方向に反転させる関数のコードは何でしょうか?

例えば、

  • FlipHorizo​​ntal(315) = 225,
  • FlipHorizo​​ntal(45) = 135,
  • FlipVertical(315) = 45、
  • FlipVertical(135) = 225.
4

3 に答える 3

1

180を加算し、360を法とします。したがって、180を加算し、360より大きい場合は360を減算します。

angle += 180;
if (angle > 360) angle -= 360;
于 2012-03-09T15:02:13.657 に答える
0

例えば:

FlipHorizo​​ntal(315) = 225 にしたい場合は、次のようにする必要があります。

1) アルファ > パイ?

2) はいの場合、変換は 2Pi - alpha -> Pi + alpha になります。ここで、2Pi - alpha = 315 です。

3) いいえの場合、変換は alpha -> Pi - alpha になります。ここで、alpha = 45 です。

このタスクを数学のタスクのように解決する

于 2012-03-09T09:34:39.677 に答える
0
vflip(a)
{
  return 360-a;
}

hflip(a)
{
  if (a > 180)
    return 540 - a;
  else
    return 180 - a;
}

flipboth(a)
{
  return 360 - ((a>180)?540 - a:180 - a);
  //aka
  //return vflip(hflip(a));
}
于 2012-03-09T18:56:31.100 に答える