From 610642a616c1a84e9e2e68cf6a4052756f5512d0 Mon Sep 17 00:00:00 2001 From: DoogeJ Date: Mon, 27 Nov 2017 13:56:31 +0100 Subject: [PATCH] R12 commit --- Primitives2D.cs | 539 ++++++++++++++++++ Primitives2D.csproj | 99 ++++ Primitives2D.sln | 74 +++ .../Primitives2DSample/Game.ico | Bin 0 -> 4286 bytes .../Primitives2DSample/Game1.cs | 129 +++++ .../Primitives2DSample/GameThumbnail.png | Bin 0 -> 5734 bytes .../Primitives2DSample.csproj | 132 +++++ .../Primitives2DSample/Program.cs | 21 + .../Properties/AssemblyInfo.cs | 34 ++ .../bin/x86/Debug/C3.XNA.Primitives2D.dll | Bin 0 -> 9216 bytes .../bin/x86/Debug/C3.XNA.Primitives2D.pdb | Bin 0 -> 28160 bytes .../bin/x86/Debug/Primitives2DSample.exe | Bin 0 -> 12800 bytes .../bin/x86/Debug/Primitives2DSample.pdb | Bin 0 -> 13824 bytes .../bin/x86/Release/C3.XNA.Primitives2D.dll | Bin 0 -> 8704 bytes .../bin/x86/Release/C3.XNA.Primitives2D.pdb | Bin 0 -> 26112 bytes .../bin/x86/Release/Primitives2DSample.exe | Bin 0 -> 12800 bytes .../bin/x86/Release/Primitives2DSample.pdb | Bin 0 -> 15872 bytes .../Primitives2DSampleContent.contentproj | 40 ++ ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5903 bytes ...leContent.contentproj.FileListAbsolute.txt | 1 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5907 bytes ...leContent.contentproj.FileListAbsolute.txt | 1 + .../Release/ResolveAssemblyReference.cache | Bin 0 -> 49004 bytes Primitives2DWP7.csproj | 75 +++ Properties/AssemblyInfo.cs | 36 ++ bin/Debug/C3.XNA.Primitives2D.dll | Bin 0 -> 9216 bytes bin/Debug/C3.XNA.Primitives2D.pdb | Bin 0 -> 28160 bytes bin/Release/C3.XNA.Primitives2D.dll | Bin 0 -> 8704 bytes bin/Release/C3.XNA.Primitives2D.pdb | Bin 0 -> 26112 bytes .../Debug/C3.XNA.Primitives2D.dll | Bin 0 -> 9216 bytes .../Debug/C3.XNA.Primitives2D.pdb | Bin 0 -> 28160 bytes .../Release/C3.XNA.Primitives2D.dll | Bin 0 -> 8704 bytes .../Release/C3.XNA.Primitives2D.pdb | Bin 0 -> 26112 bytes licence.txt | 20 + 34 files changed, 1201 insertions(+) create mode 100644 Primitives2D.cs create mode 100644 Primitives2D.csproj create mode 100644 Primitives2D.sln create mode 100644 Primitives2DSample/Primitives2DSample/Game.ico create mode 100644 Primitives2DSample/Primitives2DSample/Game1.cs create mode 100644 Primitives2DSample/Primitives2DSample/GameThumbnail.png create mode 100644 Primitives2DSample/Primitives2DSample/Primitives2DSample.csproj create mode 100644 Primitives2DSample/Primitives2DSample/Program.cs create mode 100644 Primitives2DSample/Primitives2DSample/Properties/AssemblyInfo.cs create mode 100644 Primitives2DSample/Primitives2DSample/bin/x86/Debug/C3.XNA.Primitives2D.dll create mode 100644 Primitives2DSample/Primitives2DSample/bin/x86/Debug/C3.XNA.Primitives2D.pdb create mode 100644 Primitives2DSample/Primitives2DSample/bin/x86/Debug/Primitives2DSample.exe create mode 100644 Primitives2DSample/Primitives2DSample/bin/x86/Debug/Primitives2DSample.pdb create mode 100644 Primitives2DSample/Primitives2DSample/bin/x86/Release/C3.XNA.Primitives2D.dll create mode 100644 Primitives2DSample/Primitives2DSample/bin/x86/Release/C3.XNA.Primitives2D.pdb create mode 100644 Primitives2DSample/Primitives2DSample/bin/x86/Release/Primitives2DSample.exe create mode 100644 Primitives2DSample/Primitives2DSample/bin/x86/Release/Primitives2DSample.pdb create mode 100644 Primitives2DSample/Primitives2DSampleContent/Primitives2DSampleContent.contentproj create mode 100644 Primitives2DSample/Primitives2DSampleContent/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 Primitives2DSample/Primitives2DSampleContent/obj/x86/Debug/Primitives2DSampleContent.contentproj.FileListAbsolute.txt create mode 100644 Primitives2DSample/Primitives2DSampleContent/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 Primitives2DSample/Primitives2DSampleContent/obj/x86/Release/Primitives2DSampleContent.contentproj.FileListAbsolute.txt create mode 100644 Primitives2DSample/Primitives2DSampleContent/obj/x86/Release/ResolveAssemblyReference.cache create mode 100644 Primitives2DWP7.csproj create mode 100644 Properties/AssemblyInfo.cs create mode 100644 bin/Debug/C3.XNA.Primitives2D.dll create mode 100644 bin/Debug/C3.XNA.Primitives2D.pdb create mode 100644 bin/Release/C3.XNA.Primitives2D.dll create mode 100644 bin/Release/C3.XNA.Primitives2D.pdb create mode 100644 bin/Windows Phone/Debug/C3.XNA.Primitives2D.dll create mode 100644 bin/Windows Phone/Debug/C3.XNA.Primitives2D.pdb create mode 100644 bin/Windows Phone/Release/C3.XNA.Primitives2D.dll create mode 100644 bin/Windows Phone/Release/C3.XNA.Primitives2D.pdb create mode 100644 licence.txt diff --git a/Primitives2D.cs b/Primitives2D.cs new file mode 100644 index 0000000..1b1dba8 --- /dev/null +++ b/Primitives2D.cs @@ -0,0 +1,539 @@ +using System; +using System.Collections.Generic; +using Microsoft.Xna.Framework; +using Microsoft.Xna.Framework.Graphics; + +namespace C3.XNA +{ + /// + /// + public static class Primitives2D + { + + + #region Private Members + + private static readonly Dictionary> circleCache = new Dictionary>(); + //private static readonly Dictionary> arcCache = new Dictionary>(); + private static Texture2D pixel; + + #endregion + + + #region Private Methods + + private static void CreateThePixel(SpriteBatch spriteBatch) + { + pixel = new Texture2D(spriteBatch.GraphicsDevice, 1, 1, false, SurfaceFormat.Color); + pixel.SetData(new[]{ Color.White }); + } + + + /// + /// Draws a list of connecting points + /// + /// The destination drawing surface + /// /// Where to position the points + /// The points to connect with lines + /// The color to use + /// The thickness of the lines + private static void DrawPoints(SpriteBatch spriteBatch, Vector2 position, List points, Color color, float thickness) + { + if (points.Count < 2) + return; + + for (int i = 1; i < points.Count; i++) + { + DrawLine(spriteBatch, points[i - 1] + position, points[i] + position, color, thickness); + } + } + + + /// + /// Creates a list of vectors that represents a circle + /// + /// The radius of the circle + /// The number of sides to generate + /// A list of vectors that, if connected, will create a circle + private static List CreateCircle(double radius, int sides) + { + // Look for a cached version of this circle + String circleKey = radius + "x" + sides; + if (circleCache.ContainsKey(circleKey)) + { + return circleCache[circleKey]; + } + + List vectors = new List(); + + const double max = 2.0 * Math.PI; + double step = max / sides; + + for (double theta = 0.0; theta < max; theta += step) + { + vectors.Add(new Vector2((float)(radius * Math.Cos(theta)), (float)(radius * Math.Sin(theta)))); + } + + // then add the first vector again so it's a complete loop + vectors.Add(new Vector2((float)(radius * Math.Cos(0)), (float)(radius * Math.Sin(0)))); + + // Cache this circle so that it can be quickly drawn next time + circleCache.Add(circleKey, vectors); + + return vectors; + } + + + /// + /// Creates a list of vectors that represents an arc + /// + /// The radius of the arc + /// The number of sides to generate in the circle that this will cut out from + /// The starting angle of arc, 0 being to the east, increasing as you go clockwise + /// The radians to draw, clockwise from the starting angle + /// A list of vectors that, if connected, will create an arc + private static List CreateArc(float radius, int sides, float startingAngle, float radians) + { + List points = new List(); + points.AddRange(CreateCircle(radius, sides)); + points.RemoveAt(points.Count - 1); // remove the last point because it's a duplicate of the first + + // The circle starts at (radius, 0) + double curAngle = 0.0; + double anglePerSide = MathHelper.TwoPi / sides; + + // "Rotate" to the starting point + while ((curAngle + (anglePerSide / 2.0)) < startingAngle) + { + curAngle += anglePerSide; + + // move the first point to the end + points.Add(points[0]); + points.RemoveAt(0); + } + + // Add the first point, just in case we make a full circle + points.Add(points[0]); + + // Now remove the points at the end of the circle to create the arc + int sidesInArc = (int)((radians / anglePerSide) + 0.5); + points.RemoveRange(sidesInArc + 1, points.Count - sidesInArc - 1); + + return points; + } + + #endregion + + + #region FillRectangle + + /// + /// Draws a filled rectangle + /// + /// The destination drawing surface + /// The rectangle to draw + /// The color to draw the rectangle in + public static void FillRectangle(this SpriteBatch spriteBatch, Rectangle rect, Color color) + { + if (pixel == null) + { + CreateThePixel(spriteBatch); + } + + // Simply use the function already there + spriteBatch.Draw(pixel, rect, color); + } + + + /// + /// Draws a filled rectangle + /// + /// The destination drawing surface + /// The rectangle to draw + /// The color to draw the rectangle in + /// The angle in radians to draw the rectangle at + public static void FillRectangle(this SpriteBatch spriteBatch, Rectangle rect, Color color, float angle) + { + if (pixel == null) + { + CreateThePixel(spriteBatch); + } + + spriteBatch.Draw(pixel, rect, null, color, angle, Vector2.Zero, SpriteEffects.None, 0); + } + + + /// + /// Draws a filled rectangle + /// + /// The destination drawing surface + /// Where to draw + /// The size of the rectangle + /// The color to draw the rectangle in + public static void FillRectangle(this SpriteBatch spriteBatch, Vector2 location, Vector2 size, Color color) + { + FillRectangle(spriteBatch, location, size, color, 0.0f); + } + + + /// + /// Draws a filled rectangle + /// + /// The destination drawing surface + /// Where to draw + /// The size of the rectangle + /// The angle in radians to draw the rectangle at + /// The color to draw the rectangle in + public static void FillRectangle(this SpriteBatch spriteBatch, Vector2 location, Vector2 size, Color color, float angle) + { + if (pixel == null) + { + CreateThePixel(spriteBatch); + } + + // stretch the pixel between the two vectors + spriteBatch.Draw(pixel, + location, + null, + color, + angle, + Vector2.Zero, + size, + SpriteEffects.None, + 0); + } + + + /// + /// Draws a filled rectangle + /// + /// The destination drawing surface + /// The X coord of the left side + /// The Y coord of the upper side + /// Width + /// Height + /// The color to draw the rectangle in + public static void FillRectangle(this SpriteBatch spriteBatch, float x, float y, float w, float h, Color color) + { + FillRectangle(spriteBatch, new Vector2(x, y), new Vector2(w, h), color, 0.0f); + } + + + /// + /// Draws a filled rectangle + /// + /// The destination drawing surface + /// The X coord of the left side + /// The Y coord of the upper side + /// Width + /// Height + /// The color to draw the rectangle in + /// The angle of the rectangle in radians + public static void FillRectangle(this SpriteBatch spriteBatch, float x, float y, float w, float h, Color color, float angle) + { + FillRectangle(spriteBatch, new Vector2(x, y), new Vector2(w, h), color, angle); + } + + #endregion + + + #region DrawRectangle + + /// + /// Draws a rectangle with the thickness provided + /// + /// The destination drawing surface + /// The rectangle to draw + /// The color to draw the rectangle in + public static void DrawRectangle(this SpriteBatch spriteBatch, Rectangle rect, Color color) + { + DrawRectangle(spriteBatch, rect, color, 1.0f); + } + + + /// + /// Draws a rectangle with the thickness provided + /// + /// The destination drawing surface + /// The rectangle to draw + /// The color to draw the rectangle in + /// The thickness of the lines + public static void DrawRectangle(this SpriteBatch spriteBatch, Rectangle rect, Color color, float thickness) + { + + // TODO: Handle rotations + // TODO: Figure out the pattern for the offsets required and then handle it in the line instead of here + + DrawLine(spriteBatch, new Vector2(rect.X, rect.Y), new Vector2(rect.Right, rect.Y), color, thickness); // top + DrawLine(spriteBatch, new Vector2(rect.X + 1f, rect.Y), new Vector2(rect.X + 1f, rect.Bottom + thickness), color, thickness); // left + DrawLine(spriteBatch, new Vector2(rect.X, rect.Bottom), new Vector2(rect.Right, rect.Bottom), color, thickness); // bottom + DrawLine(spriteBatch, new Vector2(rect.Right + 1f, rect.Y), new Vector2(rect.Right + 1f, rect.Bottom + thickness), color, thickness); // right + } + + + /// + /// Draws a rectangle with the thickness provided + /// + /// The destination drawing surface + /// Where to draw + /// The size of the rectangle + /// The color to draw the rectangle in + public static void DrawRectangle(this SpriteBatch spriteBatch, Vector2 location, Vector2 size, Color color) + { + DrawRectangle(spriteBatch, new Rectangle((int)location.X, (int)location.Y, (int)size.X, (int)size.Y), color, 1.0f); + } + + + /// + /// Draws a rectangle with the thickness provided + /// + /// The destination drawing surface + /// Where to draw + /// The size of the rectangle + /// The color to draw the rectangle in + /// The thickness of the line + public static void DrawRectangle(this SpriteBatch spriteBatch, Vector2 location, Vector2 size, Color color, float thickness) + { + DrawRectangle(spriteBatch, new Rectangle((int)location.X, (int)location.Y, (int)size.X, (int)size.Y), color, thickness); + } + + #endregion + + + #region DrawLine + + /// + /// Draws a line from point1 to point2 with an offset + /// + /// The destination drawing surface + /// The X coord of the first point + /// The Y coord of the first point + /// The X coord of the second point + /// The Y coord of the second point + /// The color to use + public static void DrawLine(this SpriteBatch spriteBatch, float x1, float y1, float x2, float y2, Color color) + { + DrawLine(spriteBatch, new Vector2(x1, y1), new Vector2(x2, y2), color, 1.0f); + } + + + /// + /// Draws a line from point1 to point2 with an offset + /// + /// The destination drawing surface + /// The X coord of the first point + /// The Y coord of the first point + /// The X coord of the second point + /// The Y coord of the second point + /// The color to use + /// The thickness of the line + public static void DrawLine(this SpriteBatch spriteBatch, float x1, float y1, float x2, float y2, Color color, float thickness) + { + DrawLine(spriteBatch, new Vector2(x1, y1), new Vector2(x2, y2), color, thickness); + } + + + /// + /// Draws a line from point1 to point2 with an offset + /// + /// The destination drawing surface + /// The first point + /// The second point + /// The color to use + public static void DrawLine(this SpriteBatch spriteBatch, Vector2 point1, Vector2 point2, Color color) + { + DrawLine(spriteBatch, point1, point2, color, 1.0f); + } + + + /// + /// Draws a line from point1 to point2 with an offset + /// + /// The destination drawing surface + /// The first point + /// The second point + /// The color to use + /// The thickness of the line + public static void DrawLine(this SpriteBatch spriteBatch, Vector2 point1, Vector2 point2, Color color, float thickness) + { + // calculate the distance between the two vectors + float distance = Vector2.Distance(point1, point2); + + // calculate the angle between the two vectors + float angle = (float)Math.Atan2(point2.Y - point1.Y, point2.X - point1.X); + + DrawLine(spriteBatch, point1, distance, angle, color, thickness); + } + + + /// + /// Draws a line from point1 to point2 with an offset + /// + /// The destination drawing surface + /// The starting point + /// The length of the line + /// The angle of this line from the starting point in radians + /// The color to use + public static void DrawLine(this SpriteBatch spriteBatch, Vector2 point, float length, float angle, Color color) + { + DrawLine(spriteBatch, point, length, angle, color, 1.0f); + } + + + /// + /// Draws a line from point1 to point2 with an offset + /// + /// The destination drawing surface + /// The starting point + /// The length of the line + /// The angle of this line from the starting point + /// The color to use + /// The thickness of the line + public static void DrawLine(this SpriteBatch spriteBatch, Vector2 point, float length, float angle, Color color, float thickness) + { + if (pixel == null) + { + CreateThePixel(spriteBatch); + } + + // stretch the pixel between the two vectors + spriteBatch.Draw(pixel, + point, + null, + color, + angle, + Vector2.Zero, + new Vector2(length, thickness), + SpriteEffects.None, + 0); + } + + #endregion + + + #region PutPixel + + public static void PutPixel(this SpriteBatch spriteBatch, float x, float y, Color color) + { + PutPixel(spriteBatch, new Vector2(x, y), color); + } + + + public static void PutPixel(this SpriteBatch spriteBatch, Vector2 position, Color color) + { + if (pixel == null) + { + CreateThePixel(spriteBatch); + } + + spriteBatch.Draw(pixel, position, color); + } + + #endregion + + + #region DrawCircle + + /// + /// Draw a circle + /// + /// The destination drawing surface + /// The center of the circle + /// The radius of the circle + /// The number of sides to generate + /// The color of the circle + public static void DrawCircle(this SpriteBatch spriteBatch, Vector2 center, float radius, int sides, Color color) + { + DrawPoints(spriteBatch, center, CreateCircle(radius, sides), color, 1.0f); + } + + + /// + /// Draw a circle + /// + /// The destination drawing surface + /// The center of the circle + /// The radius of the circle + /// The number of sides to generate + /// The color of the circle + /// The thickness of the lines used + public static void DrawCircle(this SpriteBatch spriteBatch, Vector2 center, float radius, int sides, Color color, float thickness) + { + DrawPoints(spriteBatch, center, CreateCircle(radius, sides), color, thickness); + } + + + /// + /// Draw a circle + /// + /// The destination drawing surface + /// The center X of the circle + /// The center Y of the circle + /// The radius of the circle + /// The number of sides to generate + /// The color of the circle + public static void DrawCircle(this SpriteBatch spriteBatch, float x, float y, float radius, int sides, Color color) + { + DrawPoints(spriteBatch, new Vector2(x, y), CreateCircle(radius, sides), color, 1.0f); + } + + + /// + /// Draw a circle + /// + /// The destination drawing surface + /// The center X of the circle + /// The center Y of the circle + /// The radius of the circle + /// The number of sides to generate + /// The color of the circle + /// The thickness of the lines used + public static void DrawCircle(this SpriteBatch spriteBatch, float x, float y, float radius, int sides, Color color, float thickness) + { + DrawPoints(spriteBatch, new Vector2(x, y), CreateCircle(radius, sides), color, thickness); + } + + #endregion + + + #region DrawArc + + /// + /// Draw a arc + /// + /// The destination drawing surface + /// The center of the arc + /// The radius of the arc + /// The number of sides to generate + /// The starting angle of arc, 0 being to the east, increasing as you go clockwise + /// The number of radians to draw, clockwise from the starting angle + /// The color of the arc + public static void DrawArc(this SpriteBatch spriteBatch, Vector2 center, float radius, int sides, float startingAngle, float radians, Color color) + { + DrawArc(spriteBatch, center, radius, sides, startingAngle, radians, color, 1.0f); + } + + + /// + /// Draw a arc + /// + /// The destination drawing surface + /// The center of the arc + /// The radius of the arc + /// The number of sides to generate + /// The starting angle of arc, 0 being to the east, increasing as you go clockwise + /// The number of radians to draw, clockwise from the starting angle + /// The color of the arc + /// The thickness of the arc + public static void DrawArc(this SpriteBatch spriteBatch, Vector2 center, float radius, int sides, float startingAngle, float radians, Color color, float thickness) + { + List arc = CreateArc(radius, sides, startingAngle, radians); + //List arc = CreateArc2(radius, sides, startingAngle, degrees); + DrawPoints(spriteBatch, center, arc, color, thickness); + } + + #endregion + + + } +} \ No newline at end of file diff --git a/Primitives2D.csproj b/Primitives2D.csproj new file mode 100644 index 0000000..48be2ef --- /dev/null +++ b/Primitives2D.csproj @@ -0,0 +1,99 @@ + + + + Debug + AnyCPU + 9.0.21022 + 2.0 + {39AD1482-1881-4852-A05D-DC61B0D3446A} + Library + Properties + C3.XNA + C3.XNA.Primitives2D + v4.0 + 512 + + + 3.5 + + publish\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 0 + 1.0.0.%2a + false + false + true + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + 3.5 + + + 3.5 + + + + + + + + + + + False + Microsoft .NET Framework 4 %28x86 and x64%29 + true + + + False + .NET Framework 3.5 SP1 Client Profile + false + + + False + .NET Framework 3.5 SP1 + false + + + False + Windows Installer 3.1 + true + + + + + \ No newline at end of file diff --git a/Primitives2D.sln b/Primitives2D.sln new file mode 100644 index 0000000..bf481b8 --- /dev/null +++ b/Primitives2D.sln @@ -0,0 +1,74 @@ + +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual Studio 2010 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Primitives2D", "Primitives2D.csproj", "{39AD1482-1881-4852-A05D-DC61B0D3446A}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Primitives2DWP7", "Primitives2DWP7.csproj", "{3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Primitives2DSample", "Primitives2DSample\Primitives2DSample\Primitives2DSample.csproj", "{CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}" +EndProject +Project("{96E2B04D-8817-42C6-938A-82C39BA4D311}") = "Primitives2DSampleContent", "Primitives2DSample\Primitives2DSampleContent\Primitives2DSampleContent.contentproj", "{F0CD1611-687D-4D13-BF8D-B67C33B15110}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|Mixed Platforms = Debug|Mixed Platforms + Debug|Windows Phone = Debug|Windows Phone + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|Mixed Platforms = Release|Mixed Platforms + Release|Windows Phone = Release|Windows Phone + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {39AD1482-1881-4852-A05D-DC61B0D3446A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {39AD1482-1881-4852-A05D-DC61B0D3446A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {39AD1482-1881-4852-A05D-DC61B0D3446A}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {39AD1482-1881-4852-A05D-DC61B0D3446A}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {39AD1482-1881-4852-A05D-DC61B0D3446A}.Debug|Windows Phone.ActiveCfg = Debug|Any CPU + {39AD1482-1881-4852-A05D-DC61B0D3446A}.Debug|x86.ActiveCfg = Debug|Any CPU + {39AD1482-1881-4852-A05D-DC61B0D3446A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {39AD1482-1881-4852-A05D-DC61B0D3446A}.Release|Any CPU.Build.0 = Release|Any CPU + {39AD1482-1881-4852-A05D-DC61B0D3446A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {39AD1482-1881-4852-A05D-DC61B0D3446A}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {39AD1482-1881-4852-A05D-DC61B0D3446A}.Release|Windows Phone.ActiveCfg = Release|Any CPU + {39AD1482-1881-4852-A05D-DC61B0D3446A}.Release|x86.ActiveCfg = Release|Any CPU + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Debug|Any CPU.ActiveCfg = Debug|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Debug|Mixed Platforms.ActiveCfg = Debug|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Debug|Mixed Platforms.Build.0 = Debug|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Debug|Windows Phone.ActiveCfg = Debug|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Debug|Windows Phone.Build.0 = Debug|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Debug|x86.ActiveCfg = Debug|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Debug|x86.Build.0 = Debug|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Release|Any CPU.ActiveCfg = Release|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Release|Mixed Platforms.ActiveCfg = Release|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Release|Mixed Platforms.Build.0 = Release|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Release|Windows Phone.ActiveCfg = Release|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Release|Windows Phone.Build.0 = Release|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Release|x86.ActiveCfg = Release|Windows Phone + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B}.Release|x86.Build.0 = Release|Windows Phone + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}.Debug|Any CPU.ActiveCfg = Debug|x86 + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}.Debug|Windows Phone.ActiveCfg = Debug|x86 + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}.Debug|x86.ActiveCfg = Debug|x86 + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}.Debug|x86.Build.0 = Debug|x86 + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}.Release|Any CPU.ActiveCfg = Release|x86 + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}.Release|Mixed Platforms.Build.0 = Release|x86 + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}.Release|Windows Phone.ActiveCfg = Release|x86 + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}.Release|x86.ActiveCfg = Release|x86 + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D}.Release|x86.Build.0 = Release|x86 + {F0CD1611-687D-4D13-BF8D-B67C33B15110}.Debug|Any CPU.ActiveCfg = Debug|x86 + {F0CD1611-687D-4D13-BF8D-B67C33B15110}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {F0CD1611-687D-4D13-BF8D-B67C33B15110}.Debug|Windows Phone.ActiveCfg = Debug|x86 + {F0CD1611-687D-4D13-BF8D-B67C33B15110}.Debug|x86.ActiveCfg = Debug|x86 + {F0CD1611-687D-4D13-BF8D-B67C33B15110}.Release|Any CPU.ActiveCfg = Release|x86 + {F0CD1611-687D-4D13-BF8D-B67C33B15110}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {F0CD1611-687D-4D13-BF8D-B67C33B15110}.Release|Windows Phone.ActiveCfg = Release|x86 + {F0CD1611-687D-4D13-BF8D-B67C33B15110}.Release|x86.ActiveCfg = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Primitives2DSample/Primitives2DSample/Game.ico b/Primitives2DSample/Primitives2DSample/Game.ico new file mode 100644 index 0000000000000000000000000000000000000000..8cff41eab28dc99e31a693a39d399f9eb05f1cce GIT binary patch literal 4286 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 literal 0 HcmV?d00001 diff --git a/Primitives2DSample/Primitives2DSample/Game1.cs b/Primitives2DSample/Primitives2DSample/Game1.cs new file mode 100644 index 0000000..d6f8f64 --- /dev/null +++ b/Primitives2DSample/Primitives2DSample/Game1.cs @@ -0,0 +1,129 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using C3.XNA; +using Microsoft.Xna.Framework; +using Microsoft.Xna.Framework.Audio; +using Microsoft.Xna.Framework.Content; +using Microsoft.Xna.Framework.GamerServices; +using Microsoft.Xna.Framework.Graphics; +using Microsoft.Xna.Framework.Input; +using Microsoft.Xna.Framework.Media; + +namespace Primitives2DSample +{ + /// + /// This is the main type for your game + /// + public class Game1 : Microsoft.Xna.Framework.Game + { + GraphicsDeviceManager graphics; + SpriteBatch spriteBatch; + + public Game1() + { + graphics = new GraphicsDeviceManager(this); + Content.RootDirectory = "Content"; + } + + /// + /// Allows the game to perform any initialization it needs to before starting to run. + /// This is where it can query for any required services and load any non-graphic + /// related content. Calling base.Initialize will enumerate through any components + /// and initialize them as well. + /// + protected override void Initialize() + { + // TODO: Add your initialization logic here + + base.Initialize(); + } + + /// + /// LoadContent will be called once per game and is the place to load + /// all of your content. + /// + protected override void LoadContent() + { + // Create a new SpriteBatch, which can be used to draw textures. + spriteBatch = new SpriteBatch(GraphicsDevice); + + // TODO: use this.Content to load your game content here + } + + /// + /// UnloadContent will be called once per game and is the place to unload + /// all content. + /// + protected override void UnloadContent() + { + // TODO: Unload any non ContentManager content here + } + + /// + /// Allows the game to run logic such as updating the world, + /// checking for collisions, gathering input, and playing audio. + /// + /// Provides a snapshot of timing values. + protected override void Update(GameTime gameTime) + { + // Allows the game to exit + if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed) + this.Exit(); + + // TODO: Add your update logic here + + base.Update(gameTime); + } + + /// + /// This is called when the game should draw itself. + /// + /// Provides a snapshot of timing values. + protected override void Draw(GameTime gameTime) + { + GraphicsDevice.Clear(Color.CornflowerBlue); + spriteBatch.Begin(); + + spriteBatch.DrawRectangle(new Rectangle(100, 100, 100, 200), Color.Purple, 20); + + spriteBatch.DrawRectangle(new Rectangle(10, 10, 100, 200), Color.Yellow, 2); + spriteBatch.DrawRectangle(new Rectangle(20, 20, 100, 200), Color.Yellow, 1); + spriteBatch.DrawRectangle(new Vector2(30, 30), new Vector2(100, 200), Color.Yellow); + spriteBatch.DrawRectangle(new Vector2(40, 40), new Vector2(100, 200), Color.Yellow, 5); + + spriteBatch.DrawCircle(400, 100, 90, 3, Color.White * 0.2f); + spriteBatch.DrawCircle(400, 100, 90, 4, Color.White * 0.3f); + spriteBatch.DrawCircle(400, 100, 90, 5, Color.White * 0.4f); + spriteBatch.DrawCircle(400, 100, 90, 6, Color.White * 0.5f); + spriteBatch.DrawCircle(400, 100, 90, 7, Color.White * 0.6f); + spriteBatch.DrawCircle(400, 100, 90, 8, Color.White * 0.7f); + spriteBatch.DrawCircle(400, 100, 90, 9, Color.White * 0.8f); + spriteBatch.DrawCircle(400, 100, 90, 10, Color.White * 0.9f); + spriteBatch.DrawCircle(400, 100, 90, 20, Color.Red); + + spriteBatch.DrawCircle(600, 100, 100, 50, Color.Green, 10); + spriteBatch.DrawCircle(new Vector2(600, 100), 40, 30, Color.Green, 30); + + spriteBatch.FillRectangle(350, 340, 100, 100, Color.Red * 0.4f); + spriteBatch.FillRectangle(new Rectangle(350, 340, 100, 100), Color.Red * 0.3f, (float)Math.PI / 4f); + spriteBatch.FillRectangle(new Vector2(350, 340), new Vector2(100, 100), Color.Red * 0.2f, (float)Math.PI / 3f); + spriteBatch.FillRectangle(350, 340, 100, 100, Color.Red * 0.5f, (float)Math.PI); + + spriteBatch.DrawArc(new Vector2(600, 350), 100, 180, MathHelper.ToRadians(180), MathHelper.ToRadians(180), Color.Navy, 1); + spriteBatch.DrawArc(new Vector2(600, 350), 100, 180, MathHelper.ToRadians(180), MathHelper.ToRadians(160), Color.Navy * 0.9f, 2); + spriteBatch.DrawArc(new Vector2(600, 350), 100, 180, MathHelper.ToRadians(180), MathHelper.ToRadians(140), Color.Navy * 0.8f, 4); + spriteBatch.DrawArc(new Vector2(600, 350), 100, 180, MathHelper.ToRadians(180), MathHelper.ToRadians(120), Color.Navy * 0.7f, 6); + spriteBatch.DrawArc(new Vector2(600, 350), 100, 180, MathHelper.ToRadians(180), MathHelper.ToRadians(90), Color.Navy * 0.6f, 8); + spriteBatch.DrawArc(new Vector2(600, 350), 100, 180, MathHelper.ToRadians(180), MathHelper.ToRadians(80), Color.Navy * 0.5f, 10); + spriteBatch.DrawArc(new Vector2(600, 350), 100, 180, MathHelper.ToRadians(180), MathHelper.ToRadians(65), Color.Navy * 0.4f, 12); + spriteBatch.DrawArc(new Vector2(600, 350), 100, 180, MathHelper.ToRadians(180), MathHelper.ToRadians(45), Color.Navy * 0.3f, 14); + spriteBatch.DrawArc(new Vector2(600, 350), 100, 180, MathHelper.ToRadians(180), MathHelper.ToRadians(12), Color.Navy * 0.2f, 16); + + spriteBatch.DrawArc(new Vector2(600, 400), 80, 90, MathHelper.ToRadians(90), MathHelper.ToRadians(220), Color.Navy, 10); + + base.Draw(gameTime); + spriteBatch.End(); + } + } +} diff --git a/Primitives2DSample/Primitives2DSample/GameThumbnail.png b/Primitives2DSample/Primitives2DSample/GameThumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..462311aba2cd09de3992129ca43564755249ef09 GIT binary patch literal 5734 zcmV-s7MbaZP)00009a7bBm000XU z000XU0RWnu7ytkYO=&|zP*7-ZbZ>KLZ*U+5Lu!Sk^o_Z5E4Meg@_7P6crJiNL9pw)e1;Xm069{HJUZAPk55R%$-RIA z6-eL&AQ0xu!e<4=008gy@A0LT~suv4>S3ILP<0Bm`DLLvaF4FK%)Nj?Pt*r}7;7Xa9z9H|HZjR63e zC`Tj$K)V27Re@400>HumpsYY5E(E}?0f1SyGDiY{y#)Yvj#!WnKwtoXnL;eg03bL5 z07D)V%>y7z1E4U{zu>7~aD})?0RX_umCct+(lZpemCzb@^6=o|A>zVpu|i=NDG+7} zl4`aK{0#b-!z=TL9Wt0BGO&T{GJWpjryhdijfaIQ&2!o}p04JRKYg3k&Tf zVxhe-O!X z{f;To;xw^bEES6JSc$k$B2CA6xl)ltA<32E66t?3@gJ7`36pmX0IY^jz)rRYwaaY4 ze(nJRiw;=Qb^t(r^DT@T3y}a2XEZW-_W%Hszxj_qD**t_m!#tW0KDiJT&R>6OvVTR z07RgHDzHHZ48atvzz&?j9lXF70$~P3Knx_nJP<+#`N z#-MZ2bTkiLfR>_b(HgWKJ%F~Nr_oF3b#wrIijHG|(J>BYjM-sajE6;FiC7vY#};Gd zST$CUHDeuEH+B^pz@B062qXfFfD`NpUW5?BY=V%GM_5c)L#QR}BeW8_2v-S%gfYS= zB9o|3v?Y2H`NVi)In3rTB8+ej^> zQ=~r95NVuDChL%G$=>7$vVg20myx%S50Foi`^m%Pw-h?Xh~i8Mq9jtJloCocWk2Nv zrJpiFnV_ms&8eQ$2&#xWpIS+6pmtC%Q-`S&GF4Q#^mhymh7E(qNMa}%YZ-ePrx>>xFPTiH1=E+A$W$=bG8>s^ zm=Bn5Rah$aDtr}@$`X}2l~$F0mFKEdRdZE8)p@E5RI61Ft6o-prbbn>P~)iy)E2AN zsU20jsWz_8Qg>31P|s0cqrPALg8E|(vWA65poU1JRAaZs8I2(p#xiB`SVGovRs-uS zYnV-9TeA7=Om+qP8+I>yOjAR1s%ETak!GFdam@h^# z)@rS0t$wXH+Irf)+G6c;?H29p+V6F6oj{!|o%K3xI`?%6x;DB|x`n#ibhIR?(H}Q3Gzd138Ei2)WAMz7W9Vy`X}HnwgyEn!VS)>mv$8&{hQn>w4zwy3R}t;BYlZQm5)6pty=DfLrs+A-|>>;~;Q z_F?uV_HFjh9n2gO9o9Q^JA86v({H5aB!kjoO6 zc9$1ZZKsN-Zl8L~mE{`ly3)1N^`o1+o7}D0ZPeY&J;i;i`%NyJ8_8Y6J?}yE@b_5a zam?eLr<8@mESk|3$_SkmS{wQ>%qC18))9_|&j{ZT zes8AvOzF(F2#DZEY>2oYX&IRp`F#{ADl)1r>QS^)ba8a|EY_^#S^HO&t^Rgqwv=MZThqqEWH8 zxJo>d=ABlR_Bh=;eM9Tw|Ih34~oTE|= zX_mAr*D$vzw@+p(E0Yc6dFE}(8oqt`+R{gE3x4zjX+Sb3_cYE^= zgB=w+-tUy`ytONMS8KgRef4hA?t0j zufM;t32jm~jUGrkaOInTZ`zyfns>EuS}G30LFK_G-==(f<51|K&cocp&EJ`SxAh3? zNO>#LI=^+SEu(FqJ)ynt=!~PC9bO$rzPJB=?=j6w@a-(u02P7 zaQ)#(uUl{HW%tYNS3ItC^iAtK(eKlL`f9+{bJzISE?u8_z3;~C8@FyI-5j_jy7l;W z_U#vU3hqqYU3!mrul&B+{ptt$59)uk{;_4iZQ%G|z+lhASr6|H35TBkl>gI*;nGLU zN7W-nBaM%pA0HbH8olyl&XeJ%vZoWz%6?Y=dFykl=imL}`%BMQ{Mhgd`HRoLu6e2R za__6DuR6yg#~-}Tc|Gx_{H@O0eebyMy5GmWADJlpK>kqk(fVV@r_fLLKIeS?{4e)} z^ZO;zpECde00d`2O+f$vv5tKEQIh}w03c&XQcVB=dL;k=fP(-4`Tqa_faw4Lbua(` z>RI+y?e7jKeZ#YO-C3xi2SK~#9!j9Sf(CP`8>^NiYA4O%WBB!mPPBp!fg;0btt zAr73-g0#aTx+}wsL;QI}W=&5?-BsUDW_tLKxw%E~pa11wNrD6jqW?Jm;ql5IAEm#5 z$9LO5&(HEDPM3MUw|`&WuK+wRGXTqgCD|$h@vxaC-6iaO08#)7m*Cab@Y7Gf|EGWahjNuYC!Uu1SPmX$ zRKZa~B)u0GJ63iSWBS_wv_J{Iu86n* z+iEp%MO+3LbOOzsIQ{BnbSi*mP0I5Qqa6$Zc`cb-QEWiVRJ9`@1Z6k01_4Hgp=J}W zxQbzhO2be_5cELx19|#l_`rve7IP`RN32rlR&Oxm7A(W<%X?4kmjeN7SY&n>>hbA6 z5mDH^Lia}Il|2Rsb>Lt!SR}ntg=a`cfuzdkTIq<8a-q4q-vbFov5f0_P62NA2ZIoc z*%~O}4rb4coqk&YGJrWp!PpYQ&QLUOVsH1{D8@p2*qZCL4M@)D!tSVo@hI8y)`6U% z#~aqO!;bd;weh5r4S8Wzr#vz?<5!;+l<>4IY{a4CDH{1H^Ldgb9{`^F{UbO}boI#a zxt_%BjFZi+x3B{0&ef(1`m2#k+CyJ@pl!p_=27nrJ=@Aj8Qb`wl4P}naC%fvBxXOh zE}ub;CsFS9ZEWvERRORrpgIp}lB%>_<5?6b6A8B>o}a1uCFgVDC)n6i$VVmHFEi*4 zspD0xh-+rnK=Yms<33sy(}?Y8w`EpWl`qRjT6p=km(c4lqdcGBoo77eA4{XR4x(+; zT5FvVagKyXT4^BBr4a>eBQPgr|lrZJ{vr#)K;59A$FS+4a|M=b&wcqh%8W#KjPqqOzVmZU+}cULFp zC=;KRH;Z2_*D4dy^nWkN6Q+FdFIQQTs%70(?Mdxrz3b$?WrPK;7IS*R8_L+`#%@<0 z^GLZ?l*yW>V1_p`3(I${wbuKtvJb}U)r>VmQ2NAaR8@!*Qa8Nr-t8QRgUUA4Yx7>N zN`RhSj$7JsG(?UWpc{Ql(oFRSYGqEcaojQ*gC$eB&8>CL_!4A9LSC0D818%`mU zOD3s>iQo#TwSL}pG04MY`xKhCx4N$ih5{oCl|!aMn&4UPtKiP z!T6N*S=AtFtBJWnJ{q47>~nHI;4%rSq+yMi@@(*0@RA+1dh?f@h+yJKqZC>IYgJY4 zr8QKHCS3U7w~v|D+eEna2lR=|y&OAx)BfeT>Wb^~Xv>>OUaKsbd{Ojjty0qg+APkj z;}1mepg^4}er^5HNK1!sTN1rzprI~6H1t8OB2RvN-?d7x(8RT&s?_ci1BeI)xkS;a z#Ir4e;Kf#K8qJ$HtT&#^DN{a@95KDHqS_(%Kw_UKx7KER4m1l!_ZF1%4pK>;@n4BZ7 za$Q%nt)Q%x5rK#gO1kg6--Kk)Ri0nYq%VO;vE7hBG9$S@%_iHtgq$oL$<+nf(WaX+ z9x>~`e0*GSWeUniPYuRL`S`r=s@l_xghm|FS5s745s#t9b+2}BgTYY$xDEQ}cEVI? zW6%wJe0((VI5!6KoPC<-OZo7pt9qjpgdxSRLh!1b(!=lBb2k9Cb``vHA)k9oiT1Q* zMsz*-Dy3~ZIMIsfe!gs>pp;U-eIHV9s8%qEMf;XSNr@tu59P@|n+md`<(C~DlhLOd z^180AxpLQupF3==cCPEb?+&mhFPd|`ZI|VVwG(pcil?k)_~q%z$-#E@bzLpMoC3Y_ z#?H&-4HB-nZrpYw2h2jdy$Mx~PTRY>{h}hgy8MM=ZK_0!O}n9|zu4`y?>rKGAiUe|`DP#Y%^mG)U>+{nx6GX;)ueDwi-xqA ztbfsRe9+k4?>kH97coJe?bl?#J7tRo$0pw~pQn*}4fUPSJ_5R3UYitZq!b zZA@`E`^JFL{tT}1$bRk!Y(UCg2szb@F@RxO@Hqd%=P8RM=C?;kLrAtC^2;jsg2Ri4 z3W`(xJa#;ul|9$cWZJQLzU7M_HT%?0rMlAHd)$+9Rc5{B4cudrITOgw!ysEFPEK^+ zH6n7s_HlwQfSgfHb;w8F^>`#k;IuzLB5!;=PKz80)Ol#){3S82KEKzxonY{BF<+0o z+@GJF+jLct@4dU%K;FuIbGu)T3qAJ2w<8pNl!1NU_Z5NMVepoA>CalLsyc^|9y@K@ zx8n)<+aITV_LU6suuB>vo4ncBOj$oCjl;aq-9jf5CR%%r#yL zxvKv~YkY~A#t(ir_fS<4Z4Cx+f8O_f z2csP@Nyh6`W7|8q2^{-V16#}1+x<8m@t7(fA$S8sXIZFO9Ah&I6%}>Agj)}hYU-DM zD>E5QRPN%gq+s;ZQ75zYuQxD%0WIrYsiM}1Xz7%>|5U3-$W)x7Bve3RKm0FA%+z=``jyE#Nm;{~HSbt0f%+t=zXVYLP{89_#}6LZ*M5 z{eIC&@S_FzH(LKZ%qqLDp>*}F!r@0(emi&RcTVyH-xH6}@kiEwHTrvOZp{UVU^^wj zeXxEWkNKi}zr?#=wdBhM_(wq)BCOT=fNUW6a$MW*+QY9U!w(nmYgYcSQ|2R8w*CJD Y0L3g3-xp*i%>V!Z07*qoM6N<$f>>Wb>;M1& literal 0 HcmV?d00001 diff --git a/Primitives2DSample/Primitives2DSample/Primitives2DSample.csproj b/Primitives2DSample/Primitives2DSample/Primitives2DSample.csproj new file mode 100644 index 0000000..12398bd --- /dev/null +++ b/Primitives2DSample/Primitives2DSample/Primitives2DSample.csproj @@ -0,0 +1,132 @@ + + + + {CE103FD7-F4A5-4B3C-8ADD-04096E1D941D} + {6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + Debug + x86 + WinExe + Properties + Primitives2DSample + Primitives2DSample + v4.0 + Client + v4.0 + Windows + Reach + ea3dc454-6a79-45e6-9087-32dcbac357a1 + Game + Game.ico + GameThumbnail.png + publish\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 0 + 1.0.0.%2a + false + false + true + + + true + full + false + bin\x86\Debug + DEBUG;TRACE;WINDOWS + prompt + 4 + true + false + x86 + false + + + pdbonly + true + bin\x86\Release + TRACE;WINDOWS + prompt + 4 + true + false + x86 + true + + + + + + + + + + + + + + + + + + + + + + true + + + + + {39AD1482-1881-4852-A05D-DC61B0D3446A} + Primitives2D + + + Primitives2DSampleContent + Content + + + + + False + Microsoft .NET Framework 4 Client Profile %28x86 and x64%29 + true + + + False + .NET Framework 3.5 SP1 Client Profile + false + + + False + .NET Framework 3.5 SP1 + false + + + False + Windows Installer 3.1 + true + + + False + Microsoft XNA Framework Redistributable 4.0 + true + + + + + + \ No newline at end of file diff --git a/Primitives2DSample/Primitives2DSample/Program.cs b/Primitives2DSample/Primitives2DSample/Program.cs new file mode 100644 index 0000000..e37c2de --- /dev/null +++ b/Primitives2DSample/Primitives2DSample/Program.cs @@ -0,0 +1,21 @@ +using System; + +namespace Primitives2DSample +{ +#if WINDOWS || XBOX + static class Program + { + /// + /// The main entry point for the application. + /// + static void Main(string[] args) + { + using (Game1 game = new Game1()) + { + game.Run(); + } + } + } +#endif +} + diff --git a/Primitives2DSample/Primitives2DSample/Properties/AssemblyInfo.cs b/Primitives2DSample/Primitives2DSample/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..09fc6d3 --- /dev/null +++ b/Primitives2DSample/Primitives2DSample/Properties/AssemblyInfo.cs @@ -0,0 +1,34 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Primitives2DSample")] +[assembly: AssemblyProduct("Primitives2DSample")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. Only Windows +// assemblies support COM. +[assembly: ComVisible(false)] + +// On Windows, the following GUID is for the ID of the typelib if this +// project is exposed to COM. On other platforms, it unique identifies the +// title storage container when deploying this assembly to the device. +[assembly: Guid("8f981323-6200-4d33-990a-1f8df15aa88c")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +[assembly: AssemblyVersion("1.0.0.0")] \ No newline at end of file diff --git a/Primitives2DSample/Primitives2DSample/bin/x86/Debug/C3.XNA.Primitives2D.dll b/Primitives2DSample/Primitives2DSample/bin/x86/Debug/C3.XNA.Primitives2D.dll new file mode 100644 index 0000000000000000000000000000000000000000..b0bb1df1ebb73c4862382b64af2592c70719439c GIT binary patch literal 9216 zcmeHMYiu0Xbv}1?W?$T0X-P?xEHN2cvO|mFnlH;%99yKglFaI1ilk}EqAM+zBXZ2y zoz={&Ov;8qISpzdaU-Knki`9=ybQZ&g4Rjf^x@hLg7^U#sp|$w>K0HC1WALSiGc!j zlUD9`&&&>YNy>?S87Oke{pP&xIp?1HnAzDQ_g$n25vlmR`!3NpaFuO<@x5UQ>dXiK zHbY-eyx#r|arpK2@j27gD~>(u6iRxrP%hh^K5ghuwXB+eU?W<#%)MZ`K zWNr#+wCzJgBh5sDrPmHE-BFS*(LYOy4Nu9|)=it-77$CwNqs~@>*Fz)B%_-?DX$$H zpgb?BsEvM|w3Dc%Tccx~6a1+5CRl8~qHek(nqpl_=N+xd&RwLa(bnU3D^!t=%|JC; z$7mU~1JSX3qOFt3sPE#6itaDNJ^ZWmJzO#6$nz7ZsBjRw68XdjWky@zF8K%q@QE2p zB5;eA)w)_J5N?IAMZN7)aN%NIB%8Kx?#hqPK3R$s2u0Dm=gM^bzT;%a^fcyv)iS|Sc}?8S#>9m@foC{$uV-4 z$*5vQIxyy_jkS@aXp}39D#Ce^!U#>*zqRhwfyn#`E7iG;V)4nQXmk@7*H0P@cYvza zXW+!7Y6aQ9-e|2^@e_gB<-L<;I+|#m^aCf3BQ%ZzWD+DT=cNNVW8SjFYh}X~f$Art zT?tY;FeA_?tca-g4YKRbmhJ@Ifj(G4zp+oVxUw-qv^Az`9XF!)Ce(q*{t!DlKuSc_ zSke)fkz@^%wD($l%e5z+tATe62x&edz4OdN&(};tEN2aUCK@ENPb!hw(%ueiahVy` zF80XJWcsox>%>DhAmLh6LH!@7F^Yaacaohqg#{phmj$0i)xXd>x zk!VaVDIAlS_@lf?Gr?l;W%4{r(gFCtrah1eHi4Sac;*_GE02N2S_h6_M83AY*^At1 z=V_U(rSX|l%UNM>_cdrTT8A%wREqtu7RHRd8s%+*O8N$8*D}C9@wLA%wJ26b%S5l| z1%T6;bJqxGHYH^JeS;3%N~1{>Hxtdog6=uD4{0ySgMTOO8~eR|BDfP`QPA1`Tz9Uo zyRQe&0`gR~fZxJ|ZhwRbM-W}aLA!m-bIkIrD=l8k_|E{_?-`?4K;ub-wjaD_IFIZ1 z!7pHN+xJ=av@}M;2*kY`m3RU^=~p-O5z3BC2nQtJ&Y>sVNa!(qkS3p#2rKVlY=`j# z*(QT)6l-EHhCfF~fK_0Uo}`BFvlHkYv?2BF%I=FhkR-%)w>+ z6fjEvtjcWPV*DZFuNhOC%>NE;FYJ$L&tROjk;?fwFV^Ex=Vr`^7X+Gr6W2QbHa*yNI`b@y}!{<)=`;fbzy68DM#faB0=8*qSLe8UGXbWy~ zQnyc>$CK5bkb9g4Xd>k1=pfC7oJWV~xsdxDjnFG0_cYx@*WvCYeI62DqZ70%eN@N=9ifMTDt#2F(FNB2F;Jn;t)L@x2@;jQ%5v#Pp}zt~xNptpvP7l7tFwHG zEnfrrv1;}!#@^)Y)N)uUZ_MFs?)6{XOV(d&sMXrqXhYok zde+DFS4+L*3dfSGMdj7f7;A0q)niFN8vD8W{I0ZVtk~*^a>e2_1jZWb@S82;sL3$p zluhCo<8j6Uqse%Nagp&n;|1VW@dVSKW&Awjvy6WM)Wu7{8^x=@PVolg59m>~U)%(G zkJv+BRP&&}q7I7`{iRw2zM#&Ec6voE2_b%}J|s5KFVsH*zMwt{t@M)+q&)>xf$fl7 zf;_H04V$?3XP~dsUIT8|ZUpYqzAJj@Htj!Pd6%Xtl1?!0QU>Xyb^uslENVqDNF`u9 zAvy~DDBTO3r~g%QIEOzCEYdH5 zAE%o|j+*c_BZoW2Mc`J(KKe4~PL|)!l0%GR^lfE`dtG9Dk?}Gk3F%E|9AG@fxWssg z@kPeVjHIwV;{f9+#wEr}j4v`?W~2z)GY&AGVq9XJ5NE~L#mnL?@s4O$rj;|wlz3G9 zk5HH7eywju@sJ>&6KYM+ZYJwxNjwk8)+qDuy7e+aH#6Hw$NV54IbzRLE#poa>dQ?Y z9n6h5X36x-vxeK7&&^mC)e8b6D!E15vCL^2TXa36M0Za=U=+Q8%MIC<1=h67ZtkE_ zHXO4^d6NYNXYo`o9X4I>R1Y07i;nHur@h={xsW@6_fN)ywlhx?=xjT^R5YEUWegRH zbH>$da|fM5WzH&&ORmbSfQ^i~`EE=mgrf2Lcc*Qvya*Tp!jL#V(tU`XaLwTq0 z;D~LOJvYz~akzjP#2cJZA`e)J-z<6#u@Wy5vJDa@Evmt1qk0D1+-!^7zy=OI;vGE8K({nYRVsleV`^PE8o zv`7!)(Q%=N7JF!+mlk{dFg^Yy;K(w{v)&vPjk0GrwRsygP6zWwgRX0orme+s)3c00 z56{QbRnMTDoS0CVH{7CQR%G;LlUmOqyL{T5tva0CTIy1zP+nZE7;&&3i{5I*kX>1H z%-Oj$RO6_NQ7Sm|YxJsGa#<`Z{1uxUt(HBrWaNfr0qn|{;hZ&#sP~XvnlN2+x_;CL ztLDtIgW3Qm498t_l>fgTe};{|8d@WR!<94P3LHw&|6+x6rk&l}U#+1Wxv zcD@Xru#qu<6@f6G3i5I42M7Vr%BW!#7MOCEqXvbM{h*pQEz_%;rNH};?HIIw!86K@ zC0OGOq1p}|HC(&u6pc`jH)P2PgFjib2}EO6=X9ZH9I%~I!DEAa=dhV+%<%FBufUQa z8#Bn%usnh6%E`f*8Gm2p?J6onnA*Nx^1s_*Udz}g^5PZDvU|u_q$36FfFT&MzO^V90Mi$ELKoJ_(Hj{>1frm0&6*n`>>LNb7%kQ)7YXeP114B zaa1l`ruNyMXP0muVrQ2z{6SoLv9Wk(;Q)^;@HzhMFF*P3kuy&Yea-yB`L7t04^aHC z&rMBi>A!p-{s+6>`G>Y2Yh$VC#^!{Q+1Q*G*=!`*yb<4}MDv#Qqye*8U!HACB}wt= zbUa0>Pp0CjRDvSXusz$BBsHK?O+J}LYfA;5m~NsdY*J`a5nHC40xMr3jj~y$6YNTo zK_s{gjpNcwU@Ym-Ju3qDl1_6hxJ1U;whYDn0L-OSU5JbXMFV8-mt;JmlThW&P1ULS zOj1WV&cx$Nwu&2Hwk_6;XQ8$akeU?PHZ3OFvTdj%mr%zuk1kp$9w$W>Ae&WVN*rI0 zBbja6wl&pN8)ixiMPUqcl|(wN>553DWEL$H1KmO`qB#}~W+$EYLnul#orKNC=A{cT zk)7gkm<98bjt6E59aFPWPE8~xl-S1X(&HlAF7wZ}>ZkxzfeaNwo=Z=pk}*XIWLxxv zG|4uYu#pnQa8fZ{Mc8;eMvCm5)ksOF(-c17RXZLimYd3cM zO!w}--ralfc#{$o>%prV{1F`#bY1S~{_*gT+!dUkcgWW}g2po&LKQYv#VRZw#lysU z*+&mGdVd^FId2g1eGPtZ_tth%uLgU;I|&QrJSU7Nv&?R--LY4NgU95%Q}Li&VN=j41SiA z+IMdteZV*S9sWP4fZ%tO_$_UzaWHaa;~nQ3a%p!LK9d8`Mg$@4*ZyS4~rW# zmFYCuY_fxUjYC_2)P=r49_(yze*1IvA~v8vP9CgG$Yc`I zDrgA)N>t$(ix^P>oWbsoz+(}9ZN#>bl?Q1a?-4~9BM(cLZA^Hm&uxVBDZzu3o@KjU z^p>p~2hFmN3FsVnSsqsptk* zDGPr@Q}})?=rDZEvL{)A3ce)BezW+ZAji2{rqi=HXja!mr(R^+!xhE);au+ye90M+ zxz=V^a(;EMHRq3T-R0P9jH8O0dvz6%HClVrvflk%@5a6>tG=@4w{f3A%!`XUm9Szg kR7l5aZJe!@{baoNrC~wK-!=y7?hWrt9={9vzEt4<0Ev!0T>t<8 literal 0 HcmV?d00001 diff --git a/Primitives2DSample/Primitives2DSample/bin/x86/Debug/C3.XNA.Primitives2D.pdb b/Primitives2DSample/Primitives2DSample/bin/x86/Debug/C3.XNA.Primitives2D.pdb new file mode 100644 index 0000000000000000000000000000000000000000..7386487d83e78f9f7e91768d64e5cd337a1dd325 GIT binary patch literal 28160 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 literal 0 HcmV?d00001 diff --git a/Primitives2DSample/Primitives2DSample/bin/x86/Release/C3.XNA.Primitives2D.dll b/Primitives2DSample/Primitives2DSample/bin/x86/Release/C3.XNA.Primitives2D.dll new file mode 100644 index 0000000000000000000000000000000000000000..6b2083b4be89527e8615289675a97ab9a99bccc0 GIT binary patch literal 8704 zcmeHMYiu0Xbv}1?X7<6|wU(4b$r7ERDLX4lTJdFBvYnU|my%h%Xp)vGi;lEhj>xfQ zch)nr5~&yl<+w)n`xNTAga9dX?oHPxpJ_0mF&_F<+ zF<|$*XJ(hXB<&=>+#kKtd~?s^o^$TGui48Z4?Rs0B2w|Z^A6Eh@Rnte@x5UQ;`9ez zOw%97U+?^iIQ)9&71x<_3nimiD3=}Im@y5vS~je*kv}$Jl$=>Jmr5nJg{H?w zhz^Sg6<$~zt9iRlN@t6R5#0=q9&pS1@HX%a;*ntBr37)K#_`KHE#U!QmIw|0GSNEz zzx)o#K!w)B?t`*ENc0Jrh?V6uQ4+kT_Y!SgDSI#4AVLr7B?kJwIz^Q8%>^H{zZn1- z_ce?g6c>Z&bk6nMA}Ee+5EVI4D*^#~Fz1@K14S7toyH?=8F(7XAkqE?lB;7fuP8D$ zg*2MFooH_>kznpG4sAU;Ayu+{MsZ*$(cZpsqt}MY5<*fRm(YGW3XO!m@mJ+LyB@-e zvZgy|wxhePN24K*hcc?O5zUfU4d=XlXSIhq~TAmC%EB zeSgsnJ8eBGeHm{IZ$^3Q7C3U@rxJPU1JXMNAdz?+3>d?NOYBUB#1;_U9&(*%>Dsg_ zKlxVY=D~=4GT8-FTv9taqe?v60gZ>wq5{jPc(9sq3_v_Km5SG!_FaoA^`^B(%Z!zc zgCL?#Ck#cqxew34tA;*sObK1FBUyAwcW#A>u5+T09hgki&9>b7{hMAJjGR4bCwFX$ z#->_yeIuug14LbFM`Jbp!IM*}-S=jbl4i$FhVtw8PFX2E-aZvLi=TiyEaZgVUFLD! zr7Kw^QdgLYsLpK=%Gl%7gV?c@Gi&L!(%Ty%L|b%K%VPQ^HljmB&Ie`V4=WK>V>*lF zq+@O*sPE^oC1-;)riRwC(%Ly#|u62TO>No04dVxos~iq>1O&8Zdb0%J8%cBizWO>w*{+rtTqS-9-6 zfw|lw2&ZOtjYw;vwLErzTgJQ#p;&n5_^pJr642gmaAiJgS^E0V*#slSSzUW{U`?j1 zd+pI-QEigcR52!UAG!x`Y%7_Fn#J@>ByI`<4dXvygO(i%`*p(3_JTUwqD1tloITi< z^zH+4{-wjQXO6U;Ah~V+%=w%SC$yT@cz_zGqKuiDS{6IpyRIP2^+fkaplfTq*lVFE zvdwrSKdoh%d7*CDMklbYbe`nM4U5Zbh%w7qb{sNvHm#-gTX`6<`C+ol{a7ATSb&*8 zp2aDoCy=PLo{k1>b6!6}U6T8#+;jI&{L+3Ao+21rIyaE($@Ta2_wsq8kqzD}Fxd4t z(at!|S8Qxu6TWMe=RAn$Yw6(p?0R5={uFhb;?#BUfzdqP-vK>~j&<#~of)Z&g80RQ z8^ASPvZvqfLZwoet2w7~^?50;~cP z^htV*()1cV2mBr|LH`a;g0_mspwq5sicSNJ_cK-)FERc$<4cU+Wn34z0sU=^eG%FA z5aSb(`G`)RkNigDB)uvJkZwfY04Jlq5ox8nfoYmiWegtUr+_+rN0rfjpYb0U-(pN^ zGX4)~_d@@E?K$+b)>An?7sWcdm3HG?kyI~zn%XEs*T|qTLuy{ZF1HPmPlnV_sT=wH z=aACG-B@AIbq1QP;sC|zAf^t{uhH#df>JbFryj-_UaeE}w4T0Dr+nH(|5m3iVx)po zR$94CUG%}Oz~%sKcGKQE^)T(C?Q)3WZ$Qi={^>g9(;f6wNbMIF=`Q-cI(3-_>Cfua zJRPL()+wJ3k%5Ct+T1Umr7;?)Q@=|O&|*j(5--q6x>ToLqEqzQkeU?Vq8WOrPFD_Z*sJM%hCRTqrJW= z+V|3lHpTEyZ0%p!njD>43@iD~G2Gx*|HZ9j{_@$k9DS7T0)C8!foJJQN)G$*6Tl+<9q?CZx5!ZoJ%V~0 zJqFyu*iTnb-@*L5nRAG7g8oPu=2ll3Utzq?NJ3gO7zY_oGcGY+WqgJ4IwL8p&p60< znsJHoD&s4R*BL3o`iz5&rx}+RkBf8S1@W@DCeq4LXKZojpe8+*T`}a zw1k2l?%B8xVJISJMLLJj>eALM@7pm+U9VfIB&k2ZtkF4sLWeMk0x=a zQFYC}JXNd()24}vYx(B>f?u4cVb?79=H$FN#v;V$xRiGb=f@nY?0cbnnB9fM5NaU4=qC__bNI|vOoF9o*dSr<%NphY^5&&GvbTI{8TK3ePx z-1G*okRsbG&-wFIG|Rr}*2ZnzJQI!^4SAkfnz0urE#EeWe0&?vRDF|ja$xGhyy+EP zt0KKGtJGQ!JLNOhT-D{^))JR0h4SKR!I+ErSoBv5hMmfyYt7BCA(}*9%u>NUyGE<3 zEvLn@Aegba@oL$(N@i|UCcvponC>~Nh^UZj zxk|XgZ79dU(qzG%GyVGPUv?BW$yfBtRDY}3MOIXP0zzRp`PX+O~ zjU5DoM`hf!3kzKHmc53Fk?kOwv24q47^Tqqu;ZFEvf!KL<`k^4hfr;Wj+>rSb&F=5 zkvC<^37tPx(+OD2QPUOokSY_{!xkyI}SOLQhQf8G2jcIhGTrHWdOfPmPaK^F3 zOl$)s=Nx8GSP7VNVbjs7ZHL;j7Y|`3h5OFPnKM|T9!=2+j&WR0T(0eReBUWyKg7x| zqx(a6^$MoWtDE8$G)5kXtT)z~1a_4`4 zz2k@4L{i_-8duUAT2msEiRi5x@H(;F;4atU<(ndOT zp{CDIY${Cp!6tADyM24U(^)1?{OYLt#3hHO@d=7t5_#Ce0$0za=Klu35-+b{?Pagi7 z_U7QDfAZF}ywe%EYkJtU?P(ku)q-ts6ga}<=a4tun8s;m=8`Cs8B)qh^!m3wz|~*cG4_4g^f9H+efg)1>b0<$=`5N>z&)k7;IMmKSc??XTx7s zmYTzoqek)$e-&Tq-G^st5OR5$7M7mK0BXl+0=FW^X@tg68>M4(6!a+Y0P3>5r2gdX z;7dCkeD*}Rc?$}bU^s_D23~nQ0#*y;!j6TzL>x3!#$0h&X&d$fqDe>#;Chf3$cLT- zDkxu2pT^`8h{=bR1^(O`mTcDPLBE541Gv*c4rl;3eu9Q!uS6C0v4|cOK$&d*2rL$1 z*MV;bQTgEJaTg})KJw7?SjU2e#@NO24m!1m zaC5Z@`Z6;<>y{Ct-4N+8^+S6K9Q-1Lw#>w8&pDb!D|uf#jo)~J4#U5;A2;| zo5KgM?B{BpLC<3Wt&i8VgA&iTMJe4qGY-Gs5Y;7K`mF=Xz_oX2H@_xS3 Qu;;xmas0p2_ay`W3rDOdHvj+t literal 0 HcmV?d00001 diff --git a/Primitives2DSample/Primitives2DSample/bin/x86/Release/C3.XNA.Primitives2D.pdb b/Primitives2DSample/Primitives2DSample/bin/x86/Release/C3.XNA.Primitives2D.pdb new file mode 100644 index 0000000000000000000000000000000000000000..cecd53007ef9c79078884fe09b127e059a3343b5 GIT binary patch literal 26112 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 + + + {F0CD1611-687D-4D13-BF8D-B67C33B15110} + {96E2B04D-8817-42c6-938A-82C39BA4D311};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + Debug + x86 + Library + Properties + v4.0 + v4.0 + bin\$(Platform)\$(Configuration) + Content + + + x86 + + + x86 + + + Primitives2DSampleContent + + + + + + + + + + + + \ No newline at end of file diff --git a/Primitives2DSample/Primitives2DSampleContent/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Primitives2DSample/Primitives2DSampleContent/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..566c2f7aa87dcfc001661c81bd5af1dbece567d3 GIT binary patch literal 5903 zcmeHLUr!rH5VwQ5U`-u zz(qV)mD+xVeuAnWv7I^FXH0)fQJ}YwiF(d!zL1cEDnnCj`bwjGUFlkkzrTJ^ zi(PBzBYruHrysPRpJjTer_vY1%y9{h7LtRSXt)Xb@6jQbLU@ zEt}o`BC}a;H^S$KAiuc0ImcDQV@+D{;>5OJ&9o*Kq;NnfA=gk? zu2BW_u=W&ii-E6s9okbaa%vex8TX7K!-&Q1A&tl5^h5gRaH**@)X~Loj~q=-W4#6+ zBzLTz&;su=ySvv6L9gCsUH}Eg<-3>B(2|ziucghpa)k7FrF%~1|MxLjTx1K*!mG^k z+&s)KE$^kTljDwx+7CPI-K<&fIJLobkA#{>=p#vF6p1m0BxXE7vVK}@$C;H9qKsoE!H$rCZEfYtQGiV!;nkV$MCW!S z&YzqaW*BPLajQ^v0)15|-Ab;ienYp zBibZu$7fa~K8DfIZdQRez~eqxYXlfK>kT0hzo}5l$G0p}zFI}E=*Sd`^aMrv^%kwP zvA)wI&os*O`z^{-h7&?qJu=PQ^0sYr7cO|xXDHGyw`iu`O?!&cRIWH_(J?aHHy8r& z?(wsu1JrxxwT@r}KP8Z}Cg^@0fP#L+?ExsbsmID5MJHn)pK5hAys!ArFtUHtN)=$w z--*blKYVo!o>Y`1x$^bb55K?Tcy)JgWF+|v9ja4Ogf1y1Y$#I+an2~S}Lg!*`-u zz(stnDz#GoL4QHjpV-cv?E@2_{eT4@yvW1ezRb?d&h9)rv3M*N`v(jCr}E$)688;v zq)?)!tu3ws=9P8ea$#jfqapl_Tt01XfmB@htC?9V{7akJz|(<*RUZN^nU^+;LDl2V zkI<@!1MpX?vvakD+F~t}aTjLU92=%3m#$c8J>Z^8>uvZNq-egCtl0!no`iHdaeAi2A`x-<2X7i{2H$pxCc`X^Ih&T4c(E{s%C0|=M^Mtz>$y# z-L49&V&B7_zJl;v)b|-RR+y}Vj;57^ssg=`1|Vz zwb`|YKH`_Nc=|#6`B|oidMbTE%p8~CXdyYMiKeTWECZ9yev#>YHP)1(h6W)eCMDFl z(z12dpF}-0kj18P-g({6F`c^5^+x#o0OS{!H|Mx&daOkYUYywRtC{x1q7)7&CFB|k z%QdQi9@d!xZYl6JZ$M|tMNVy_DC3?nWEip7J*4q?oPJ3E94@z%h6cJA?vbO(X{^`a zgXE6&6I$S1W@qP`A?Vdx%nP8%xP13A8d}zp`}MThP>zruub!Qg`Tu=P78luqv+ydj zJU0)sOUt|I>*TnjqV~fMyEkjrJI*d1AGl~gyeK+N{a}8_ed>k}5Fv%+5R%bkf~vzr z@TQF=?<1k+5&B3H8AW1@A&D6ekgT7SI&o&Dj40!XNw6a%U|XB{N)%wzhj?|SyV1E5 ziSx&&#yIl%Bc5Nev*3Al8>g5w)x@ar9`AHz7bS0S%@0An%=LVfS)=K}B~1t#5JPBN zRNvdjORww_c)%3cIZzn5D;RA`poDiAA&C;yK!T4^%5s>q56O>6$B&Ur_o~qaOr(x6 zf&CMqtdXAPyph7zMA$!xwIN*J_yjAX)MU-g&SjR95Ai!iHYej7pCU~B0m@>@K+f?A3?q8u{>J?0B!``wwb&F#%K8-M0&48~>~=h?I%s@~Pie#?DV z9I4PE(KcDzKC>e6F_4Cqvx>Y49{0goBgnYXXbOo4PK8oFzGac}wHo?GSEf*;Cn(ad zw`irp`gV^z(4`9JfJy&)qIvIQTSZk=^J;i^9k-fuq zvH*MjPDDQa;k#?_sG>Bfaa(QZ{b!vQ#{WpP^zd=6ZCna`7IFM2=r^dI~RPPglu5!NzL8k~9hlYKDm456T dVPh)y!)>Cas0{rzxN`n0Gds9)qHNpl*uN^rtrq|Q literal 0 HcmV?d00001 diff --git a/Primitives2DSample/Primitives2DSampleContent/obj/x86/Release/Primitives2DSampleContent.contentproj.FileListAbsolute.txt b/Primitives2DSample/Primitives2DSampleContent/obj/x86/Release/Primitives2DSampleContent.contentproj.FileListAbsolute.txt new file mode 100644 index 0000000..c074ce5 --- /dev/null +++ b/Primitives2DSample/Primitives2DSampleContent/obj/x86/Release/Primitives2DSampleContent.contentproj.FileListAbsolute.txt @@ -0,0 +1 @@ +E:\Cell\Visual .NET Projects\Primitives2D\Primitives2DSample\Primitives2DSampleContent\obj\x86\Release\ResolveAssemblyReference.cache diff --git a/Primitives2DSample/Primitives2DSampleContent/obj/x86/Release/ResolveAssemblyReference.cache b/Primitives2DSample/Primitives2DSampleContent/obj/x86/Release/ResolveAssemblyReference.cache new file mode 100644 index 0000000000000000000000000000000000000000..8b338c6225b45cdb921e12f71ea9e420c48c0e61 GIT binary patch literal 49004 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 + + + {3D2A19A1-D632-4AC0-8B49-0E5C0BDBBB8B} + {6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + Debug + Windows Phone + Library + Properties + C3.XNA + C3.XNA.Primitives2D + v4.0 + Client + v4.0 + Windows Phone + Reach + 1123ede9-ca5c-4f6d-9ded-90c521aa6028 + Library + 1 + + + true + full + false + bin\Windows Phone\Debug + DEBUG;TRACE;WINDOWS_PHONE + prompt + 4 + true + false + false + + + pdbonly + true + bin\Windows Phone\Release + TRACE;WINDOWS_PHONE + prompt + 4 + true + false + false + + + + + + + + + + + + 4.0 + + + 4.0 + + + + + + + + + + + \ No newline at end of file diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..bc12748 --- /dev/null +++ b/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Primitives2D")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Microsoft")] +[assembly: AssemblyProduct("Primitives2D")] +[assembly: AssemblyCopyright("Copyright © Microsoft 2010")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("30c9737e-7005-4705-96bc-6aced0632696")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/bin/Debug/C3.XNA.Primitives2D.dll b/bin/Debug/C3.XNA.Primitives2D.dll new file mode 100644 index 0000000000000000000000000000000000000000..b0bb1df1ebb73c4862382b64af2592c70719439c GIT binary patch literal 9216 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 literal 0 HcmV?d00001 diff --git a/bin/Debug/C3.XNA.Primitives2D.pdb b/bin/Debug/C3.XNA.Primitives2D.pdb new file mode 100644 index 0000000000000000000000000000000000000000..7386487d83e78f9f7e91768d64e5cd337a1dd325 GIT binary patch literal 28160 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 bVAxfQ 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 Qu;;xmas0p2_ay`W3rDOdHvj+t literal 0 HcmV?d00001 diff --git a/bin/Release/C3.XNA.Primitives2D.pdb b/bin/Release/C3.XNA.Primitives2D.pdb new file mode 100644 index 0000000000000000000000000000000000000000..cecd53007ef9c79078884fe09b127e059a3343b5 GIT binary patch literal 26112 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 literal 0 HcmV?d00001 diff --git a/bin/Windows Phone/Release/C3.XNA.Primitives2D.dll b/bin/Windows Phone/Release/C3.XNA.Primitives2D.dll new file mode 100644 index 0000000000000000000000000000000000000000..b0c9ab71217db540f8546244062abf0e8fd261b1 GIT binary patch literal 8704 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 H$-w^r%w!ke literal 0 HcmV?d00001 diff --git a/bin/Windows Phone/Release/C3.XNA.Primitives2D.pdb b/bin/Windows Phone/Release/C3.XNA.Primitives2D.pdb new file mode 100644 index 0000000000000000000000000000000000000000..07a7c9536daa7e14922e0be0ae28d6fc2aae5316 GIT binary patch literal 26112 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