Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add a missing constructor for struct RotatedRect from three vertex points #1576

Merged
merged 4 commits into from
Jun 5, 2023

Conversation

n0099
Copy link
Contributor

@n0099 n0099 commented May 29, 2023

fix #1575
or we may just delegate it to the native implement that already done in OpenCV.

@n0099
Copy link
Contributor Author

n0099 commented May 29, 2023

Here's a test:

for (var i = 0f; i < 360; i += 1)
{
    var rt1 = new RotatedRect(new(50.5f, 50.5f), new(100.5, 100.5), i);
    var p = rt1.Points();
    var rt2 = new RotatedRect(p[0], p[1], p[2]);
    var tolerance = 0.0001;
    if (Math.Abs(rt2.Angle - rt1.Angle) > tolerance
        || Math.Abs(rt2.Center.X - rt1.Center.X) > tolerance
        || Math.Abs(rt2.Center.Y - rt1.Center.Y) > tolerance
        || Math.Abs(rt2.Size.Width - rt1.Size.Width) > tolerance
        || Math.Abs(rt2.Size.Height - rt1.Size.Height) > tolerance)
    {
        Console.WriteLine("1 rtAngle={0} rtCenterX={1} rtCenterY={2} rtWidth={3} rtHeight={4}\n"
                          + "2 rtAngle={5} rtCenterX={6} rtCenterY={7} rtWidth={8} rtHeight={9}\n",
            rt1.Angle, rt1.Center.X, rt1.Center.Y, rt1.Size.Width, rt1.Size.Height,
            rt2.Angle, rt2.Center.X, rt2.Center.Y, rt2.Size.Width, rt2.Size.Height);
    }
}

The angle will wrapping around from -45 to 44 degrees, and restart until the original angle reach 0:

1 rtAngle=45 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-45 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.49999

1 rtAngle=46 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-44.000008 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=47 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-43 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.500015

1 rtAngle=48 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-42 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=49 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-41 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=50 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-40.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=51 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-39 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=52 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-38 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=53 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-36.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=54 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-35.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=55 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-35 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=56 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-34 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=57 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-32.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=58 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-31.999994 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=59 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-30.999994 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=60 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-30 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=61 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-28.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=62 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-27.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=63 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-26.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=64 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-26.000006 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=65 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-25.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=66 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-24 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=67 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-22.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=68 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-21.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=69 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-20.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=70 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-19.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=71 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-19.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=72 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-18.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=73 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-17 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=74 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-16 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=75 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-15 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=76 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-14 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=77 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-12.999999 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=78 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-12 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=79 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-10.999997 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=80 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-10.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=81 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-9 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=82 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-8.000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=83 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-7.0000014 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=84 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-6.0000005 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=85 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-5.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=86 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-4.0000014 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=87 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-3.0000012 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=88 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-2.0000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=89 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-1.0000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=90 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-0 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=91 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=1.0000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=92 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=2.0000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=93 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=3.000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=94 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=4.0000014 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=95 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=5.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=96 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=6 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.500015 rtHeight=100.5

1 rtAngle=97 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=7.0000014 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=98 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=8.000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=99 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=9 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=100 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=10.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=101 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=10.999997 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=102 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=12 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=103 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=12.999999 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=104 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=13.999999 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=105 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=15 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=106 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=16 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=107 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=17 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=108 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=18.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=109 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=19.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=110 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=19.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=111 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=20.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=112 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=21.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=113 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=22.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=114 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=24 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.50001

1 rtAngle=115 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=25.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.49999

1 rtAngle=116 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=26 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.49999

1 rtAngle=117 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=26.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.500015

1 rtAngle=118 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=27.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=119 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=28.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=120 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=30 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=121 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=30.999994 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=122 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=31.999994 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=123 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=32.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=124 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=34 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=125 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=35 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.49999

1 rtAngle=126 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=35.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=127 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=36.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=128 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=38 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=129 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=38.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=130 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=40.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=131 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=41 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=132 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=42 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.50001

1 rtAngle=133 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=43 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=134 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=44.000008 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=135 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-44.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=136 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-44.000008 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=137 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-43.000008 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=138 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-42 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=139 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-41 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=140 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-40.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=141 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-38.999992 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=142 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-38 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=143 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-36.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=144 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-35.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=145 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-34.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=146 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-34.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=147 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-32.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=148 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-31.999994 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=149 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-30.999994 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=150 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-30 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=151 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-28.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=152 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-27.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=153 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-27.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=154 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-26 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.49999

1 rtAngle=155 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-24.999992 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=156 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-24.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=157 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-22.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=158 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-21.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=159 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-20.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=160 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-19.999994 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=161 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-19.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=162 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-18.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=163 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-16.999992 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=164 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-16 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=165 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-14.999995 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=166 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-14.000003 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=167 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-12.999995 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=168 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-12 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=169 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-10.999997 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=170 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-10.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=171 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-9 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=172 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-7.999997 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=173 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-6.9999967 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=174 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-5.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=175 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-5.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=176 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-4.0000014 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=177 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-2.9999967 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=178 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-2.0000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=179 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-1.0000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=180 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=0 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=181 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=1.0000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=182 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=2.0000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=183 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=3.000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=184 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=4.0000014 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=185 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=5.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=186 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=6.000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.500015

1 rtAngle=187 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=6.9999967 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=188 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=7.999997 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=189 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=9 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=190 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=10.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=191 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=10.999997 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=192 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=12 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=193 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=12.999995 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=194 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=13.999999 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=195 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=14.999995 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=196 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=16 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=197 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=16.999992 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=198 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=17.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=199 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=19.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=200 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=20 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=201 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=20.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=202 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=21.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=203 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=22.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=204 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=24 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=205 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=24.999992 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=206 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=25.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=207 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=27.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=208 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=27.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=209 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=28.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=210 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=30 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=211 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=31.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=212 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=31.999994 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=213 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=32.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=214 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=34 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=215 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=34.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=216 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=36 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=217 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=36.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=218 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=38 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=219 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=38.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=220 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=40.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=221 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=41 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=222 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=42 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=223 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=43 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=224 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=44.000008 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=225 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-45 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=226 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-44.000008 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=227 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-43 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=228 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-42 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=229 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-41 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=230 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-40.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=231 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-38.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=232 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-38 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=233 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-36.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=234 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-36 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=235 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-35 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=236 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-34 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=237 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-32.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=238 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-31.999994 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=239 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-31.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=240 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-30 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=241 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-28.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=242 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-27.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=243 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-26.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=244 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-25.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=245 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-24.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=246 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-24.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=247 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-22.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=248 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-21.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=249 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-20.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=250 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-20 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=251 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-19.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=252 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-18.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=253 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-17 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=254 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-16 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=255 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-14.999995 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=256 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-13.999999 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=257 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-12.999995 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=258 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-12 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=259 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-10.999997 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=260 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-10.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=261 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-9 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=262 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-8.000006 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=263 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-6.9999967 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=264 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-6 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.500015 rtHeight=100.5

1 rtAngle=265 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-5.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=266 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-4.0000014 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=267 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-3.000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=268 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-2.0000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=269 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-1.0000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=270 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=0 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=271 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=1.0000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=272 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=2.0000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=273 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=3.0000012 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=274 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=4.0000014 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=275 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=5.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=276 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=6.0000005 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=277 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=6.9999967 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=278 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=8.000006 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=279 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=9 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=280 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=10.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=281 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=10.999997 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=282 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=12 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=283 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=12.999995 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=284 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=14 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=285 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=14.999995 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=286 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=16 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=287 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=17 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=288 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=18.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=289 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=19.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=290 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=19.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=291 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=20.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=292 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=21.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=293 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=22.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=294 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=24.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=295 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=24.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=296 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=25.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.50001

1 rtAngle=297 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=26.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=298 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=27.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=299 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=28.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=300 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=30 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=301 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=30.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=302 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=31.999994 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=303 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=32.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=304 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=34 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=305 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=35 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=306 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=36 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=307 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=36.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=308 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=38 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=309 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=39 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=310 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=40.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=311 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=41 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=312 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=42 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=313 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=43 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=314 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=44.000008 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=315 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=45 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=316 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-44.000004 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=317 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-42.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=318 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-42 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=319 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-41 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=320 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-40 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=321 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-39 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=322 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-38 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=323 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-36.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=324 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-36 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=325 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-34.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=326 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-34 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=327 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-32.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=328 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-31.999994 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=329 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-30.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=330 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-30 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=331 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-28.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=332 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-27.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.49999

1 rtAngle=333 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-27 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=334 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-25.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.50001

1 rtAngle=335 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-24.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=336 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-23.999994 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.49999

1 rtAngle=337 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-22.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=338 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-21.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=339 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-20.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=340 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-19.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.5

1 rtAngle=341 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-19.000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=342 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-18 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.50001

1 rtAngle=343 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-16.999996 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=344 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-16 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.49999

1 rtAngle=345 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-14.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=346 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-13.999999 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=347 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-12.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=348 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-12 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=349 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-10.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=350 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-10.000001 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.49999 rtHeight=100.5

1 rtAngle=351 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-9 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=352 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-7.999998 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=353 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-6.9999986 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=354 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-6.000003 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.500015

1 rtAngle=355 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-5.0000005 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=356 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-4.0000005 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

1 rtAngle=357 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-3.0000024 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.50001 rtHeight=100.50001

1 rtAngle=358 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5
2 rtAngle=-2.0000002 rtCenterX=50.5 rtCenterY=50.5 rtWidth=100.5 rtHeight=100.5

I don't know is this comes from the original implement or just in my own translation.

return s;
}
// check that given sides are perpendicular
Debug.Assert(Math.Abs(Ddot(vecs[0], vecs[1])) * a <= fltEpsilon * 9 * x * (Cv2.Norm(vecs[0]) * Cv2.Norm(vecs[1])));
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This assert will fail when providing following points: new RotatedRect(new(403.2502, 109.6314), new(505.6677, 349.0594), new(271.8243, 446.3848))

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The name 'Debug' does not exist in the current context

How do we do asserts in methods translated from cpp?
IIRC, OpenCV assert will always throw runtime cpp exception.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

using System.Diagnostics; // Add this!!

...

Debug.Assert(...);

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

May we use global using?

@shimat
Copy link
Owner

shimat commented May 30, 2023

Thank you. Can you fix the CI errors?

n0099

This comment was marked as duplicate.

Copy link
Contributor Author

@n0099 n0099 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GH Actions

return s;
}
// check that given sides are perpendicular
Debug.Assert(Math.Abs(Ddot(vecs[0], vecs[1])) * a <= fltEpsilon * 9 * x * (Cv2.Norm(vecs[0]) * Cv2.Norm(vecs[1])));
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The name 'Debug' does not exist in the current context

How do we do asserts in methods translated from cpp?
IIRC, OpenCV assert will always throw runtime cpp exception.

@shimat
Copy link
Owner

shimat commented Jun 5, 2023

I will fix the CI error on my end. Thank you!

@shimat shimat merged commit c55dcd5 into shimat:master Jun 5, 2023
@n0099 n0099 deleted the patch-3 branch June 5, 2023 07:42
@n0099
Copy link
Contributor Author

n0099 commented Jun 5, 2023

The angle will wrapping around from -45 to 44 degrees, and restart until the original angle reach 0:

Have you found out what causes this inconsistency compared to the original RotatedRect? The API shouldn't be public to users until this gets fixed.

@shimat shimat mentioned this pull request Jun 5, 2023
@shimat
Copy link
Owner

shimat commented Jun 5, 2023

I have been checking your code since I merged this PR into master and have come to understand the problem. I don't know the cause yet.

One thing I know is that Math.PI is less accurate than CV_PI.
I will continue to work on #1580.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Missing port of cv::RotatedRect::RotatedRect(Point2f, Point2f, Point2f) constructor
2 participants